var image = new Image();
image.onLoad = showImg;
image.onError = showErrorImg;

function getPuzzle( type, year, month, day ) {
   var mydate = new Date();
   var today;

   if( !year ) {
      year = mydate.getYear();
      if( year < 1900 ) {
         year += 1900;
      }
   }
   if( !month ) {
      month = mydate.getMonth();
      month = month + 1;
   }
   if( !day ) {
      day = mydate.getDate();
      today = 1;
   }
   if( !type ) {
      type = "";
   }

   var typeTitle = "Daily " + 
                   type.substring(0,1).toUpperCase() + 
	           type.substring(1,type.length) + 
	           " Sudoku: ";

   month = ""+month;  // make month a string
   if( month.length < 2 ) {
       month = "0"+month;
   }

   var date = new Date( year, month-1, day-1 );
   var dow = date.getDay();

   var months = new Array("Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec");
   var days = new Array("Mon","Tue","Wed","Thu","Fri","Sat","Sun");

   var title = typeTitle +days[dow]+ " " +day+ "-" +months[month-1]+ "-" +year+ '&nbsp;&nbsp;&nbsp;[<a href="/sudoku/faq.shtml#monster">instructions</a>]';
   var imgLoc = "/sudoku/" + type + "/png/" + 
                year + "/" + month + "/" + year + "-" + month + "-" + day +
	        ".png";

   if( type ) {
      document.draw.type.value = type;
   }

   if( document.draw.year ) {
      document.draw.year.value = year;
      document.draw.month.value = month;
      document.draw.day.value = day;
   }

   if( document.draw2 ) {
      document.draw2.year.value = year;
      document.draw2.month.value = month;
      document.draw2.day.value = day;
   }

   var titleObj = document.getElementById( "titleString" );
   if( titleObj ) {
      titleObj.innerHTML = title;
   }

   image.src = imgLoc;
   showImg();

/*
   var puzzleImage = document.getElementById( "puzzleImage" );
   puzzleImage.src = image.src;
*/
}

function showImg() {
    //   alert( "2:" + image.src );
   var puzzleImage = document.getElementById( "puzzleImage" );
   puzzleImage.src = image.src;
}


function showErrorImg() {
   var puzzleImage = document.getElementById( "puzzleImage" );
   puzzleImage.src = "/sudoku/img/nopuzzle.png";
}
   

function toggleSolutionImage() {
   var img = document.getElementById( "puzzleImage" );
   var but = document.getElementById( "solnButton" );
   var loc = img.src.split('.');
   var last = loc.pop();
   var spl = loc.join('.').split('_');
   if( spl.length > 1 ) {
      document.draw.solve.value = 0;
      img.src = spl[0]+"."+last;
      but.innerHTML = "Show solution";
   }
   else {
      document.draw.solve.value = 1;
      img.src = spl[0]+"_solution."+last;
      but.innerHTML = "Hide solution";
   }
}
