
/***** Initialisation de nos tableau de liste ****/

//taille en pixel du canevas -> important pour l'echelle
var pixelSize = 400;

var tabListeHeure = new Array;
//tabListeHeure[0]  = 'i_debut_heure';
tabListeHeure[0]  = 'i_apero_heure';
tabListeHeure[1]  = 'i_entree_heure';
tabListeHeure[2]  = 'i_repas_heure';
tabListeHeure[3]  = 'i_digestif_heure';
tabListeHeure[4]  = 'i_quitter_heure';

var tabListeMin = new Array;
//tabListeMin[0]  = 'i_debut_min';
tabListeMin[0]  = 'i_apero_min';
tabListeMin[1]  = 'i_entree_min';
tabListeMin[2]  = 'i_repas_min';
tabListeMin[3]  = 'i_digestif_min';
tabListeMin[4]  = 'i_quitter_min';


var tabListeNbVerre = new Array;
tabListeNbVerre[0]	=	'i_apero_nbverre';
tabListeNbVerre[1]	=	'i_entree_nbverre';
tabListeNbVerre[2]	=	'i_repas_nbverre';
tabListeNbVerre[3]	=	'i_digestif_nbverre';

var tabListeConso	= new Array;
tabListeConso[0]	=	'i_apero_verre';
tabListeConso[1]	=	'i_entree_verre';
tabListeConso[2]	=	'i_repas_verre';
tabListeConso[3]	=	'i_digestif_verre';

//****		-= Fin d'init	=- 		****/

var ieCanvasPath	=	 'http://localhost/educAlcool/js/plotkit/iecanvas.htc';
var options; //Declaration de la variable options
var options2;
var valprec =0;
var canvasDraw = false;
/////////////////////////////////////////////////////////
//		Fonction de calcul du taux d'alcoolémie		//
/////////////////////////////////////////////////////////

