/***********chronomètre*****************/

var cent=0 
var sec=0 
var min=0 
var compte=0;
function lance_chrono()
{
cent++; 
if (cent>9){cent=0;sec++} 
if (sec>59){sec=0;min++} 

if (min<10 && sec<10) {document.getElementById('cadran').innerHTML="0"+min+":0"+sec;}
if (min<10 && sec>=10) {document.getElementById('cadran').innerHTML="0"+min+":"+sec;}
if (min>=10 && sec>=10) {document.getElementById('cadran').innerHTML=""+min+":"+sec;}
compte=setTimeout('lance_chrono()',100) //la fonction est relancée tous les 10° de secondes
}

function stoppe_chrono()
{ 
clearTimeout(compte) 
cent=0;
sec=0;
min=0;
if (min<10 && sec<10) {document.getElementById('cadran').innerHTML="0"+min+":0"+sec;}
if (min<10 && sec>=10) {document.getElementById('cadran').innerHTML="0"+min+":"+sec;}
if (min>=10 && sec>=10) {document.getElementById('cadran').innerHTML=""+min+":"+sec;}
}

function donner_sol()
{
for(i=0; i<a; i++){for (j=0; j<b; j++){window.document.change[b*i+j].style.background=couleur_case; var t=j+b*i; grille[i][j]=donnee.charAt(t);
if (grille[i][j]!='.') {window.document.change[b*i+j].value=grille[i][j]; window.document.change[b*i+j].style.color=couleur_texte_grille;}
}}

}


function purge()
{
var nombre_justes=0;
for(i=0; i<a; i++){for (j=0; j<b; j++){ if (window.document.change[b*i+j].value==grille[i][j]) {nombre_justes+=1; }}}
if (nombre_justes==nombre_lettres) {init(); alert('Bravo !'); nombre_justes=0;  clearTimeout(compte); return}
for(i=0; i<a; i++){for (j=0; j<b; j++){window.document.change[b*i+j].style.background=couleur_case; var t=j+b*i; grille[i][j]=donnee.charAt(t);
if (window.document.change[b*i+j].value!=grille[i][j] && window.document.change[b*i+j].value!='') {window.document.change[b*i+j].value='';}
}}
window.document.change[b*curseur[0]+curseur[1]].value=window.document.change[b*curseur[0]+curseur[1]].value;
}

function efface()
{for (i=0; i<a; i++){for (j=0; j<b; j++) {window.document.change[b*i+j].value='';}}
 window.document.change.a00.focus();
}

function efface_mot()
{if (ordre_tab==1) {
var avant=0; var apres=0;
for (k=1; k<curseur[1]+1; k++) {if(grille[curseur[0]][curseur[1]-k]!='.' && grille[curseur[0]][curseur[1]-k]!='&'){avant+=1; } else{break;}};
for (k=1; k<b-curseur[1]; k++) {if(grille[curseur[0]][curseur[1]+k]!='.' && grille[curseur[0]][curseur[1]+k]!='&'){apres+=1; } else{break;}};
for (i=1; i<avant+1; i++) {window.document.change[curseur[0]*b+curseur[1]-i].style.color=couleur_texte_grille;window.document.change[curseur[0]*b+curseur[1]-i].value='';}
for (i=1; i<apres+1; i++) {window.document.change[curseur[0]*b+curseur[1]+i].style.color=couleur_texte_grille;window.document.change[curseur[0]*b+curseur[1]+i].value='';}}

if (ordre_tab==0) {
var dessus=0; var dessous=0;
for (k=1; k<curseur[0]+1; k++) {if(grille[curseur[0]-k][curseur[1]]!='.' && grille[curseur[0]-k][curseur[1]]!='&'){dessus+=1; } else{break;}};
for (k=1; k<a-curseur[0]; k++) {if(grille[curseur[0]+k][curseur[1]]!='.' && grille[curseur[0]+k][curseur[1]]!='&'){dessous+=1; } else{break;}};
for (i=1; i<dessus+1; i++) {window.document.change[curseur[0]*b+curseur[1]-b*i].style.color=couleur_texte_grille;window.document.change[curseur[0]*b+curseur[1]-b*i].value='';}
for (i=1; i<dessous+1; i++) {window.document.change[curseur[0]*b+curseur[1]+i*b].style.color=couleur_texte_grille;window.document.change[curseur[0]*b+curseur[1]+i*b].value='';}}
window.document.change[curseur[0]*b+curseur[1]].style.color=couleur_texte_grille;window.document.change[curseur[0]*b+curseur[1]].value='';
}


