//////////// déclaration des var interval
var posInterv, depInterv, focusInterv, classInterv, maillotInterv, chronoInterv, chronoDepInterv, defautlTabsInterv;
//////////// fin déclaration des var interval
//////////// déclaration des var timestamp
var tmp;
var heures;
var minutes;
var timestamp;
timestampFunc=function(){
	tmp=new Date();
	heures=tmp.getHours();if(heures<10){heures="0"+heures;}
	minutes=tmp.getMinutes();if(minutes<10){minutes="0"+minutes;}
	timestamp="timestamp="+heures+minutes;
}
//////////// fin déclaration des var timestamp
//////////// fonctions lancement et arrêt boucles panneau "direct"
directBouclesOn = function(){
	posInit();
	depFunc();
	depInterv = setInterval("depFunc()", depFreq);
}
directBouclesOff = function(){
	clearInterval(posInterv);
	clearInterval(depInterv);
}
posInit = function(){
	posFunc();
	posInterv = setInterval("posFunc()", posFreq);
}
chronoBouclesOn = function(){
	chronoFunc();
	chronoInterv = setInterval("chronoFunc()", chronoFreq);
	chronoDepFunc();
	chronoDepInterv = setInterval("chronoDepFunc()", chronoDepFreq);
}
chronoBouclesOff = function(){
	clearInterval(chronoInterv);
	clearInterval(chronoDepInterv);	
}
//////////// fin fonctions lancement et arrêt boucles panneau "direct"

//////////// onglets bloc "a la une / direct"
montreUne = function(page, what, callback){
	timestampFunc();
	makeRequest(prefixPath + page+'?'+timestamp, 'contentuneDyn', 'HTML', true, true, callback);
	//Tabs
	var container = getObj("directunediv");
	var onglets = container.getElementsByTagName("h2");
	for (var i=0; i<onglets.length; i++) {
		onglets[i].className = onglets[i].className.replace("on", "off");
	}
	var ongletClicked = what.parentNode;
	ongletClicked.className = ongletClicked.className.replace("off", "on");
	//fin Tabs
}
//////////// position du curseur du bloc position de la course
posCursor = function(zeobj){
	var lyr = getObj("cursor");
	var obj = eval('(' + zeobj.toString() + ')');
	var pourcentage = parseInt(obj.parcouru)/parseInt(obj.total);
	var calcul = Math.round(289*pourcentage)-2;
	if(calcul<0) calcul = 0;
	var initX = parseInt(getPos("cursor")[0]);
	var futurX = calcul;
	lyr.t1 = new Tween(lyr.style,'left',Tween.regularEaseIn,initX,futurX,2,'px');
	lyr.t1.continueTo(futurX, 2);
	var total = obj.total;
	var parcouru = obj.parcouru;
	var reste = obj.total - obj.parcouru;
	// On force parcouru et reste à 2 décimales
	parcouru = parseInt(parcouru*100)/100;
	//reste = parseFloat(parseInt(reste*100)/100);
	reste = parseInt(reste*100)/100;
	getObj("etapeTotal").innerHTML = total;
	getObj("etapeParcouru").innerHTML = parcouru;
	getObj("etapeReste").innerHTML = reste;
}
posFunc = function(){
	timestampFunc();
	makeRequest(prefixPath + 'jsonPositionEtape.html?'+timestamp, null, 'JSON', true, false, posCursor);
}
defautlTabs = function(zeobj){
	var obj = eval('(' + zeobj.toString() + ')');
	getObj(obj.player).onclick();
	getObj(obj.classementDefault).onclick();
	//getObj(obj.classementTypeDefault).onclick();
}
defautlTabsFunc = function(){
	timestampFunc();
	makeRequest(prefixPath + 'jsonDefautlTabs.html?'+timestamp, null, 'JSON', true, false, defautlTabs);
}
//////////// fin position du curseur du bloc position de la course

/////////// contre la montre
//////////// depeches chrono
chronoDepFunc = function(){
	timestampFunc();
	makeRequest(prefixPath + 'blocChronoDepeches.html?'+timestamp, 'chronoDepechesDyn', 'HTML', true);
}
//////////// fin depeches chrono
//////////// chrono 
chronoFunc = function(){
	makeRequest(prefixPath + 'blocChrono.html?'+timestamp, 'chronoDyn', 'HTML', true);
}
//////////// fin chrono 

/////////// fin contre la montre

//////////// depeches
depFunc = function(){
	makeRequest(prefixPath + 'blocDepeches.html?'+timestamp, 'depechesDyn', 'HTML', true);
}
//////////// fin depeches

