var posX=0;posY=0;
var xOffset=10;yOffset=10;

function $(pId) {
	return document.getElementById(pId);
}

// Fonction liées à l'info-bulle
function AffBulle(texte) {
	
	contenu = '<table cellspacing="0" cellpadding="3" class="infoBulle"><tr><td>' + texte + '</td></tr></table>';
		
	var finalPosX=posX-xOffset;
	if (finalPosX<0) finalPosX=0;
	
	var bulle = $('bulle');
    
	bulle.innerHTML = contenu;
	bulle.style.top = posY + yOffset + 'px';
	bulle.style.left = finalPosX + 'px';
	bulle.style.visibility = 'visible';
}

function getMousePos(e) {
  if (document.all) {
	  posX = event.clientX + document.body.scrollLeft;
	  posY = event.clientY + document.body.scrollTop;
  }
  else {
	  posX = e.pageX;
	  posY = e.pageY;
  }
}

function HideBulle() {
	$('bulle').style.visibility = 'hidden';
}

function InitBulle() {
	document.write('<div id="bulle" class="conteneurInfoBulle"></div>');
	document.onmousemove = getMousePos;
}

function AffCoord(pX, pY) {
	var divX = $('x' + pX);
	var divY = $('y' + pY);
	
	if (divX.className.indexOf('actif') == -1){
		divX.className = 'coordo_actif';
		divY.className = 'coordo_actif';
	} else {
		divX.className = 'coordo';
		divY.className = 'coordo';
	}
}

function InitMiniFiche() {
	document.onmousemove=getMousePos;
	document.write('<div id="miniFiche" class="contextuel"><table class="popup" cellpadding="0" cellspacing="0" border="0">');
	document.write('<tr><td class="coingh"></td><td class="haut"></td><td class="coindh"></td></tr>');
	document.write('<tr><td class="gauche"></td><td class="contenu" id="miniFicheContenu"><td class="droite"></td></tr>');
	document.write('<tr><td class="coingb"></td><td class="bas"></td><td class="coindb"></td></tr></table></div>'); 
}

function AffMiniFiche(pCmd, pPv, pTerrain, pType, pNation, pRegiment) {
	
  	contenu = '<table><tr><td><strong>' + pCmd + '</strong><br />' + pPv + ' hommes<br />' + pTerrain + '</td><td valign="top"><img src="unites/' + pType + '_' + pNation + '.gif" class="image_mini_fiche" /><img src="regiment/' + pRegiment + '.gif" /></td></tr><table>';	
	
	var finalPosX=posX-xOffset;
  	if (finalPosX<0) finalPosX=0;
	
	var miniFiche = $('miniFiche');
	var miniFicheContenu = $('miniFicheContenu');
  
	miniFicheContenu.innerHTML=contenu;
    miniFiche.style.top = posY+yOffset + 'px';
    miniFiche.style.left = finalPosX + 'px';
    miniFiche.style.visibility = 'visible';
	
}

function HideMiniFiche() {
	$('miniFiche').style.visibility = 'hidden';
}

function AffDetailPicto(pTitre,pTexte,pPicto) {
	
  	contenu = '<div class="picto_bulle_titre"><img src="/interface/picto/' + pPicto + '.gif" /> ' + pTitre + '</div><div class="picto_bulle_desc">' + pTexte + '</div>';	
	
	var finalPosX=posX-xOffset - 120;
  	if (finalPosX<0) finalPosX=0;
	
	var miniFiche = $('miniFiche');
	var miniFicheContenu = $('miniFicheContenu');
  
	miniFicheContenu.innerHTML=contenu;
    miniFiche.style.top = posY+yOffset + 'px';
    miniFiche.style.left = finalPosX + 'px';
    miniFiche.style.visibility= 'visible';	
}

