    var listevoy  = new Array(26) 
    var listecon  = new Array(39)
    
    listevoy = new Array("A","A","A","A","A","E","E","E","E","E","E","E","E","E","E","I","I","I","I","I","O","O","U","O","U","U","Y") 
	listecon = new Array("L","N","R","S","T","L","N","R","S","T","L","N","R","S","T","B","C","D","F","G","H","M","P","B","C","D","F","G","H","M","P","Q","V","J","K","W","X","Z")
	
    var plet = new Array(9)			// tableau permanant du tirage
    var vlet = new Array(9)			// tableau des lettres non utilisées

    var let_effacee = ""
	var mot=""
	var placer = "zzz"  /* un mot par ligne  */
	var let = ""
	var nlet = 10
	var monmot =""	
	var	solu1, nsolu1, lsolu1
	var	solu2, nsolu2, lsolu2
	var tirage =""
	var secon=0 				//initialise les secondes
	var trouve = false

function init_long() {
	    nbvoy = 0; nbcons =0;
	    document.getElementById("voici").value ="";
	    document.getElementById("solulong1").value = ""
		document.getElementById("solucom1").value = ""
		document.getElementById("solulong2").value = ""
		document.getElementById("solucom2").value = ""
		document.getElementById("motbon").value = ""
		leslettres = ""; solu = "";monmot=""
		var npl = 0
		for (npl = 1; npl<10; npl++){
			plet[npl]=" "
			laplaque ="pl"+npl
			document.getElementById(laplaque).value = ""
			document.getElementById(laplaque).style.color = "navy"
		}
}		

	
function affiche_solu(){
	cherche_solu(tirage)
	document.getElementById("motbon").focus()

	if(monmot !=""){
		nomliste = "os"+monmot.length
		nsolu = 0
		verifie_mot(nomliste,monmot)
		if (nsolu == 1){	document.getElementById("motbon").value = "Mot accepté"}
		if (nsolu == 0){	document.getElementById("motbon").value = "Ce mot n'est pas dans l'ODS 5"}
				
		document.getElementById("solulong1").value = solu1
				if (nsolu1 <= 1) {document.getElementById("solucom1").value = nsolu1 +" mot de " + lsolu1 + " lettres"}
				if (nsolu1 >= 2) {document.getElementById("solucom1").value = nsolu1 +" mots de " + lsolu1 + " lettres"}
				
		document.getElementById("solulong2").value = solu2
				if (nsolu2 <= 1) document.getElementById("solucom2").value = nsolu2 +" mot de " + lsolu2 + " lettres"
				if (nsolu2 >= 2) document.getElementById("solucom2").value = nsolu2 +" mots de " + lsolu2 + " lettres"
	}
	nlet =10
	
	
}

function verifie_mot(nomliste,rech){
	lfic = rech.length
	liste = eval(nomliste)
	lfichier = liste.length
	rech2 = rech.replace(/-/g,".");
	ldebut = 0 ;
	lfin = lfic;
	trouve = -1;
		while (ldebut < lfichier){
			var mot=liste.slice(ldebut,lfin);
			trouve = mot.search(rech2);
				if(trouve > -1){
					nsolu ++;
					solu_rec= solu_rec.concat(mot);
					solu_rec= solu_rec.concat(placer);
				}
			ldebut = ldebut + lfic;
			lfin = lfin + lfic;
		}
}

function plus_long(nomliste,rech,lfic){  // fonctionne asssez rapide
	REC = 10
	liste = eval(nomliste)
	lrech = rech.length
	lfichier = liste.length
	rech2 = rech.replace(/-/g,".");
	exp = "\[" + rech2 +  "\]"
	expreg = new RegExp(exp,"g") ; // construction de l'objet RegExp()
	ldebut = 0 ;
	premier = 1;
	lfin = lfic;
	var trouve2 = "";
		while (ldebut < lfichier){
				mot = liste.slice(ldebut,lfin);
				trouve = mot.replace(expreg,"") ; // lancement de la recherche
					if (trouve == "") {	// mots ayant seulement des lettres communes
						trouve2 = mot
						var j = 0
						while (j < lrech){
							let = rech2.substr(j,1)
							exp2 = "\[" + let +  "\]"
							expreg2 = new RegExp(exp2,"i") ; // construction de l'objet RegExp()
							trouve2 = trouve2.replace(expreg2,"") ;	
						j++
						}
						if (trouve2  == "") {// mots ayant TOUTES les lettres communes
							solu_rec= solu_rec.concat(mot);
							if((REC == 10)&&(navigator.appName != "Netscape")) solu_rec= solu_rec.concat(String.fromCharCode(10,13));
							if((REC == 10)&&(navigator.appName == "Netscape")) solu_rec= solu_rec.concat(String.fromCharCode(13));
							if(REC != 10) solu_rec= solu_rec.concat("zzz");							
							nsolu++;
							solutrouve = true
						}					
				 	}
				ldebut = ldebut +lfic;
				lfin = lfin + lfic;
		}
}