var ordre_tab=1;
var nombre_lettres=0;
function ordre_tabulation()
{
if (ordre_tab==0) {ordre_tab=1; mot(); }
else {ordre_tab=0; mot(); }
window.document.change[(curseur[0]*b+curseur[1])%(a*b)].focus();
}

function mot()
{
for(i=0; i<a; i++){for (j=0; j<b; j++){window.document.change[b*i+j].style.background=couleur_case;}}
window.document.change[curseur[0]*b+curseur[1]].style.background=couleur_curseur;
if (ordre_tab==1) {
var avant=0; var apres=0;
for (k=1; k<curseur[1]+1; k++) {if(grille[curseur[0]][curseur[1]-k]!='.' && grille[curseur[0]][curseur[1]-k]!='&'){avant+=1; } else{break;}};
for (k=1; k<b-curseur[1]; k++) {if(grille[curseur[0]][curseur[1]+k]!='.' && grille[curseur[0]][curseur[1]+k]!='&'){apres+=1; } else{break;}};

for (i=1; i<avant+1; i++) {window.document.change[curseur[0]*b+curseur[1]-i].style.color=couleur_texte_grille;window.document.change[curseur[0]*b+curseur[1]-i].style.background=couleur_mot;}
for (i=1; i<apres+1; i++) {window.document.change[curseur[0]*b+curseur[1]+i].style.color=couleur_texte_grille;window.document.change[curseur[0]*b+curseur[1]+i].style.background=couleur_mot;}}

if (ordre_tab==0) {
var dessus=0; var dessous=0;
for (k=1; k<curseur[0]+1; k++) {if(grille[curseur[0]-k][curseur[1]]!='.' && grille[curseur[0]-k][curseur[1]]!='&'){dessus+=1; } else{break;}};
for (k=1; k<a-curseur[0]; k++) {if(grille[curseur[0]+k][curseur[1]]!='.' && grille[curseur[0]+k][curseur[1]]!='&'){dessous+=1; } else{break;}};
for (i=1; i<dessus+1; i++) {window.document.change[curseur[0]*b+curseur[1]-b*i].style.color=couleur_texte_grille;window.document.change[curseur[0]*b+curseur[1]-b*i].style.background=couleur_mot;}
for (i=1; i<dessous+1; i++) {window.document.change[curseur[0]*b+curseur[1]+i*b].style.color=couleur_texte_grille;window.document.change[curseur[0]*b+curseur[1]+i*b].style.background=couleur_mot;}}

}

function donne_mot()
{
for(i=0; i<a; i++){for (j=0; j<b; j++){window.document.change[b*i+j].style.background=couleur_case;}}
window.document.change[curseur[0]*b+curseur[1]].style.background=couleur_curseur;
if (ordre_tab==1) {
var avant=0; var apres=0;
for (k=1; k<curseur[1]+1; k++) {if(grille[curseur[0]][curseur[1]-k]!='.' && grille[curseur[0]][curseur[1]-k]!='&'){avant+=1; } else{break;}};
for (k=1; k<b-curseur[1]; k++) {if(grille[curseur[0]][curseur[1]+k]!='.' && grille[curseur[0]][curseur[1]+k]!='&'){apres+=1; } else{break;}};

for (i=1; i<avant+1; i++) {window.document.change[curseur[0]*b+curseur[1]-i].style.background=couleur_mot; window.document.change[curseur[0]*b+curseur[1]-i].value=grille[curseur[0]][[curseur[1]-i]];}
for (i=1; i<apres+1; i++) {window.document.change[curseur[0]*b+curseur[1]+i].style.background=couleur_mot;window.document.change[curseur[0]*b+curseur[1]+i].value=grille[curseur[0]][[curseur[1]+i]];}
window.document.change[curseur[0]*b+curseur[1]].value=grille[curseur[0]][[curseur[1]]]}

if (ordre_tab==0) {
var dessus=0; var dessous=0;
for (k=1; k<curseur[0]+1; k++) {if(grille[curseur[0]-k][curseur[1]]!='.' && grille[curseur[0]-k][curseur[1]]!='&'){dessus+=1; } else{break;}};
for (k=1; k<a-curseur[0]; k++) {if(grille[curseur[0]+k][curseur[1]]!='.' && grille[curseur[0]+k][curseur[1]]!='&'){dessous+=1; } else{break;}};
for (i=1; i<dessus+1; i++) {window.document.change[curseur[0]*b+curseur[1]-b*i].style.background=couleur_mot;window.document.change[curseur[0]*b+curseur[1]-b*i].value=grille[curseur[0]-i][curseur[1]];}
for (i=1; i<dessous+1; i++) {window.document.change[curseur[0]*b+curseur[1]+i*b].style.background=couleur_mot;window.document.change[curseur[0]*b+curseur[1]+b*i].value=grille[curseur[0]+i][curseur[1]];}
window.document.change[curseur[0]*b+curseur[1]].value=grille[curseur[0]][[curseur[1]]];}
}

