var ratingProductRatings = new Array();
var ratingChanged = new Array();
var ratingImagePath = '';

function setImagePath(inImagePath) {
	ratingImagePath = inImagePath;
	if (document.images)
	{
		changed = '';
		pic1= new Image(100,25); 
		pic1.src=ratingImagePath+changed+'On.gif'; 
		pic2= new Image(100,25); 
		pic2.src=ratingImagePath+changed+'Off.gif'; 
		changed = 'done';
		pic3= new Image(100,25); 
		pic3.src=ratingImagePath+changed+'On.gif'; 
		pic4= new Image(100,25); 
		pic5.src=ratingImagePath+changed+'Off.gif'; 
	}

}

function showRating(inProductID,inRating,inXajaxFunction) {
	
	value = ratingReadCookie('productRating'+inProductID);
	if (value == null) {
		ratingProductRatings[inProductID] = inRating;
		done = 0;
	}
	else {
		ratingProductRatings[inProductID] = value;
		ratingChanged[inProductID] = value;
		done = 1;
	}
	
	document.write('<div id="productRating'+inProductID+'">');
	document.write(getRatingString(inProductID,ratingProductRatings[inProductID],inXajaxFunction));
	document.write('</div>');
}

function setRating(inProductID,inRating,inXajaxFunction) {
	ratingProductRatings[inProductID] = inRating;
	ratingChanged[inProductID] = inRating;
	ratingCreateCookie('productRating'+inProductID,inRating,1);
	titem = document.getElementById('productRating'+inProductID);
	titem.innerHTML = getRatingString(inProductID,inRating,inXajaxFunction);
}

function getRatingString(inProductID,inRating,inXajaxFunction) {
	string = '';
	changed = ratingChanged[inProductID]?'done':'';
	for (stars = 0; stars < 5 ;stars++) {
		id = 'id="productRating'+inProductID+'star'+stars+'" ';
		if (inXajaxFunction != '') {
			id += ' onmouseover="redrawProduct('+inProductID+','+(stars+1)+')" onmouseout="redrawProduct('+inProductID+','+ratingProductRatings[inProductID]+')"';
			id += ' onclick="'+inXajaxFunction+'('+inProductID+','+(stars+1)+',\''+inXajaxFunction+'\'); setRating('+inProductID+','+(stars+1)+',\''+inXajaxFunction+'\'); return false"';
			//'+inXajaxFunction+'('+inProductID+','+(stars+1)+');
		}
		
		if ((stars+1) <= inRating) {
			string += '<img border="0" style="border:0px" align="absmiddle" '+id+' src="'+ratingImagePath+changed+'On.gif" />';
		}
		else {
			string += '<img border="0" style="border:0px" align="absmiddle" '+id+' src="'+ratingImagePath+changed+'Off.gif" />';
		}
		if (inXajaxFunction != '') {
			string += '</a>';
		}
	}
	return string;
}


function redrawProduct(inProductID,inRating) {
	changed = ratingChanged[inProductID]?'done':'';
	for (stars = 0; stars < 5 ;stars++) {
		if ((stars+1) <= inRating) {
			src = ratingImagePath+changed+'On.gif';
		}
		else {
			src = ratingImagePath+changed+'Off.gif';
		}
		titem = document.getElementById('productRating'+inProductID+'star'+stars);
		titem.src = src;
	}
}

function ratingCreateCookie(name,value,days) {
	if (days) {
		var date = new Date();
		date.setTime(date.getTime()+(days*24*60*60*1000));
		var expires = "; expires="+date.toGMTString();
	}
	else var expires = "";
	document.cookie = name+"="+value+expires+"; path=/";
}

function ratingReadCookie(name) {
	var nameEQ = name + "=";
	var ca = document.cookie.split(';');
	for(var i=0;i < ca.length;i++) {
		var c = ca[i];
		while (c.charAt(0)==' ') c = c.substring(1,c.length);
		if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
	}
	return null;
}

function ratingEraseCookie(name) {
	createCookie(name,"",-1);
}
