ms = new Array("January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December");
sds = new Array("Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"); 
function showMonth(d, m, y, l) {
	var n;
	var k;
	var dC = 0;
	var lC = "";
	initbdfd();
	if(!y) y = bd.forms['dataform'].year.value;
	if(!m) m = eval(bd.forms['dataform'].month.value + "-" + '1');
	if(!d) d = eval(bd.forms['dataform'].date.value  + "-" + '0');
	//if(!y) y = gy;
	//if(!m) m = eval(gm + "-" + '1');
	//if(!d) d = eval(gd  + "-" + '1');
	if(!l) l = getLayerObj('monthshow',fd);
	lC += "<TABLE BORDER=\"1\" VSPACE=\"0\" HSPACE=\"0\" CELLPADDING=\"0\" CELLSPACING=\"0\" BGCOLOR=\"#E0E0E0\" COLS=\"7\">\n";
	dC = getMDays(y, m);
	lC += "<TR> <TD ALIGN=\"CENTER\" COLSPAN=\"7\"><B>"+ ms[m] + "</B></TR>\n";
	lC += "<TR>\n";
	fDt = new Date(y, m, 1);
	fD = fDt.getDay ();

	lC += "<TD ALIGN=\"CENTER\" BGCOLOR=\"#FFD0D0\"><FONT POINT-SIZE=\"8\"><B>" + sds[0] + "</B></FONT></TD>\n";
		for (k = 1; k < 7; k++) {
			lC += "<TD ALIGN=\"CENTER\"><FONT POINT-SIZE=\"8\"><B>" + sds[k] + "</B></FONT></TD>\n";
		}
		lC += "</TR>\n";
		n = 0;
		for (k = 0; k < dC; k++) {
			t = eval(k + "+" +  1);
			if (n == 0) 
				lC += "<TR>\n";
			if (k == 0) 
				for (n = 0; n < fD; n++)
					lC += "<TD>&nbsp;</TD>\n";
			if(t == d) 
				lC += "<TD ALIGN=\"CENTER\" BGCOLOR=\"#AOFFA0\">\n";
			else if (n == 0)
				lC += "<TD ALIGN=\"CENTER\" BGCOLOR=\"#FFD0D0\">\n";
			else 
				lC += "<TD ALIGN=\"CENTER\">\n";
			lC += "<FONT POINT-SIZE=\"8\">\n";
			if( t == d)
				lC += t;
			else {
				lC += "<A HREF=\"javascript:dS(" + t + ");\">\n";
				lC += t;
				lC += "</A>\n";
			}
			lC += "</FONT>\n";
			lC += "</TD>\n";
			n = (n + 1) % 7;
			if (n == 0)
				lC += "</TR>\n";
		}
		fD = n;
		if (n != 0) {
			for (; n < 7; n++)
				lC += "<TD>&nbsp;</TD>\n";
			lC += "</TR>\n";
		}
		lC += "</TABLE>\n";
		setLayerHTML(l, lC);
		//wH(l, lC);
}
function getMDays(y, m) {
	var i;
	initbdfd();
	for (i = 31; i>27; i--) {
		aD = new Date(y, m, i);
		if (aD.getMonth() == m) {
			return i;
			break;
		}
	}
	return 500;
}
function showms(m, l) {
	var c = 6; //no of months per row
	var lC = "";
	var i;
	var r=0,am;
	initbdfd();
	//if(!m) m = gm;
	if(!m) m = eval(bd.forms['dataform'].month.value + "-" + '0');
	if(!l) l = getLayerObj('msshow',fd);
	lC += "<TABLE BORDER=\"1\" VSPACE=\"0\" HSPACE=\"0\" CELLPADDING=\"2\" CELLSPACING=\"0\" BGCOLOR=\"#E0E0E0\" COLS=\"";
	lC += c;
	lC += "\">\n";
	lC += "<TR>\n";
	for (i = 0; i < 12; i++) {
		if (r == 0)
		        lC += "<TR>\n";
		lC += "<TD><FONT POINT-SIZE=\"8\"><B>";
		am = eval ( i + '+' + '1');
		if( m != am) {
			lC += "<A HREF=\"javascript:mS(" + am + ");\">\n";
			lC += ms[i].substr(0,3);
			lC += "</A>\n";
		} else {
			lC += ms[i].substr(0,3);
		}
		lC += "</B></FONT></TD>\n";
		r = eval( r + 1);
		r = eval( r + '%' + c);
		if (r == 0)
		        lC += "</TR>\n";
	}
	lC += "</TABLE>\n";
//	alert('lC in showms ' + lC);
	setLayerHTML(l,lC);
	//wH(l, lC);
}
function mS(m) {
	var dC = 0;
	initbdfd();
	if(!m) m = bd.forms['dataform'].month.value;
	mi = eval(m + '-' + '1');
	gm =  m;
        bd.forms['dataform'].month.value = m;
	mnl = getLayerObj('mName',bd);
        var lC = "<FONT face=\"helvetica,arial,sans-serif\" COLOR=\"brown\" POINT-SIZE=\"12\">\n";
        lC += "<A HREF=\"javascript:initbdfd();sE(getLayerObj('msshow',fd));\"";
        lC += " ONMOUSEOUT=\"initbdfd();setTimeout('hE(getLayerObj(\\'msshow\\',fd))',3000);\"";
        lC += " ONMOUSEOVER=\"initbdfd();sE(mE(getLayerObj('msshow',fd),event)); hE(getLayerObj('yearshow',fd));hE(getLayerObj('monthshow',fd));\">\n";
	lC += "<B>";
        lC += ms[mi];
	lC += "</B>";
        lC += "</A>\n";
        lC += "</FONT>\n";

        setLayerHTML(mnl,lC);
	hE(getLayerObj('yearshow',fd));
	hE(getLayerObj('monthshow',fd));
	hE(getLayerObj('msshow',fd));
	showms();
	dC = getMDays(gy, mi);
	if (gd > dC) {
		dS(dC);
	} else {
		dS();
	}

}
function dS(d) {
	initbdfd();
	if(!d) d = bd.forms['dataform'].date.value;
	gd = d;
        bd.forms['dataform'].date.value = d;
	dnl = getLayerObj('dName',bd);
        var lC = "<FONT face=\"helvetica,arial,sans-serif\" COLOR=\"brown\" POINT-SIZE=\"12\">\n";
        lC += "<A HREF=\"javascript:initbdfd();sE(getLayerObj('monthshow',fd));\"";
        lC += " ONMOUSEOUT=\"initbdfd();setTimeout('hE(getLayerObj(\\'monthshow\\',fd))',3000);\"";
        lC += " ONMOUSEOVER=\"initbdfd();sE(mE(getLayerObj('monthshow',fd),event)); hE(getLayerObj('yearshow',fd));hE(getLayerObj('msshow',fd));\">\n";
	lC += "<B>";
        lC += d;
	lC += "</B>";
        lC += ', ';
        lC += "</A>\n";
        lC += "</FONT>\n";

        setLayerHTML(dnl,lC);
	hE(getLayerObj('yearshow',fd));
	hE(getLayerObj('monthshow',fd));
	hE(getLayerObj('msshow',fd));
	showMonth();

}