function donne_lettre()
{window.document.change[curseur[0]*b+curseur[1]].value=grille[curseur[0]][[curseur[1]]];}

var nav;
function init()
{
if (document.layers){ nav="NE";}
if (document.getElementById){nav="NE6";}
if (document.all){nav="IE";}
return(nav);
}


function ordre()
{ 
window.document.change[curseur[0]*b+curseur[1]].value=window.document.change[curseur[0]*b+curseur[1]].value.toUpperCase();
if (ordre_tab==1) 
{
if (curseur[1]!=b-1) {
	if (grille[curseur[0]][(curseur[1]+1)%b]!='.' ){window.document.change[(curseur[0]*b+curseur[1]+1)%(a*b)].focus();}
	if (grille[curseur[0]][(curseur[1]+1)%b]=='.' ){window.document.change[curseur[0]*b+curseur[1]].value=window.document.change[curseur[0]*b+curseur[1]].value.toUpperCase();}
	}
}
if (ordre_tab==0) 
{
if (curseur[0]!=a-1) {
	if (grille[(curseur[0]+1)%a][curseur[1]]!='.' ){window.document.change[(curseur[0]*b+curseur[1]+b)%(a*b)].focus();}
	if (grille[(curseur[0]+1)%a][curseur[1]]=='.' ){window.document.change[curseur[0]*b+curseur[1]].value=window.document.change[curseur[0]*b+curseur[1]].value.toUpperCase();}
	}
}
}