//Fonction calculant le taux d'alcoolémie selon sa position dans le temps
function calculTaux(en)
{
	valprec = 0;
	var boolOk = true;
	//verif des champs
	//Coef de sexe H: 0.7 F: 0.6
	if(document.getElementById('i_sexe_male').checked)
	{
		var coefK		= 0.7;
	}
	else
	{
			if(document.getElementById('i_sexe_fem').checked)
			{
				var coefK		= 0.6;
			}
			else
			{
				boolOk=false;
			}
	}
	//On verifie le champs poids
	if(document.getElementById('i_poids_kilo').value!='')
	{
		var intPoids = parseInt(document.getElementById('i_poids_kilo').value);
		if(intPoids == NaN)
		{
			boolOk=false;
		}
	}
	else
	{
		if(document.getElementById('i_poids_lbs').value!='') //Si on est en lbs on converti en Kg
		{
			var intPoids = parseInt(document.getElementById('i_poids_lbs').value);
			if(intPoids == NaN)
			{
				boolOk=false;
			}
			intPoids = convertPoids(intPoids);
		}
		else
		{
			boolOk=false;
		}
	}
	
	//Si la vérif des champs est bonne on passe au calcul
	if(boolOk==true)
	{
		var tauxAlcoolVerre 	=	14;	//Taux d'alcoolemie pour 1 verre
		var totalAlcool			=	0;
		var tabAlcool	=	new Array();
		
		////////////////////////////////////
		// ** On défini notre echelle de temps
		
			//On récupére les valeurs de la premiére liste
		var listeMin = document.getElementById(tabListeMin[0]);		
		min	=	listeMin[listeMin.selectedIndex].value;
		fl_min			=	parseFloat(min);
		fl_min			=	fl_min/60;
		var listeH  	=   document.getElementById(tabListeHeure[0]);		
		heure			=	listeH[listeH.selectedIndex].value;
		
			//On récupére les valeurs de la derniére liste
		var listeMin = document.getElementById(tabListeMin[0]);		
		min	=	listeMin[listeMin.selectedIndex].value;
		fl_min			=	parseFloat(min);
		fl_min			=	fl_min/60;
		var listeH  	=   document.getElementById(tabListeHeure[0]);		
		heure			=	listeH[listeH.selectedIndex].value;
		
		
		///** Fin de définition de l'echelle **//
		
		//On récupére notre temps et on le formate en décimal pour les calculs
		for(var i=0;i<tabListeHeure.length;i++)
		{
			var listeMin = document.getElementById(tabListeMin[i]);		
			min	=	listeMin[listeMin.selectedIndex].value;
			
			fl_min			=	parseFloat(min);
			fl_min			=	fl_min/60;
			
			var listeH  	=   document.getElementById(tabListeHeure[i]);		
			heure			=	listeH[listeH.selectedIndex].value;
			
			var heureDecimal = 0;
			
			switch (heure)
			{
				case '00':
				heureDecimal = 24+fl_min;
				break;
				
				case '01':
				heureDecimal = 25+fl_min;
				break
				
				case '02':
				heureDecimal = 26+fl_min;
				break;
				
				case '03':
				heureDecimal = 27+fl_min;
				break;
				
				default:
				heureDecimal = parseInt(heure)+fl_min;
				break;
			}
			//var j = i-1;
			tabAlcool[i] = new Array(3);
			tabAlcool[i][0]	 = heureDecimal;
			if(min==0)
			{
				min = '00';
			}
	    tabAlcool[i][1]	 = 0;
			tabAlcool[i][2]	 = heure+":"+min;	//On formate aussi notre heure pour l'afficher dans le graph

		}
		
		//On calcul notre echelle
		var partyLength = tabAlcool[tabAlcool.length-1][0] - tabAlcool[0][0];

		//On définie notre echelle sur 1/4 d'heure
		intTabSize = partyLength*4;
		tabJalonGraph = new Array(intTabSize+3);
		for(i=0;i<intTabSize+3;i++)
		{
			tabJalonGraph[i]	=	new Array(4);
			tabJalonGraph[i][0] = 	tabAlcool[0][0]+(i*0.25);
			tabJalonGraph[i][1] = 	0;
			tabJalonGraph[i][2] = 	0;
			tabJalonGraph[i][3] = 	'';
		}

		//On récupére notre nombre de verre
		for(var i=0;i<tabListeNbVerre.length;i++)
		{
			var listeverre 		= document.getElementById(tabListeNbVerre[i]);	
			nbVerre				= listeverre[listeverre.selectedIndex].value;
			tabAlcool[i][1] 	= parseInt(tauxAlcoolVerre)*parseInt(nbVerre);
		}

		//Pour chaque élément du tableau précédent on regarde si il est dans notre nouveau tableau détaillé afin de l'insérer
		for(i=0;i<tabAlcool.length;i++)
		{
			for(j=0;j<tabJalonGraph.length;j++)
			{
				//On ajoute les date en entier
				if(tabJalonGraph[j][0]==Math.round(tabJalonGraph[j][0]))//Si l'arrondi est egal a l'entier alors
				{
					var h;
					if(tabJalonGraph[j][0]>23)
					{
						switch(tabJalonGraph[j][0])
						{
							case 24:
							h='00';
							break;
							
							case 25:
							h='01';
							break;
							
							case 26:
							h='02';
							break;
							
							case 27:
							h='03';
							break;
						}
					}
					else
					{
						h=tabJalonGraph[j][0];
					}
					
					if(!en)
					{
						tabJalonGraph[j][3] = 	h+':00';
					}
					else
					{
						tabJalonGraph[j][3] = 	whatTimeIsIt(h);
					}
					
					
				}
				
				if(tabJalonGraph[j][0]==tabAlcool[i][0]) //On intégre le temps d'absorption
				{
						tabJalonGraph[j][1] =   tabAlcool[i][1];
				}
			}
		}
		
		//On calcul le poids en fonction du coef
		var CoefPoids = intPoids*coefK;
		var txAlcool=0;
		
		//Pour chaque jalon on calcul
		for(var j=0;j<tabJalonGraph.length;j++)
		{
			txAlcool = formuleCalcul(tabAlcool[0][0],tabJalonGraph[j][0],txAlcool,tabJalonGraph[j][1],CoefPoids);
			tabJalonGraph[j][2] = txAlcool;
		}
		
		var arrDataset = new Array();
		var arrParamX  = new Array();

		for(var i=0;i<tabJalonGraph.length;i++)
		{								
				if(tabJalonGraph[i][3]!='')
				{
					arrParamX[i] = {v:i, label:tabJalonGraph[i][3]};
				}
				else
				{
					arrParamX[i] = {v:i, label:''};
				}
		}

		//On renseigne notre tableau pour le dataset
		for(var i=0;i<tabJalonGraph.length;i++)
		{
			arrDataset[i] = [parseInt(i),parseFloat(tabJalonGraph[i][2])];
		}
		//On initialise les options du graphiques en fonctions de la taille de l'axe et de sa légende
		initOptions(arrParamX,tabJalonGraph.length);
		nav = navigator.userAgent;
		
		if(nav.indexOf("MSIE")!=-1)
		{
			//Pour le mechant IE
			drawGraphIe(arrDataset);
			document.getElementById('legendeGraph').style.visibility = '';
		}
		else
		{
			//Pour les bons nav
			drawGraph2(tabJalonGraph.length);	
			drawGraph(arrDataset);
			document.getElementById('legendeGraph').style.visibility = 'visible';
		}

		var res_alcool = Math.round(parseFloat(tabJalonGraph[tabJalonGraph.length-3][2])*1000);
		document.getElementById('tauxAlcool').innerHTML = res_alcool;
		document.getElementById('phraseTaux').style.visibility = 'visible';
		document.getElementById('phraseTaux2').style.visibility = 'visible';
		  document.getElementById('resTaux2').style.visibility = 'visible';
		
		if(!en)
		{
      if(res_alcool<60)
      {
        var phrase_res = "Vous êtes légalement en mesure de conduire.";
      }
      else
      {
        if((res_alcool>=60) && (res_alcool<80))
        {
          var phrase_res = "Légalement, vous pouvez conduire, mais il est plus prudent d'attendre avant de prendre le volant.";
        }
        else
        {
          var phrase_res = "Attention ! Vous n'êtes pas en état de conduire. Prévoyez un moyen alternatif de transport. Peut-être devriez-vous aussi songer à moins boire.";
        }
      }
		}
		else
		{
      if(res_alcool<60)
      {
        var phrase_res = "You may drive legally";
      }
      else
      {
        if((res_alcool>=60) && (res_alcool<80))
        {
          var phrase_res = "Legally, you may drive, but it would be safer to wait a bit before you do.";
        }
        else
        {
          var phrase_res = "DANGER! You are in no condition to drive and doing so would be against the law. Use another means of transportation. You might want to consider drinking less, too.";
        }
      }
		}
		
		document.getElementById('phrase_res').innerHTML = phrase_res;
		
		canvasDraw=true; //On renseigne notre variable global pour lui dire que le graph est la
		//On affiche nos div relatives au test
		document.getElementById('resTaux').style.visibility = 'visible';
	 
	}
}


