// JavaScript Document


/* Javascript Date Selector

   by Warren Brown (03/01/2004 Radiokop South Africa)

   Script to place Month/day/year onto a web page, leap year enabled

*/



var date_arr = new Array;
var days_arr = new Array;




date_arr[0]=new Option("Jan",31);
date_arr[1]=new Option("Feb",28);
date_arr[2]=new Option("Mar",31);
date_arr[3]=new Option("Apr",30);
date_arr[4]=new Option("May",31);
date_arr[5]=new Option("Jun",30);
date_arr[6]=new Option("Jul",31);
date_arr[7]=new Option("Aug",31);
date_arr[8]=new Option("Sep",30);
date_arr[9]=new Option("Oct",31);
date_arr[10]=new Option("Nov",30);
date_arr[11]=new Option("Dec",31);


//set todays date
Now = new Date();
NowDay = Now.getDate();
NowMonth = Now.getMonth();
NowYear = Now.getYear();
if (NowYear < 2000) NowYear += 1900; //for Netscape

function readParms()
{
  var _docLoc=document.location.toString();
  var t1="";
  var t2="";
  if(_docLoc.indexOf("?")!=-1)
  {
    var _parmString=_docLoc.substr(_docLoc.indexOf("?"),_docLoc.length);
	/* look for 2 parameters - assume they are there if you get here */
	var _parms=_parmString.split("&");
	t1=_parms[0].split("=")[1];
	while(t1.indexOf("+")!=-1)
	{
	  var _t=t1.indexOf("+");
	  var _tL=t1.length;
	  t1=t1.substr(0,_t)+" "+t1.substr(_t+1,_tL);
	}
	t1=unescape(t1);
	t2=_parms[1].split("=")[1];
	while(t2.indexOf("+")!=-1)
	{
	  var _t=t2.indexOf("+");
	  var _tL=t2.length;
	  t2=t2.substr(0,_t)+" "+t2.substr(_t+1,_tL);
	}
	t2=unescape(t2);
  }
  document.f1.t1.value=t1;
  document.f1.t2.value=t2;
}



function update_days(f) {

        temp=f.days.selectedIndex; 
        for(x=days_arr.length;x>0;x--)
        {       days_arr[x]=null;
                f.days.options[x]=null;
         }

        selection=parseInt(date_arr[f.months[f.months.selectedIndex].value].value);
        ret_val = 0;
        if(f.months[f.months.selectedIndex].value == 28) {
                year=parseInt(f.years.options[f.years.selectedIndex].value);
                if (year % 4 != 0 || year % 100 == 0 ) ret_val=0;
                else
                        if (year % 400 == 0)  ret_val=1;
                        else  ret_val=1;
        }
        selection = selection + ret_val;   
		for(x=1;x < selection+1;x++) {
                days_arr[x-1]=new Option(x);    
                f.days.options[x-1]=days_arr[x-1];
        } 
        if (temp == -1) f.days.options[0].selected=true;
        else f.days.options[temp].selected=true;  
}       

function year_print(f, n, y) {
	if (y == '+')
		y = NowYear;
        document.writeln("<SELECT name=\""+n+"\" onchange=\"update_days("+f.name+")\">")
        for(x=1990;x<2099;x++) {
			if (x == y)
				document.writeln("<OPTION selected value=\""+x+"\">"+x);
			else
				document.writeln("<OPTION value=\""+x+"\">"+x);
		}
        document.writeln("</SELECT>");
        update_days(f)
}
//date_arr[x].value
function month_print(f, n, m) {
	if (m == '+')
		m = NowMonth;
        document.writeln("<SELECT name=\""+n+"\" onchange=\"update_days("+f.name+")\">");
        for(x=0;x<12;x++) {
			if (x == m)
                document.writeln("<OPTION selected value=\""+x+"\">"+date_arr[x].text);
			else				
                document.writeln("<OPTION value=\""+x+"\">"+date_arr[x].text);
		}
		document.writeln("</SELECT>");
}

function day_print(f, n, d) {
	if (d == '+')
		d = NowDay;

        document.writeln("<SELECT name=\""+n+"\">");
      //  numDays=f.months[f.months.selectedIndex].value;
   var numDays = 31;
  if (NowMonth == "Apr" || NowMonth == "Jun" || NowMonth == "Sep" || NowMonth == "Nov") numDays = 30;
  if (NowMonth == "Feb" && (NowYear/4) != Math.floor(NowYear/4))	numDays = 28;
  if (NowMonth == "Feb" && (NowYear/4) == Math.floor(NowYear/4))	numDays = 29;

 		for(x=1;x<=numDays;x++) {
			if (x == d)
                document.writeln("<OPTION selected value=\""+x+"\">"+x);
			else				
                document.writeln("<OPTION value=\""+x+"\">"+x);
		}
		document.writeln("</SELECT>");
}




