var weekend = [0,6];
var weekendColor = "#e0e0e0";
var fontface = "Verdana";
var fontsize = 2;
var go_year=0;
var gNow = new Date();
var ggWinCal;
isNav = (navigator.appName.indexOf("Netscape") != -1) ? true : false;
isIE = (navigator.appName.indexOf("Microsoft") != -1) ? true : false;

Calendar.Months = ["January", "February", "March", "April", "May", "June",
"July", "August", "September", "October", "November", "December"];

// Non-Leap year
Calendar.DOMonth = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];

// Leap year
Calendar.lDOMonth = [31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];

function Calendar(p_item, p_WinCal, p_month, p_year, p_format) {
	if ((p_month == null) && (p_year == null))	return;

	if (p_WinCal == null)
		this.gWinCal = ggWinCal;
	else
		this.gWinCal = p_WinCal;

	if (p_month == null) {
		this.gMonthName = null;
		this.gMonth = null;
		this.gYearly = true;
	} else {
		this.gMonthName = Calendar.get_month(p_month);
		this.gMonth = new Number(p_month);
		this.gYearly = false;
	}

	this.gYear = p_year;
	this.gFormat = p_format;
	this.gBGColor = "white";
	this.gFGColor = "black";
	this.gTextColor = "black";
	this.gHeaderColor = "black";
	this.gReturnItem = p_item;
}

Calendar.get_month = Calendar_get_month;
Calendar.get_daysofmonth = Calendar_get_daysofmonth;
Calendar.calc_month_year = Calendar_calc_month_year;
Calendar.print = Calendar_print;

function Calendar_get_month(monthNo) {
 return Calendar.Months[monthNo];
}

function Calendar_get_daysofmonth(monthNo, p_year) {
	if ((p_year % 4) == 0) {
		if ((p_year % 100) == 0 && (p_year % 400) != 0)
			return Calendar.DOMonth[monthNo];

		return Calendar.lDOMonth[monthNo];
	} else
		return Calendar.DOMonth[monthNo];
}

function Calendar_calc_month_year(p_Month, p_Year, incr) {
	/*
	*/
	var ret_arr = new Array();

	if (incr == -1) {
		if (p_Month == 0) {
			ret_arr[0] = 11;
			ret_arr[1] = parseInt(p_Year) - 1;
		}
		else {
			ret_arr[0] = parseInt(p_Month) - 1;
			ret_arr[1] = parseInt(p_Year);
		}
	} else if (incr == 1) {
		// F O R W A R D
		if (p_Month == 11) {
			ret_arr[0] = 0;
			ret_arr[1] = parseInt(p_Year) + 1;
		}
		else {
			ret_arr[0] = parseInt(p_Month) + 1;
			ret_arr[1] = parseInt(p_Year);
		}
	}

	return ret_arr;
}

function Calendar_print() {
 ggWinCal.print();
}

function Calendar_calc_month_year(p_Month, p_Year, incr) {
	/*  */
	var ret_arr = new Array();

	if (incr == -1) {
		// B A C K W A R D
		if (p_Month == 0) {
			ret_arr[0] = 11;
			ret_arr[1] = parseInt(p_Year) - 1;
		}
		else {
			ret_arr[0] = parseInt(p_Month) - 1;
			ret_arr[1] = parseInt(p_Year);
		}
	} else if (incr == 1) {
		// F O R W A R D
		if (p_Month == 11) {
			ret_arr[0] = 0;
			ret_arr[1] = parseInt(p_Year) + 1;
		}
		else {
			ret_arr[0] = parseInt(p_Month) + 1;
			ret_arr[1] = parseInt(p_Year);
		}
	}

	return ret_arr;
}

new Calendar();

Calendar.prototype.getMonthlyCalendarCode = function() {
	var vCode = "";
	var vHeader_Code = "";
	var vData_Code = "";

	// Begin Table Drawing code here..
	vCode = vCode + "<TABLE BORDER=1 BGCOLOR=\"" + this.gBGColor + "\">";

	vHeader_Code = this.cal_header();
	vData_Code = this.cal_data();
	vCode = vCode + vHeader_Code + vData_Code;


	vCode = vCode + "</TABLE>";

	return vCode;
}