//Formule du calcul du taux d'alcoolemie ainsi que de son elimination dans le sang
//Param : t0 		-> temps de la premiére conso
//		  t1 		-> temps actuel
//		  txAlcool	-> txlcool deja dans le sang
//		  conso		-> alcool consomer a ce moment
//		  CoefPoids -> poids
function formuleCalculold(t0,t1,txAlcool,conso,CoefPoids)
{
	if(t1>t0)
	{
			diff = (t1-t0);
			if(diff<0)
			{
				diff=0;
			}
			//on calcul l'absorption
		//	res = (diff*0.015)-valprec;
		//	valprec += res;
		//	txAlcool = txAlcool-res;
			if(txAlcool<0)
			{
				txAlcool = 0;
			}
		
			//on met a jour notre taux
			txAlcool += parseFloat((parseInt(conso)/CoefPoids)/10);	

	}
	return txAlcool;
}

//Fonction de calcul JUSTE
function formuleCalcul(t0,t1,txAlcool,conso,CoefPoids)
{
	if(t1>=t0)
	{
			diff = (t1-t0);
			if(diff<0)
			{
				diff=0;
			}
			//on calcul l'absorption
			res = (diff*0.015)-valprec;
			valprec += res;
			txAlcool = txAlcool-res;
			if(txAlcool<0)
			{
				txAlcool = 0;
			}
			//on met a jour notre taux
			txAlcool += parseFloat((parseInt(conso)/CoefPoids)/10);
	}
	return txAlcool;
}

