var idImage = 3;
var playing = true;

function ajouterVote() {
	var _xmlHttpCadreInfo = getXMLHTTP();
	if (_xmlHttpCadreInfo) {
		_xmlHttpCadreInfo.open("GET", "http://www.evasionfm.com/V2/voter_pour_" + idMorceauEnCours + ".html", true);
		_xmlHttpCadreInfo.onreadystatechange = function() {
			if ((_xmlHttpCadreInfo.readyState == 4) && (_xmlHttpCadreInfo.responseXML)) {
				traiteResultatVote(_xmlHttpCadreInfo.responseXML);
			}
		}
		// envoi de la requete
		_xmlHttpCadreInfo.send(null);
	}
}

function traiteResultatVote(dataXML) {
	var retour = dataXML.getElementsByTagName('retour');

	if (retour[0].firstChild.data == "1") {
		changerImage('btnVote', 'player_votez.png', 'player_vote-ok.png');
	} else {
		changerImage('btnVote', 'player_votez.png', 'player_deja-vote.png');
	}
	
	setTimeout("resetBtnVote()", 5000);
}

function resetBtnVote() {
	changerImage('btnVote', 'player_deja-vote.png', 'player_votez.png');
	changerImage('btnVote', 'player_vote-ok.png', 'player_votez.png');
}

function changerImageVolume(sens) {
	if (sens == "vol+") {
		envoyerPlayer("vol+");
		idImage = Math.min(idImage + 1, 4);
	} else {
		envoyerPlayer("vol-");
		idImage = Math.max(idImage - 1, 0);
	}

	var img = document.getElementById('imgVolume');
	if (img != undefined) {
		if (img.src != undefined) img.src = img.src.substr(0, img.src.length - 5) + idImage + ".png";
		else {
			img.outerHTML = img.outerHTML.substr(0, img.outerHTML.indexOf('.png') - 1) + idImage + img.outerHTML.substr(img.outerHTML.indexOf('.png'), img.outerHTML.length);
		}
	}
}

function changerImage(idImg, ancienNom, nouveauNom) {
	var img = document.getElementById(idImg);
	if (img != undefined) {
		var reg = new RegExp("(" + ancienNom + ")", "g");
		if (img.src != undefined) {
			if (img.src.indexOf(ancienNom) > 0) img.src = img.src.replace(reg, nouveauNom);
		} else {
			if (img.outerHTML.indexOf(ancienNom) > 0) img.outerHTML = img.outerHTML.replace(reg, nouveauNom);
		}
	}
}

function rollOverBtnPlay() {
	if (playing) changerImage('btnPlay', 'player_play-active.png', 'player_play-active-over.png');
	else changerImage('btnPlay', 'player_play.png', 'player_play-over.png');
}
function rollOutBtnPlay() {
	if (playing) changerImage('btnPlay', 'player_play-active-over.png', 'player_play-active.png');
	else changerImage('btnPlay', 'player_play-over.png', 'player_play.png');
}

function rollOverBtnPause() {
	if (!playing) changerImage('btnPause', 'player_pause-active.png', 'player_pause-active-over.png');
	else changerImage('btnPause', 'player_pause.png', 'player_pause-over.png');
}
function rollOutBtnPause() {
	if (!playing) changerImage('btnPause', 'player_pause-active-over.png', 'player_pause-active.png');
	else changerImage('btnPause', 'player_pause-over.png', 'player_pause.png');
}

function rollOverBtn(idImg, type) {
	changerImage(idImg, 'player_' + type + '.png', 'player_' + type + '-over.png');
}
function rollOutBtn(idImg, type) {
	changerImage(idImg, 'player_' + type + '-over.png', 'player_' + type + '.png');
}


function activerBtnPlay() {
	changerImage('btnPlay', 'player_play-over.png', 'player_play-active.png');
	changerImage('btnPlay', 'player_play.png', 'player_play-active.png');
	changerImage('btnPause', 'player_pause-active.png', 'player_pause.png');
}
function activerBtnPause() {
	changerImage('btnPlay', 'player_play-active.png', 'player_play.png');
	changerImage('btnPause', 'player_pause-over.png', 'player_pause-active.png');
	changerImage('btnPause', 'player_pause.png', 'player_pause-active.png');
}

function play() {
	if (!playing) {
		envoyerPlayer("play");
		playing = true;
		activerBtnPlay();
	}
}

function stop() {
	if (playing) {
		envoyerPlayer("stop");
		playing = false;
		activerBtnPause();
	}
}

function envoyerPlayer(value) {
	if (getPlayer() != undefined) {
		if (getPlayer().sendToActionScript != undefined) {
			getPlayer().sendToActionScript(value);
		}
	}
}

function getPlayer() {
	if (navigator.appName.indexOf("Microsoft") != -1) {
        return window["playerSWF"];
    } else {
        return document["playerSWF"];
    }
}

function actualiserListeMorceaux() {
	var _xmlHttpCadreInfo = getXMLHTTP();
	if (_xmlHttpCadreInfo) {
		var date = new Date();
		_xmlHttpCadreInfo.open("GET", "http://www.evasionfm.com/cache/morceaux.xml?t=" + date.getTime(), true);
		_xmlHttpCadreInfo.onreadystatechange = function() {
			if ((_xmlHttpCadreInfo.readyState == 4) && (_xmlHttpCadreInfo.responseXML)) {
				traiteResultat(_xmlHttpCadreInfo.responseXML);
			}
		}
		// envoi de la requete
		_xmlHttpCadreInfo.send(null);
	}
}

function afficherTexteTaille(texte, taille) {
	if ((texte.lengt) > taille) {
		return texte.substr(0, taille) + '..';
	} else {
		return texte;
	}
}

function traiteResultat(dataXML) {
	var listeInfosXML = dataXML.getElementsByTagName('morceau');
	for (var i = 0 ; i < listeInfosXML.length ; i++) {
		var artiste = listeInfosXML[i].getElementsByTagName('artiste');
		var titre = listeInfosXML[i].getElementsByTagName('titre');
		var heure = listeInfosXML[i].getElementsByTagName('heure');
		
		var id = listeInfosXML[i].getElementsByTagName('id');
		if (i == 0) idMorceauEnCours = id[0].firstChild.data;

		var obj = null
		if (i == 0) obj = document.getElementById('ev_onair');
		else if (i == 1) obj = document.getElementById('ev_titreavant-a');
		else obj = document.getElementById('ev_titreavant-b');
		
		if (i == 0) obj.innerHTML = afficherTexteTaille(artiste[0].firstChild.data + ' / ' + titre[0].firstChild.data, 25);
		else obj.innerHTML = afficherTexteTaille(heure[0].firstChild.data + ' : ' + artiste[0].firstChild.data + ' / ' + titre[0].firstChild.data, 25);
		
		if (i == 0) {
			obj = document.getElementById('ev_disque');
			obj.innerHTML = '<img src="' + listeInfosXML[i].getElementsByTagName('pochette125')[0].firstChild.data + '" width="140" height="140" />';
		}
	}
}

function getXMLHTTP () {
	var xhr = null;
	if (window.XMLHttpRequest) xhr = new XMLHttpRequest();
	else if (window.ActiveXObject) { // Internet Explorer
		try {
			xhr = new ActiveXObject("Msxml2.XMLHTTP");
		} catch (e) {
			try {
				xhr = new ActiveXObject("Microsoft.XMLHTTP");
			} catch (e1) {
				xhr = null;
			}
		}
	}
	return xhr;
}

timerInfoCadre = setInterval("actualiserListeMorceaux()", 30000);