Calendar.prototype.show = function() {
	var vCode = "";

	this.gWinCal.document.open();

	// Setup the page...
	this.wwrite("<html>");
	this.wwrite("<head><LINK href=dp.css rel=stylesheet><title>Calendar</title>");
	this.wwrite("</head>");

	this.wwrite("<body marginwidth=2 marginheight=2 topmargin=2 leftmargin=2 " +
		"link=\"" + this.gLinkColor + "\" " +
		"vlink=\"" + this.gLinkColor + "\" " +
		"alink=\"" + this.gLinkColor + "\" " +
		"text=\"" + this.gTextColor + "\"><form name='fc' ONSUBMIT='return false;'>");
	this.wwriteA("<TABLE  BORDER=0 CELLSPACING=0 CELLPADDING=0 width=100%><TR><TD width=70%><FONT FACE='" + fontface + "' SIZE=1><B>");
	this.wwriteA(this.gMonthName + " " + this.gYear);
	this.wwriteA("</B>  </td><td width=30% align=right><FONT FACE='" + fontface + "' SIZE=1><input class=ts type=text name=skipyear size=3 maxlength=4 value="+this.gYear+" onfocus='document.fc.skipyear.value=\"\";' onblur=\"window.opener.go_year=document.fc.skipyear.value;\"></font></td></tr></table>");

	// Show navigation buttons
	var prevMMYYYY = Calendar.calc_month_year(this.gMonth, this.gYear, -1);
	var prevMM = prevMMYYYY[0];
	var prevYYYY = prevMMYYYY[1];




	var nextMMYYYY = Calendar.calc_month_year(this.gMonth, this.gYear, 1);
	var nextMM = nextMMYYYY[0];
	var nextYYYY = nextMMYYYY[1];

	this.wwrite("<TABLE  BORDER=1 CELLSPACING=0 CELLPADDING=0 BGCOLOR='#e0e0e0' width=100%><TR bgcolor='#CCFFFF'><TD ALIGN=center><FONT SIZE='1' FACE='" + fontface + "' >");
	this.wwrite("[<A HREF=\"" +
		"javascript:window.opener.Build(" +
		"'" + this.gReturnItem + "', '" + this.gMonth + "', '" + (parseInt(this.gYear)-1) + "', '" + this.gFormat + "'" +
		");" +
		"\">\<\<<\/A>]</font></TD><TD ALIGN=center><FONT SIZE='1' FACE='" + fontface + "' >");
	this.wwrite("[<A HREF=\"" +
		"javascript:window.opener.Build(" +
		"'" + this.gReturnItem + "', '" + prevMM + "', '" + prevYYYY + "', '" + this.gFormat + "'" +
		");" +
		"\"><<\/A>]</font></TD><TD ALIGN=center><FONT SIZE='1' FACE='" + fontface + "' >");
	this.wwrite("[<A HREF='#' onClick=\"self.opener.document." + this.gReturnItem + ".value='" +
				"" +
				"';window.close();\">Cancel</A>]</font></TD><TD ALIGN=center><FONT SIZE='1' FACE='" + fontface + "' >");
	this.wwrite("[<A HREF=\"" +
		"javascript:window.opener.Build(" +
		"'" + this.gReturnItem + "', '" + nextMM + "', '" + nextYYYY + "', '" + this.gFormat + "'" +
		");" +
		"\">><\/A>]</font></TD><TD ALIGN=center><FONT SIZE='1' FACE='" + fontface + "' >");
	this.wwrite("[<A HREF=\"" +
		"javascript:window.opener.Build(" +
		"'" + this.gReturnItem + "', '" + this.gMonth + "', '" + (parseInt(this.gYear)+1) + "', '" + this.gFormat + "'" +
		");" +
		"\">>><\/A>]</font></TD></TR></TABLE>");

// Get the Month Wise Selection

	this.wwrite("<TABLE  BORDER=1 CELLSPACING=0 CELLPADDING=0 BGCOLOR='#e0e0e0' width=100%><TR><TD class=ts ALIGN=center ><FONT SIZE='1' FACE='" + fontface + "' >");
	this.wwrite("<A HREF=\"" +"javascript:window.opener.Build(" +"'" + this.gReturnItem + "', 0, '" + this.gYear + "', '" + this.gFormat + "'" +");" + "\">Jan<\/A></font></TD><TD class=ts ALIGN=center><FONT SIZE='1' FACE='" + fontface + "' >");
	this.wwrite("<A HREF=\"" +"javascript:window.opener.Build(" +"'" + this.gReturnItem + "', 1, '" + this.gYear + "', '" + this.gFormat + "'" +");" + "\">Feb<\/A></font></TD><TD class=ts ALIGN=center><FONT SIZE='1' FACE='" + fontface + "' >");
	this.wwrite("<A HREF=\"" +"javascript:window.opener.Build(" +"'" + this.gReturnItem + "', 2, '" + this.gYear + "', '" + this.gFormat + "'" +");" + "\">Mar<\/A></font></TD><TD class=ts ALIGN=center><FONT SIZE='1' FACE='" + fontface + "' >");
	this.wwrite("<A HREF=\"" +"javascript:window.opener.Build(" +"'" + this.gReturnItem + "', 3, '" + this.gYear + "', '" + this.gFormat + "'" +");" + "\">Apr<\/A></font></TD><TD class=ts ALIGN=center><FONT SIZE='1' FACE='" + fontface + "' >");
	this.wwrite("<A HREF=\"" +"javascript:window.opener.Build(" +"'" + this.gReturnItem + "', 4, '" + this.gYear + "', '" + this.gFormat + "'" +");" + "\">May<\/A></font></TD><TD class=ts ALIGN=center><FONT SIZE='1' FACE='" + fontface + "' >");
	this.wwrite("<A HREF=\"" +"javascript:window.opener.Build(" +"'" + this.gReturnItem + "', 5, '" + this.gYear + "', '" + this.gFormat + "'" +");" + "\">Jun<\/A></font></TD></TR><TR><TD class=ts ALIGN=center><FONT SIZE='1' FACE='" + fontface + "' >");
	this.wwrite("<A HREF=\"" +"javascript:window.opener.Build(" +"'" + this.gReturnItem + "', 6, '" + this.gYear + "', '" + this.gFormat + "'" +");" + "\">Jul<\/A></font></TD><TD class=ts ALIGN=center><FONT SIZE='1' FACE='" + fontface + "' >");
	this.wwrite("<A HREF=\"" +"javascript:window.opener.Build(" +"'" + this.gReturnItem + "', 7, '" + this.gYear + "', '" + this.gFormat + "'" +");" + "\">Aug<\/A></font></TD><TD class=ts ALIGN=center><FONT SIZE='1' FACE='" + fontface + "' >");
	this.wwrite("<A HREF=\"" +"javascript:window.opener.Build(" +"'" + this.gReturnItem + "', 8, '" + this.gYear + "', '" + this.gFormat + "'" +");" + "\">Sep<\/A></font></TD><TD class=ts ALIGN=center><FONT SIZE='1' FACE='" + fontface + "' >");
	this.wwrite("<A HREF=\"" +"javascript:window.opener.Build(" +"'" + this.gReturnItem + "', 9, '" + this.gYear + "', '" + this.gFormat + "'" +");" + "\">Oct<\/A></font></TD><TD class=ts ALIGN=center><FONT SIZE='1' FACE='" + fontface + "' >");
	this.wwrite("<A HREF=\"" +"javascript:window.opener.Build(" +"'" + this.gReturnItem + "', 10, '"+ this.gYear + "', '" + this.gFormat + "'" +");" + "\">Nov<\/A></font></TD><TD class=ts ALIGN=center><FONT SIZE='1' FACE='" + fontface + "' >");
	this.wwrite("<A HREF=\"" +"javascript:window.opener.Build(" +"'" + this.gReturnItem + "', 11, '"+ this.gYear + "', '" + this.gFormat + "'" +");" + "\">Dec<\/A></font></TD></TR></TABLE>");


// End the Month

	this.wwrite("<TABLE  BORDER=0 CELLSPACING=0 CELLPADDING=0 width=100%><TR><TD></td><img src='/images/spacer.gif' border=0 height=4 width=1'></td></tr></table>");
	// Get the complete calendar code for the month..
	vCode = this.getMonthlyCalendarCode();
	this.wwrite(vCode);

	this.wwrite("</font></form></body></html>");

	this.gWinCal.document.close();
}

