

function maj_gem(type, qte)
{
	var nb_emrd = document.getElementById("nb_emrd").innerHTML;
	if(type == 0) {
		if((parseInt(nb_emrd) - qte) > 0) {
			document.getElementById("nb_emrd").innerHTML = String(parseInt(nb_emrd) - qte);
		}
	}
	else {
		document.getElementById("nb_emrd").innerHTML = String(parseInt(nb_emrd) + qte);
	}
}

function get_gem()
{
	return parseInt(document.getElementById("nb_emrd").innerHTML);
}




function achat_retire()
{
	for(i = 1; i<150; i++) {
		if(document.getElementById("selectqte"+i)) {
			if(parseInt(document.getElementById("prix"+i).innerHTML) != -1)
				document.getElementById("selectqte"+i).innerHTML = '<br /><font class="rouge">Plus d\'achat possible</font>';
		}
	}
}


function qte_retire(achats_anc)
{
	var achats_now = document.getElementById("r_achat_nb").innerHTML;
	
	for(i = 1; i<100; i++) {
		if(document.getElementById('nb_achats_'+i)) {
			for(a = achats_anc; a > achats_now; a--) {
				document.getElementById('nb_achats_'+i).options[document.getElementById('nb_achats_'+i).length-1] = null; 
			}
		}
	}

}


// Achat au shop

function ajx_achat(id, shop, prix, cnf, qte)
{
	sqte = document.getElementById('nb_achats_'+id);
	
	if(cnfshop && !cnf) {
		var index = parseInt(sqte.options[sqte.selectedIndex].value);
		windowConfirmBots("ajx_achat("+id+", \""+shop+"\", "+prix+", 1, "+index+");", "Confirmer cet achat ? ", "Confirmer ?", "Confirmer");
		//sqte.selectedIndex = index;
		return;
	}

	var xhr = getXhr();

	if(document.getElementById('nb_achats_'+id) && !qte) {
	
		qte = parseInt(sqte.options[sqte.selectedIndex].value); 
	
	}	
	
	var prix = parseInt(document.getElementById('prix'+id).innerHTML);
	
	var prix_total = parseInt(prix * qte);
	
	var achats = parseInt(document.getElementById("r_achat_nb").innerHTML);
		


	if((!isNaN(qte) && !isNaN(achats)) && (qte > achats)) {
		document.getElementById('achat'+id).innerHTML = '<div align="center"><font class="erreur">Ta limite d\'achats ne te permet pas d\'en acheter autant !</font></div>';
		var erreur = 1;
	}
		

	
	if((!isNaN(prix_total)) && (prix_total > get_gem())) {
		document.getElementById('achat'+id).innerHTML = '<div align="center"><font class="erreur">Tu n\'as pas assez d\'émeraudes pour effectuer cet achat !</font></div>';
		var erreur = 1;
	}
	
	if(erreur != 1) {

	xhr.onreadystatechange = function(){
	
	  if(xhr.readyState < 4) {
		
			document.getElementById('achat'+id).innerHTML = '<img src="images/divers/loading2.gif" align="absmiddle" border="0"> <font class="petit">En attente...</petit>';
		
		}
		  

		if(xhr.readyState == 4 && xhr.status == 200){
			var chaine = document.getElementById('achat'+id).innerHTML = xhr.responseText;
			
			// On modifie le nombre d'émeraudes
			var reg1=new RegExp("Achat effectu&eacute; !","g");
			if (chaine.match(reg1)) {	
				
				if(cnfshop) {
					cnfshop--;
				}
				
				var prix_total_r = prix_total;
				var qte_r = qte;
				
				texte = new String(chaine);
				var qte_r = texte.replace(/(.+)<span id="qte_reel">(.+)<\/span>(.+)/g,'$2');
				var prix_total_r = parseInt(prix * qte_r);
				
				achats_tmp = achats;
				achats = achats - qte_r;
				
				if(achats > 1) {
					document.getElementById("r_achat_nb").innerHTML = achats;
				}
				else if(achats == 1) {
					document.getElementById("r_achat").innerHTML = 'Tu peux encore effectuer <span id="r_achat_nb">1</span> achat aujourd\'hui.';
				}
				else if(achats <= 0) {
					document.getElementById("r_achat").innerHTML = '<b>Tu as déjà effectué tous tes achats<span id="r_achat_nb" style="display:none;">0</span> aujourd\'hui.</b></span>';
					achat_retire();
				}
				
				document.getElementById("nb_emrd").innerHTML = document.getElementById("nb_emrd").innerHTML - prix_total_r;
				qte_retire(achats_tmp);
			}
		}
	}	 

		if(!shop) {
			xhr.open("POST","membre_shop_achat.php5",true);
		}
		else if(shop == 'marche') {
			xhr.open("POST","membre_shop_achat_marche.php5",true);
		}
		
		if(cnfshop) var cf = 1;
		else var cf = 0;
		
		xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
		xhr.send('num='+id+'&qte='+qte+'&prix='+prix+'&cf='+cf);
	}
}