// Fonctions liées au menu contextuel
function AffMenuContextuel(pIdUnite, pAttaque, p3D) {

	var page = 'jeu.php';
	if (p3D == 1){
		page = 'jeu3D.php';
	} else {
		page = 'jeu.php';
	}
	HideMiniFiche();
	
  	contenu='<a href="even.php?id_unite=' + pIdUnite + '" target="_blank">Evénements</a>';
	contenu +='<br /><a href="missives.php?joindre=' + pIdUnite + '" target="_blank">Joindre</a>';
	
	if(pAttaque){
		contenu +='<hr /><a href="' + page + '?attaque=' + pIdUnite + '">Attaquer&nbsp;(mat.&nbsp;' + pIdUnite + ')</a>';
	}
	var finalPosX=posX-xOffset;
  	if (finalPosX<0) finalPosX=0;
	
	var menu = $('menuContextuel');
	var menuContenu = $('menuContextuelContenu');
  
	menuContenu.innerHTML = contenu;
    menu.style.top = posY + yOffset + 'px';
    menu.style.left = finalPosX + 'px';
    menu.style.visibility = 'visible';
	
	clearTimeout(menuContenu.minuterie);
	menuContenu.minuterie = setTimeout("HideMenuContextuel();",1000);
}

function Rebours(pCellule){
	pCellule.minuterie = setTimeout("HideMenuContextuel();",1000);
}

function RazRebours(pCellule){
	clearTimeout(pCellule.minuterie);
}

function Deplacer(pDeplacement, p3D) {

	var page = 'jeu.php';
	if (p3D == 1){
		page = 'jeu3D.php';
	}

	HideBulle()
  	contenu='<a href="' + page + '?deplacement=' + pDeplacement + '">Se&nbsp;déplacer</a>';
	var finalPosX=posX-xOffset;
  	if (finalPosX<0) finalPosX=0;
	
	var menu = $('menuContextuel');
	var menuContenu = $('menuContextuelContenu');
  
	menuContenu.innerHTML = contenu;
    menu.style.top = posY + yOffset + 'px';
    menu.style.left = finalPosX + 'px';
    menu.style.visibility = 'visible';
	
	clearTimeout(menuContenu.minuterie);
	menuContenu.minuterie = setTimeout("HideMenuContextuel();",1000)
}

function HideMenuContextuel() {
	$('menuContextuel').style.visibility = 'hidden';
}

function InitMenuContextuel() {
	document.onmousemove=getMousePos;
	document.write('<div id="menuContextuel" class="contextuel"><table class="popup" cellpadding="0" cellspacing="0" border="0">');
	document.write('<tr><td class="coingh"></td><td class="haut"></td><td class="coindh"></td></tr>');
	document.write('<tr><td class="gauche"></td><td class="contenu" id="menuContextuelContenu" onMouseOver="RazRebours(this)" onMouseOut="Rebours(this)"><td class="droite"></td></tr>');
	document.write('<tr><td class="coingb"></td><td class="bas"></td><td class="coindb"></td></tr></table></div>'); 
}

// Fonctions liées au menu
function AffMenu() {
    $('menu').style.visibility = 'visible';
	$('menu_calque').style.visibility = 'visible';
}

function HideMenu() {
	$('menu').style.visibility = 'hidden';
	$('menu_calque').style.visibility = 'hidden';
}

function AffGallerie(pImg) {
	$('gallerie_calque').style.visibility = 'visible';
    $('gallerie').style.visibility = 'visible';
	$('gallerie_contenu').style.visibility = 'hidden';	
	$('gallerie_chargement').style.visibility = 'visible';
	$('img_gallerie').src = '/img/grande/img'+ pImg +'.jpg';
	$('img_gallerie').onload = function() {
                           $('gallerie_chargement').style.display = 'none';
						   $('gallerie_contenu').style.width = ($('img_gallerie').width + 40) + 'px';
						   $('gallerie_chargement').style.visibility = 'hidden';
						   $('gallerie_contenu').style.visibility = 'visible';
                        }
	return false;
}

function CachGallerie() {
	$('gallerie_calque').style.visibility = 'hidden';
	$('gallerie').style.visibility = 'hidden';
	$('gallerie_contenu').style.visibility = 'hidden';
}

// Fonctions aux liens rapides
function AffRapide() {
    var lienRapide = $("lien_rapide");
	if (lienRapide.style.visibility != 'visible'){
		lienRapide.style.visibility = 'visible';
		clearTimeout(lienRapide.minuterie);
		lienRapide.minuterie = setTimeout("CacherRapide();",1000)
	}
}

function CacherRapide() {
	$('lien_rapide').style.visibility = 'hidden';
}

function MaintenirRapide() {
	clearTimeout($('lien_rapide').minuterie);
}

function MinuterieRapide() {
	$('lien_rapide').minuterie = setTimeout("CacherRapide();",1000);
}