////////////////////////////////////////////////////////////////
///			Fonctions pour le graphiques
////////////////////////////////////////////////////////////////


var rgbString = new String();
rgbString= "rgb(255,255,255)"; //Couleur de fond

//Fonction d'initialisation des options du graph
function initOptions(paramXticks,xSize)
{
//	xSize=10;
//Option gérant les caractéristiques pour le fond ainsi que pour la définition de la limite
	 options = {
	 			  "IECanvasHTC"		: ieCanvasPath,
				  "axisLineColor"   : Color.lightGrayColor(),									//Couleur des axes
				  "backgroundColor" : Color.fromRGBString(rgbString),							//Couleur de fond
				  "colorScheme"		: PlotKit.Base.palette(Color.fromRGB(0.52, 0.65, 0.87, alpha=0.4)),	//couleur de la ligne de fond
				  "padding"			: {left: 30, right: 0, top: 10, bottom: 10},				//Position du graph
				  "axisLabelFontSize": 9, 
				  "axisLabelWidth"	: 35,
				  "axisTickSize"	: 3.5,
				  "strokeColor"		: Color.fromRGB(0.52, 0.65, 0.87, alpha=1),
				  "xTicks"			: paramXticks,
					"xAxis"			:	[0.0,xSize],											//Taille de l'axe des X
					"yAxis"			:	[0.0,0.5],												//Taille de l'axe des Y
				    "drawYAxis"		: true,
				    "drawXAxis"		: true,
					"yTicks"		: [{v:0	 , label:"0"},										//Definition des Y
								      {v:0.02, label:"0.02"},
								      {v:0.04, label:"0.04"},
								      {v:0.06, label:"0.06"},
							          {v:0.08, label:"0.08"},
							          {v:0.10, label:"0.10"},
							          {v:0.15, label:"0.15"}, 
							          {v:0.20, label:"0.20"},  
							          {v:0.25, label:"0.25"}, 
							          {v:0.30, label:"0.30"},
							          {v:0.35, label:"0.35"},
							          {v:0.40, label:"0.40"}, 
							          {v:0.45, label:"0.45"}, 
							          {v:0.50, label:"0.50"}]
				};
				
	//Options pour les barres qui vont se superposé au graph précédent
	 options2 = {
	 	"IECanvasHTC"	: ieCanvasPath,
	    "drawBackground": false,
	    "colorScheme"	: PlotKit.Base.palette(Color.fromRGB(0.117, 0.26, 0.506, alpha=0.5)),
	    "padding"		: {left: 30, right: 0, top: 10, bottom: 10},
	  	"xTicks"		: paramXticks,
		"yAxis"			: [0.0,0.5],
	    "drawYAxis"		: false,
	    "drawXAxis"		: false
	};
}



//On dessine le graph correspondant au taux
function drawGraph(arrDataset) 
{

    var layout = new PlotKit.Layout("bar", options2);
    layout.addDataset("sqrt", arrDataset);
    layout.evaluate();
    var canvas = MochiKit.DOM.getElement("resultat");
    var plotter = new PlotKit.SweetCanvasRenderer(canvas, layout, options2);
    plotter.render();
}

//On dessine le graph correspondant a la limite
function drawGraph2(intLimite) 
{
	document.getElementById('graph').innerHTML = "<canvas id=\"resultat\" height=\"305\" width=\"435\"></canvas>";
    var layout = new PlotKit.Layout("line", options);
    layout.addDataset("sqrt2", [[0, 0.08], [intLimite, 0.08]]);
    layout.evaluate();
    var canvas = MochiKit.DOM.getElement("resultat");
    var plotter = new PlotKit.SweetCanvasRenderer(canvas, layout, options);
    plotter.clear();
    plotter.render();
}

