/*
 *.............................................................................*
 *                                                                             *
 *    Comme  indiqué  sur  la  page  http://www.123sudoku.net/lesite/infos/    *
 *    toute    reproduction   ou   distribution    totale   ou    partielle    *
 *    (notamment du code HTML, des feuilles css, du code javascript, etc. )    *
 *    de  ce  site  internet  est  STRICTEMENT  INTERDITE.                     *
 *                                                                             *
 *    NE   VOLEZ   PAS   CE   QUE   VOUS   NE   COMPRENEZ   PAS   ! Essayez    *
 *    plutôt d'APPRENDRE...                                                    *
 *                                                               le webmaster  *
 *.............................................................................*
 */


/* FEUILLE DE SCRIPT */

// --------------------------------------
//    Fonctions pour la page webmaster
// --------------------------------------
// construction du nuancier
function makeNuancier() { if(document.getElementById) { document.write('<span id="nuancier"><table class="table_nuancier"><tr><td><a href="#" onmouseover="mouseOverColor(\'FFFFCC\');" onmousedown="selectColor(\'FFFFCC\');"><div style="background-color:#FFFFCC;">&nbsp;</div></a></td><td><a href="#" onmouseover="mouseOverColor(\'FFFF66\');" onmousedown="selectColor(\'FFFF66\');"><div style="background-color:#FFFF66;">&nbsp;</div></a></td><td><a href="#" onmouseover="mouseOverColor(\'FFCC66\');" onmousedown="selectColor(\'FFCC66\');"><div style="background-color:#FFCC66;">&nbsp;</div></a></td><td><a href="#" onmouseover="mouseOverColor(\'F2984C\');" onmousedown="selectColor(\'F2984C\');"><div style="background-color:#F2984C;">&nbsp;</div></a></td><td><a href="#" onmouseover="mouseOverColor(\'E1771E\');" onmousedown="selectColor(\'E1771E\');"><div style="background-color:#E1771E;">&nbsp;</div></a></td><td><a href="#" onmouseover="mouseOverColor(\'B47B10\');" onmousedown="selectColor(\'B47B10\');"><div style="background-color:#B47B10;">&nbsp;</div></a></td><td><a href="#" onmouseover="mouseOverColor(\'A9501B\');" onmousedown="selectColor(\'A9501B\');"><div style="background-color:#A9501B;">&nbsp;</div></a></td><td><a href="#" onmouseover="mouseOverColor(\'6F3C1B\');" onmousedown="selectColor(\'6F3C1B\');"><div style="background-color:#6F3C1B;">&nbsp;</div></a></td><td><a href="#" onmouseover="mouseOverColor(\'804000\');" onmousedown="selectColor(\'804000\');"><div style="background-color:#804000;">&nbsp;</div></a></td><td><a href="#" onmouseover="mouseOverColor(\'CC0000\');" onmousedown="selectColor(\'CC0000\');"><div style="background-color:#CC0000;">&nbsp;</div></a></td><td><a href="#" onmouseover="mouseOverColor(\'940F04\');" onmousedown="selectColor(\'940F04\');"><div style="background-color:#940F04;">&nbsp;</div></a></td><td><a href="#" onmouseover="mouseOverColor(\'660000\');" onmousedown="selectColor(\'660000\');"><div style="background-color:#660000;">&nbsp;</div></a></td></tr><tr><td><a href="#" onmouseover="mouseOverColor(\'C3D9FF\');" onmousedown="selectColor(\'C3D9FF\');"><div style="background-color:#C3D9FF;">&nbsp;</div></a></td><td><a href="#" onmouseover="mouseOverColor(\'99C9FF\');" onmousedown="selectColor(\'99C9FF\');"><div style="background-color:#99C9FF;">&nbsp;</div></a></td><td><a href="#" onmouseover="mouseOverColor(\'66B5FF\');" onmousedown="selectColor(\'66B5FF\');"><div style="background-color:#66B5FF;">&nbsp;</div></a></td><td><a href="#" onmouseover="mouseOverColor(\'3D81EE\');" onmousedown="selectColor(\'3D81EE\');"><div style="background-color:#3D81EE;">&nbsp;</div></a></td><td><a href="#" onmouseover="mouseOverColor(\'0066CC\');" onmousedown="selectColor(\'0066CC\');"><div style="background-color:#0066CC;">&nbsp;</div></a></td><td><a href="#" onmouseover="mouseOverColor(\'6C82B5\');" onmousedown="selectColor(\'6C82B5\');"><div style="background-color:#6C82B5;">&nbsp;</div></a></td><td><a href="#" onmouseover="mouseOverColor(\'32527A\');" onmousedown="selectColor(\'32527A\');"><div style="background-color:#32527A;">&nbsp;</div></a></td><td><a href="#" onmouseover="mouseOverColor(\'2D6E89\');" onmousedown="selectColor(\'2D6E89\');"><div style="background-color:#2D6E89;">&nbsp;</div></a></td><td><a href="#" onmouseover="mouseOverColor(\'006699\');" onmousedown="selectColor(\'006699\');"><div style="background-color:#006699;">&nbsp;</div></a></td><td><a href="#" onmouseover="mouseOverColor(\'215670\');" onmousedown="selectColor(\'215670\');"><div style="background-color:#215670;">&nbsp;</div></a></td><td><a href="#" onmouseover="mouseOverColor(\'003366\');" onmousedown="selectColor(\'003366\');"><div style="background-color:#003366;">&nbsp;</div></a></td><td><a href="#" onmouseover="mouseOverColor(\'000033\');" onmousedown="selectColor(\'000033\');"><div style="background-color:#000033;">&nbsp;</div></a></td></tr><tr><td><a href="#" onmouseover="mouseOverColor(\'CAF99B\');" onmousedown="selectColor(\'CAF99B\');"><div style="background-color:#CAF99B;">&nbsp;</div></a></td><td><a href="#" onmouseover="mouseOverColor(\'80FF00\');" onmousedown="selectColor(\'80FF00\');"><div style="background-color:#80FF00;">&nbsp;</div></a></td><td><a href="#" onmouseover="mouseOverColor(\'00FF80\');" onmousedown="selectColor(\'00FF80\');"><div style="background-color:#00FF80;">&nbsp;</div></a></td><td><a href="#" onmouseover="mouseOverColor(\'78B749\');" onmousedown="selectColor(\'78B749\');"><div style="background-color:#78B749;">&nbsp;</div></a></td><td><a href="#" onmouseover="mouseOverColor(\'2BA94F\');" onmousedown="selectColor(\'2BA94F\');"><div style="background-color:#2BA94F;">&nbsp;</div></a></td><td><a href="#" onmouseover="mouseOverColor(\'38B63C\');" onmousedown="selectColor(\'38B63C\');"><div style="background-color:#38B63C;">&nbsp;</div></a></td><td><a href="#" onmouseover="mouseOverColor(\'0D8F63\');" onmousedown="selectColor(\'0D8F63\');"><div style="background-color:#0D8F63;">&nbsp;</div></a></td><td><a href="#" onmouseover="mouseOverColor(\'2D8930\');" onmousedown="selectColor(\'2D8930\');"><div style="background-color:#2D8930;">&nbsp;</div></a></td><td><a href="#" onmouseover="mouseOverColor(\'1B703A\');" onmousedown="selectColor(\'1B703A\');"><div style="background-color:#1B703A;">&nbsp;</div></a></td><td><a href="#" onmouseover="mouseOverColor(\'11593C\');" onmousedown="selectColor(\'11593C\');"><div style="background-color:#11593C;">&nbsp;</div></a></td><td><a href="#" onmouseover="mouseOverColor(\'063E3F\');" onmousedown="selectColor(\'063E3F\');"><div style="background-color:#063E3F;">&nbsp;</div></a></td><td><a href="#" onmouseover="mouseOverColor(\'002E3F\');" onmousedown="selectColor(\'002E3F\');"><div style="background-color:#002E3F;">&nbsp;</div></a></td></tr><tr><td><a href="#" onmouseover="mouseOverColor(\'FFBBE8\');" onmousedown="selectColor(\'FFBBE8\');"><div style="background-color:#FFBBE8;">&nbsp;</div></a></td><td><a href="#" onmouseover="mouseOverColor(\'E895CC\');" onmousedown="selectColor(\'E895CC\');"><div style="background-color:#E895CC;">&nbsp;</div></a></td><td><a href="#" onmouseover="mouseOverColor(\'FF6FCF\');" onmousedown="selectColor(\'FF6FCF\');"><div style="background-color:#FF6FCF;">&nbsp;</div></a></td><td><a href="#" onmouseover="mouseOverColor(\'C94093\');" onmousedown="selectColor(\'C94093\');"><div style="background-color:#C94093;">&nbsp;</div></a></td><td><a href="#" onmouseover="mouseOverColor(\'9D1961\');" onmousedown="selectColor(\'9D1961\');"><div style="background-color:#9D1961;">&nbsp;</div></a></td><td><a href="#" onmouseover="mouseOverColor(\'800040\');" onmousedown="selectColor(\'800040\');"><div style="background-color:#800040;">&nbsp;</div></a></td><td><a href="#" onmouseover="mouseOverColor(\'800080\');" onmousedown="selectColor(\'800080\');"><div style="background-color:#800080;">&nbsp;</div></a></td><td><a href="#" onmouseover="mouseOverColor(\'72179D\');" onmousedown="selectColor(\'72179D\');"><div style="background-color:#72179D;">&nbsp;</div></a></td><td><a href="#" onmouseover="mouseOverColor(\'6728B2\');" onmousedown="selectColor(\'6728B2\');"><div style="background-color:#6728B2;">&nbsp;</div></a></td><td><a href="#" onmouseover="mouseOverColor(\'6131BD\');" onmousedown="selectColor(\'6131BD\');"><div style="background-color:#6131BD;">&nbsp;</div></a></td><td><a href="#" onmouseover="mouseOverColor(\'341473\');" onmousedown="selectColor(\'341473\');"><div style="background-color:#341473;">&nbsp;</div></a></td><td><a href="#" onmouseover="mouseOverColor(\'400058\');" onmousedown="selectColor(\'400058\');"><div style="background-color:#400058;">&nbsp;</div></a></td></tr><tr><td><a href="#" onmouseover="mouseOverColor(\'FFFFFF\');" onmousedown="selectColor(\'FFFFFF\');"><div style="background-color:#FFFFFF;">&nbsp;</div></a></td><td><a href="#" onmouseover="mouseOverColor(\'E6E6E6\');" onmousedown="selectColor(\'E6E6E6\');"><div style="background-color:#E6E6E6;">&nbsp;</div></a></td><td><a href="#" onmouseover="mouseOverColor(\'CCCCCC\');" onmousedown="selectColor(\'CCCCCC\');"><div style="background-color:#CCCCCC;">&nbsp;</div></a></td><td><a href="#" onmouseover="mouseOverColor(\'B3B3B3\');" onmousedown="selectColor(\'B3B3B3\');"><div style="background-color:#B3B3B3;">&nbsp;</div></a></td><td><a href="#" onmouseover="mouseOverColor(\'999999\');" onmousedown="selectColor(\'999999\');"><div style="background-color:#999999;">&nbsp;</div></a></td><td><a href="#" onmouseover="mouseOverColor(\'808080\');" onmousedown="selectColor(\'808080\');"><div style="background-color:#808080;">&nbsp;</div></a></td><td><a href="#" onmouseover="mouseOverColor(\'7F7F7F\');" onmousedown="selectColor(\'7F7F7F\');"><div style="background-color:#7F7F7F;">&nbsp;</div></a></td><td><a href="#" onmouseover="mouseOverColor(\'666666\');" onmousedown="selectColor(\'666666\');"><div style="background-color:#666666;">&nbsp;</div></a></td><td><a href="#" onmouseover="mouseOverColor(\'4C4C4C\');" onmousedown="selectColor(\'4C4C4C\');"><div style="background-color:#4C4C4C;">&nbsp;</div></a></td><td><a href="#" onmouseover="mouseOverColor(\'333333\');" onmousedown="selectColor(\'333333\');"><div style="background-color:#333333;">&nbsp;</div></a></td><td><a href="#" onmouseover="mouseOverColor(\'191919\');" onmousedown="selectColor(\'191919\');"><div style="background-color:#191919;">&nbsp;</div></a></td><td><a href="#" onmouseover="mouseOverColor(\'000000\');" onmousedown="selectColor(\'000000\');"><div style="background-color:#000000;">&nbsp;</div></a></td></tr></table></span>'); }
}

