// JavaScript Document
function afficherCacher(a,b){
        $(a).className="onCache";
        $(b).className="onAffiche";
}
function afficheTournoi(a){
        $('tournoiEnCours').className="onCache";
        $('tournoiClassement').className="onCache";
        $('tournoiAncien').className="onCache";
        $('tournoiDefi').className="onCache";
        $(a).className="onAffiche";
}

function afficheVocaExplication(a){
        $('apprendreJouer').className="onCache";
        $('testerJeu').className="onCache";
        $('afficherSolution').className="onCache";
        $(a).className="onAffiche";
}


function afficheModePaiement(a){
        $('leTelephone').className="onCache";
        $('carteBancaire').className="onCache";
        $('neoSurf').className="onCache";
        $(a).className="onAffiche";
}

function afficheBonus(a,d){
	$('mesBonus').innerHTML="...";
	afficherCacher("maGrille","mesBonus");
	var url = "chargerBonus.php";
	o_options = new Object();
	o_options ={method:'post',postBody:'d='+d+'&a='+a+'',onComplete:afficherReponse};
	var laRequete = new Ajax.Request(url,o_options);
	function afficherReponse(requete){
		$('mesBonus').innerHTML=requete.responseText;
	}
}
function validerBonus(a,d,c,b){
	var url = "chargerBonusUtilisation.php";
	if(b!='rien'){
		b=$(b).value;
	}
	if(c!='rien'){
		c=$(c).value;
	}
	o_options = new Object();
	o_options ={method:'post',postBody:'d='+d+'&a='+a+'&b='+b+'&c='+c+'',onComplete:afficherReponse};
	var laRequete = new Ajax.Request(url,o_options);
	function afficherReponse(requete){
                maProposition.raz(d);
                revenirGrille();
				majBonus();
				g=new Date();
				$('h').innerHTML=Math.floor(g.getTime()/1000)+1;
                alert(requete.responseText);
	}
}
function revenirGrille(){
	$('mesBonus').innerHTML="...";
	afficherCacher("mesBonus","maGrille");
}