Calendar.prototype.showY = function() {
	var vCode = "";
	var i;
	var vr, vc, vx, vy;		// Row, Column, X-coord, Y-coord
	var vxf = 285;			// X-Factor
	var vyf = 200;			// Y-Factor
	var vxm = 10;			// X-margin
	var vym;				// Y-margin
	if (isIE)	vym = 75;
	else if (isNav)	vym = 25;

	this.gWinCal.document.open();

	this.wwrite("<html>");
	this.wwrite("<head><LINK href=dp.css rel=stylesheet><title>Calendar</title>");
	this.wwrite("<style type='text/css'>\n<!--");
	for (i=0; i<12; i++) {
		vc = i % 3;
		if (i>=0 && i<= 2)	vr = 0;
		if (i>=3 && i<= 5)	vr = 1;
		if (i>=6 && i<= 8)	vr = 2;
		if (i>=9 && i<= 11)	vr = 3;

		vx = parseInt(vxf * vc) + vxm;
		vy = parseInt(vyf * vr) + vym;

		this.wwrite(".lclass" + i + " {position:absolute;top:" + vy + ";left:" + vx + ";}");
	}
	this.wwrite("-->\n</style>");
	this.wwrite("</head>");

	this.wwrite("<body marginwidth=2 marginheight=2 topmargin=2 leftmargin=2 " +
		"link=\"" + this.gLinkColor + "\" " +
		"vlink=\"" + this.gLinkColor + "\" " +
		"alink=\"" + this.gLinkColor + "\" " +
		"text=\"" + this.gTextColor + "\">");
	this.wwrite("<FONT FACE='" + fontface + "' SIZE=1><B>");
	this.wwrite("Year : " + this.gYear);
	this.wwrite("</B><BR>");

	// Show navigation buttons
	var prevYYYY = parseInt(this.gYear) - 1;
	var nextYYYY = parseInt(this.gYear) + 1;

	this.wwrite("<TABLE  BORDER=1 CELLSPACING=0 CELLPADDING=0 BGCOLOR='#e0e0e0' width=100%><TR><TD   ALIGN=center><FONT SIZE='1' FACE='" + fontface + "' >");
	this.wwrite("[<A HREF=\"" +
		"javascript:window.opener.Build(" +
		"'" + this.gReturnItem + "', null, '" + prevYYYY + "', '" + this.gFormat + "'" +
		");" +
		"\" alt='Prev Year'><<<\/A>]</font></TD><TD   ALIGN=center><FONT SIZE='1' FACE='" + fontface + "' >");
	this.wwrite("[<A HREF=\"javascript:window.print();\">Cancel</A>]</font></TD><TD   ALIGN=center><FONT SIZE='1' FACE='" + fontface + "' >");
	this.wwrite("[<A HREF=\"" +
		"javascript:window.opener.Build(" +
		"'" + this.gReturnItem + "', null, '" + nextYYYY + "', '" + this.gFormat + "'" +
		");" +
		"\">>><\/A>]</font></TD></TR></TABLE><BR>");

	// Get the complete calendar code for each month..
	var j;
	for (i=11; i>=0; i--) {
		if (isIE)
			this.wwrite("<DIV ID=\"layer" + i + "\" CLASS=\"lclass" + i + "\">");
		else if (isNav)
			this.wwrite("<LAYER ID=\"layer" + i + "\" CLASS=\"lclass" + i + "\">");

		this.gMonth = i;
		this.gMonthName = Calendar.get_month(this.gMonth);
		vCode = this.getMonthlyCalendarCode();
		this.wwrite(this.gMonthName + "/" + this.gYear + "<BR>");
		this.wwrite(vCode);

		if (isIE)
			this.wwrite("</DIV>");
		else if (isNav)
			this.wwrite("</LAYER>");
	}

	this.wwrite("</font><BR></body></html>");
	this.gWinCal.document.close();
}