// construction boite d'appel du nuancier
function makeNuancierBox(a) {
	if(document.getElementById) {
		col = document.getElementById("cf" + a).value;
		document.write('<span id="cs' + a + '" class="colorhover" title="nuancier : cliquez pour voir la palette des couleurs" style="background-color:#' + col + ';" onmouseout="this.style.borderColor=\'blue\';" onmouseover="this.style.borderColor=\'red\';" onclick="nuancierGo(\'' + a + '\');"><img src="/img/pix_trans.gif" width="20" height="16" alt="" /></span>');
	}
}

// définit le champ utilisé en var globale
var e=null;

// appellé en direct html quand survol sur la palette
function mouseOverColor(a) {
	document.getElementById("cs" + e).style.backgroundColor = "#" + a;
}

// appellé en direct html quand clic dans la palette
function selectColor(a) {
	if(e != null) {
		setColor(e,a,true,true);
		document.getElementById("cf" + e).focus();
	}
	hidePicker();
}

// appelé uniquement sur le .js
// sur selectColor et nuancierGo
function hidePicker() {
	e = null;
	document.getElementById("nuancier").style.display="none";
}

// Fonction issue de l'application Google AdSense
// voir : https://www.google.com/adsense/
// appellé une fois dans la fonction suivante
function getLeftOffset(a) { return a==document.body?0:a.offsetLeft+getLeftOffset(a.offsetParent); }
function getTopOffset(a) { return a==document.body?0:a.offsetTop+getTopOffset(a.offsetParent); }