//On dessine le graph correspondant au taux
function drawGraphIe(arrDataset) 
{

    var layout = new PlotKit.Layout("bar", options);
    layout.addDataset("sqrt", arrDataset);
    layout.evaluate();
    var canvas = MochiKit.DOM.getElement("resultat");
    var plotter = new PlotKit.SweetCanvasRenderer(canvas, layout, options);
    plotter.render();
}


/////////////////////////////////////////////////////////////
//		Fonctions de gestion des listes de la page		////
///////////////////////////////////////////////////////////




//Fonction en js qui renseigne les heures de chaque listes
function fillHour(idListe,hDebut)
{
	if(!hDebut)
	{
		hDebut=18;
	}
	var liste = document.getElementById(idListe);
	var i=0;
	
	//On initialise notre liste a vide pour la remplir
	while(liste.hasChildNodes())
	{
		liste.removeChild(liste.firstChild);
	}
	
	if(hDebut>17)
	{
			for(i=hDebut;i<24;i++)
			{
				  var x=document.createElement('option');
				  var y=document.createTextNode(i);
				  x.setAttribute('value',i);
				  x.appendChild(y);
				  liste.appendChild(x);
			}
			
			for(i=0;i<4;i++)
			{
				  var x=document.createElement('option');
				  var y=document.createTextNode('0'+i);
				  x.setAttribute('value','0'+i);
				  x.appendChild(y);
				  liste.appendChild(x);
			}
	}
	else
	{
			for(i=hDebut;i<4;i++)
			{
				  i = parseInt(i);
				  var x=document.createElement('option');
				  var y=document.createTextNode('0'+i);
				  x.setAttribute('value','0'+i);
				  x.appendChild(y);
				  liste.appendChild(x);
			}
	}

	
}



//Fonction en js qui renseigne les heures de chaque listes
function fillHourEn(idListe,hDebut)
{
	if(!hDebut)
	{
		hDebut=18;
	}
	var liste = document.getElementById(idListe);
	var i=0;
	
	//On initialise notre liste a vide pour la remplir
	while(liste.hasChildNodes())
	{
		liste.removeChild(liste.firstChild);
	}
	
	if(hDebut>17)
	{
			for(i=hDebut;i<24;i++)
			{
				  var x=document.createElement('option');
				  var y=document.createTextNode(whatTimeIsIt(i));
				  x.setAttribute('value',i);
				  x.appendChild(y);
				  liste.appendChild(x);
			}
			
			for(i=0;i<4;i++)
			{
				  var x=document.createElement('option');
				  var y=document.createTextNode(whatTimeIsIt(i));
				  x.setAttribute('value','0'+i);
				  x.appendChild(y);
				  liste.appendChild(x);
			}
	}
	else
	{
			for(i=hDebut;i<4;i++)
			{
				  i = parseInt(i);
				  var x=document.createElement('option');
				  var y=document.createTextNode(whatTimeIsIt(i));
				  x.setAttribute('value','0'+i);
				  x.appendChild(y);
				  liste.appendChild(x);
			}
	}

	
}

//Fonction permettant de convertir une heure au format Fr au format En
function whatTimeIsIt(heureFr)
{
    var heureEn;
	switch(parseInt(heureFr))
	{
		case 18:
		heureEn='06 PM';
		break;
		
		case 19:
		heureEn='07 PM';
		break;
		
		case 20:
		heureEn='08 PM';
		break;
		
		case 21:
		heureEn='09 PM';
		break;
		
		case 22:
		heureEn='10 PM';
		break;
		
		case 23:
		heureEn='11 PM';
		break;
		
		case 00:
		heureEn='00 AM';
		break;
		
		case 01:
		heureEn='01 AM';
		break;
		
		case 02:
		heureEn='02 AM';
		break;
		
		case 03:
		heureEn='03 AM';
		break;
	}
	
	return heureEn;
}