function getXhr(){
	var xhr = null; 
	if(window.XMLHttpRequest) 
	  xhr = new XMLHttpRequest(); 
	else if(window.ActiveXObject){ 
	  try {
		xhr = new ActiveXObject("Msxml2.XMLHTTP");
	  } catch (e) {
		xhr = new ActiveXObject("Microsoft.XMLHTTP");
	  }
	}
	else {
	  alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest... \nN'hésitez pas à nous contacter par e-mail pour nous signaler ce problème."); 
	  xhr = false; 
	} 
	return xhr
}

ajx_verif = "";
			
function ajx_cadre(url, id, requete, msg, methode, evaluation){
	
	if(ajx_verif == (url+requete)) return;
	
	ajx_verif = url+requete;
	
	var xhr = getXhr();
	
	if(!requete) requete = "";
	if(!methode) methode = "POST";
	if(!msg) msg = '<img src="images/divers/loading.gif" align="absmiddle" border="0"> <b>Chargement en cours...</b>';
	
	xhr.onreadystatechange = function(){
		if(xhr.readyState < 4) document.getElementById(id).innerHTML = msg;
		if(xhr.readyState == 4 && xhr.status == 200) {
			var chaine = document.getElementById(id).innerHTML = xhr.responseText;
			if(evaluation != null) eval(evaluation);
		}
	}	 

	xhr.open(methode,url,true);
	xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
	xhr.send(requete);
	
}




/* -----------------
	EXECUTION
----------------- */


var xhrReponse;
var xhrOk = new Array();
var xhrNum = 0;

function xhrExec(url, requete, evaluation_avant, evaluation_apres, check){
	
	var xhr = getXhr();
	if(!requete) requete = "";
	if(check == null) check = 1;
	//alert(check);
	if(typeof evaluation_avant != "function") eval(evaluation_avant);
	else evaluation_avant();
	
	xhrNum++;
	xhrOk[xhrNum] = 0;
	if(check == 1) window.setTimeout("execVerif("+xhrNum+");", 15000);
	
	xhr.onreadystatechange = function(){
		if(xhr.readyState == 4 && xhr.status == 200) {
			xhrReponse = xhr.responseText;
			if(evaluation_apres != null) {
				xhrOk[xhrNum] = 1;
				if(typeof evaluation_apres != "function") eval(evaluation_apres);
				else evaluation_apres();
			}
		}
	}	 

	xhr.open("POST",url,true);
	xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
	xhr.send(requete);
	
}

function XMLFromString(txt)
{
	if (window.DOMParser)
	{
		parser=new DOMParser();
		xmlDoc=parser.parseFromString(txt,"text/xml");
	}
	else // Internet Explorer
	{
		xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
		xmlDoc.async="false";
		xmlDoc.loadXML(txt); 
	}
	
	return xmlDoc;
}


// Vérification de la bonne exécution

function execVerif(id) {
	if(xhrOk[id] != 1) {
		var ok = confirm('Le chargement a dépassé 15 secondes et semble anormalement long...\nSi ceci se produit trop souvent, la cause peut être que le site est \ntemporairement surchargé.\n\nTu n\'as pas à t\'inquiter de ce message...\n\nClique sur "Ok" pour actualiser la page ou sur "Annuler" pour la laisser telle quelle.');
		if(ok == true) location.reload();
	}
}


var notif_actif = false;

function notificationOffset(id_fenetre)
{
	offset = document.getElementById(id_fenetre).offsetHeight;
	if(!offset) offset = 540;
	return offset;
}


// Ouvrir une fenêtre de notification
function openNotification(id, id_fenetre, top, repet)
{
	if(!id) id = 'notification';
	if(!id_fenetre) id_fenetre = 'fenetreErreur';	
	if(!top) top = 0;

	if((document.getElementById(id).style.display != 'block') || (pos_notif != (getInfo("scrollTop")+notificationOffset(id_fenetre)) )) {
		//ttna1 = String(parseInt(getInfo("scrollTop")+getInfo("innerHeight")/2-400-top))+'px';
		ChangeDisplay(id, 'block');
		//ttna2 = String(parseInt((getInfo("innerHeight") + 2 * getInfo("scrollTop") - notificationOffset(id_fenetre))/2)-300)+'px';

		//document.getElementById(id_fenetre).style.top = ttna2;
		
		
		document.getElementById('transparent').className = 'transparent_nv';
		
		if($('body_conteneur') != null) {
			//$('body_conteneur').addClassName('transparent_global');
		}
		
		pos_notif = getInfo("scrollTop")+notificationOffset(id_fenetre);
		
		if(FACEBOOK && SMALL_DESIGN) {
			FB.Canvas.scrollTo(0,350);	
		}

	}
	//if((getInfo("innerHeight") > 400) || (repet)) notif_actif = window.setTimeout("openNotification('"+id+"', '"+id_fenetre+"', "+top+", 1)", 300);
}


// Fermer une fenêtre de notification
function closeNotification(id)
{
	if(!id) id = 'notification';
	window.clearTimeout(notif_actif);
	notif_actif = false;
	
	ChangeDisplay(id, 'none');
	
	if($('body_conteneur') != null) {
		//$('body_conteneur').removeClassName('transparent_global');
	}

	document.getElementById('transparent').className = null;
	if(document.getElementById('listeTypes')) document.getElementById('listeTypes').style.display = "";
	
}