function ouvre()
{

for(i=0; i<solution.length; i++) {if (solution.charAt(i)!='.' && solution.charAt(i)!=','){nombre_lettres+=1;}}
for (i=0; i<a; i++) {grille[i]=new Array(); for(j=0; j<b; j++) {grille[i][j]='';}}

solution=solution.toUpperCase();
for(j=0; j<solution.length; j++) {if (solution.charAt(j)!=','){donnee+=solution.charAt(j);};}

for(i=0; i<a; i++){for (j=0; j<b; j++){var t=j+b*i; grille[i][j]=donnee.charAt(t);}}

a=grille.length;
b=grille[0].length;



// Grille*******************

if (navigator.platform.indexOf('Mac') != -1 && navigator.userAgent.indexOf("Safari")!=-1)
{
	window.document.write("<table cellpadding=\"0\" cellspacing=\"0\" border=\"0\" bordercolor=\"#7d3085\"  bgcolor='");
window.document.write(couleur);
window.document.write("' style='float: right; margin-bottom: 15; margin-top: 15; margin-left: 15; border-collapse: collapse'>");


	window.document.write("<tr><td valign='middle' align='center'  style='border-style: solid; border-width: 0;'>&nbsp;</td>");
for (j=0; j<b; j++) {
window.document.write("<td style='color: ");
window.document.write(couleur_texte);
window.document.write("; font-size:8pt; font-family:Arial, Tahoma, Geneva;'  valign='middle' align='center'  style='border-style: solid; border-width: 0;'>&nbsp;");	
window.document.write(j+1);
window.document.write("</td>");
}
window.document.write("</tr>");

for (i=0; i<a; i++) {
window.document.write("<tr><td valign='middle' align='right'  style='color: ");
window.document.write(couleur_texte);
window.document.write("; font-size:8pt; font-family:Arial, Tahoma, Geneva; border-style: solid; border-width: 0;'>");
window.document.write(romain[i]);
window.document.write("&nbsp;&nbsp;</td>");
for(j=0; j<b; j++) {
	if(grille[i][j]!='.' && grille[i][j]!='&'){ind+=1;
	window.document.write("<td valign='middle'  style=\"border-style: solid; border-width:1px; border-color:#7D3085;\" align='center'>");
	window.document.write("<p style=\"margin-top: 0; margin-bottom: -1\"><input type='text'  tabindex='-1' name='a");
	window.document.write(i);
	window.document.write(j);
	window.document.write("' ");
	window.document.write("  style='height:19px; width:19px; text-align:center;  border-style: solid; border-width:0px; padding-left: 4; padding-right: 4; padding-top:5; padding-bottom:0; font-family:Arial; font-size:14px; text-align:center; background:");
	window.document.write(couleur_case);
	window.document.write("'  value='' maxlength='1' onfocus='javascript:this.style.background=\"");	window.document.write(couleur_curseur);
	window.document.write("\";  curseur[0]=");
	window.document.write(i);
	window.document.write("; curseur[1]=");
	window.document.write(j);
	window.document.write("; position=");
	window.document.write(ind);
	window.document.write("; this.style.color=\"");
	window.document.write(couleur_texte_curseur);
	window.document.write("\"; this.value=this.value.toUpperCase(); this.select(); mot();' onBlur='javascript:this.style.color=\"");
	window.document.write(couleur_texte_grille);
	window.document.write("\"' ondblclick='javascript:ordre_tabulation(); this.style.background=\"");
	window.document.write(couleur_curseur);
	window.document.write("\"' onChange='javascript:this.style.color=\"");
	window.document.write(couleur_texte_grille);
	window.document.write("\"; ' onKeyup='javascript:ordre();'></p>");
	window.document.write("</td>");
	}
	if (grille[i][j]=='.') {window.document.write("<td  valign='middle' align='center' style=\"border-style: solid; border-width:0; border-color:#7d3085;\" bgcolor=#000000>");
	window.document.write("<input type='hidden' name='a");
	window.document.write(i);
	window.document.write(j);
	window.document.write("' tabindex=-1 style='height:19px; width:19px;  background:#000000; border-style: solid; border-width:0px; padding-left: 4; padding-right: 4; padding-top: 1; padding-bottom: 1; text-align:center' value='' maxlength='1'>");

	window.document.write("</td>"); }
	if (grille[i][j]=='&') {window.document.write("<td  valign='middle' align='center' bgcolor=#7d3085 style='border-style: solid; border-width:0;'>");
	window.document.write("<input type='hidden' name='a");
	window.document.write(i);
	window.document.write(j);
	window.document.write("' tabindex=-1 style='height:19px; width:19px;  background:#7d3085; border-style: solid; border-width:1px; padding-left: 4; padding-right: 4; padding-top: 1; padding-bottom: 1; text-align:center' value='' maxlength='1'>");
	window.document.write("</td>"); }
 }
window.document.write("</tr>");}
}
else {if (navigator.platform.indexOf('Mac') != -1 && nav.indexOf("Internet Explorer")!=-1)
{	window.document.write("<table cellpadding=\"0\" cellspacing=\"0\" border=\"0\" bordercolor=\"#7d3085\"  bgcolor='");
	window.document.write(couleur);
	window.document.write("' style='float: right; margin-bottom: 15; margin-top: 15; margin-left: 15; border-collapse: collapse'>");
	window.document.write("<tr><td width=\"11px\" height=\"11px\" valign='middle' align='center'  style='border-style: solid; border-width: 0;'>&nbsp;</td>");
for (j=0; j<b; j++) {
window.document.write("<td width=\"11px\" style='color: ");
window.document.write(couleur_texte);
window.document.write("; font-size:8pt; font-family:Arial, Tahoma, Geneva;' height='11px' valign='middle' align='center'  style='border-style: solid; border-width: 0;'>&nbsp;");	
window.document.write(j+1);
window.document.write("</td>");
}
window.document.write("</tr>");

for (i=0; i<a; i++) {
window.document.write("<tr><td width=\"11px\" height=\"11px\" valign='middle' align='right'  style='color: ");
window.document.write(couleur_texte);
window.document.write("; font-size:8pt; font-family:Arial, Tahoma, Geneva; border-style: solid; border-width: 0;'>");
window.document.write(romain[i]);
window.document.write("&nbsp;&nbsp;</td>");
for(j=0; j<b; j++) {
	if(grille[i][j]!='.' && grille[i][j]!='&'){ind+=1;
	window.document.write("<td width=\"11px\" height=\"11px\" valign='middle'  style=\"border-style: solid; border-width:1px; border-color:#7d3085;\" align='center'>");
	window.document.write("<p style=\"margin-top: 0; margin-bottom: -1\"><input type='text'  tabindex='-1' name='a");
	window.document.write(i);
	window.document.write(j);
	window.document.write("' ");
	window.document.write(" size='5' style='height:11px; width:11px; text-align:center;  border-style: solid; border-width: 0; padding-left: 4; padding-right: 4; padding-top:5; padding-bottom:0; font-family:Arial; font-size:12px; text-align:center; background:");
	window.document.write(couleur_case);
	window.document.write("'  value='' maxlength='1' onfocus='javascript:this.style.background=\"");	
	window.document.write(couleur_curseur);
	window.document.write("\";  curseur[0]=");
	window.document.write(i);
	window.document.write("; curseur[1]=");
	window.document.write(j);
	window.document.write("; position=");
	window.document.write(ind);
	window.document.write("; this.style.color=\"");
	window.document.write(couleur_texte_curseur);
	window.document.write("\"; this.value=this.value.toUpperCase(); this.select(); mot();' onBlur='javascript:this.style.color=\"");
	window.document.write(couleur_texte_grille);
	window.document.write("\"' ondblclick='javascript:ordre_tabulation(); this.style.background=\"");
	window.document.write(couleur_curseur);
	window.document.write("\"' onChange='javascript:this.style.color=\"");
	window.document.write(couleur_texte_grille);
	window.document.write("\"; ' onKeyup='javascript:ordre();'></p>");
	window.document.write("</td>");
	}
	if (grille[i][j]=='.') {window.document.write("<td  valign='middle' align='center' style=\"border-style: solid; border-width:1px; border-color:#7d3085;\" bgcolor=#000000>");
	window.document.write("<input type='hidden' name='a");
	window.document.write(i);
	window.document.write(j);
	window.document.write("' tabindex=-1 style='height:11px; width:11px;  background:#000000; border-style: solid; border-width: 0; padding-left: 4; padding-right: 4; padding-top: 1; padding-bottom: 1; text-align:center' value='' maxlength='1'>");

	window.document.write("</td>"); }
	if (grille[i][j]=='&') {window.document.write("<td  valign='middle' align='center' bgcolor=#7d3085 style='border-style: solid; border-width:0;'>");
	window.document.write("<input type='hidden' name='a");
	window.document.write(i);
	window.document.write(j);
	window.document.write("' tabindex=-1 style='height:11px; width:11px;  background:#7d3085; border-style: solid; border-width: 0; padding-left: 4; padding-right: 4; padding-top: 1; padding-bottom: 1; text-align:center' value='' maxlength='1'>");
	window.document.write("</td>"); }
 }
window.document.write("</tr>");}}
else {
	window.document.write("<table cellpadding=\"0\" cellspacing=\"0\" border=\"0\" bordercolor=\"#7d3085\"  bgcolor='");
window.document.write(couleur);
window.document.write("' style='float: right; margin-bottom: 15; margin-top: 15; margin-left: 15; border-collapse: collapse'>");

window.document.write("<tr><td width=\"19px\" height=\"19px\" valign='middle' align='center'  style='border-style: solid; border-width: 0;'>&nbsp;</td>");
for (j=0; j<b; j++) {
window.document.write("<td width=\"19px\" style='color: ");
window.document.write(couleur_texte);
window.document.write("; font-size:8pt; font-family:Arial, Tahoma, Geneva;' height='19px' valign='middle' align='center'  style='border-style: solid; border-width: 0;'>&nbsp;");	
window.document.write(j+1);
window.document.write("</td>");
}
window.document.write("</tr>");

for (i=0; i<a; i++) {
window.document.write("<tr><td width=\"19px\" height=\"19px\" valign='middle' align='right'  style='color: ");
window.document.write(couleur_texte);
window.document.write("; font-size:8pt; font-family:Arial, Tahoma, Geneva; border-style: solid; border-width: 0;'>");
window.document.write(romain[i]);
window.document.write("&nbsp;&nbsp;</td>");
for(j=0; j<b; j++) {
	if(grille[i][j]!='.' && grille[i][j]!='&'){ind+=1;
	window.document.write("<td width=\"19px\" height=\"19px\" valign='middle'  style=\"border-style: solid; border-width:1.5px; border-color:#999999; background-color: #FFFFFF;\" align='center'>");
	window.document.write("<p style=\"margin-top: 0; margin-bottom: -1\"><input type='text'  tabindex='-1' name='a");
	window.document.write(i);
	window.document.write(j);
	window.document.write("' ");
	window.document.write(" size='5' style='height:19px; width:19px; text-align:center;  border-style: solid; border-width: 0; padding-left: 4; padding-right: 4; padding-top:5; padding-bottom:0; font-family:Arial; font-size:12px; text-align:center; background:");
	window.document.write(couleur_case);
	window.document.write("'  value='' maxlength='1' onfocus='javascript:this.style.background=\"");	window.document.write(couleur_curseur);
	window.document.write("\";  curseur[0]=");
	window.document.write(i);
	window.document.write("; curseur[1]=");
	window.document.write(j);
	window.document.write("; position=");
	window.document.write(ind);
	window.document.write("; this.style.color=\"");
	window.document.write(couleur_texte_curseur);
	window.document.write("\"; this.value=this.value.toUpperCase(); this.select(); mot();' onBlur='javascript:this.style.color=\"");
	window.document.write(couleur_texte_grille);
	window.document.write("\"' ondblclick='javascript:ordre_tabulation(); this.style.background=\"");
	window.document.write(couleur_curseur);
	window.document.write("\"' onChange='javascript:this.style.color=\"");
	window.document.write(couleur_texte_grille);
	window.document.write("\"; ' onKeyup='javascript:ordre();'></p>");
	window.document.write("</td>");
	}
	if (grille[i][j]=='.') {window.document.write("<td  valign='middle' align='center' style=\"border-style: solid; border-width:1.5px; border-color:#999999;\" bgcolor=#000000>");
	window.document.write("<input type='hidden' name='a");
	window.document.write(i);
	window.document.write(j);
	window.document.write("' tabindex=-1 style='height:19px; width:19px;  background:#000000; border-style: solid; border-width: 0; padding-left: 4; padding-right: 4; padding-top: 1; padding-bottom: 1; text-align:center' value='' maxlength='1'>");

	window.document.write("</td>"); }
	if (grille[i][j]=='&') {window.document.write("<td  valign='middle' align='center' bgcolor=#7d3085 style='border-style: solid; border-width:0;'>");
	window.document.write("<input type='hidden' name='a");
	window.document.write(i);
	window.document.write(j);
	window.document.write("' tabindex=-1 style='height:19px; width:19px;  background:#7d3085; border-style: solid; border-width: 0; padding-left: 4; padding-right: 4; padding-top: 1; padding-bottom: 1; text-align:center' value='' maxlength='1'>");
	window.document.write("</td>"); }
 }
window.document.write("</tr>");}

}
}

if (lignes_suppl!=0) 
{
window.document.write("<tr><td  colspan='");
window.document.write(b+1);
window.document.write("' align='right'width=\"23px\" style='border-style:solid; border-width:0; border-color:#6C1E78'>");
for (i=0; i<lignes_suppl;i++) {window.document.write("<br>&nbsp");};
window.document.write("</td></tr>");
}
window.document.write("</table>");


window.document.write("<br>");


}

