
/*
	Gestion de l'affichage des paris
*/
function getInfoPari(idPari, force){

	//$('detail_lp_'+idPari).style.display = 'block';

	theImg = $("detail_lp_" + idPari).select(".ajax")[0];
	if (!theImg && !force)
	{
		return false;
	}

	
	new Ajax.Request('/ajax/infoPari.asp',
	{
		method:'post',
		parameters: {paris_id:	idPari},
		onSuccess: function(transport){
					var json = transport.responseText.evalJSON(true);
					setDetail2(json.id, json.foze);
		
					var theForm = $("detail_lp_" + json.id).select("form")[0];
					theForm.innerHTML = json.data;
					var theInfo2 = $("detail_lp_" + json.id).select(".detail_pari_2")[0];
					theInfo2.style.display = "block";
					
					if ($('detail_lp_'+json.id).open)
					{
						var thebutton = $("lp_" + json.id).select(".ligne_4 .bt_parie")[0];
						if (thebutton)
							Element.hide.delay(0.01, thebutton);
					}
					
					
				},
		onFailure: function(transport){alert(transport.responseText);}
	});
}

function showHideInfoPari(pari){
	var onglet = $('detail_lp_'+pari);
	var wait = $("lp_" + pari).select(".wait")[0];
	
	if (wait.innerHTML)
		return false;
	
	if (onglet.visible())
	{
		onglet.open = false;
		//onglet.style.display = 'none';
		$("lp_" + pari).select(".ligne_1 img")[0].src = "/img/img-picto-plus.gif";
		thebutton = $("lp_" + pari).select(".ligne_4 .bt_parie")[0];
		if (thebutton)
			Element.show.delay(0.18, thebutton);
		
		wait.innerHTML = "up"
		Effect.SlideUp('detail_lp_'+pari, { duration: 0.2 });
		Element.update.delay(0.2, wait, "");

		
	}else
	{
		onglet.open = true;
	
		$("lp_" + pari).select(".ligne_1 img")[0].src = "/img/img-picto-moins.gif";
		if (!$("detail_lp_" + pari).select(".ajax")[0])
		{
			thebutton = $("lp_" + pari).select(".ligne_4 .bt_parie")[0];
			if (thebutton)			
				Element.hide.delay(0.05, thebutton);
		}

		getInfoPari(pari);
		
		wait.innerHTML = "down"
		Effect.SlideDown('detail_lp_'+pari, { duration: 0.2 });
		Element.update.delay(0.2, wait, "");
	}
	
	return false;
}

function setDetail2(id, foze)
{
	var details = $("detail_lp_" + id);
	var entete = $("lp_" + id);
	if (foze >= 0)
	{		// Une mise a été réalisé par le joueur, donc bouton = "Je modifie"
		entete.select(".det_foz span")[0].innerHTML = foze;
		details.select(".detail_pari_2 .ligne_4 a")[0].className = "bt_modifie";
		
		entete.select(".ligne_4")[0].style.display = "none";
		entete.select(".det_foz")[0].style.display = "block";
	}else if (foze == -1)
	{		// Pas de mise réalisé par la joueur, donc bouton = "Je parie"
		if (details.select(".detail_pari_2 .pariRapide")[0])
			details.select(".detail_pari_2 .ligne_4 a")[0].className = "bt_valide";
		else
			details.select(".detail_pari_2 .ligne_4 a")[0].className = "bt_parie";
		
		//entete.select(".det_foz")[0].style.display = "none";
		//entete.select(".ligne_4")[0].style.display = "block";	
	}else if (foze == -2)
	{		// Pas d'affichage du bouton, car c'est un résultat
		details.select(".detail_pari_2 .ligne_4 a")[0].style.display = "none";
		
		//entete.select(".det_foz")[0].style.display = "none";
		//entete.select(".ligne_4")[0].style.display = "block";
	}else if (foze == -3)
	{		// Le pari est en attente de résultat, on peut abandonner son pari
		details.select(".detail_pari_2 .ligne_4 a")[0].className = "bt_abandonner";
		
		//entete.select(".det_foz")[0].style.display = "none";
		//entete.select(".ligne_4")[0].style.display = "block";
	}else if (foze == -4)
	{		// Le pari a été abandonné, il n'y a plus de bouton
		details.select(".detail_pari_2 .ligne_4 a")[0].style.display = "none";
	}else if (foze == -99)
	{		// Le pari a été abandonné, il n'y a plus de bouton
		alert('Désolé, ce pari est cloturé, votre pari n\'a pas été pris en compte.');
	}
}