//Fonction permettant de mettre a jour notre liste de minutes
function fillMinutes(idListe,minDeb)
{
	if(!minDeb)
	{
		minDeb=0;
	}
	else
	{
		minDeb=parseInt(minDeb);
	}

	var liste = document.getElementById(idListe);
	var i=0;
	//On initialise notre liste a vide pour la remplir
	while(liste.hasChildNodes())
	{
		liste.removeChild(liste.firstChild);
	}
	for(i=minDeb;i<60;i+=15)
	{
		  var x=document.createElement('option');
		  if(i==0)
		  {
		  	var y=document.createTextNode('00');
		  }
		  else
		  {
		  	var y=document.createTextNode(i);
		  }
		  x.setAttribute('value',i);
		  x.appendChild(y);
		  liste.appendChild(x);
	}
}

//Fonction permettant d'initialiser notre liste de verres
function fillVerres(idListe)
{
	var liste = document.getElementById(idListe);
	var i=0;
	for(i=0;i<6;i++)
	{
		  var x=document.createElement('option');
		  var y=document.createTextNode(i);
		  x.setAttribute('value',i);
		  x.appendChild(y);
		  liste.appendChild(x);
	}
}

//Fonction qui pemettra d'initialiser les liste
function initListe()
{
	//Init des heures
	for(var i=0;i<tabListeHeure.length;i++)
	{
		fillHour(tabListeHeure[i]);
	}
	
	//init des minutes
	for(var i=0;i<tabListeMin.length;i++)
	{
		fillMinutes(tabListeMin[i]);
	}
	
	//init des minutes
	for(var i=0;i<tabListeNbVerre.length;i++)
	{
		fillVerres(tabListeNbVerre[i]);
	}
	majliste(tabListeHeure[0]);
}


//Fonction qui pemettra d'initialiser les listes au format Anglais
function initListeEn()
{
	//Init des heures
	for(var i=0;i<tabListeHeure.length;i++)
	{
		fillHourEn(tabListeHeure[i]);
	}
	
	//init des minutes
	for(var i=0;i<tabListeMin.length;i++)
	{
		fillMinutes(tabListeMin[i]);
	}
	
	//init des minutes
	for(var i=0;i<tabListeNbVerre.length;i++)
	{
		fillVerres(tabListeNbVerre[i]);
	}

	majlisteEn(tabListeHeure[0]);
}

//Fonction de mise a jour tennant en compte les minutes
function majListeSub(idListeH,idListeM)
{
	var listeH 	= 	document.getElementById(idListeH);
	var listeM 	= 	document.getElementById(idListeM);

	var intH	=	listeH[listeH.selectedIndex].value;
	var intM	=	listeM[listeM.selectedIndex].value;

	//Si on est en bout d'heure on fias avancé l'heure
	if(intM==45)
	{
		intM=0;
		intH=parseInt(intH)+1;
	}
	else
	{
		//Sinon on fais avancer de 15 min
		intM=parseInt(intM)+15;
	}
	
	var tabRes = new Array;
	tabRes[0]=intH;
	tabRes[1]=intM;
		
	return tabRes;
}

//Cette fonction permet de mettre a jour les minutes en fonctions de l'heure sélectionnée et des choix précédents
function MajMinutes(k)
{
	if(k>0)
	{
		listeCourante	=	document.getElementById(tabListeHeure[k]);
		listePrec		=	document.getElementById(tabListeHeure[k-1]);
		//Si on est sur la même heure on ajuste les minutes sinon on met tout
		if(listePrec[listePrec.selectedIndex].value==listeCourante[listeCourante.selectedIndex].value)
		{
			var tabRes2 = new Array;
			tabRes2=majListeSub(tabListeHeure[k-1],tabListeMin[k-1]);
			fillMinutes(tabListeMin[k],tabRes2[1]);
		}
		else
		{
			fillMinutes(tabListeMin[k]);
		}
	}
}

