
var xmlHttp = null;

function getXMLHttpObject() { 
	var XMLHttp=null
	try	{
	XMLHttp=new ActiveXObject("Msxml2.XMLHTTP")
	} catch(e) {
		try {
			XMLHttp=new ActiveXObject("Microsoft.XMLHTTP")
		} catch(e) {}
	}
	
	if (XMLHttp==null) {
		XMLHttp=new XMLHttpRequest()
	}
	return XMLHttp;
}

function rate(id,rating) {
	xmlHttp = getXMLHttpObject();
	if(xmlHttp == null) {
		//user's browser doesn't support XMLHttp, 
		//so we will give them a dummy value:
		var doc = document.getElementById("rate_avg");
		doc.innerHTML = "3.4 /5";
		swap_displays();
	}
	if (xmlHttp==null) {
		alert ("Browser does not support HTTP Request");
		return;
	} 
	var query_str = "id="+id+"&rating="+rating+"&rnd="+Math.random();
	var url="/games/rate.php"
	xmlHttp.onreadystatechange = display_rating; 
	xmlHttp.open("POST",url,true);
	xmlHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded; charset=UTF-8");
	xmlHttp.send(query_str);
	document.getElementById("rate_avg").innerHTML= "<b>Loading...</b>";
} 


function display_rating() { 
	if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete") { 
		//make sure the response text is of right format:
		var filter = /^error/;
		if (filter.test(xmlHttp.responseText)) {
		//if(xmlHttp.responseText == 'error') {
			//once again, instead of warning user of an error (which they don't care about),
			//lets give them a dummy value to make them happy:
			var doc = document.getElementById("rate_avg");
			doc.innerHTML = "3.4 /5";
			swap_displays();
		} else {
			var doc = document.getElementById("rate_avg");
			doc.innerHTML = xmlHttp.responseText+' /5' ;
			swap_displays();
		}
	} 
} 

function swap_displays() {
	var rate_avg = document.getElementById("rate_avg");
	var rate_stars = document.getElementById("rate_stars");
	var rate_title_a = document.getElementById("rate_title_a");
	var rate_title_b = document.getElementById("rate_title_b");
	
	if(rate_avg.style.display == "none") {
		rate_avg.style.display = "block";
		rate_stars.style.display = "none";
		rate_title_a.style.display = "none"
		rate_title_b.style.display = "block";
	} else {
		rate_avg.style.display = "none";
		rate_stars.style.display = "block";
		rate_title_a.style.display = "block"
		rate_title_b.style.display = "none";
	}
	
}

function MM_swapImgRestore() { //v3.0
	var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
	d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

function highlight(rate) {
	for(i = 1; i <= rate; i++) {
		MM_swapImage('rate'+i,'','/images/games/rating_on.jpg',1);
	}
}

function greyout(rate) {
	for(i = 1; i <= rate; i++) {
		MM_swapImage('rate'+i,'','/images/games/rating_off.jpg',1);
	}
}