function AffMat() {
	if($('matricules').checked == true){
		visibilite = 'visible';
	} else {
		visibilite = 'hidden';
	}
	var span = $('visu').getElementsByTagName('span')
	for (i=0; i<span.length; i++){
		span[i].style.visibility = visibilite;
	}
}

// AJAX
function connexionAjax(fichier){
     if(window.XMLHttpRequest) // FIREFOX
          xhr_object = new XMLHttpRequest();
     else if(window.ActiveXObject) // IE
          xhr_object = new ActiveXObject("Microsoft.XMLHTTP");
     else
          return(false);
     xhr_object.open("GET", fichier, false);
     xhr_object.send(null);
     if(xhr_object.readyState == 4) return(xhr_object.responseText);
     else return(false);
}

// Missives
function repondre(pListe, pIdMessage, pIdMissive) {
	$('mp').value = pListe;
	if ($('objet').value == ''){
		$('objet').value = 'Re : ' + $('spanObjet' + pIdMessage).innerHTML;
		$('reponseA').value = pIdMissive;
		$('message_origine').innerHTML = $('divContenu' + pIdMessage).innerHTML;
		$('bloc_message_origine').className = '';
	}
	ouvrirNouvelleMissive();
}

function nouvelleMissive() {
	$('objet').value = '';
	$('mp').value = '';
	$('reponseA').value = 0;
	$('bloc_message_origine').className = 'cacher';
	ouvrirNouvelleMissive();
}

function deplierMissive(pIdMessage, pIdMissive) {	
	var divMessage = $('divMessage' + pIdMessage);
	var divObjet = $('divObjet' + pIdMessage);
	if(divMessage.className == ''){
		divMessage.className = 'cacher';
	} else {
		divMessage.className = '';
	}
	
	if(divObjet.className == 'missivefond missiveObjet bold'){
		divObjet.className = 'missivefond missiveObjet';
		connexionAjax('ajax/lectureMissive.php?missiveLue=' + pIdMissive);
	}	
}

function ouvrirNouvelleMissive() {
	$('nouveau_message').style.display = 'block';
}

function recupereMissivesEnvoyees(pJoueurSelec) {
	if ($('contenu_onglet_2').innerHTML == ''){
		$('contenu_onglet_2').innerHTML = connexionAjax('ajax/recupereMissivesEnvoyees.php?joueurselec=' + pJoueurSelec);
	}
}

function supprimerMissive(pMissive, pDestinataire, pIdMessage) {
	if (confirm("Supprimer ce message ?")){
		$('divObjet' + pIdMessage).innerHTML = 'Message supprimé';
		$('divObjet' + pIdMessage).className += ' rouge';
		$('divMessage' + pIdMessage).innerHTML = connexionAjax('ajax/supprimerMissive.php?missive=' + pMissive + '&destinataire=' + pDestinataire);
		$('divMessage' + pIdMessage).className = 'cacher';
	}
}

function validationMissive() {
	if ($('objet').value == ''){
		alert('Vous devez mettre un objet à votre missive');
		return false;
	}
}

function ouvrirListe() {
	$('missive_liste').style.display='block';
}

function fermerListe() {
	$('missive_liste').style.display='none';
}

function ajouterListe(pId) {	
	$('mp').value += connexionAjax('ajax/listeMissive.php?id=' + pId);
}

// Onglets
function onglet(pOngletActif){
	i = 1;
	ong_vide = 0;
	while (ong_vide < 2){
		if ($('onglet_' + i) != null){
			$('onglet_' + i).className = 'onglet';
			$('contenu_onglet_' + i).className = 'cacher';
		} else {
			ong_vide++;
		}
		i++;
	}
	$('contenu_onglet_' + pOngletActif).className='';
	
	var Li = $('onglet_' + pOngletActif);
	if(Li.className.indexOf('actif') == -1){
		Li.className = 'onglet_actif';
	} else {
		Li.className = 'onglet';
	}
}

function CacherMessage(){
	$('message').className = 'cacher';
}

function CacherDiv(pVisible, pCache){
	$(pVisible).style.display='block';
	$(pCache).style.display='none';
	return false;
}

