function Couleur(color, count, startCount) {
 
 	//alert('Couleur(color, count)');
 	this.color=color;
 	this.count=count;
 	this.startCount=startCount;
 	//this.tid=null
 	//	this.id=null;
 }
 
 //Couleur.prototype.attachId=function(id){ this.id=id}
 
 
 function fadeDivColor(id, endColor, couleur, tid) {

	//alert('fadeDivColor');
	
	
	if(couleur.startCount!=0) {
	
		couleur.startCount--;
		return true;
	
	}
	fade(couleur, endColor);
		
    	if (document.getElementById) {
        	document.getElementById(id).style.backgroundColor = couleur.color;
    	}
    	couleur.count--;
    	
    	if (couleur.color==endColor) {
    	
            clearInterval(tid);
            return false;
	}
	return true;
}






function setBackgroundColor(id, bgcolor, tid ) {

	//alert('setBackgroundColor');

    	if (document.getElementById) {
        	document.getElementById(id).style.backgroundColor = bgcolor;
    	}
        clearTimeout(tid);
}



function Dec2Hex (Dec) {

  var hexChars = "0123456789ABCDEF";
  var a = Dec % 16;
  var b = (Dec - a)/16;
  hex = "" + hexChars.charAt(b) + hexChars.charAt(a);
  return hex;
}


function fade (couleur, end) {

	  //alert('fade');
	  redA     = couleur.color.charAt(0) + couleur.color.charAt(1);
	  red_valA = parseInt(redA,'16');
	  redB     = end.charAt(0) + end.charAt(1);
	  red_valB = parseInt(redB,'16');
	  red_int  = ((red_valB - red_valA) / couleur.count) * -1;
	  grnA     = couleur.color.charAt(2) + couleur.color.charAt(3);
	  grn_valA = parseInt(grnA,'16');
	  grnB     = end.charAt(2) + end.charAt(3);
	  grn_valB = parseInt(grnB,'16');
	  grn_int  = ((grn_valB - grn_valA) / couleur.count) * -1;
	  bluA     = couleur.color.charAt(4) + couleur.color.charAt(5);
	  blu_valA = parseInt(bluA,'16');
	  bluB     = end.charAt(4) + end.charAt(5);
	  blu_valB = parseInt(bluB,'16');
	  blu_int  = ((blu_valB - blu_valA) / couleur.count) * -1;
	  red = red_valA;
	  grn = grn_valA;
	  blu = blu_valA;
	  red -= red_int;
	  red_hex = Dec2Hex(red);
	  grn -= grn_int;
	  grn_hex = Dec2Hex(grn);
	  blu -= blu_int;
	  blu_hex = Dec2Hex(blu);
	  
	  couleur.color=red_hex + grn_hex + blu_hex;
	  
	  //alert(couleur.color);
	  return (red_hex + grn_hex + blu_hex);
}