Calendar.prototype.wwrite = function(wtext) {
	this.gWinCal.document.writeln(wtext);
}

Calendar.prototype.wwriteA = function(wtext) {
	this.gWinCal.document.write(wtext);
}

Calendar.prototype.cal_header = function() {
	var vCode = "";

	vCode = vCode + "<TR>";
	vCode = vCode + "<TD class=ts bgcolor='pink'  ><FONT SIZE='1' FACE='" + fontface + "' COLOR='" + this.gHeaderColor + "'><B>S</B></FONT></TD>";
	vCode = vCode + "<TD class=ts bgcolor='pink'  ><FONT SIZE='1' FACE='" + fontface + "' COLOR='" + this.gHeaderColor + "'><B>M</B></FONT></TD>";
	vCode = vCode + "<TD class=ts bgcolor='pink'  ><FONT SIZE='1' FACE='" + fontface + "' COLOR='" + this.gHeaderColor + "'><B>T</B></FONT></TD>";
	vCode = vCode + "<TD class=ts bgcolor='pink'  ><FONT SIZE='1' FACE='" + fontface + "' COLOR='" + this.gHeaderColor + "'><B>W</B></FONT></TD>";
	vCode = vCode + "<TD class=ts bgcolor='pink'  ><FONT SIZE='1' FACE='" + fontface + "' COLOR='" + this.gHeaderColor + "'><B>T</B></FONT></TD>";
	vCode = vCode + "<TD class=ts bgcolor='pink'  ><FONT SIZE='1' FACE='" + fontface + "' COLOR='" + this.gHeaderColor + "'><B>F</B></FONT></TD>";
	vCode = vCode + "<TD class=ts bgcolor='pink'  ><FONT SIZE='1' FACE='" + fontface + "' COLOR='" + this.gHeaderColor + "'><B>S</B></FONT></TD>";
	vCode = vCode + "</TR>";

	return vCode;
}

