var valeur_resistance;
var valeur_anneau1=2;
var valeur_anneau2=0;
var valeur_anneau3=0;
var valeur_multiplicateur=10000;
var valeur_tolerance=10;
var isAnneau3=false;
var isTemperature=false;
anneauValColor=new Array("#000000","#CC6633","#FF0000","#FF6633","#EEEE00","#00DD00","#0000FF","#660099","#999999","#FFFFFF");
anneauMulColor=new Array("#CCCCCC","#FFFF99","#000000","#CC6633","#FF0000","#FF6633","#EEEE00","#00DD00","#0000FF","#660099");

function updateAnneau1(obj,ev){
var val_anneau1=parseFloat(obj.id);
var arrow1_pos=22*(1+val_anneau1);
document.getElementById("tab_anneau1").style.backgroundPosition="0 "+arrow1_pos+"px";
document.getElementById("1_anneau1").style.backgroundColor=obj.style.backgroundColor;
valeur_anneau1=val_anneau1;
calcul_resistance();
}

function updateAnneau2(obj,ev){
var val_anneau2=parseFloat(obj.id);
var arrow2_pos=22*(1+val_anneau2);
document.getElementById("tab_anneau2").style.backgroundPosition="0 "+arrow2_pos+"px";
document.getElementById("2_anneau2").style.backgroundColor=obj.style.backgroundColor;
valeur_anneau2=val_anneau2;
calcul_resistance();
}

function updateAnneau3(obj,ev){
if(!isAnneau3)return;
var val_anneau3=parseFloat(obj.id);
var arrow3_pos=22*(1+val_anneau3);
document.getElementById("tab_anneau3").style.backgroundPosition="0 "+arrow3_pos+"px";
document.getElementById("3_anneau3").style.backgroundColor=obj.style.backgroundColor;
valeur_anneau3=val_anneau3;
calcul_resistance();
}

function updateMultiplicateur(obj,ev){
var val_multiplicateur=parseFloat(obj.id);
var arrow3_pos=22*(1+val_multiplicateur);
document.getElementById("tab_multiplicateur").style.backgroundPosition="0 "+arrow3_pos+"px";
document.getElementById("3_multiplicateur").style.backgroundColor=obj.style.backgroundColor;
var temp=val_multiplicateur-2;
valeur_multiplicateur=Math.pow(10,temp);
calcul_resistance();
}

function updateTolerance(obj,ev){
var val_tolerance=parseFloat(obj.id);
var arrow4_pos=22*(1+val_tolerance);
document.getElementById("tab_tolerance").style.backgroundPosition="0 "+arrow4_pos+"px";
document.getElementById("4_tolerance").style.backgroundColor=obj.style.backgroundColor;
	switch (val_tolerance)
	{
		case 0:
		valeur_tolerance=10;
		break;
		
		case 1:
		valeur_tolerance=5;
		break;
		
		case 2:
		valeur_tolerance=1;
		break;
		
		case 3:
		valeur_tolerance=2;
		break;
		
		case 4:
		valeur_tolerance=0.5;
		break;
		
		case 5:
		valeur_tolerance=0.25;
		break;
		
		case 6:
		valeur_tolerance=0.1;
		break;
		
		case 7:
		valeur_tolerance=0.05;
		break;

	}
affich_tolerance();
}

function updateTemperature(obj,ev){
if(!isTemperature)return;
var val_temperature=parseFloat(obj.id);
var arrow6_pos=22*(1+val_temperature);
document.getElementById("tab_temperature").style.backgroundPosition="0 "+arrow6_pos+"px";
document.getElementById("6_temperature").style.backgroundColor=obj.style.backgroundColor;
}

function calcul_resistance(){
	if(isAnneau3)
	{
		if(valeur_multiplicateur<1)
			{
			var jsbug=1/valeur_multiplicateur;
			valeur_resistance = (100*valeur_anneau1+10*valeur_anneau2+valeur_anneau3)/(jsbug);
			}
		else 
			{
			valeur_resistance = (100*valeur_anneau1+10*valeur_anneau2+valeur_anneau3)*(valeur_multiplicateur);
			}
	}
	if (!isAnneau3)
	{	
		if(valeur_multiplicateur<1)
			{
			var jsbug=1/valeur_multiplicateur;
			valeur_resistance = (10*valeur_anneau1 + valeur_anneau2)/(jsbug);
			}
		else 
			{
			valeur_resistance = (10*valeur_anneau1 + valeur_anneau2)*(valeur_multiplicateur);
			}
	}
affichage(valeur_resistance);
}

function affichage(val){
var valeur_resistance_affich=val;
var unite="\u03A9";

if(val>999 && val<999999){
	valeur_resistance_affich=val/1000;
	unite="K"+"\u03A9";
	}
if(val>999999 && val<999999999){
	valeur_resistance_affich=val/1000000;
	unite="M"+"\u03A9";
	}
if(val>999999999 && val<999999999999){
	valeur_resistance_affich=val/1000000000;
	unite="G"+"\u03A9";
	}
document.getElementById("affichage").value=valeur_resistance_affich+ unite;
}