function maProposition(la_chaine,tp){
	this.la_chaine=new String(la_chaine);
	this.position=0;
	this.tp=tp;
	this.proposition=new Array;
        this.pactole=new Array;
	this.choisirLettre=choisirLettre;
	this.supprimerLettre=supprimerLettre;
	this.calculPoint=calculPoint;
        this.calculCartouche=calculCartouche;
        this.unNb=unNb;
	this.raz=raz;
}
function choisirLettre(i){
	if(this.position<=14){
		var truc=this.la_chaine.substr(i,1);
		var lalettre=truc.toLowerCase();
		var toThis="<img src='./image/alphabet/"+lalettre+"j.png' border='0' width='30' height='30' />";
		$('lettre_'+i).innerHTML=toThis;
		$('laPropo_'+this.position).innerHTML=toThis;
		this.proposition[this.position]=i;
		this.calculPoint(this.position);
                this.calculCartouche(this.position+1);
		this.position++;
	}
}
function supprimerLettre(){
	if(0<this.position){
		this.position--;
		var i=this.proposition[this.position];
		var truc=this.la_chaine.substr(i,1);
		var lalettre=truc.toLowerCase();
                if(this.pactole[i]==1){
                        var toThis="<a href='#' onClick='maProposition.choisirLettre("+i+")'><img src='./image/alphabet/"+lalettre+"p.png' border='0' width='30' height='30' /></a>";
                }
                else{
		        var toThis="<a href='#' onClick='maProposition.choisirLettre("+i+")'><img src='./image/alphabet/"+lalettre+".png' border='0' width='30' height='30' /></a>";
                }
		$('lettre_'+i).innerHTML=toThis;
		$('laPropo_'+this.position).innerHTML="<img src='./image/lettreProposition.png' />";
		this.proposition[this.position]=null;
		this.calculPoint(this.position-1);
                this.calculCartouche(this.position);
	}
}
function calculCartouche(taille){
        var nb=10;
        nb+=taille;
        if(nb==10){
                nb=0;
        }
        else{
                nb="-"+nb;
        }
        $('mesCartouches').innerHTML=nb+" <img src='./image/cartouches.png' align='top' />";
}
function calculPoint(position){
	var score=0; // compteur pour le score
	var tabScore=new Array; // tableau avec le score de chaque lettre
	var c=0;// compteur pour le calcul de position
	for(j=0;j<=80;j++){
		tabScore[j]=0;
	}
	for(a=0;a<=position;a++){
		tabScore[this.proposition[a]]=1;
	}
	for(j=0;j<=80;j++){
		if(tabScore[j]!=0){
			c=j-9;
			if((0<=c) && (c<=80)){
				if(tabScore[c]!=0){
					tabScore[j]=tabScore[j]+1;
				}
			}
			c=j+9;
			if((0<=c) && (c<=80)){
				if(tabScore[c]!=0){
					tabScore[j]=tabScore[j]+1;
				}
			}
			c=j+1;
			if((0<=c) && (c<=80) && (c!=9) && (c!=18) && (c!=27) && (c!=36) && (c!=45) && (c!=54) && (c!=63) && (c!=72)){
				if(tabScore[c]!=0){
					tabScore[j]=tabScore[j]+1;
				}
			}
			c=j-1;
			if((0<=c) && (c<=80) && (c!=8) && (c!=17) && (c!=26) && (c!=35) && (c!=44) && (c!=53) && (c!=62) && (c!=71)){
				if(tabScore[c]!=0){
					tabScore[j]=tabScore[j]+1;
				}
			}
		}
	}
	for(j=0;j<=80;j++){
		if(tabScore[j]!=0){
			score+=Number(tabScore[j]);
		}
	}
	if(this.tp==1 || this.tp==4 || this.tp==5){
		leBonus=position;
        if(8<=leBonus){
			switch(leBonus){
				case 8: leMulti=1.25; break;
                                case 9: leMulti=1.5; break;
				case 10: leMulti=1.75; break;
				case 11: leMulti=2; break;
				case 12: leMulti=2.25; break;
				case 13: leMulti=2.5; break;
				case 14: leMulti=2.75; break;
				case 15: leMulti=3; break;
			}
			leMulti=score*leMulti;
			score=Math.floor(leMulti);
		}
		for(k=0;k<=this.position;k++){
			var g=this.proposition[k];
			var zig=this.la_chaine.substr(g,1);
			switch(zig){
				case "X":
				case "Y":
					score+=2;
				break;
				case "K":
				case "W":
					score+=5;
				break;
			}
		}
	}
	$('score').innerHTML="<font color='#FFFFFF'><b>+"+score+"</b></font>";
}