/*
	Gestion des paris
*/
function resetPariValues(pariId)
{
	
	//var pariInput = obj.parentNode.parentNode.parentNode.parentNode;
	//var pariAll = obj.parentNode.parentNode.parentNode.parentNode;

	var pariAll = $("detail_lp_" + pariId);
	if (!pariAll)
		pariAll = $("pari_form");
	pariAll = pariAll.select(".input_mise");
		//alert(pariAll.childNodes.length);
	for (var tmp=0; tmp < pariAll.length; ++tmp)
	{
			pariAll[tmp].value = "";
	}
}

function selectPariReponse(pariId, reponseId)
{
	resetPariValues(pariId);
	pari_input = $("pari_input_"+reponseId)
	pari_input.value = $("foze_" + pariId).value;
	$("reponse_id_" + pariId).value = $("pari_select_"+reponseId).value;
	$("pari_select_"+reponseId).checked='checked';
	pari_input.focus();
	
	if (pari_input.createTextRange)
	{
		var range = pari_input.createTextRange();
		range.move("character", 1000);
		range.select();
	}
	pari_input.select();
}

function parier(pari_id, reponse_id, foze, fonction)
{
	if (reponse_id == 0 || reponse_id == "" || foze == "")
	{
		alert("Veuillez selectionner un pari");
		return false;
	}
	
	if (fonction && $("detail_lp_" + pari_id) && $("detail_lp_" + pari_id).select("form")[0])
	{
		$("detail_lp_" + pari_id).select("form")[0].innerHTML = '<img src="/img/ajax.gif" class="ajax"/>';
		var theInfo2 = $("detail_lp_" + pari_id).select(".detail_pari_2")[0];
		theInfo2.style.display = "none";
	}
	
	new Ajax.Request('/ajax/parier.asp',
	{
		method:'post',
		parameters: {
					pari_id: pari_id,
					reponse_id:	reponse_id,
					foze:	foze,
					action: "parier"		
				},
		onSuccess: function(transport){
					var json = transport.responseText.evalJSON(true);
					if (json.id)
					{
						updateSoldeFoze('valide', json.foze)
						if (!fonction)
						{
							window.location.reload();
						}
						else
						{
							eval(fonction);
						}
					}
					else
						alert("le pari a échoué. Veuillez contacter un administrateur");
				},
		onFailure: function(transport){alert(transport.responseText);}
	});
	
	return false;
}

function annulerPari(pari_id, reponse_id)
{	
	new Ajax.Request('/ajax/parier.asp',
	{
		method:'post',
		parameters: {
					pari_id: pari_id,
					reponse_id:	reponse_id,
					action: "annuler"		
				},
		onSuccess: function(transport){
					var json = transport.responseText.evalJSON(true);
					if (json.id)
					{
						window.location.reload();
					}
					else
						alert("l'annulation a échoué. Veuillez contacter un administrateur");
				},
		onFailure: function(transport){alert(transport.responseText);}
	});
	
	return false;
}

function abandonnerPari(pari_id, reponse_id, foze, fonction)
{	
	new Ajax.Request('/ajax/parier.asp',
	{
		method:'post',
		parameters: {
					pari_id: pari_id,
					reponse_id:	reponse_id,
					foze: foze,
					action: "abandonner"		
				},
		onSuccess: function(transport){
					var json = transport.responseText.evalJSON(true);
					//updateSoldeFoze('abandon', json.foze);
					if (json.id)
					{
						if (!fonction)
						{
							window.location.reload();
						}
						else
						{
							eval(fonction);
						}
					}
					else
						alert("l'abandon a échoué. Veuillez contacter un administrateur");
				},
		onFailure: function(transport){alert(transport.responseText);}
	});
	
	return false;
}

function valideReponse(id, pari) {

	if ($('reponse_id_'+pari).value == "" || $('foze_'+pari).value == "")
	{
		alert("Veuillez selectionner un pari");
		return false;
	}
	laPub = window.open('/confirmpari.asp?pub='+id+'&pari='+pari,'laPub','').blur();
	window.focus();
	return false;
}

function checkmise(evt, mise, miseMax, info) {
	var keyCode = evt.which ? evt.which : evt.keyCode;
	
	if (mise.value+String.fromCharCode(keyCode) > miseMax || (typeof mise.value == 'number' && isFinite(mise.value))) {
		return false;
	}
	
	//alert(keyCode);
	var oblige = '1234567890';
	
	if (info == true && (mise.value > miseMax || !IsNumeric(mise.value)))
	{
			if (miseMax == 1500)
				alert("Les mises sont limitées à 1 500 foz€ par pari.\nMerci d\'ajuster votre mise.");
			else
				alert("Votre solde ne vous permet pas de jouer plus de " + miseMax + " foz€ sur ce pari.\nMerci d\'ajuster votre mise");

			mise.value = '';
	}

		if (oblige.indexOf(String.fromCharCode(keyCode)) >= 0 || keyCode == 8 || keyCode == 0 || keyCode == 37 || keyCode == 39 || keyCode == 46)
			return true;
	
	mise.focus();
	
	return false;
}