function efface_let() {
			trouve = false
			var lmonmot = monmot.length
			var let_effacee = monmot.substr(lmonmot-1,1);
			monmot = monmot.slice(0,lmonmot-1);
		for (n = 1; n<10; n++){
			if ((plet[n] == let_effacee)&&(vlet[n]==" ")){
				vlet[n] = let_effacee
				laplaque ="pl"+ n				
				document.getElementById(laplaque).style.color = "navy"
				document.getElementById(laplaque).value = plet[n]
				document.getElementById("voici").value = monmot
				n=10
			}
		if (trouve == true) break
		}
}
function affiche_monmot(key){
	if (code > 64 && code < 91) {

			trouve = false
			var let = String.fromCharCode(key)		
		for (n = 1; n<10; n++){
			if(vlet[n]== let) {
				vlet[n]= " "; 
				trouve = true
				laplaque ="pl"+ n				
				document.getElementById(laplaque).style.color = "red"
				monmot = monmot + let
				document.getElementById("voici").value = monmot
				n=10			
			}	
		}				
		if (trouve == false) alert("Cette lettre est impossible")
	 }
}

function choix_let(cas){
	if (nlet == 10) {nlet = 0; tirage = ""; init_long()}
  	if (nlet <10){	
		nlet++
		if (cas == 1) {
			document.getElementById("lesvoys").focus()
			p = Math.floor(Math.random() *27); 
	    	let = listevoy[p]
	    }
		if (cas == 2) {
			document.getElementById("lescons").focus()
			p = Math.floor(Math.random() *38); 
	    	let = listecon[p]
	    }
	 		laplaque ="pl"+nlet
			plet[nlet]= let
			vlet[nlet]= let
			tirage = tirage +let
			document.getElementById(laplaque).value = let
			
		if (nlet == 9){		
			nlet++	
			enter=new Date();
			chrono_long() 
			if (cas == 1) document.getElementById("voys").blur()
			if (cas == 2) document.getElementById("cons").blur()
		}
	}
}

function cherche_solu(tirage){
		nsolu = 0;solu_rec = "";lfic = 9
		while (nsolu == 0){
			nomliste = "os"+ lfic
			plus_long(nomliste, tirage, lfic)
			lfic--
		}
		solu1 = solu_rec
		nsolu1 = nsolu
		lsolu1 = lfic+1
	if(navigator.appName != "Netscape") solu1 = solu1.replace(/zzz/g,String.fromCharCode(10,13));
	if(navigator.appName == "Netscape") solu1 = solu1.replace(/zzz/g,String.fromCharCode(13));
	solu1 = solu1.replace(/kkk/g," "); 	
				
			nsolu = 0 ; solu_rec = "";
			nomliste ="os"+ lfic
			plus_long(nomliste, tirage, lfic)
		solu2 = solu_rec
		nsolu2 = nsolu
		lsolu2 = lfic
	if(navigator.appName != "Netscape") solu2 = solu2.replace(/zzz/g,String.fromCharCode(10,13));
	if(navigator.appName == "Netscape") solu2 = solu2.replace(/zzz/g,String.fromCharCode(13));
	solu2 = solu2.replace(/kkk/g," "); 
}

function chrono_long() {
	now = new Date(); 
	time_dif=(now.getTime()-enter.getTime())/1000;
	time_dif=Math.round(time_dif);
	duree = 30 - time_dif
	document.getElementById("chronolong").value = duree
	if((duree <= 0)||(code ==13)) {
		document.getElementById("chronolong").value = "0"
		clearTimeout('chrono_long')
	}else{
		setTimeout('chrono_long()',1000)
	}
}