function chrono(minu,secon,centi,d){
	centi--; //incrémentation des dixiemes de 1
	if (centi<0){
		centi=9;
		secon--;
	} //si les dixiemes > 9,on les réinitialise a 0 et on incrémente les secondes de 1
	if (secon<0){
		secon=59;
		minu--;
	} //si les secondes > 59,on les réinitialise a 0 et on incrémente les minutes de 1
	$('dixieme').innerHTML=centi;
	if(secon<9){
		$('seconde').innerHTML="0"+secon;
	}
	else{
		$('seconde').innerHTML=secon;
	}
	$('minute').innerHTML=minu;
	if((0<minu) || (0<centi) || (0<secon)){
		setTimeout('chrono('+minu+','+secon+','+centi+','+d+')',100) //la fonction est relancée tous les 10° de secondes
	}
        else{
                window.location="./findepartie.php?d="+d;
        }
}
function unNb(strString){//  check for valid numeric strings 
        var strValidChars = "0123456789";
        var strChar;
        var blnResult = true;
        if (strString.length == 0) 
                return false;//  test strString consists of valid characters listed above
        for (i = 0; i < strString.length && blnResult == true; i++){
                strChar = strString.charAt(i);
                if (strValidChars.indexOf(strChar) == -1){
                        blnResult = false;
                }
        }
        return blnResult;
}
function raz(d){
	var url = "charger.php";
	o_options = new Object();
	o_options ={method:'post',postBody:'d='+d+'',onComplete:afficherReponse};
	var laRequete = new Ajax.Request(url,o_options);
	function afficherReponse(requete){
		var monResul=[];
		requete.responseText.scan(/(\w|-)+/, function(match){monResul.push(match[0])});
                maProposition.la_chaine=monResul[0];
		maProposition.position=0;
		maProposition.proposition=new Array();
		$('score').innerHTML="<font color='#FFFFFF'><b>+0</b></font>";
		for(i=0;i<=14;i++){
			$('laPropo_'+i).innerHTML="<img src='./image/lettreProposition.png' />";
		}
		for(i=0;i<=80;i++){
			var truc=maProposition.la_chaine.substr(i,1);
			var lalettre=truc.toLowerCase();
                        if(((monResul[3]=='8') && ('71'<i)) || ((monResul[3]=='8') && ((i+1)%9==0))){
			     var toThis="<img src='./image/alphabet/"+lalettre+"g.png' border='0' width='30' height='30' />";
                        }
                        else{
                             var toThis="<a href='#' onClick='maProposition.choisirLettre("+i+")'><img src='./image/alphabet/"+lalettre+".png' border='0' width='30' height='30' /></a>";
                        }
			$('lettre_'+i).innerHTML=toThis;
		}
                if(this.unNb(monResul[4])){
                        var truc=maProposition.la_chaine.substr(monResul[4],1);
			var lalettre=truc.toLowerCase();
                        var toThis="<a href='#' onClick='maProposition.choisirLettre("+monResul[4]+")'><img src='./image/alphabet/"+lalettre+"p.png' border='0' width='30' height='30' /></a>";
                        $('lettre_'+monResul[4]).innerHTML=toThis;
                }
                if(this.unNb(monResul[5])){
                        var truc=maProposition.la_chaine.substr(monResul[5],1);
			var lalettre=truc.toLowerCase();
                        var toThis="<a href='#' onClick='maProposition.choisirLettre("+monResul[5]+")'><img src='./image/alphabet/"+lalettre+"p.png' border='0' width='30' height='30' /></a>";
                        $('lettre_'+monResul[5]).innerHTML=toThis;
                }
                if(this.unNb(monResul[6])){
                        var truc=maProposition.la_chaine.substr(monResul[6],1);
			var lalettre=truc.toLowerCase();
                        var toThis="<a href='#' onClick='maProposition.choisirLettre("+monResul[6]+")'><img src='./image/alphabet/"+lalettre+"p.png' border='0' width='30' height='30' /></a>";
                        $('lettre_'+monResul[6]).innerHTML=toThis;
                }
                if(this.unNb(monResul[7])){
                        var truc=maProposition.la_chaine.substr(monResul[7],1);
			var lalettre=truc.toLowerCase();
                        var toThis="<a href='#' onClick='maProposition.choisirLettre("+monResul[7]+")'><img src='./image/alphabet/"+lalettre+"p.png' border='0' width='30' height='30' /></a>";
                        $('lettre_'+monResul[7]).innerHTML=toThis;
                }
                if(this.unNb(monResul[8])){
                        $('pactole').innerHTML=monResul[8];
                }
		monResul[1]=monResul[1].replace(/dfaux/g,"<strike>");
                monResul[1]=monResul[1].replace(/ffaux/g,"</strike>");
		monResul[1]=monResul[1].replace(/fj/g,"</b></font>");
		monResul[1]=monResul[1].replace(/5dj/g,"<font color='#6e3684'><b>");
                monResul[1]=monResul[1].replace(/4dj/g,"<font color='#FF003E'><b>");
                monResul[1]=monResul[1].replace(/3dj/g,"<font color='#996600'><b>");
                monResul[1]=monResul[1].replace(/2dj/g,"<font color='#0454EA'><b>");
                monResul[1]=monResul[1].replace(/1dj/g,"<font color='#135336'><b>");
                $('mesCartouches').innerHTML="0 <img src='./image/cartouches.png' align='top' />";
		$('listeProposition').innerHTML="<b>"+monResul[1]+"</b>";
		$('monScore').innerHTML=monResul[2];
	}
}      