// Fonction issue de l'application Google AdSense
// voir : https://www.google.com/adsense/
// appellé en direct html quand clic sur le span
function nuancierGo(a,b) {
	var c=b?b:document.getElementById("cs" + a);
	e=a;
	coord_x = getLeftOffset(c)+25;
	coord_y = getTopOffset(c);
	if(coord_x < 0) { coord_x = 0; } else if(coord_x + 290 > document.body.offsetWidth) { coord_x = document.body.offsetWidth - 320; coord_y = coord_y + 25; }
	document.getElementById("nuancier").style.top = coord_y + "px";
	document.getElementById("nuancier").style.left = coord_x + "px";
	document.getElementById("nuancier").style.display = "block";
	document.onmouseup = hidePicker;
}

// ------------------------------------------------
// ------------------------------------------------
// fonctions sans lien direct avec le nuancier

// validation des couleurs
function couleurOK(a) {
	if(a == null) { return false; }
	if(a.charAt(0) == "#") { a = a.substring(1); }
	return a.match("[0-9a-fA-F]{6}");
}

// appellé en direct html et sur le .js
function setColor(a,b,c,d) {
	if(couleurOK(b)) {
		e=a;
		document.getElementById("cs" + a).style.backgroundColor = "#" + b;
		if(c) { document.getElementById("cf" + a).value = b; }
		makeUpdateCode();
	}
	else if(!d && b.length == 6) {
		alert("La couleur \"" + b + "\" n'est pas valide...\n\nVous pouvez utiliser le nuancier pour vous aider.");
		document.getElementById("cf" + a).value = '';
		document.getElementById("cf" + a).focus;
	}
}

