var doload=false,clock_help_td_id=null,clock_help_array={},solution={},puzzle={},tds=document.getElementsByTagName("td"),normal_bgcolor="transparent";function examine(){var a=true;for(i in solution)if(document.getElementsByName("input"+i)[0].value!=solution[i])a=false;a?alert("Die L\u00f6sung ist richtig."):alert("Die L\u00f6sung ist falsch.")}
function dosolve(){for(i in solution){document.getElementsByName("input"+i)[0].style.color="#000000";document.getElementsByName("input"+i)[0].value=solution[i];clock_help_show_none("cell"+i)}}
function solver(a){var b=document.getElementsByName(a)[0].value;if(b!=" "&&b!=""){id=a.substr(5);if(document.getElementById(id+"1")){id="cell"+id;clock_help_show_none(id)}document.getElementsByName("suhelp")[0].checked&&suhelp(a);document.getElementsByName("sushowsolve")[0].checked&&sushowsolve(a)}else{id=a.substr(5);if(document.getElementById(id+"1")){clock_help_td_id="cell"+id;clock_help_show_pics()}}}
function make_clear(a,b){b=parseInt(b,10);if(b!=9&&b!=13&&!document.getElementsByName(a)[0].readOnly)document.getElementsByName(a)[0].value=""}function restart(){clock_help_reset();for(i in solution){document.getElementsByName("input"+i)[0].value="";clock_help_show_none("cell"+i)}}function su_error(){alert("Konnte Spieldaten nicht laden.")}
function make_game(a){restart();for(var b=0;b<9;b++)for(var c=0;c<9;c++){document.getElementsByName("input"+b+c)[0].value="";document.getElementsByName("input"+b+c)[0].style.color="#000000";document.getElementsByName("input"+b+c)[0].readOnly=false}a=eval("("+a+")");puzzle=a.sud0ku_puzzle;solution=a.sud0ku_solution;for(b in puzzle){document.getElementsByName("input"+b)[0].value=puzzle[b];document.getElementsByName("input"+b)[0].readOnly=true;document.getElementsByName("input"+b)[0].style.color="#666666"}doload=
false;loader_hide()}
function loader_show(){if(document.getElementById("loader")){var a=document.getElementById("loader"),b=document.getElementById("cell44"),c=y=0;do{c+=b.offsetLeft;y+=b.offsetTop}while(b=b.offsetParent);c+=-58;y+=-4;a.style.left=c+"px";a.style.top=y+"px";a.style.display="block"}else{a=document.createElement("div");a.id="loader";b=new Image;b.src="http://s.sudoku-space.de/extern/sudoku-extern.gif";a.appendChild(b);b=document.getElementById("cell44");c=y=0;do{c+=b.offsetLeft;y+=b.offsetTop}while(b=b.offsetParent);
c+=-58;y+=-4;a.style.position="absolute";a.style.left=c+"px";a.style.top=y+"px";a.style.opacity=a.style.MozOpacity=a.style.KhtmlOpacity=0.9;a.style.filter="alpha(opacity=90)";document.body.appendChild(a)}}function loader_hide(){if(document.getElementById("loader"))document.getElementById("loader").style.display="none"}
function new_game(){if(!doload){loader_show();doload=true;var a=document.getElementsByName("level")[0].value;AjaxRequest.get({url:"get_sudoku.php?level="+a+'&spiel=extern',onSuccess:function(b){make_game(b.responseText)},onError:function(){su_error()}})}}function clock_help_reset(){clock_help_td_id=null;clock_help_array={}}
function clock_help_show_pics(){id=clock_help_td_id.substr(4);document.getElementById(id+"1")||create_background(clock_help_td_id);for(var a=1;a<10;a++)if(clock_help_array[id][a])document.getElementById(id+""+a).style.backgroundImage="url(http://s.sudoku-space.de/extern/clock_help"+a+".gif)";else document.getElementById(id+""+a).style.backgroundImage=""}
function clock_help_show_none(a){a=a.substr(4);if(document.getElementById(a+"1"))for(var b=1;b<10;b++)document.getElementById(a+""+b).style.backgroundImage=""}
function clock_help_add_graynums(a){var b=document.getElementById(a);a=b.id.substr(4);var c=document.createElement("div");c.style.backgroundPosition="center";c.style.backgroundRepeat="no-repeat";c.style.position="relative";c.style.padding="0px";c.style.margin="0px";var e=c.cloneNode(true),f=c.cloneNode(true),d=c.cloneNode(true),g=c.cloneNode(true),h=c.cloneNode(true),j=c.cloneNode(true),k=c.cloneNode(true),l=c.cloneNode(true),m=c.cloneNode(true);e.id=a+"1";f.id=a+"2";d.id=a+"3";g.id=a+"4";h.id=a+
"5";j.id=a+"6";k.id=a+"7";l.id=a+"8";m.id=a+"9";e.appendChild(f);f.appendChild(d);d.appendChild(g);g.appendChild(h);h.appendChild(j);j.appendChild(k);k.appendChild(l);l.appendChild(m);for(c=c.cloneNode(true);b.hasChildNodes();){child=b.firstChild;b.removeChild(child);c.appendChild(child)}m.appendChild(c);b.appendChild(e);for(b=1;b<10;b++)document.getElementById(a+""+b).style.backgroundImage="url(http://s.sudoku-space.de/extern/clock_help"+b+"_light.gif)"}
function clockhelp_click(a,b){var c=a.substr(4);if(document.getElementsByName("input"+c)[0].value=="")if(clock_help_array[c]){var e=0,f=0,d;if(typeof b.offsetX!="undefined"){e=Math.ceil(b.offsetX/12);f=Math.ceil(b.offsetY/12)}else if(typeof b.layerX!="undefined"){e=Math.ceil(b.layerX/12);f=Math.ceil(b.layerY/12)}if(e!=0&&f!=0){if(f==1)if(e==1)d=1;else if(e==2)d=2;else{if(e==3)d=3}else if(f==2)if(e==1)d=4;else if(e==2)d=5;else{if(e==3)d=6}else if(f==3)if(e==1)d=7;else if(e==2)d=8;else if(e==3)d=9;
if(d)if(clock_help_array[c][d]){clock_help_array[c][d]=false;document.getElementById(c+""+d).style.backgroundImage="url(http://s.sudoku-space.de/extern/clock_help"+d+"_light.gif)"}else{clock_help_array[c][d]=true;document.getElementById(c+""+d).style.backgroundImage="url(http://s.sudoku-space.de/extern/clock_help"+d+".gif)"}}}}
function clockhelp_dblclick(a,b){var c=a.substr(4);clock_help_td_id=a;if(document.getElementsByName("input"+c)[0].value=="")if(clock_help_array[c]){var e=0,f=0,d;if(typeof b.offsetX!="undefined"){e=Math.ceil(b.offsetX/12);f=Math.ceil(b.offsetY/12)}else if(typeof b.layerX!="undefined"){e=Math.ceil(b.layerX/12);f=Math.ceil(b.layerY/12)}if(e!=0&&f!=0){if(f==1)if(e==1)d=1;else if(e==2)d=2;else{if(e==3)d=3}else if(f==2)if(e==1)d=4;else if(e==2)d=5;else{if(e==3)d=6}else if(f==3)if(e==1)d=7;else if(e==2)d=
8;else if(e==3)d=9;if(d){c="input"+c;document.getElementsByName(c)[0].value=d;solver(c)}}}else{clock_help_array[c]=[];clock_help_add_graynums(a)}else if(!document.getElementsByName("input"+c)[0].readOnly){document.getElementsByName("input"+c)[0].value="";for(d=1;d<10;d++)if(clock_help_array[c][d])document.getElementById(c+""+d).style.backgroundImage="url(http://s.sudoku-space.de/extern/clock_help"+d+".gif)";else document.getElementById(c+""+d).style.backgroundImage="url(http://s.sudoku-space.de/extern/clock_help"+
d+"_light.gif)"}}function init(){new_game();document.execCommand("BackgroundImageCache",false,true)};