var rowIndex=0;
Calendar.prototype.cal_data = function() {
	var vDate = new Date();
	vDate.setDate(1);
	vDate.setMonth(this.gMonth);
	vDate.setFullYear(this.gYear);

	var vFirstDay=vDate.getDay();
	var vDay=1;
	var vLastDay=Calendar.get_daysofmonth(this.gMonth, this.gYear);
	var vOnLastDay=0;
	var vCode = "";

	/*
	Get day for the 1st of the requested month/year..
	Place as many blank cells before the 1st day of the month as necessary.
	*/

	vCode = vCode + "<TR>";
	for (i=0; i<vFirstDay; i++) {
		vCode = vCode + "<TD class=ts   " + this.write_weekend_string(i) + "><FONT SIZE='1' FACE='" + fontface + "'> </FONT></TD>";
	}

	// Write rest of the 1st week
	for (j=vFirstDay; j<7; j++) {
		vCode = vCode + "<TD class=ts   " + this.write_weekend_string(j) + "><FONT SIZE='1' FACE='" + fontface + "'>" +
			"<A HREF='#' " +
				"onClick=\"self.opener.document." + this.gReturnItem + ".value='" +
				this.format_data(vDay) +
				"';window.close();\">" +
				this.format_day(vDay) +
			"</A>" +
			"</FONT></TD>";
		vDay=vDay + 1;
	}
	vCode = vCode + "</TR>";

	// Write the rest of the weeks
	for (k=2; k<7; k++) {
		vCode = vCode + "<TR>";

		for (j=0; j<7; j++) {
		  vCode = vCode + "<TD class=ts   " + this.write_weekend_string(j) + "><FONT SIZE='1' FACE='" + fontface + "'>" +
				"<A HREF='#' " +
					"onClick=\"self.opener.document." + this.gReturnItem+".value='" +
					this.format_data(vDay) +
					"';window.close();\">" +
				this.format_day(vDay) +
				"</A>" +
				"</FONT></TD>";
			vDay=vDay + 1;

			if (vDay > vLastDay) {
				vOnLastDay = 1;
				break;
			}
		}

		if (j == 6)
			vCode = vCode + "</TR>";
		if (vOnLastDay == 1)
			break;
	}

	// Fill up the rest of last week with proper blanks, so that we get proper square blocks
	for (m=1; m<(7-j); m++) {
		if (this.gYearly)
			vCode = vCode + "<TD class=ts   " + this.write_weekend_string(j+m) +
			"><FONT SIZE='1' FACE='" + fontface + "' COLOR='gray'> </FONT></TD>";
		else
			vCode = vCode + "<TD class=ts   " + this.write_weekend_string(j+m) +
			"><FONT SIZE='1' FACE='" + fontface + "' COLOR='gray'>" + m + "</FONT></TD>";
	}

	return vCode;
}

