var cl=7;
var bd=new Array();
var cb;
var adi=new Array();
var rows, cols, cellcount;
var clc, totcl;
var cellcount = -1;
var minchg,maxchg;
var record="";
var df;var d=document;
function mydocwrite(s){ document.write(s); }
function constr()
{var s= df.r.value + "," + df.c.value + "," + df.n.value +"," +df.x.value;
 window.location.replace("cgii.htm?c"+s+"#play");
}
function c(i)
{
 var j;
 var dbg="";
 totcl++;
 var pad=totcl > 9 ? "" : "  ";
 d.BOARD.tally.value = "  " + pad + totcl + "  ";
 for (j=i; j < i+clc; j++)
    {
     k = j % cellcount;
     bd[k]=(bd[k]+2)%cl;
     adi[k].value = "" + bd[k];
     cb[k]++;
    }
 record += i+".";
 d.BOARD.rec.value=record;
 clc++;
 if (clc > maxchg)clc=minchg;
}
function dotable()
{
var c1, r1, c2=0;  // a<b
mydocwrite("<form name=BOARD>");
mydocwrite("<table border=0 cellspacing=0 cellpadding=5>");
mydocwrite("<tr><td colspan="+cols+">");
mydocwrite("Your moves:<br><input type=text name=rec size=50>");
mydocwrite("</td></tr>");
for (r1=0; r1<rows; r1++)
{
 mydocwrite("<tr>");
 for (c1=0; c1 < cols; c1++)
   {
    var n="b"+c2;
    mydocwrite("<td align=center>" +
				"<input type=button value=0 name=" + n +
                " onclick=c("+c2+")><br>" +
				  "<font size=1>" + c2  + "</font>" +
				" </td>");
    c2++;
   }
 mydocwrite("</tr>");
}
mydocwrite("</table><br>");
cellcount=c2;
cb=new Array(cellcount);
mydocwrite("click to <input type=button name=tally onclick='setup()' value='    0  '> start over");
mydocwrite("</form>");
}
function setup()
{
 var i, j, b;
 var aa=d.BOARD.elements; j = aa.length;
 for (b=0,i=0; i < j; i++)
   {if (aa[i].type == "button")adi[b++]=aa[i];}
 for (i=0;i<cellcount;i++)
  {j=i%cl;
   bd[i]=j;
   adi[i].value = "" + j;
  }
 clc=minchg;
 totcl=0;
 d.BOARD.tally.value = "    " + totcl + "  ";
 d.BOARD.rec.value=record="";
}
function g1(r,c,n,x,name)
{
 rows = r; cols=c; minchg=n; maxchg=x;
 var i,j; 
 document.close();
 document.open();
 mydocwrite( "<head></head><body bgcolor=#c0c0c0><center>");
 mydocwrite("<u>"+name+"</u>");
 dotable();
 mydocwrite("</center></body>");
 df=document.f;
 setup();
}
function chkst()
{
 df.r.value = rows;
 df.c.value = cols;
 df.n.value = minchg;
 df.x.value = maxchg;
}
function main()
{
var s=location.href;
var t=s.lastIndexOf("?");
if (t != -1) 
  s=s.substr(t+1);
switch(s.charAt(0))
  {              
   default:
   case '1':  g1(1, 7,1,6, "Sixy"); break;
   case '2':  g1(1, 7,1,2, "Pair Up"); break;
   case '3':  g1(1, 7,1,3, "Easy as 123"); break;
   case '4':  g1(1,10,2,3, "Double Treble"); break;
   case '5':  g1(1,11,3,4, "Triqqqqy"); break;
   case 'c':
       var params=s.substr(1).split(',');
       for (i=0;i<params.length;i++)
          params[i]=parseInt(params[i]);
       g1(params[0],params[1],params[2],params[3],
                      "Custom (" + params[2] + "-" + params[3]+")");
       break;
  }
setTimeout("chkst()",200);
}

