/*
Author: Addam M. Driver
Date: 10/31/2006
*/

//found at http://www.reignwaterdesigns.com/ad/tidbits/rateme/

var sMax;	// Isthe maximum number of stars
var holder; // Is the holding pattern for clicked state
var preSet; // Is the PreSet value onces a selection has been made
var rated;

// Rollover for image Stars //
function rating(num){
	sMax = 0;	// Isthe maximum number of stars
	for(n=0; n<num.parentNode.childNodes.length; n++){
		if(num.parentNode.childNodes[n].nodeName == "A"){
			sMax++;	
		}
	}
	
	if(!rated){
		s = num.id.replace("_", ''); // Get the selected star
		a = 0;
		for(i=1; i<=sMax; i++){		
			if(i<=s){
				document.getElementById("_"+i).className = "on";
				//document.getElementById("rateStatus").innerHTML = num.title;	
				if(num.title == 1)
					document.getElementById("ratingMessage").innerHTML = "Hated it";
				else if(num.title == 2)
					document.getElementById("ratingMessage").innerHTML = "Didn't like it";
				else if(num.title == 3)
					document.getElementById("ratingMessage").innerHTML = "Thought it was ok";
				else if(num.title == 4)
					document.getElementById("ratingMessage").innerHTML = "Liked it";
				else if(num.title == 5)
					document.getElementById("ratingMessage").innerHTML = "Loved it";
					
				holder = a+1;
				a++;
			}else{
				document.getElementById("_"+i).className = "";
			}
		}
	}
}

function showrating(){
	document.getElementById("ratingBox").style.display = "";
}
function hiderating(){
	document.getElementById("ratingBox").style.display = "none";
}

function resetrating(){
	rated = false;
	preSet = null;
	document.getElementById("ratingMessage").innerHTML = "";	
	for(i=1; i<=sMax; i++){		
		document.getElementById("_"+i).className = "";
		//document.getElementById("rateStatus").innerHTML = me.parentNode.title;
	}
	
}


// For when you roll out of the the whole thing //
function off(me){
	if(!rated){
		if(!preSet){	
			for(i=1; i<=sMax; i++){		
				document.getElementById("_"+i).className = "";
				document.getElementById("ratingMessage").innerHTML = "";
			}
		}else{
			rating(preSet);
			//document.getElementById("rateStatus").innerHTML = document.getElementById("ratingMessage").innerHTML;
		}
	}
}

// When you actually rate something //
function rateIt(me){
	if(!rated){
		//document.getElementById("rateStatus").innerHTML = document.getElementById("ratingMessage").innerHTML + " :: "+me.title;
		preSet = me;
		rated=1;
		sendRate(me);
		rating(me);
	}
}

// Send the rating information somewhere using Ajax or something like that.
function sendRate(sel){
	
	var dataSource = pathtoajaxcalls + "saverating.asp?rSid=" + prgsch_stationid;		
		dataSource += '&prgid=' + g_selectedprgid;
		dataSource += '&rate=' + sel.title;
							
	var XMLHttpRequestObject = false; 
	if (window.XMLHttpRequest) {
		XMLHttpRequestObject = new XMLHttpRequest();
	} else if (window.ActiveXObject) {
		XMLHttpRequestObject = new ActiveXObject("Microsoft.XMLHTTP");
	}	
	
	if(XMLHttpRequestObject) {
	  document.getElementById("ratingMessage").innerHTML = '<img src=""images/loading.gif"" alt=""saving"" align=""absmiddle"" />';  
	  XMLHttpRequestObject.open("GET", dataSource); 

	  XMLHttpRequestObject.onreadystatechange = function() 
	  { 
		if (XMLHttpRequestObject.readyState == 4 && 
		  XMLHttpRequestObject.status == 200) { 
		  	var r = XMLHttpRequestObject.responseText; 

			document.getElementById("ratingMessage").innerHTML = r;
		  				
			delete XMLHttpRequestObject;
			XMLHttpRequestObject = null;	
		} 
	  } 

	  XMLHttpRequestObject.send(null); 
	}	
}