/* Animation */
function Evenement(pCompteur, pDelais, pNomDiv, pDiv) {

	if (pCompteur == 0){
		pDiv = $(pNomDiv);
		pDiv.style.opacity = 0;		
	} else if (pCompteur < 4) {
		pDiv.style.display='block';
		pDiv.style.opacity = parseFloat(pDiv.style.opacity) + parseFloat(0.3);
		pDelais = 0;
	}  else if (pCompteur > 20) {
		pDiv.style.opacity = parseFloat(pDiv.style.opacity) - 0.02;
	}
	
	pDiv.style.bottom = parseInt(pDiv.style.bottom.replace('px', '')) + 1 + "px";
	pCompteur++;
	
	setTimeout(function() {
				Evenement(pCompteur,pDelais, pNomDiv, pDiv);
			}, 70 + parseInt(pDelais) );

	if (pCompteur == 60){
		pDiv.style.display='none';
		clearTimeout();
	}
}

function Bouton(pBtn) {
	if (pBtn.src.indexOf('_on') == -1){
		pBtn.src = pBtn.src.replace('.png', '') + '_on.png';
	} else {
		pBtn.src = pBtn.src.replace('_on', '');
	}
}

// Horloge
function Horloge(){
	if (s < 10)
		s = '0' + Math.round(s);
	else if(s >= 60){
		s = '00';
		m++;
	}
	if (m < 10)
		m = '0' + Math.round(m);
	else if(m >= 60){
		m = '00';
		h++;
	}
	if (h < 10)
		h = '0' + Math.round(h);
	else if(h >= 24){
		h = '00';
		
	}
	texte = h + ':' + m + ':' + s;
	$('horloge').innerHTML = texte;	
	s++;
}

carrouselEnCours = 0;

function Carrousel(pEtapeActive, pEtapeCliquee, pLancement, pAuto) {

	if ((!carrouselEnCours && pLancement) || (carrouselEnCours && !pLancement)){
		carrouselEnCours = 1;
		if (!pAuto){
			autoCarrouselEnCours = 0;
		}
		if (pLancement){
			crsl = $('carrousel');
			//clearTimeout();//crsl.childElementCount
			for(i=0; i<3; i++){
				child = crsl.children[i];
				if (child.id == 'carrousel_' + pEtapeActive){
					//child.className = "etape" + (i + 1).toString() + " etape_active";
					child.style.zIndex = 2;
					//child.style.opacity = 1;
				} else if (child.id == 'carrousel_' + pEtapeCliquee){
					//child.className = 'etape' + (i + 1).toString() + ' etape_cliquee';
					child.style.zIndex = 3;
					//child.style.opacity = 0;
				} else {
					//child.className = 'etape' + (i + 1).toString() + ' etape_inactive';
					child.style.zIndex = 1;
					//child.style.opacity = 0;
				}
			}
		}
	
		pDivActive = $('carrousel_' + pEtapeActive);
		opaciteActive = parseFloat(pDivActive.style.opacity);		
		
		pDivCliquee = $('carrousel_' + pEtapeCliquee);
		opaciteCliquee = parseFloat(pDivCliquee.style.opacity);		
		
		if (opaciteActive > 0){
			pDivActive.style.opacity = Math.round((parseFloat(pDivActive.style.opacity) - parseFloat(0.05)) *100)/100;
			pDivCliquee.style.opacity = Math.round((parseFloat(pDivCliquee.style.opacity) + parseFloat(0.05)) *100)/100;
			pDivActive.style.filter = 'alpha(opacity=' + pDivActive.style.opacity * 100 + ')';
			pDivCliquee.style.filter = 'alpha(opacity=' + pDivCliquee.style.opacity * 100 + ')';
			setTimeout(function() {
						Carrousel(pEtapeActive, pEtapeCliquee, 0, pAuto);
					}, 50 );
		} else {
			carrouselEnCours = 0;
		}
	}
}

autoCarrouselEnCours = 1;

function AutoCarrousel(pEtapeActive, pEtapeCliquee) {
	if (autoCarrouselEnCours){
	
		Carrousel(pEtapeActive, pEtapeCliquee, 1, 1);
		
		pEtapeActive++;
		pEtapeCliquee++;
		if (pEtapeActive == 4){
			pEtapeActive = 1;
		}
		if (pEtapeCliquee == 4){
			pEtapeCliquee = 1;
		}
		
		setTimeout(function() {
						AutoCarrousel(pEtapeActive, pEtapeCliquee);
					}, 5000 );
	}
}