Calendar.prototype.format_day = function(vday) {
	var vNowDay = gNow.getDate();
	var vNowMonth = gNow.getMonth();
	var vNowYear = gNow.getFullYear();

	if (vday == vNowDay && this.gMonth == vNowMonth && this.gYear == vNowYear)
		return ("<FONT COLOR=\"RED\"><B>" + vday + "</B></FONT>");
	else
		return (vday);
}

Calendar.prototype.write_weekend_string = function(vday) {
	var i;

	// Return special formatting for the weekend day.
	for (i=0; i<weekend.length; i++) {
		if (vday == weekend[i])
			return (" BGCOLOR=\"" + weekendColor + "\"");
	}

	return "";
}

Calendar.prototype.format_data = function(p_day) {
	var vData;
	var vMonth = 1 + this.gMonth;
	vMonth = (vMonth.toString().length < 2) ? "0" + vMonth : vMonth;
	var vMon = Calendar.get_month(this.gMonth).substr(0,3).toUpperCase();
	var vFMon = Calendar.get_month(this.gMonth).toUpperCase();
	var vY4 = new String(this.gYear);
	var vY2 = new String(this.gYear.substr(2,2));
	var vDD = (p_day.toString().length < 2) ? "0" + p_day : p_day;

	switch (this.gFormat) {
		case "MM\/DD\/YYYY" :
			vData = vMonth + "\/" + vDD + "\/" + vY4;
			break;
		case "MM\/DD\/YY" :
			vData = vMonth + "\/" + vDD + "\/" + vY2;
			break;
		case "MM-DD-YYYY" :
			vData = vMonth + "-" + vDD + "-" + vY4;
			break;
		case "MM-DD-YY" :
			vData = vMonth + "-" + vDD + "-" + vY2;
			break;

		case "DD\/MON\/YYYY" :
			vData = vDD + "\/" + vMon + "\/" + vY4;
			break;
		case "DD\/MON\/YY" :
			vData = vDD + "\/" + vMon + "\/" + vY2;
			break;
		case "DD-MON-YYYY" :
			vData = vDD + "-" + vMon + "-" + vY4;
			break;
		case "DD-MON-YY" :
			vData = vDD + "-" + vMon + "-" + vY2;
			break;

		case "DD\/MONTH\/YYYY" :
			vData = vDD + "\/" + vFMon + "\/" + vY4;
			break;
		case "DD\/MONTH\/YY" :
			vData = vDD + "\/" + vFMon + "\/" + vY2;
			break;
		case "DD-MONTH-YYYY" :
			vData = vDD + "-" + vFMon + "-" + vY4;
			break;
		case "DD-MONTH-YY" :
			vData = vDD + "-" + vFMon + "-" + vY2;
			break;

		case "DD\/MM\/YYYY" :
			vData = vDD + "\/" + vMonth + "\/" + vY4;
			break;
		case "DD\/MM\/YY" :
			vData = vDD + "\/" + vMonth + "\/" + vY2;
			break;
		case "DD-MM-YYYY" :
			vData = vDD + "-" + vMonth + "-" + vY4;
			break;
		case "DD-MM-YY" :
			vData = vDD + "-" + vMonth + "-" + vY2;
			break;

		default :
			vData = vMonth + "\/" + vDD + "\/" + vY4;
	}

	return vData;
}