//Fonction qui remet a jour nos liste appeler dans le case de majliste
function majListeCase(k)
{
	var tabRes = new Array;
	tabRes = majListeSub(tabListeHeure[k],tabListeMin[k]);
	
	k++;

	//Init des heures
	for(var i=k;i<tabListeHeure.length;i++)
	{
		fillHour(tabListeHeure[i],tabRes[0]);
		fillMinutes(tabListeMin[i],tabRes[1]);
		tabRes = majListeSub(tabListeHeure[i],tabListeMin[i]);
	}
	
}

//Fonction qui remet a jour nos liste appeler dans le case de majliste -> Format En
function majListeCaseEn(k)
{
	var tabRes = new Array;
	tabRes = majListeSub(tabListeHeure[k],tabListeMin[k]);
	
	k++;

	//Init des heures
	for(var i=k;i<tabListeHeure.length;i++)
	{
		fillHourEn(tabListeHeure[i],tabRes[0]);
		fillMinutes(tabListeMin[i],tabRes[1]);
		tabRes = majListeSub(tabListeHeure[i],tabListeMin[i]);
	}
	
}

//Fonction qui met a jour les temps d'une liste en fonction des autres
function majliste(idListe)
{
	switch (idListe)
	{
		
		case tabListeHeure[0] :
			MajMinutes(0);	
			majListeCase(0);
			break
		case tabListeMin[0]	:
			majListeCase(0);
			break;
			
		case tabListeHeure[1] :
			MajMinutes(1);
			majListeCase(1);
		case tabListeMin[1]:
			majListeCase(1);
			break;
			
		case tabListeHeure[2] :
			MajMinutes(2);
			majListeCase(2);
			break;
		case tabListeMin[2]:
			majListeCase(2);
			break;
			
		case tabListeHeure[3] :
			MajMinutes(3);
			majListeCase(3);
			break;
		case tabListeMin[3]:
			majListeCase(3);
			break;
			
		case tabListeHeure[4] :
			MajMinutes(4);
			majListeCase(4);
			break;
		case tabListeMin[4]:
			majListeCase(4);
			break;
			
		case tabListeHeure[5] :
			
			MajMinutes(5);
			majListeCase(5);
			break;
		case tabListeMin[5]:
			majListeCase(5);
			break;

	}
	majGraph();
}


//Fonction qui met a jour les temps d'une liste en fonction des autres -> Version En
function majlisteEn(idListe)
{
	switch (idListe)
	{
		case tabListeHeure[0] :
			MajMinutes(0);	
			majListeCaseEn(0);
			break
		case tabListeMin[0]	:
			majListeCaseEn(0);
			break;
			
		case tabListeHeure[1] :
			MajMinutes(1);
			majListeCaseEn(1);
		case tabListeMin[1]:
			majListeCaseEn(1);
			break;
			
		case tabListeHeure[2] :
			MajMinutes(2);
			majListeCaseEn(2);
			break;
		case tabListeMin[2]:
			majListeCaseEn(2);
			break;
			
		case tabListeHeure[3] :
			MajMinutes(3);
			majListeCaseEn(3);
			break;
		case tabListeMin[3]:
			majListeCaseEn(3);
			break;
			
		case tabListeHeure[4] :
			MajMinutes(4);
			majListeCaseEn(4);
			break;
		case tabListeMin[4]:
			majListeCaseEn(4);
			break;
			
		case tabListeHeure[5] :
			
			MajMinutes(5);
			majListeCaseEn(5);
			break;
		case tabListeMin[5]:
			majListeCaseEn(5);
			break;

	}
	majGraph('en');
}



//Fonction de conversion du poids -> converti de livre en Kg
function convertPoids(intPoidsLivre)
{
	var coef = parseFloat(0.457); //correspondance 1 livre vaut 0,453 592 37 kg
	//var coef = parseFloat(0.45359237); //correspondance 1 livre vaut 0,453 592 37 kg
	var res = parseInt(intPoidsLivre)*coef;
	return (res);
}

//Fonction mettant a jour el graph a chaque changement de conso
function majGraph(en)
{
	if(canvasDraw==true) //si notre graph a déjà été dessiner on le met a jour
	{
		calculTaux(en);
	}
}