function affich_tolerance(){
document.getElementById("affichage_tolerance").value="\u00B1"+valeur_tolerance+"%";
}

function displayAnneau3()
{
isAnneau3=document.getElementById("checkAnneau3").checked;

if (isAnneau3)
	{
	document.getElementById("3_multiplicateur").style.left="105px";
	document.getElementById("3_anneau3").style.visibility="visible";
	document.getElementById("traitV").style.left="357px";
	document.getElementById("traitH").style.left="357px";
	document.getElementById("traitH").style.width="67px";
	document.getElementById("traitV3").style.visibility="visible";
	
	document.getElementById("title3").style.backgroundColor="#FFFFFF";
	document.getElementById("0t").style.backgroundColor="#000000";
	document.getElementById("1t").style.backgroundColor="#CC6633";
	document.getElementById("2t").style.backgroundColor="#FF0000";
	document.getElementById("3t").style.backgroundColor="#FF6633";
	document.getElementById("4t").style.backgroundColor="#EEEE00";
	document.getElementById("5t").style.backgroundColor="#00DD00";
	document.getElementById("6t").style.backgroundColor="#0000FF";
	document.getElementById("7t").style.backgroundColor="#660099";
	document.getElementById("8t").style.backgroundColor="#999999";
	document.getElementById("9t").style.backgroundColor="#FFFFFF";
	}
	
if (!isAnneau3)
	{
	document.getElementById("3_multiplicateur").style.left="80px";
	document.getElementById("3_anneau3").style.visibility="hidden";
	document.getElementById("traitV").style.left="332px";
	document.getElementById("traitH").style.left="332px";
	document.getElementById("traitH").style.width="92px";
	document.getElementById("traitV3").style.visibility="hidden";
	
	document.getElementById("title3").style.backgroundColor="#B5B5B5";
	document.getElementById("0t").style.backgroundColor="#454545";
	document.getElementById("1t").style.backgroundColor="#88766E";
	document.getElementById("2t").style.backgroundColor="#875C5C";
	document.getElementById("3t").style.backgroundColor="#957A72";
	document.getElementById("4t").style.backgroundColor="#989870";
	document.getElementById("5t").style.backgroundColor="#597E59";
	document.getElementById("6t").style.backgroundColor="#5C5C87";
	document.getElementById("7t").style.backgroundColor="#6D5C75";
	document.getElementById("8t").style.backgroundColor="#898989";
	document.getElementById("9t").style.backgroundColor="#B5B5B5";
	}
calcul_resistance();
}

function displayTemperature()
{
isTemperature=document.getElementById("checkTemperature").checked;

if (isTemperature)
	{
	document.getElementById("4_tolerance").style.left="175px";
	
	document.getElementById("6_temperature").style.visibility="visible";
	
	document.getElementById("traitVTol").style.left="429px";
	document.getElementById("traitHTol").style.left="429px";
	document.getElementById("traitHTol").style.width="157px";
	document.getElementById("traitTemp").style.visibility="visible";

	document.getElementById("title6").style.backgroundColor="#FFFFFF";
	document.getElementById("0tp").style.backgroundColor="#000000";
	document.getElementById("1tp").style.backgroundColor="#CC6633";
	document.getElementById("2tp").style.backgroundColor="#FF0000";
	document.getElementById("3tp").style.backgroundColor="#FF6633";
	document.getElementById("4tp").style.backgroundColor="#EEEE00";
	//document.getElementById("5tp").style.backgroundColor="#00DD00";
	document.getElementById("5tp").style.backgroundColor="#0000FF";
	document.getElementById("6tp").style.backgroundColor="#660099";
	//document.getElementById("8tp").style.backgroundColor="#999999";
	document.getElementById("7tp").style.backgroundColor="#FFFFFF";
	}
	
if (!isTemperature)
	{
	document.getElementById("4_tolerance").style.left="200px";
	
	document.getElementById("6_temperature").style.visibility="hidden";
	
	document.getElementById("traitVTol").style.left="452px";
	document.getElementById("traitHTol").style.left="452px";
	document.getElementById("traitHTol").style.width="134px";
	//document.getElementById("traitH").style.width="92px";
	document.getElementById("traitTemp").style.visibility="hidden";
	
	document.getElementById("title6").style.backgroundColor="#B5B5B5";
	document.getElementById("0tp").style.backgroundColor="#454545";
	document.getElementById("1tp").style.backgroundColor="#88766E";
	document.getElementById("2tp").style.backgroundColor="#875C5C";
	document.getElementById("3tp").style.backgroundColor="#957A72";
	document.getElementById("4tp").style.backgroundColor="#989870";
	//document.getElementById("5tp").style.backgroundColor="#597E59";
	document.getElementById("5tp").style.backgroundColor="#5C5C87";
	document.getElementById("6tp").style.backgroundColor="#6D5C75";
	//document.getElementById("8tp").style.backgroundColor="#898989";
	document.getElementById("7tp").style.backgroundColor="#B5B5B5";
	}
}

