var rUrl = document.getElementsByTagName('base')[0].href + "client/rater/";
PreloadingImg(rUrl+'_odd1.gif',rUrl+'_even1.gif',rUrl+'__odd1.gif',rUrl+'odd1.gif',rUrl+'__even1.gif',rUrl+'even1.gif');

function Vote(rating, id, type) {
	var url = rUrl+"rater.aspx?rating="+rating+"&id="+id+"&type="+type;
	ajax.get(url, RaterResponse);
}

function RaterResponse(http)
{
	var xml = http.responseXML.documentElement;
	
	var xMsg = xml.getElementsByTagName('msg')[0].firstChild.data;
	var xRank = xml.getElementsByTagName('rank')[0].firstChild.data;
	var xID = xml.getElementsByTagName('id')[0].firstChild.data;
	
	$("rtr"+xID).innerHTML = Stars(xRank, false);
	$("rtr"+xID).className = "";
	alert(xMsg);
}

function changeover(obj, rating) {
	var imageName = obj.src;
	var index = imageName.lastIndexOf('/');
	var filename = imageName.substring(index+1);
	var fullId = obj.id;
	var id = fullId.substr(fullId.indexOf('_')+1);
	var idName = fullId.substr(0, fullId.indexOf('_'));
	var totalRating = rating;

	for(i=0; i<id; i++) {
		var num = i+1;
		if (num%2 == 0) {
			document.getElementById(idName+'_'+num).src = rUrl+'_odd1.gif';
		}
		else {
			document.getElementById(idName+'_'+num).src = rUrl+'_even1.gif';
		}
	}
	id++;
	for(j=id; j<=10; j++) {
		var num = j;
		if (num%2 == 0) {
			document.getElementById(idName+'_'+num).src = rUrl+'odd1.gif';
		}
		else {
			document.getElementById(idName+'_'+num).src = rUrl+'even1.gif';
		}
	}
}
function changeout(obj, rating) {

	var imageName = obj.src;
	var index = imageName.lastIndexOf('/');
	var filename = imageName.substring(index+2);
	var fullId = obj.id;
	var id = fullId.substr(fullId.indexOf('_')+1);
	var idName = fullId.substr(0, fullId.indexOf('_'));
	var totalRating = rating;
	
	for(i=0; i<10; i++) {
		var num = i+1;
		
		if (num%2 == 0) {
			if(i < totalRating) {
				document.getElementById(idName+'_'+num).src = rUrl+'__odd1.gif';
			}
			else {
				document.getElementById(idName+'_'+num).src = rUrl+'odd1.gif';
			}
		}
		else {
			if(i < totalRating) {
				document.getElementById(idName+'_'+num).src = rUrl+'__even1.gif';
			}
			else {
				document.getElementById(idName+'_'+num).src = rUrl+'even1.gif';
			}
		}
	}
}

function Stars(rating, doWrite)
{
	var res = "";
	for(i=0; i < 10; i++ ) {
		if(i%2 ==0) {
			if(i < rating) {
				res +='<img src="'+rUrl+'__even1.gif" />';
			}
			else {
				res +='<img src="'+rUrl+'even1.gif" />';
			}
		}
		else {
			if(i < rating) {
				res +='<img src="'+rUrl+'__odd1.gif" />';
			}
			else {
				res +='<img src="'+rUrl+'odd1.gif" />';
			}
		}
	}
	res = "<span title='" + (rating / 2) + "'>" + res + "</span>";
	if(doWrite)
		document.write(res);
	return res;
}

function Rater(rating, id, type) 
{
	var res = "<span class='pointer' id='rtr"+id+"'>";
	
	for(i=0; i < 10; i++ ) {
		if(i%2 ==0) {
			if(i < rating) {
				res +='<img src="'+rUrl+'__even1.gif" id="'+id+'_'+(i+1)+'" title="'+((i+1)/2)+'" onmouseout="changeout(this, '+rating+')" onmouseover="changeover(this, '+rating+')" onclick="Vote('+(i+1)+','+id+','+type+')" />';
			}
			else {
				res +='<img src="'+rUrl+'even1.gif" id="'+id+'_'+(i+1)+'" title="'+((i+1)/2)+'" onmouseout="changeout(this, '+rating+')" onmouseover="changeover(this, '+rating+')" onclick="Vote('+(i+1)+','+id+','+type+')" />';
			}
		}
		else {
			if(i < rating) {
				res +='<img src="'+rUrl+'__odd1.gif" id="'+id+'_'+(i+1)+'" title="'+((i+1)/2)+'" onmouseout="changeout(this, '+rating+')" onmouseover="changeover(this, '+rating+')" onclick="Vote('+(i+1)+','+id+','+type+')" />';
			}
			else {
				res +='<img src="'+rUrl+'odd1.gif" id="'+id+'_'+(i+1)+'" title="'+((i+1)/2)+'" onmouseout="changeout(this, '+rating+')" onmouseover="changeover(this, '+rating+')" onclick="Vote('+(i+1)+','+id+','+type+')" />';
			}
		}
	}
	res += "</span>";
	document.write(res);
}