//////////// porteurs maillot
maillotFunc = function(){
	makeRequest(prefixPath + 'blocPorteursMaillots.html?'+timestamp, 'maillotDyn', 'HTML', true, false);
}
//////////// fin porteurs maillot

//////////// focus
focusFunc = function(){
	timestampFunc();
	makeRequest(prefixPath + 'blocFocus.html?'+timestamp, 'focusDyn', 'HTML', true, false);
}
//////////// fin focus

//////////// sondage
sondageFunc = function(){
	timestampFunc();
	makeRequest(prefixPath + 'blocSondage.html?'+timestamp, 'sondageDyn', 'HTML', true, false);
}
//////////// fin sondage
//////////// meteo
meteoFunc = function(){
	timestampFunc();
	makeRequest(prefixPath + 'blocMeteo.html?'+timestamp, 'meteoDyn', 'HTML', true, false);
}
//////////// fin meteo

//////////// classements
var loadClass = true;
//fonction appelée dans la boucle
classFunc = function(){
	loadClass = false;
	getObj(classementDefault).onclick();
	//getObj(classementTypeDefault).onclick();
}
// onglets
montreClassement = function(prefix, what, auto){
	timestampFunc();
	classementDefault = what.id;
	//Tabs
	var container = getObj("classementTab");
	var onglets = container.getElementsByTagName("h3");
	for (var i=0; i<onglets.length; i++) {
		onglets[i].className = "";
	}
	var ongletClicked = what.parentNode;
	ongletClicked.className = "current";
	//fin Tabs
	//ajah
	if(loadClass == false){
		loading = false;
		loadClass = true;
	}
	else{
		loading = (auto) ? false : true;
	}
	makeRequest(prefixPath + prefix + classementTypeDefault + classementDefault + ".html?"+timestamp, 'classementDyn', 'HTML', true, loading);
	//fin ajah
	//image + lien sponsors
	var sponsor = getObj("sponsordiv");
	//classementTypeDefault
	sponsor.innerHTML = eval("sponsor_" + classementTypeDefault + classementDefault);
	//fin image + lien sponsors
}
// tableaux classements
var classementDefault;
montreClassementType = function(what){
	//Tabs
	var container = getObj("menuClassement");
	var onglets = container.getElementsByTagName("h4");
	for (var i=0; i<onglets.length; i++) {
		onglets[i].className = "";
	}
	var ongletClicked = what.parentNode;
	ongletClicked.className = "current";
	//fin Tabs
	classementTypeDefault = what.id;
	getObj(classementDefault).onclick();
}


////////////  fin classements

//////////// Et Aussi
montreEtAussi = function(page){
	timestampFunc();
	makeRequest(prefixPath + page+'?'+timestamp, 'etaussiDyn', 'HTML', true, false);
}
//////////// fin  Et Aussi

//////////// parcours
montreParcours = function(page){
	timestampFunc();
	makeRequest(prefixPath + page+'?'+timestamp, 'parcoursDyn', 'HTML', true, false);
}
var gParcoursIndice = 1;
function parcoursOnglet(what){
	var indice = parseInt(what.id.substring(what.id.length-1));
	gParcoursIndice = indice;
	var container = getObj("parcoursTab");
	var onglets = container.getElementsByTagName("h3");
	for (var i=0; i<onglets.length; i++) {
		onglets[i].className = "";
	}
	var ongletClicked = what.parentNode;
	ongletClicked.className = "current";
	//subContentParcours
	for (var i=0; i<onglets.length; i++) {
		if((i+1) != indice){
			var content = getStyle("subContentParcours" + (i+1));
			content.display = "none";
		}
	}
	var content = getStyle("subContentParcours" + indice);
	content.display = "block";
}
//////////// fin parcours

//////////// init home
function initHome(){
	// Gestion des timestamp
	timestampFunc();
	// Chargement des onglets du player et des classements
	defautlTabsFunc();
	// Boucle des onglets du player et des onglets des classements
	defautlTabsInterv = setInterval("defautlTabsFunc()", defaultTabsFreq);
	// Boucle des classements
	classInterv = setInterval("classFunc()", classFreq);	
	// Chargement des porteurs maillots
	maillotFunc();
	// Boucle des porteurs maillots
	maillotInterv = setInterval("maillotFunc()", maillotFreq);
	// Chargement du Gros Plan
	focusFunc();
	// Boucle du Gros Plan
	focusInterv = setInterval("focusFunc()", focusFreq);
	// Chargement du parcours aujourd'hui	
	montreParcours('blocParcoursToday.html?'+timestamp);
	//Chargement du bloc Et Aussi
	//montreEtAussi('blocEtAussi.html?'+timestamp);
}
addEvent(window, "load", initHome);
//////////// fin inithome