function set_anneau(){
var multi=1;
var texte=document.getElementById('affichage').value;

/**********************************************************************/
if (texte.indexOf("k",0)!=-1 || texte.indexOf("K",0)!=-1)multi=1000;
if (texte.indexOf("m",0)!=-1 || texte.indexOf("M",0)!=-1)multi=1000000;
if ((texte.indexOf("k",0)!=-1 || texte.indexOf("K",0)!=-1) && (texte.indexOf("m",0)!=-1 || texte.indexOf("M",0)!=-1))
	{
	texte=texte.replace("k","K");
	texte=texte.replace("m","M");
	if (texte.indexOf("K") < texte.indexOf("M")) multi=1000; else multi=1000000;
	}
/**********************************************************************/

texte=texte.replace(",",".");
texte=texte.replace(/[^0-9\.]/gi,"");
var texte_num=parseFloat(texte);
if(isNaN(texte_num)){return;}
texte_num=texte_num*multi;
texte=texte_num.toString();

if(!isAnneau3)
{
	if(texte_num>=10)
		{
		if(texte.indexOf(".")!=-1)texte=texte.substring(0,texte.indexOf("."));
		var v1=parseInt(texte.charAt(0));
		var v2=parseInt(texte.charAt(1));
		var v4=texte.length;
		if (v4>9) v4=9;
		}
	if(texte_num<10)
		{
		if(texte.charAt(0)!=0)
			{
			var v1=parseInt(texte.charAt(0));
			if(texte.length>2){var v2=parseInt(texte.charAt(2));} else {var v2=0;}
			var v4=1;
			}
		if(texte.charAt(0)==0)
			{
			if(texte.length>=4)
				{
				var v1=parseInt(texte.charAt(2));
				var v2=parseInt(texte.charAt(3));
				var v4=0;
				}
			if(texte.length==3)
				{
				var v1=parseInt(texte.charAt(2));
				var v2=0;
				var v4=0;
				}
			if(texte.length<3)
				{
				return;
				}
			}
		}
}
if(isAnneau3)
{
	if(texte_num<1)
		{
		return;
		}
	if(texte_num>=1 && texte_num<100)
		{
		texte_detox=texte.replace(".","");
		if(texte_detox.length ==1)
			{
			var v1=parseInt(texte_detox.charAt(0));
			var v2=0;
			var v3=0;
			}
		if(texte_detox.length ==2)
			{
			var v1=parseInt(texte_detox.charAt(0));
			var v2=parseInt(texte_detox.charAt(1));
			var v3=0;
			}
		if(texte_detox.length >=3)
			{
			var v1=parseInt(texte_detox.charAt(0));
			var v2=parseInt(texte_detox.charAt(1));
			var v3=parseInt(texte_detox.charAt(2));
			}
		if(texte_num<10)var v4=0;
		if(texte_num>=10)var v4=1;
		}
	if(texte_num>=100)
		{
		var v1=parseInt(texte.charAt(0));
		var v2=parseInt(texte.charAt(1));
		var v3=parseInt(texte.charAt(2));
		var v4=texte.length-1;
		}
}

updateAnneau1_temp(v1);
updateAnneau2_temp(v2);
if(isAnneau3)updateAnneau3_temp(v3);
updateMultiplicateur_temp(v4);

valeur_anneau1=v1;
valeur_anneau2=v2;
if(isAnneau3)valeur_anneau3=v3;
v4=Math.pow(10,(v4-2));
valeur_multiplicateur=v4;
calcul_resistance();

}
function updateAnneau1_temp(val)
	{
	if(val>9 || val<1) return;
	var arrow1_pos=22*(1+val);
	document.getElementById("tab_anneau1").style.backgroundPosition="0 "+arrow1_pos+"px";
	document.getElementById("1_anneau1").style.backgroundColor=anneauValColor[val];
	}
function updateAnneau2_temp(val)
	{
	if(val>9 || val<0) return;
	var arrow2_pos=22*(1+val);
	document.getElementById("tab_anneau2").style.backgroundPosition="0 "+arrow2_pos+"px";
	document.getElementById("2_anneau2").style.backgroundColor=anneauValColor[val];
	}

function updateAnneau3_temp(val)
	{
	if(val>9 || val<0) return;
	var arrow3_pos=22*(1+val);
	document.getElementById("tab_anneau3").style.backgroundPosition="0 "+arrow3_pos+"px";
	document.getElementById("3_anneau3").style.backgroundColor=anneauValColor[val];
	}

function updateMultiplicateur_temp(val)
	{
	if(val>9 || val<0) return;
	var arrow3_pos=22*(1+val);
	document.getElementById("tab_multiplicateur").style.backgroundPosition="0 "+arrow3_pos+"px";
	document.getElementById("3_multiplicateur").style.backgroundColor=anneauMulColor[val];
	}