// appellé en direct html et sur le .js
function makeUpdateCode() {
valueUpdateVariable = "";
// Type
if(document.getElementById('type1').checked) { valueUpdateVariable += '	_123sudoku_type = "sudoku";\n'; }
else if(document.getElementById('type2').checked) { valueUpdateVariable += '	_123sudoku_type = "kakuro";\n'; }
else { valueUpdateVariable += '	_123sudoku_type = "mixte";\n'; }
// Col fond
valueUpdateVariable += '	_123sudoku_couleur_fond = "' + document.getElementById('cfcol_fond').value + '";\n';
// Col grille
valueUpdateVariable += '	_123sudoku_couleur_grille = "' + document.getElementById('cfcol_grille').value + '";\n';
// Col texte
valueUpdateVariable += '	_123sudoku_couleur_texte = "' + document.getElementById('cfcol_texte').value + '";\n';
// Col boutons
valueUpdateVariable += '	_123sudoku_couleur_boutons = "' + document.getElementById('cfcol_boutons').value + '";\n';
// Niveau
valueUpdateVariable += '	_123sudoku_niveau = "' + document.getElementById('niveau').value + '";\n';
// Interactif
if(document.getElementById('inter2').checked) { valueUpdateVariable += '	_123sudoku_interactif = "0";\n'; }
else { valueUpdateVariable += '	_123sudoku_interactif = "1";\n'; }
// Version
valueUpdateVariable += '	_123sudoku_version = "1";\n';
// Design
valueUpdateVariable += '	_123sudoku_design = "1";\n';
// Taille
valueUpdateVariable += '	_123sudoku_taille = "2";\n';
// ID grille
valueUpdateVariable += '	_123sudoku_id_grille = "0";\n';

// finalisation
valueUpdate = '<scr' + 'ipt type="text/javascript"><!--\n';
valueUpdate += valueUpdateVariable;
valueUpdate += '--></scr' + 'ipt>\n';
valueUpdate += '<!-- module 123sudoku.net -->\n';
valueUpdate += '<scr' + 'ipt type="text/javascript" src="http://www.123sudoku.net/montrer_grille.js"></scr' + 'ipt>\n';
valueUpdate += '<nosc' + 'ript><p>Pas de javascript, pas de grille...<br />Jouez avec 123sudoku.net au\n';
valueUpdate += '<a href="http://www.123sudoku.net/">Sudoku</a> et au\n';
valueUpdate += '<a href="http://www.123sudoku.net/kakuro/jouer/">Kakuro</a>.</p></nosc' + 'ript>\n';
valueUpdate += '<!-- fin module 123sudoku.net -->';

// update
document.getElementById("code").value = valueUpdate;
}

