<!--
var larr = null;var imgs = null;var dmn=3;var level=1;
var lvlArr = new Array();

function loadImgs()
{
    imgs = new Array(2);
    imgs[0] = new Image();imgs[0].src = "images/bulb_off.jpg";
    imgs[1] = new Image();imgs[1].src = "images/bulb_on.jpg";
}

function genPattern(larr, flg)
{
    if (flg == 0)
    {
	var idx = 0;
	if (level > 7) {level=7;}
	while (lvlArr.pop()) {}
	while (idx < level)
	{
	    var r = getrand(1,dmn); var c = getrand(1,dmn);
	    var found = false;
	    for (var k = 0; found == false && k < lvlArr.length;k += 2)
	    {
	        if (lvlArr[k] == r && lvlArr[k+1] == c) {found=true;}
	    }
	    if (found == false) {lvlArr.push(r);lvlArr.push(c);idx++;}
	}
    }
    for (var k = 0; k < lvlArr.length;k += 2)
    {
        togLights(lvlArr[k], lvlArr[k+1]);
    }
}

function initScr(flg)
{
    if (imgs == null) {loadImgs();}
    var dm = dmn+1;
    larr = new Array(dm);
    for (var i = 0; i < dm; i++)
    {
        larr[i] = new Array(dm);
        for (var j = 0; j < dm; j++) {larr[i][j] = (dmn == 3 ? 1 : 0);}
    }
    
    if (dmn == 5) {genPattern(larr, flg);}
    showLights();
}

function xorLight(row, col)
{
    larr[row][col] ^= 1;
    var o = document.getElementById("s_" + row + "_" + col);
    if (o != null) {o.innerHTML = "<img border=0 src='" + imgs[larr[row][col]].src + "'>";}
}

function allDone()
{
    var done = true;
    for (var i = 0; i < dmn && done; i++)
    {
        var row=i+1;
        for (var j = 0; j < dmn && done; j++)
        {
            var col = j+1;
            if (larr[row][col] == 1) {done = false;}
        }
    }
    
    return done;
}

function getrand(min, max)
{
  rnd = Math.floor(Math.random()*1000);
  rnd = rnd % (max-min+1);
  return min + rnd;
}


function togLights(row, col)
{
    xorLight(row,col);
    if (row-1 > 0) {xorLight(row-1,col);}
    if (row+1 <= dmn) {xorLight(row+1,col);}
    if (col-1 > 0) {xorLight(row,col-1);}
    if (col+1 <= dmn) {xorLight(row,col+1);}
    if (allDone()) {alert("Congratulation!"); dmn = (dmn == 3 ? 5 : 5);level++;initScr(0);}
}

function showLights()
{
    var str = "<table style='border:1px solid #ffffee;'>";
    for (var i = 0; i < dmn; i++)
    {
        var row=i+1;str += "<tr>";
        for (var j = 0; j < dmn; j++)
        {
            var col = j+1;
            str += "<td class=sqr onClick='togLights(" + row + "," + col + ");'><div id='s_" + row + "_" + col + "'><img border=0 src='" + imgs[larr[row][col]].src + "'></div></td>";
        }
        str += "</tr>";
    }
    str += "</table>";
    var o = document.getElementById("lghts");
    if (o != null) {o.innerHTML = str;}
}

//-->