/**
 * Provides a feedback form visitors to sites in the Family Center domain.
 * Any user can rate the page and/or post comments to be submitted to the page
 * owner.
 **/
 
// submits opinion to the server.
function get_radio_value() {
   for( var i=0; i < document.getElementById('UWPFeedBackForm').opinion.length; i++ ) {
      if( document.getElementById('UWPFeedBackForm').opinion[i].checked) {
         return document.getElementById('UWPFeedBackForm').opinion[i].value;
      }
   }
}

function submitOpinion() {
   if (window.XMLHttpRequest) //non-Microsoft browser 
   { 
   	xmlHttp = new XMLHttpRequest();
   }   
   else if (window.ActiveXObject) //IE
   {
   	try 
   	{
      	xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
      } 
      catch (e) 
      {
      	try 
      	{
         	xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
         } 
         catch (e) {}
      }
	}
	
   if( !xmlHttp ) {
      alert( "Browser does not support HTTP Request" );
      return;
   }
   var $opinion = get_radio_value();
   var $comment = document.getElementById("comment").value;
   var $url="http://www.familycentergrantcounty.org/wp/feedback/feedback.php?opinion=" + $opinion + "&comment=" + $comment;
   $url=$url+"&sid="+Math.random();
   xmlHttp.open("GET",$url,true);  
   xmlHttp.setRequestHeader("Referer", location.href);
   xmlHttp.send(null);
   document.getElementById("UWPFeedBack").innerHTML = "";
   setCookie();
}

//  Calls the function to display the feedback form on a valid page.
function feedBack()
{
 	if(checkURL())
 	{
 	   document.write('<div id="UWPFeedBack"></div>');
	   HideIt();
	}
}

//  Checks to see if the web-page using the feedback is a valid UWP
//  web-page.  Also makes sure the web-page is not from a personal
//  web-site.
function checkURL()
{
	var my_url = document.URL;
	if ( my_url.indexOf( 'www.familycentergrantcounty.org' ) != -1 )	{
		var cookie_name = my_url + "feedback";
      cookie_name = cookie_name.replace(/.html/, "");
      cookie_name = cookie_name.replace(/http:\/\/www.familycentergrantcounty.org\//, "");
      // Makes sure feedback has not already been posted
      if( !checkCookie(cookie_name) )
      {
      	return true;
      }
   }
   // If a cookie already exists, feedback has already been submitted.
   return false;
}

// Writes the html to draw the Feedback dialog so it is visible to the user.
function drawFeedBackForm()
{  
	var display_data = '<div id="feedBack" style="width:13em; height:0em;">';
	display_data += '<form id="UWPFeedBackForm" name="UWPFeedBackForm">';
	display_data += '<fieldset>';
   display_data += '<h4>Opinion</h4>';
   display_data += '<ul><li><label> <input type="radio" name="opinion" value="hate" /> hate </label></li>';
   display_data += '<li><label> <input type="radio" name="opinion" value="dislike" /> dislike </label></li>';
   display_data += '<li><label> <input type="radio" name="opinion" value="like" /> like </label></li>';
   display_data += '<li><label> <input type="radio" name="opinion" value="love" /> love </label></li></ul>';
   display_data += '<label for="comment" class="commentBoxLabel">Comments</label>';
   display_data += '<input type="text" name="comment" id="comment" maxlength="255"></input><br />';
   display_data += '<input type="button" class="button" id="submitButton" name="submitButton" value="Submit" onclick="submitOpinion()"/>';
   display_data += '</fieldset>';
   display_data += '</form>';
	display_data += '</div>';
	display_data += '<div id="tabDown">';
	display_data += '<a href="jav'+'ascri'+'pt:hideFeedBackForm();"><span>Feedback</span></a>';
	display_data += '</div>';
	document.getElementById("UWPFeedBack").innerHTML = display_data;
	var effectTime = 1000;  //time in milliseconds it will take to resize.
	resizeDiv("feedBack", 0, 14, effectTime);
}

// Writes the html to hide the Feedback dialog from the user.
function hideFeedBackForm()
{  
   var effectTime = 1000;  //time in milliseconds it will take to resize.
   resizeDiv("feedBack", 14, 0, effectTime);
   setTimeout('HideIt()', (effectTime+60));
}

function HideIt()
{
   document.getElementById("UWPFeedBack").innerHTML = '<div id="tabUp"><a href="jav'+'ascri'+'pt:drawFeedBackForm();"><span>Feedback</span></a></div>'; '<div id="tabUp"><a href="jav'+'ascri'+'pt:drawFeedBackForm();"><span>Feedback</span></a></div>';
}

// Searches to see if feedback has already been submitted by the user.
// returns null if no; returns the cookie if yes.
function checkCookie(c_name)
{
   if (document.cookie.indexOf(c_name + "=")!=-1)
	{ 
	   return true;
	}
	return false;
}

// Creates a new cookie to indicate that the user has recently
// submitted feedback for the particular website.
function setCookie()
{
   var cookie_name = document.URL;
   cookie_name = cookie_name.replace(/.html/, "");
   cookie_name = cookie_name.replace(/http:\/\/www.familycentergrantcounty.org\//, "");
   cookie_name += "feedback";
	var exdate=new Date();
	exdate.setTime(exdate.getTime()+(48*24*3600*1000));
	document.cookie=cookie_name+ "=" +escape("ThanksForYourOpinion")+ "; expires="+exdate;
}

function resizeDiv(DivId, startHeight, endHeight, effectTime)
{
   var myEffect = new fx.Height(DivId , {duration: effectTime});
   myEffect.custom(startHeight, endHeight);
}