
var nbrBoucle=10;
var heureDebut;
var minuteDebut;
var heureFin;
var minuteFin;
var intervalle;
var compteurMinutes;
var diff;
var debutMinutes;
var passage;
var h;
var m;
var i;

function initChrono(heure1,heure2,sens){
	if(heure1!=heure2)
	{
		var tabHeure1=heure1.split(':');
		var tabHeure2=heure2.split(':');
		var minute1=parseFloat(tabHeure1[0])*60+parseFloat(tabHeure1[1]);
		var minute2=parseFloat(tabHeure2[0])*60+parseFloat(tabHeure2[1]);
		
		heureDebut=parseFloat(tabHeure1[0]);
		minuteDebut=parseFloat(tabHeure1[1]);
		heureFin=parseFloat(tabHeure2[0]);
		minuteFin=parseFloat(tabHeure2[1]);
		compteurMinutes=heureDebut*60+minuteDebut;
		debutMinutes=heureDebut*60+minuteDebut;
		passage=0;
		
		switch (sens)
		{
			
			case 'positif' :
			
				if (minute2>=minute1) diff=minute2-minute1;
				else diff=1440-minute1+minute2;
				intervalle=diff/nbrBoucle;
				chronoPositif();
				break;
			case 'negatif' :
			
				if (minute2>=minute1) diff=1440-minute2+minute1;
				else diff=minute1-minute2;
				intervalle=diff/nbrBoucle;
				chronoNegatif();
				break;
		}
	}
}

function chronoPositif()
{
  compteurMinutes+=intervalle;//incrémentation des dixièmes de 1
  if(compteurMinutes>1440){ compteurMinutes=0;passage++};
  
  afficherHeure(compteurMinutes);
  compte=setTimeout('chronoPositif()',1000/nbrBoucle) 

  if(compteurMinutes-debutMinutes+passage*(1440) >diff)
  {
	  clearTimeout(compte);
	 document.getElementById("sp_heure").innerHTML=normaliserChiffre(heureFin);
	document.getElementById("sp_minute").innerHTML=normaliserChiffre(minuteFin);
  }
}

function chronoNegatif()
{
  compteurMinutes-=intervalle;//incrémentation des dixièmes de 1
  if(compteurMinutes<0){ compteurMinutes=1440;passage++};
  
  afficherHeure(compteurMinutes);
  compte=setTimeout('chronoNegatif()',1000/nbrBoucle) 

 if(compteurMinutes < passage*1400 + debutMinutes-diff)
  {
	  clearTimeout(compte);
	 document.getElementById("sp_heure").innerHTML=normaliserChiffre(heureFin);
	document.getElementById("sp_minute").innerHTML=normaliserChiffre(minuteFin);
  }
}

function afficherHeure(heureMinute){
	h=Math.floor(heureMinute/60);
	
	m=Math.floor(heureMinute-(h*60));
	document.getElementById("sp_heure").innerHTML=normaliserChiffre(h);
	document.getElementById("sp_minute").innerHTML=normaliserChiffre(m);
}

function normaliserChiffre(chiffre){
	if (chiffre<10) var chiffre="0"+chiffre;
	return chiffre;
		
}
function afficherHeureFormatee(heureFormatee){
	
	var tabHeure=heureFormatee.split(':');
	var heure=tabHeure[0];
	var minute=tabHeure[1];
	document.getElementById("sp_heure").innerHTML=heure;
	document.getElementById("sp_minute").innerHTML=minute;
	
}