//appellé en direct html quand clic sur bouton
function makeAlertCodeOk() {
	if(document.getElementById) { alert('Votre navigateur comprend le javascript...\n... donc la génération du code est automatique : pas besoin d\'appuyer sur le bouton "Générer le code" à chaque changement !\n\nC\'est-t-y pas beau ça ?'); }
}
function makeRemoveCodeOk() {
	if(document.getElementById) { document.getElementById("gener").style.display = 'none'; }
}

//appellé en direct html quand clic sur bouton
function makeWindowPrev() {	if(document.getElementById) {
valueAddrGet = "a=a";
if(document.getElementById('type1').checked) { valueAddrGet += '&b=sudoku'; }
else if(document.getElementById('type2').checked) { valueAddrGet += '&b=kakuro'; } else { valueAddrGet += '&b=mixte'; }
valueAddrGet += '&c=' + document.getElementById('cfcol_fond').value;
valueAddrGet += '&d=' + document.getElementById('cfcol_grille').value;
valueAddrGet += '&e=' + document.getElementById('cfcol_texte').value;
valueAddrGet += '&f=' + document.getElementById('cfcol_boutons').value;
valueAddrGet += '&g=' + document.getElementById('niveau').value;
if(document.getElementById('inter2').checked) { valueAddrGet += '&h=0'; } else { valueAddrGet += '&h=1'; }

window.open('/ext/scripts/pagweb.php?str=' + valueAddrGet,'','width=450,height=440,scrollbars=0,resizable=0');
} }