function updateSoldeFoze(type, foze)
{
	foze = parseInt(foze);
		
	if (!foze || foze == 0)
		return false;	
	
	
	var span_foz_dispo = $('bloc_foz').select('.dispos span')[0];
	var span_foz_mize = $('bloc_foz').select('.mises span')[0];
	
	var foz_dispo = parseInt(span_foz_dispo.innerHTML);
	var foz_mize = parseInt(span_foz_mize.innerHTML);
	
	switch(type)
	{
		case 'valide':
			foz_dispo = foz_dispo - foze;
			foz_mize = foz_mize +foze;
		break;
		
		case 'annule':
			foz_dispo = foz_dispo + foze;
			foz_mize = foz_mize - foze;
		
		break;
		
		case 'abandon':
			foz_mize = foz_mize - foze;
		break;
		
		default:
			return false;
	}
	
	span_foz_dispo.innerHTML = foz_dispo;
	span_foz_mize.innerHTML = foz_mize;
	
}

function IsNumeric(sText){
   var ValidChars = "0123456789";
   var IsNumber=true;
   var Char;

 
   for (i = 0; i < sText.length && IsNumber == true; i++) 
      { 
      Char = sText.charAt(i); 
      if (ValidChars.indexOf(Char) == -1) 
         {
         IsNumber = false;
         }
      }
   return IsNumber;
   }
   
function addCommentaire(pariId, commentaire, fonction){

	if (commentaire.value == "500 caractères maximum") 
		commentaire.value = '';
	
	new Ajax.Request('/ajax/comment.asp',
	{
		method:'post',
		parameters: {
					pari_id: pariId,
					commentaire: encodeURIComponent(commentaire.value),
					utf8: "true",
					action: "ajout"		
				},
		onSuccess: function(transport){
					var json = transport.responseText.evalJSON(true);
					if (json.id)
					{
						if (!fonction)
						{
							window.location.reload();
						}
						else
						{
							eval(fonction);
						}
					}
					else
						alert("l'ajout de commentaire à échoué. Veuillez contacter un administrateur");
				},
		onFailure: function(transport){alert(transport.responseText);}
	});	
}

function signalerAbus(pariId, commentaireId, fonction){
	new Ajax.Request('/ajax/comment.asp',
	{
		method:'post',
		parameters: {
					pari_id: pariId,
					commentaire: commentaireId,
					utf8: "true",
					action: "abus"		
				},
		onSuccess: function(transport){
					var json = transport.responseText.evalJSON(true);
					if (json.id)
					{
						if (!fonction)
						{
							window.location.reload();
						}
						else
						{
							eval(fonction);
						}
					}
					else
						alert("le signal d'abus a échoué. Veuillez contacter un administrateur");
				},
		onFailure: function(transport){alert(transport.responseText);}
	});	
}


function pariercorreg(pari_id, reponse_id, foze,campagne_id,joueur_id,valeur, fonction)
{
	if (reponse_id == 0 || reponse_id == "" || foze == "")
	{
		alert("Veuillez selectionner un pari");
		return false;
	}
	
	if (fonction && $("detail_lp_" + pari_id) && $("detail_lp_" + pari_id).select("form")[0])
	{
		$("detail_lp_" + pari_id).select("form")[0].innerHTML = '<img src="/img/ajax.gif" class="ajax"/>';
		var theInfo2 = $("detail_lp_" + pari_id).select(".detail_pari_2")[0];
		theInfo2.style.display = "none";
	}
	
	new Ajax.Request('/ajax/pariercorreg.asp',
	{
		method:'post',
		parameters: {
					pari_id: pari_id,
					reponse_id:	reponse_id,
					foze:	foze,
					campagne_id:campagne_id,
					joueur_id:joueur_id,
					valeur:valeur,
					action: "parier"		
				},
		onSuccess: function(transport){
					var json = transport.responseText.evalJSON(true);
					if (json.id)
					{
						updateSoldeFoze('valide', json.foze)
						if (!fonction)
						{
							window.location.reload();
						}
						else
						{
							eval(fonction);
						}
					}
					else
						alert("le pari a échoué. Veuillez contacter un administrateur");
				},
		onFailure: function(transport){alert(transport.responseText);}
	});
	
	return false;
}

