function TS_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 TS_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=TS_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function TS_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=TS_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function TS_swapImage() { //v3.0
  var i,j=0,x,a=TS_swapImage.arguments; 
  document.MM_sr=new Array; 
  for(i=0;i<(a.length-2);i+=3)
   if ((x=TS_findObj(a[i]))!=null)
   {
     document.MM_sr[j++]=x; 
	 if(!x.oSrc) x.oSrc=x.src; 
	 x.src=a[i+2];
   }
}
function initRating()
{
  
  var a,k,i,normal,gray,over;
  var objname, dir;
  
  a=initRating.arguments;
  objname = a[0];
    //alert ('initRating' + objname);

	dir = a[1];
	
	normal = new Array();
	gray = new Array();
	over = new Array();
	k = 1;
  for(i=2;i<(a.length-1);i+=3){
	  normal[k] = a[i];
	  gray[k] = a[i+1];
	  over[k] = a[i+2];	
	 k++;	  		  
	}
	var myArguments = "'"+a[0]+"'";
  for(i=1;i<(a.length);i++)
	  myArguments += ', \''+a[i]+'\''; 
  
  var obj = TS_findObj(objname);
		var theDiv = getSpecificByObjName(objname);
		var idPage = theDiv.getAttribute("ratgIdPage"); 
		var idCat = theDiv.getAttribute("ratgIdCat"); 
		var idAlign = theDiv.getAttribute("ratgAlign"); 
		var idTxt = theDiv.getAttribute("ratgTxt"); 

  resultvote = vote("id="+objname+"&ratgIdPage="+idPage+"&ratgIdCat="+idCat+"&getresults=1");
	pos = resultvote.indexOf('-');
	votes = parseFloat(resultvote.substr(0,pos));
	total = resultvote.substr(pos+1);	

	
	var str = '<table cellpadding="0" cellspacing="0"><tr>';
	for (i=1; i<=5; i++){
	  var src = gray[i]; 
	  if (votes+1 >= i){
			src = normal[i]; 
			if ((parseInt(votes+1) == i)) {
				if ((votes-parseInt(votes))>=0.75) {
  				src = '/TSRating/images/last_quarter.gif'; 
				} else if ((votes-parseInt(votes))>=0.5) {
  				src = '/TSRating/images/half.gif';
				} else if ((votes-parseInt(votes))>=0.25) {
  				src = '/TSRating/images/first_quarter.gif';
				} else {
  				src = '/TSRating/images/gray3.gif';
				}
			}
		}	
		var arg = '';
		for (k=1;k<=i;k++)
		    arg += '\''+objname+'-'+k+'\',\'\',\''+over[k]+'\',';
		str += '<td>';
//		alert(idAlign);
		if (idAlign == "right" && i==1) {
			str += idTxt;
		}
		//str += '<a href="javascript:vote(\''+dir+'\',\'id='+objname+'&vote='+i+'\');initRating('+myArguments+');" onMouseOut="TS_swapImgRestore()" onMouseOver="TS_swapImage('+arg+'1)"><img src="'+src+'" name="'+objname+'-'+i+'" border="0"></a>'
		//alert (arg);

		//try with charles
				str += '<a href="javascript:void(0);"';
				str += 'onmousedown="pageTracker._trackEvent(\'Rating\', \'PutRating\', \''+idPage+'\', '+i+');"';
				str += 'onmouseup="vote(\'id='+objname+'&ratgIdPage='+idPage+'&ratgIdCat='+idCat+'&vote='+i+'\');initRating('+myArguments+');"';
				str += 'onMouseOut="TS_swapImgRestore()"';
				str += 'onMouseOver="TS_swapImage('+arg+'1)">';
				str += '<img src="'+src+'" name="'+objname+'-'+i+'" border="0">';
				str += '</a>';
				
				//before OK//str += '<a href="javascript:vote(\'id='+objname+'&ratgIdPage='+idPage+'&ratgIdCat='+idCat+'&vote='+i+'\');initRating('+myArguments+');" onMouseOut="TS_swapImgRestore()" onMouseOver="TS_swapImage('+arg+'1)"><img src="'+src+'" name="'+objname+'-'+i+'" border="0"></a>'
		str += '</td>';
		if (idAlign == "left" && i==5) {
		   str += "<td>&nbsp;&nbsp;" + idTxt + "</td>";
		}

	}

	str += '</tr><tr><td colspan="5"' 
		if (idAlign == "right") {
			str +=' align="right"';
		}
	str += ' class="tdvotes">'+total+' votes</td></tr></table>';

	obj.innerHTML = str;
}

function initRatingSame(){
	
	//by Charles
	var tets = getRatings();
  //end by charles
  //alert ('oui' + tets.length);
	
	for (iNbRatg=0; iNbRatg< tets.length; iNbRatg++){
		var idOfTheRating = tets[iNbRatg].getAttribute("id"); 
		var idPage = tets[iNbRatg].getAttribute("ratgIdPage"); 
		var idCat = tets[iNbRatg].getAttribute("ratgIdCat"); 
		//alert(idOfTheRating );
		var a = [idOfTheRating,'/TSRating','/TSRating/images/normal3.gif','/TSRating/images/gray3.gif','/TSRating/images/over3.gif'];
		//alert(idOfTheRating); 
		//alert (a);
		//alert('ici');

	var myArgumentsSame = "";
  for(i=2;i<(a.length);i++)
	  myArgumentsSame += ', \''+a[i]+'\''; 
	var myArguments = '';    
	for(i=0;i<5;i++)
	  myArguments += myArgumentsSame;
	myArguments = '\''+a[0]+'\', \''+a[1]+'\'' + myArguments;
		//alert('ici2');

	eval("initRating("+myArguments+");");
	//alert(idPage);
	//alert(idCat);
	//initRatingCharles(idPage, idCat);
	//alert('ici ok');
	}
	
	 //initRatingSame('Rating13','/TSRating','/TSRating/images/normal3.gif','/TSRating/images/gray3.gif','/TSRating/images/over3.gif');
// 	var a = ['Rating13','/TSRating','/TSRating/images/normal3.gif','/TSRating/images/gray3.gif','/TSRating/images/over3.gif'];
  
  
  //a=initRatingSame.arguments;

}