function Build(p_item, p_month, p_year, p_format)
{
	var p_WinCal = ggWinCal;
	//if(isNaN(gyear)==false)
	  //alert("ok");
	if(isNaN(go_year)==false)
	{
	   if((parseInt(go_year)!=0)&&(parseInt(go_year)>=1300))
	      p_year=""+go_year;
		  go_year=0;
	}
	gCal = new Calendar(p_item, p_WinCal, p_month, p_year, p_format);
	// Customize your Calendar here..
	gCal.gBGColor="white";
	gCal.gLinkColor="black";
	gCal.gTextColor="black";
	gCal.gHeaderColor="darkgreen";
	// Choose appropriate show function
	if (gCal.gYearly)	gCal.showY();
	else	gCal.show();
	//alert("sd");
}
/*function ReBuild() {

    if(isNaN(go_year)==false)
	{
	   if(parseInt(go_year)!=0)
	      this.gYear=parseInt(go_year);
	}
	//this.gYear=(parseInt(this.gYear)+1)
	}*/
function show_calendar()
{
	/*
		p_month : 0-11 for Jan-Dec; 12 for All Months.
		p_year	: 4-digit year
		p_format: Date format (mm/dd/yyyy, dd/mm/yy, ...)
		p_item	: Return Item.

	p_item = arguments[0];
	if (arguments[1] == null)
		p_month = new String(gNow.getMonth());
	else
		p_month = arguments[1];
	if (arguments[2] == "" || arguments[2] == null)
		p_year = new String(gNow.getFullYear().toString());
	else
		p_year = arguments[2];
	if (arguments[3] == null)
		p_format = "MM/DD/YYYY";
	else
		p_format = arguments[3];
*/

if ((arguments[4] == null) || (arguments[4] == ""))
	{
	        gNow = new Date();
			if (arguments[1] == null)
				p_month = new String(gNow.getMonth());
			else
				p_month = arguments[1];
			if (arguments[2] == "" || arguments[2] == null)
				p_year = new String(gNow.getFullYear().toString());
			else
				p_year = arguments[2];
	}
	else
	{
	        var temp=arguments[4];
			var dd=temp.substring(0,2);
			var mm=temp.substring(3,5);
			var yy=temp.substring(6,10);
				//gNow = new Date(2000,5,5);
			gNow = new Date(yy,mm-1,dd);
			p_month = new String(gNow.getMonth());
			p_year = new String(gNow.getFullYear().toString());
	}

			p_item = arguments[0];
			if (arguments[3] == null)
				p_format = "DD/MM/YYYY";
			else
				p_format = arguments[3];

			var top=200;
			var left=200;

			if(arguments[5] != '')
			left=arguments[5];
			else
			left=event.clientX;

			if(arguments[6] != '')
			top=arguments[6];
			else
			top=event.clientY+100;

	vWinCal = window.open("", "Calendar",
		"width=149,height=200,status=no,resizable=no,top="+top+",left="+left);
	vWinCal.opener = self;

	ggWinCal = vWinCal;
	vWinCal.focus();
	Build(p_item, p_month, p_year, p_format);

}
/*
Yearly Calendar Code Starts here
*/
function show_yearly_calendar(p_item, p_year, p_format) {
	// Load the defaults..
	if (p_year == null || p_year == "")
		p_year = new String(gNow.getFullYear().toString());
	if (p_format == null || p_format == "")
		p_format = "MM/DD/YYYY";

	var vWinCal = window.open("", "Calendar", "scrollbars=yes");
	vWinCal.focus();
	vWinCal.opener = self;
	ggWinCal = vWinCal;


	Build(p_item, null, p_year, p_format);
}