function createXMLHttpRequest() {
	try{return new XMLHttpRequest();}
	catch(e){
		try { return new ActiveXObject("Msxml2.XMLHTTP"); }
		catch(e){
			try { return new ActiveXObject("Microsoft.XMLHTTP"); }
			catch(e){}
		}	
	}
	
	return null;
}
 
 function vote(arg){    
    var xmlhttp = createXMLHttpRequest();
	  //alert(arg);
	  xmlhttp.open("GET", "/TSRating/vote2.php?"+arg, false);
    xmlhttp.send(null);
    return xmlhttp.responseText;
}


//added by Charles
function filterFromJS(f, arr) {
	var newArr = [];
	if(arr)
		for(var i = 0; i < arr.length; i++)
			if(f(arr[i], i, arr))
				newArr.push(arr[i]);
	return newArr;
}

function getRatings() {
		var els = filterFromJS(function(el) {
		   return (el.className.match(/^mediaRating/)); }, document.getElementsByTagName('div'));
		return els;
}

function getSpecificRatings(idPage, idCategorie) {
		var els = filterFromJS(function(el) {
		   return (el.className.match(/^mediaRating/)); }, document.getElementsByTagName('div'));	
	for (iNbRatg=0; iNbRatg < els.length; iNbRatg++){
		var divId = els[iNbRatg].getAttribute("id"); 
		var divCategory = els[iNbRatg].getAttribute("ratgCategory"); 
		if ((null != idOfTheRating) && (null != testParam) 
		     && (divCategory.toLowerCase() == idCategorie.toLowerCase()) 
		     && (divId.toLowerCase() == idPage.toLowerCase())) {
		   return els[iNbRatg]
		}
	}
}

function getSpecificByObjName(objName) {
		var els = filterFromJS(function(el) {
		   return (el.className.match(/^mediaRating/)); }, document.getElementsByTagName('div'));	
	for (iNbRatg=0; iNbRatg < els.length; iNbRatg++){
		var divId = els[iNbRatg].getAttribute("id"); 
		if ((null != divId) 
		     && (divId.toLowerCase() == objName.toLowerCase())) {
		   return els[iNbRatg]
		}
	}
}

if (document.addEventListener ) {
	window.addEventListener ('load', bodyonloadRating, false);
  } else if (document.attachEvent) {
	window.attachEvent ("onload", bodyonloadRating);
  } else {
	window["onload"] = bodyonloadRating;
  };



function MyRating() {
	this.normalIcon = new Array(5);
	this.grayIcon = new Array(5);
	this.overIcon = new Array(5);
	this.idPage = -1;
  this.idCategory = '';
}

MyRating.SEPARATOR = 'xXxXx';

function buildObjectName(idPage, idCategorie) {
	return (idPage + MyRating.SEPARATOR + idCategorie);
}


/*function initRatingCharles(idPage, idCategorie) {
  var a,k,i;
  var objname, dir;
	var myRating = new MyRating();
	for (i=0;i<5;i++) {
		myRating.normalIcon[i] = '/TSRating/images/normal3.gif';
		myRating.grayIcon[i] = '/TSRating/images/gray3.gif';
		myRating.overIcon[i] = '/TSRating/images/over3.gif';
	}
	myRating.idPage = idPage;
  myRating.idCategory = idCategorie;
  resultvote = vote("id="+buildObjectName(idPage, idCategorie)+"&getresults=1");
	pos = resultvote.indexOf('-');
	votes = parseInt(resultvote.substr(0,pos));
	total = resultvote.substr(pos+1);
  var obj = TS_findObj(buildObjectName(idPage, idCategorie));
	var str = '<table cellpadding="0" cellspacing="0"><tr>';
	for (i=1; i<=5; i++){
	  var src = myRating.grayIcon[i-1]; 
	  if (votes >= i){
			src = myRating.normalIcon[i-1]; 
		}	
		var arg = '';
		for (k=1;k<=i;k++)
		    arg += '\''+buildObjectName(idPage, idCategorie)+'-'+k+'\',\'\',\''+myRating.overIcon[k]+'\',';
		str += '<td>';
//		if (i==1) {
//			//str += "ma categorie";
//		}

//		str += '<a href="javascript:vote(\''+dir+'\',\'id='+objname+'&vote='+i+'\');initRating('+myArguments+');" onMouseOut="TS_swapImgRestore()" onMouseOver="TS_swapImage('+arg+'1)"><img src="'+src+'" name="'+objname+'-'+i+'" border="0"></a>'
		str += '<a href="javascript:vote(\'id='+buildObjectName(idPage, idCategorie)+'&vote='+i+'\');initRatingCharles(idPage, idCategorie);" onMouseOut="TS_swapImgRestore()" onMouseOver="TS_swapImage('+arg+'1)"><img src="'+src+'" name="'+buildObjectName(idPage, idCategorie)+'-'+i+'" border="0"></a>'
//		if (i==5) {
//			//str += "la picine est propre";
//		}
		str += '</td>';
	}
	str += '</tr><tr><td colspan="5" class="tdvotes">'+total+' votes</td></tr></table>';
	//str +=' align="right"';	
	obj.innerHTML = str;
}

*/