var calendarSummaryMessage = "";
var blnReset = false;
var getMonthName = function (ccmnth) {
	return monthHeaderArray[ccmnth];
};
var nextMonth = function (yyyymm) {
	var currMnth = ToInt(Right(yyyymm, 2)) - 1;
	var currYr = ToInt(Left(yyyymm, 4));
	if (currMnth == "11") {
		nextMnth = 0;
		nextYr = currYr;
		nextYr++;
	} else {
		nextMnth = currMnth;
		nextMnth++;
		nextYr = currYr;
	}
	str = (nextMnth + 1) + "/1/" + nextYr;
	dt = new Date(str);
	return Left(GetStringFromDate(dt), 6);
};
var prevMonth = function (yyyymm) {
	var currMnth = ToInt(Right(yyyymm, 2)) - 1;
	var currYr = ToInt(Left(yyyymm, 4));
	if (currMnth == "0") {
		prevMnth = 11;
		prevYr = currYr;
		prevYr--;
	} else {
		prevMnth = currMnth;
		prevMnth--;
		prevYr = currYr;
	}
	str = (prevMnth + 1) + "/1/" + prevYr;
	dt = new Date(str);
	return Left(GetStringFromDate(dt), 6);
};
var currYearMonth = function () {
	var serverTime = Left(serverNow, 8);
	var y = Left(serverTime, 4);
	var d = parseInt(Right(serverTime, 2));
	var m = parseInt(Left(serverTime.replace(y, ""), 2));
	var strCurDate = m + "/" + d + "/" + y;
	var dt = new Date(strCurDate);
	return Left(GetStringFromDate(dt), 6);
};
var getNoOfDaysInMnth = function (ccmnth, yr) {
	return 32 - new Date(yr, ccmnth - 1, 32).getDate();
};
var Left = function (str, n) {
	if (n <= 0) return "";
	else if (n > String(str).length) return str;
	else return String(str).substring(0, n);
};
var Right = function (str, n) {
	if (n <= 0) return "";
	else if (n > String(str).length) return str;
	else {
		var iLen = String(str).length;
		return String(str).substring(iLen, iLen - n);
	}
};
var ToString = function (value) {
	if (value < 10) return "0" + value;
	else return value.toString();
};
var ToInt = function (value) {
	if (Left(value, 1) == "0") return parseInt(Right(value, 1));
	else return parseInt(value);
};
var Trim = function (str) {
	return str.replace(/^\s*|\s*$/g, "");
};
var isNetscape = function () {
	return (navigator.appName.indexOf("Netscape") != -1);
};
var isMicrosoft = function () {
	return (navigator.appName.indexOf("Microsoft") != -1);
};
var GetDPSelectedIndex = function (dpid, selectedvalue) {
	var dp = document.getElementById(dpid);
	var op = dp.getElementsByTagName("option");
	var checkInIndex;
	for (var i = 0; i < op.length; i++) {
		if (op[i].value == selectedvalue) checkInIndex = i;
	}
	return checkInIndex;
};
var GetDPControlValue = function (controlname) {
	var controlSelect = document.getElementById(controlname);
	var controlOption = controlSelect.getElementsByTagName("option");
	if (controlSelect.selectedIndex == 0) return "";
	else return controlOption[controlSelect.selectedIndex].value;
};
var GetDateFromString = function (datestring, hours) {
	var yr = Left(datestring, 4);
	var mth = Left(datestring.replace(yr, ""), 2);
	var dt = Right(datestring, 2);
	var myDate = new Date(ToInt(yr), ToInt(mth) - 1, ToInt(dt), hours);
	return myDate;
};
var GetStringFromDate = function (mydate) {
	var yr = ToString(mydate.getFullYear());
	var mth = ToString(mydate.getMonth() + 1);
	var dt = ToString(mydate.getDate());
	return yr + mth + dt;
};
var GetDateDiff = function (value1, value2) {
	return Math.round((value1.getTime() - value2.getTime()) / (24 * 60 * 60 * 1000));
};
var GetDPCheckInDate = function () {
	var dpCheckInDate = null;
	if (GetDPControlValue("pdcheckinyyyymm") != "") {
		var myChickInDay = "01";
		if (GetDPControlValue("pdcheckindd") != "") {
			myChickInDay = GetDPControlValue("pdcheckindd");
		}
		var dpCheckInString = GetDPControlValue("pdcheckinyyyymm") + myChickInDay;
		dpCheckInDate = GetDateFromString(dpCheckInString, 0);
	}
	return dpCheckInDate;
};
var GetDPCheckOutDate = function () {
	var dpCheckOutDate;
	var dpCheckOutString = GetDPControlValue("pdcheckoutyyyymm") + GetDPControlValue("pdcheckoutdd");
	if (GetDPControlValue("pdcheckoutyyyymm") != "" && GetDPControlValue("pdcheckoutdd") != "") {
		dpCheckOutDate = GetDateFromString(dpCheckOutString, 0);
	} else {
		dpCheckOutDate = null;
	}
	return dpCheckOutDate;
};
var SetDPValue = function (checkinString, checkOutString) {
	var dpCheckInYM = document.getElementById("pdcheckinyyyymm");
	var dpCheckInDT = document.getElementById("pdcheckindd");
	dpCheckInYM.selectedIndex = GetDPSelectedIndex("pdcheckinyyyymm", Left(checkinString, 6));
	dpCheckInDT.selectedIndex = GetDPSelectedIndex("pdcheckindd", Right(checkinString, 2));
	var dpCheckOutYM = document.getElementById("pdcheckoutyyyymm");
	var dpCheckOurDT = document.getElementById("pdcheckoutdd");
	dpCheckOutYM.selectedIndex = GetDPSelectedIndex("pdcheckoutyyyymm", Left(checkOutString, 6));
	dpCheckOurDT.selectedIndex = GetDPSelectedIndex("pdcheckoutdd", Right(checkOutString, 2));
};
var LoadPageEvent = function () {
	LoadClickEvent();
	LoadDPSelectEvent();
	LoadCheckInSelectEvent("pdcheckinyyyymm");
	LoadCheckInSelectEvent("pdcheckindd");
	//LoadCheckOutSelectEvent("pdcheckoutyyyymm");
	LoadCheckOutSelectEvent("pdcheckoutdd");
	LoadRatePlanSelectEvent();
	LoadCalendarNavEvent();
	LoadResetButton();
	clearSelectedDateAfterReset();
};
var LoadClickEvent = function () {
	var div = document.getElementById("calendars");
if (div !== null) {
	var tds = div.getElementsByTagName("td");
	for (var i = 0; i < tds.length; i++) {
		if (tds[i].className != "notcurrentblock") {
			tds[i].onclick = function () {
				return SetCheckDP(this);
			};
		}
	}
}
};
var SetCheckDP = function (TdCell) {
	var selectedString = Right(TdCell.getAttribute("id"), 8);
	var checkInstring;
	var checkOutString;
	if (selectedString != null) {
		var checkInDate = GetDateFromString(selectedString, 0);
		var checkOutDate = GetDateFromString(selectedString, 24);
		var dpInDate = GetDPCheckInDate();
		var dpOutDate = GetDPCheckOutDate();
		if (dpInDate == null || dpOutDate == null) {
			checkInstring = selectedString;
			checkOutString = GetStringFromDate(checkOutDate);
		} else {
			if (GetDateDiff(checkInDate, dpOutDate) >= 0 && GetDateDiff(checkInDate, dpInDate) <= 30) {
				checkInstring = GetStringFromDate(dpInDate);
				checkOutString = selectedString;
			} else {
				checkInstring = selectedString;
				checkOutString = GetStringFromDate(checkOutDate);
			}
		}
		SetDPValue(checkInstring, checkOutString);
		calendarSummaryMessage = getCalendarSummary(checkInstring, checkOutString);
		LoadCalendarFooter();
		SetCalendarBg();
	} else {
		alert("The picked day is invalid");
	}
};
var SetCalendarBg = function () {
	var checkIndate = GetDPCheckInDate();
	var checkOutDate = GetDPCheckOutDate();
	var myDate = checkIndate;
	if (myDate != null) {
		RemoveStyleAttribute();
		while (myDate <= checkOutDate) {
			var myDateString = GetStringFromDate(myDate);
			ChangeCellBg("c" + myDateString, "userselected");
			myDate = GetDateFromString(myDateString, 24);
		}
	}
};
var GetDateClassName = function (myDateString) {
	for (var i = 0; i < calendarArray.length; i++) {
		if (calendarArray[i][3] == "c" + myDateString) {
			return calendarArray[i][2];
			break;
		}
	}
};
var RemoveStyleAttribute = function () {
	var div = document.getElementById("calendars");
	var tds = div.getElementsByTagName("td");
	for (var i = 0; i < tds.length; i++) {
		if (tds[i].className == "userselected" || tds[i].className == "notavailable" || tds[i].className == "minimumstay") {
			tds[i].className = GetCellClass(tds[i].id);
		}
	}
};
var GetCellClass = function (cellid) {
	for (var i = 0; i < calendarArray.length; i++) {
		if (calendarArray[i][3] == cellid) {
			return calendarArray[i][2];
			break;
		}
	}
};
var ChangeCellBg = function (cellid, color) {
	var div = document.getElementById("calendars");
	var tds = div.getElementsByTagName("td");
	for (var i = 0; i < tds.length; i++) {
		if (tds[i].id == cellid) {
			tds[i].className = color;
		}
	}
};
var LoadDPSelectEvent = function () {
	var div = document.getElementById("controls");
if (div !== null) {
	var select = div.getElementsByTagName("select");
	for (var i = 0; i < select.length; i++) {
		select[i].onchange = "SetCalendarBg()";
		var onChangeHandler = new Function(select[i].onchange);
		if (select[i].addEventListener) {
			select[i].addEventListener('change', onChangeHandler, false);
		} else if (select[i].attachEvent) {
			select[i].attachEvent('onchange', onChangeHandler);
		}
	}
}
};
var CheckinOnSelect = function () {
	var checkIndate = GetDPCheckInDate();
	if (checkIndate != null) {
		var checkOutDate = GetDateFromString(GetStringFromDate(checkIndate), 24);
		SetDPValue(GetStringFromDate(checkIndate), GetStringFromDate(checkOutDate));
		calendarSummaryMessage = getCalendarSummary(GetStringFromDate(checkIndate), GetStringFromDate(checkOutDate));
		CreateCalendar(Left(GetStringFromDate(checkIndate), 6) + "+");
	} else {
		ResetCalendarEvent();
	}
};
var LoadCheckInSelectEvent = function (selectControlID) {
	var control = document.getElementById(selectControlID);
if (control !== null) {
	control.onchange = CheckinOnSelect;
	if (control.addEventListener) {
		control.addEventListener('change', CheckinOnSelect, false);
	} else if (control.attachEvent) {
		control.attachEvent('onchange', CheckinOnSelect);
	}
}
};
var CheckoutOnSelect = function () {
	var checkIndate = GetDPCheckInDate();
	var checkOutdate = GetDPCheckOutDate();
	if (checkOutdate != null) {
		if (checkIndate == null) {
			checkIndate = GetDateFromString(GetStringFromDate(checkOutdate), -24);
		} else if (GetDateDiff(checkOutdate, checkIndate) > 30 || GetDateDiff(checkOutdate, checkIndate) < 0) {
			checkIndate = checkOutdate;
			checkOutdate = GetDateFromString(GetStringFromDate(checkIndate), 24);
		}
		SetDPValue(GetStringFromDate(checkIndate), GetStringFromDate(checkOutdate));
		calendarSummaryMessage = getCalendarSummary(GetStringFromDate(checkIndate), GetStringFromDate(checkOutdate));
		CreateCalendar(Left(GetStringFromDate(checkIndate), 6) + "+");
	} else {
		calendarSummaryMessage = "";
		ResetCalendarMessage();
	}
};
var LoadCheckOutSelectEvent = function (selectControlID) {
	var control = document.getElementById(selectControlID);
if (control !== null) {
	control.onchange = CheckoutOnSelect;
	if (control.addEventListener) {
		control.addEventListener('change', CheckoutOnSelect, false);
	} else if (control.attachEvent) {
		control.attachEvent('onchange', CheckoutOnSelect);
	}
}
};
var LoadRatePlanSelectEvent = function () {
	var control = document.getElementById("pdrateplan");
	if (control != null) {
		control.onchange = "RatePlanOnSelect()";
		var onChangeHandler = new Function(control.onchange);
		if (control.addEventListener) {
			control.addEventListener('change', onChangeHandler, false);
		} else if (control.attachEvent) {
			control.attachEvent('onchange', onChangeHandler);
		}
	}
};
var RatePlanOnSelect = function () {
	var myPromoCode = document.getElementById("pdpromocode");
	myPromoCode.value = GetDPControlValue("pdrateplan");
};
var LoadCalendarNavEvent = function () {
	var div = document.getElementById("calendars");
if (div !== null) {
	var tables = div.getElementsByTagName("table");
	var tarYearMonth = calendarArray[calendarArray.length - 1][0];
	for (var i = 0; i < tables.length; i++) {
		var cText = document.createTextNode(tables[i].summary);
		var yr = Left(Right(tables[i].id, 6), 4);
		var mthNumber = Right(tables[i].id, 2);
		var curDate = GetDateFromString(currYearMonth() + "01", 0);
		var aviDate = GetDateFromString(calendarArray[0][0] + "01", 0);
		var tarDate = GetDateFromString(yr + mthNumber + "01", 0);
		var furdate = GetDateFromString(parseInt(Left(tarYearMonth, 4)) + Right(tarYearMonth, 2) + "01", 0);
		var headerarea = tables[i].getElementsByTagName("th");
		if (headerarea.length > 0) {
			for (var j = 0; j < 3; j++) {
				while (headerarea[j].firstChild) {
					headerarea[j].removeChild(headerarea[j].firstChild);
				}
			}
			headerarea[1].appendChild(cText);
			if (i == 0) {
				headerarea[2].appendChild(document.createTextNode("\u00a0"));
				if (GetDateDiff(tarDate, aviDate) > 0) {
					headerarea[0].appendChild(SetNavBotton("blocksprevious", previousNextArray[0], "«", yr + mthNumber + "-"));
				} else {
					headerarea[0].appendChild(document.createTextNode("\u00a0"));
				}
			}
			if (i == tables.length - 1) {
				headerarea[0].appendChild(document.createTextNode("\u00a0"));
				if (GetDateDiff(furdate, tarDate) > 0) {
					headerarea[headerarea.length - 8].appendChild(SetNavBotton("blocksnext", previousNextArray[1], "»", yr + mthNumber + "+"));
				} else {
					headerarea[2].appendChild(document.createTextNode("\u00a0"));
				}
			}
		} else {
			var head = tables[i].createTHead();
			var row = head.insertRow(0);
			row.className = "calendarheader";
			var thCell1 = row.insertCell();
			thCell1.className = "calendarheaderarea";
			if (i == 0 && GetDateDiff(tarDate, aviDate) > 0) {
				thCell1.appendChild(SetNavBotton("blocksprevious", previousNextArray[0], "«", yr + mthNumber + "-"));
			}
			var thCell2 = row.insertCell();
			thCell2.className = "calendarheadertitle";
			thCell2.colSpan = "5";
			thCell2.align = "center";
			thCell2.innerText = tables[i].summary;
			var thCell3 = row.insertCell();
			thCell3.className = "calendarheaderarea";
			if (i == tables.length - 1 && GetDateDiff(furdate, tarDate) > 0) {
				thCell3.appendChild(SetNavBotton("blocksnext", previousNextArray[1], "»", yr + mthNumber + "+"));
			}
		}
	}
}
};
var SetNavBotton = function (ButtonID, ButtonName, ButtonValue, ButtonEvent) {
	var fieldset = document.createElement("fieldset");
	var bInput = document.createElement("button");
	bInput.setAttribute("type", "button");
	bInput.setAttribute("title", ButtonName);
	bInput.className = ButtonID;
	bInput.appendChild(document.createTextNode(ButtonValue));
	bInput.onclick = function () {
		return CreateCalendar(ButtonEvent);
	};
	fieldset.appendChild(bInput);
	return fieldset;
};
var LoadCalendarFooter = function () {
	var divsummary = document.getElementById("controlssummary");
	while (divsummary.lastChild) {
		divsummary.removeChild(divsummary.lastChild);
	}
	if (calendarSummaryMessage != "") {
		var myDiv = document.createElement("div");
		myDiv.innerHTML = "<p>" + calendarSummaryMessage + "</p><img src='bpimages/controlssummarynext.gif' />";
		divsummary.appendChild(myDiv);
	}
};
var getLongDateDespcription = function (mydateString) {
	var myDate = GetDateFromString(mydateString, 0);
	return monthHeaderArray[myDate.getMonth()] + " " + myDate.getDate() + ", " + myDate.getFullYear();
};
var getCalendarSummary = function (checkInstring, checkOutString) {
	var footerMessage = getLongDateDespcription(checkInstring);
	var lblnight;
	if (GetDateDiff(GetDateFromString(checkOutString, 0), GetDateFromString(checkInstring, 0)) == 1) lblnight = nightNightsArray[0];
	else lblnight = nightNightsArray[1];
	footerMessage = footerMessage + " - " + getLongDateDespcription(checkOutString);
	footerMessage = footerMessage + " (" + GetDateDiff(GetDateFromString(checkOutString, 0), GetDateFromString(checkInstring, 0)) + " " + lblnight + ")";
	return footerMessage;
};
var ResetCalendarMessage = function () {
	var divsummary = document.getElementById("controlssummary");
	while (divsummary.lastChild) {
		divsummary.removeChild(divsummary.lastChild);
	}
	calendarSummaryMessage = "";
};
var LoadResetButton = function () {
	var div = document.getElementById("calendars");
if (div !== null) {
	var mySubDivs = div.getElementsByTagName("div");
	for (var i = 0; i < mySubDivs.length; i++) {
		if (mySubDivs[i].id == "calendarsreset" || mySubDivs[i].className == "clear") {
			div.removeChild(mySubDivs[i]);
		}
	}
	var divCalendarsReset = document.createElement("div");
	divCalendarsReset.id = "calendarsreset";
	var imgReset = document.createElement("img");
	imgReset.src = resetImage;
	imgReset.alt = resetTitle;
	imgReset.title = resetTitle;
	divCalendarsReset.appendChild(imgReset);
	div.appendChild(divCalendarsReset);
	var divClear = document.createElement("div");
	divClear.className = "clear";
	div.appendChild(divClear);
	AddResetEvent();
}
};
var AddResetEvent = function () {
	var div = document.getElementById("calendarsreset");
	div.onclick = function () {
		return ResetCalendarEvent();
	};
};
var ResetCalendarEvent = function () {
	blnReset = true;
	var dpCheckInYM = document.getElementById("pdcheckinyyyymm");
	var dpCheckInDT = document.getElementById("pdcheckindd");
	var dpCheckOutYM = document.getElementById("pdcheckoutyyyymm");
	var dpCheckOurDT = document.getElementById("pdcheckoutdd");
	dpCheckInYM.selectedIndex = 0;
	dpCheckInDT.selectedIndex = 0;
	dpCheckOutYM.selectedIndex = 0;
	dpCheckOurDT.selectedIndex = 0;
	CreateCalendar(calendarArray[0][0] + "+");
	ResetCalendarMessage();
};
var CreateCalendarNote = function () {
	if (legendArray != null) {
		var dl = document.createElement("dl");
		var dt1 = document.createElement("dt");
		dt1.className = legendArray[0][1];
		dt1.innerHTML = "&#160;&#160;&#160;";
		dl.appendChild(dt1);
		var dd1 = document.createElement("dd");
		dd1.innerHTML = legendArray[0][0];
		dl.appendChild(dd1);
		var dt2 = document.createElement("dt");
		dt2.className = legendArray[1][1];
		dt2.innerHTML = "&#160;&#160;&#160;";
		dl.appendChild(dt2);
		var dd3 = document.createElement("dd");
		dd3.innerHTML = legendArray[1][0];
		dl.appendChild(dd3);
		return dl;
	} else return null;
};
var CreateCalendarNavigation = function (TableIndex) {
	var trCell = document.createElement("tr");
	trCell.className = "calendarheader";
	var thCell1 = document.createElement("th");
	thCell1.className = "calendarheaderarea";
	thCell1.textContent = ".";
	trCell.appendChild(thCell1);
	var thCell2 = document.createElement("th");
	thCell2.className = "calendarheadertitle";
	thCell2.setAttribute("colspan", "5");
	thCell2.textContent = getMonthName(ToInt(Right(TableIndex, 2)) - 1) + " " + Left(TableIndex, 4);
	trCell.appendChild(thCell2);
	var thCell3 = document.createElement("th");
	thCell3.className = "calendarheaderarea";
	thCell1.textContent = ".";
	trCell.appendChild(thCell3);
	return trCell;
};
var CreateCalendarHeader = function () {
	var trCell = document.createElement("tr");
	for (var i = 0; i < calendarHeaderArray.length; i++) {
		var thCell = document.createElement("th");
		thCell.setAttribute("scope", "col");
		thCell.className = calendarHeaderArray[i][0];
		thCell.textContent = calendarHeaderArray[i][1];
		trCell.appendChild(thCell);
	}
	return trCell;
};
var CreateTdCell = function (tdClass, tdID, tdContent, tdRate) {
	var tdCell = document.createElement("td");
	tdCell.className = tdClass;
	if (tdID != '') {
		tdCell.setAttribute("id", tdID);
	}
	var div1 = document.createElement("div");
	div1.className = "date";
	div1.innerHTML = tdContent;
	tdCell.appendChild(div1);
	var div2 = document.createElement("div");
	div2.className = "ldr";
	div2.innerHTML = tdRate;
	tdCell.appendChild(div2);
	return tdCell;
};
var CreateTable = function (TableIndex, TableClass) {
	var table = document.createElement("table");
	table.setAttribute("id", "c" + TableIndex);
	table.setAttribute("summary", getMonthName(ToInt(Right(TableIndex, 2)) - 1) + " " + Left(TableIndex, 4));
	table.className = TableClass;
	table.appendChild(CreateCalendarNavigation(TableIndex));
	table.appendChild(CreateCalendarHeader());
	for (var j = 1; j < 7; j++) {
		var trCell = document.createElement("tr");
		for (var i = 0; i < calendarArray.length; i++) {
			if (calendarArray[i][0] == TableIndex) {
				if (calendarArray[i][1] <= j * 7 && calendarArray[i][1] > (j - 1) * 7) {
					trCell.appendChild(CreateTdCell(calendarArray[i][2], calendarArray[i][3], calendarArray[i][4], calendarArray[i][5]));
				}
			}
		}
		table.appendChild(trCell);
	}
	return table;
};
var CreateCalendar = function (TableIndex) {
	var div = document.getElementById("calendars");
	while (div.lastChild) {
		div.removeChild(div.lastChild);
	}
	var tIndex1 = Left(TableIndex, 6);
	var tIndex2;
	if (Right(TableIndex, 1) == "+") {
		tIndex2 = nextMonth(tIndex1);
		if (isNetscape()) {
			div.appendChild(CreateTable(tIndex1, "calendarleft"));
			div.appendChild(CreateTable(tIndex2, "calendarright"));
		} else if (isMicrosoft()) {
			CreateIECalendar(tIndex1, "calendarleft");
			CreateIECalendar(tIndex2, "calendarright");
		}
	} else {
		tIndex2 = prevMonth(tIndex1);
		if (isNetscape()) {
			div.appendChild(CreateTable(tIndex2, "calendarleft"));
			div.appendChild(CreateTable(tIndex1, "calendarright"));
		} else if (isMicrosoft()) {
			CreateIECalendar(tIndex2, "calendarleft");
			CreateIECalendar(tIndex1, "calendarright");
		}
	}
	if (CreateCalendarNote() != null) {
		div.appendChild(CreateCalendarNote());
	}
	LoadPageEvent();
	SetCalendarBg();
	LoadCalendarFooter();
	clearSelectedDateAfterReset();
};
var CreateIECalendar = function (TableIndex, TableClass) {
	var div = document.getElementById("calendars");
	var table = document.createElement("table");
	table.id = "c" + TableIndex;
	table.summary = getMonthName(ToInt(Right(TableIndex, 2)) - 1) + " " + Left(TableIndex, 4);
	table.className = TableClass;
	var head = table.createTHead();
	var row = head.insertRow();
	for (var i = 0; i < calendarHeaderArray.length; i++) {
		var thCell = row.insertCell();
		thCell.scope = "col";
		thCell.className = calendarHeaderArray[i][0];
		thCell.innerHTML = calendarHeaderArray[i][1];
	}
	for (var j = 1; j < 7; j++) {
		var trCell = table.insertRow();
		for (var i = 0; i < calendarArray.length; i++) {
			if (calendarArray[i][0] == TableIndex) {
				if (calendarArray[i][1] <= j * 7 && calendarArray[i][1] > (j - 1) * 7) {
					var tdCell = trCell.insertCell();
					tdCell.className = calendarArray[i][2];
					var div1 = document.createElement("div");
					div1.className = "date";
					div1.innerHTML = calendarArray[i][4];
					tdCell.appendChild(div1);
					var div2 = document.createElement("div");
					div2.className = "ldr";
					div2.innerHTML = calendarArray[i][5];
					tdCell.appendChild(div2);
					if (calendarArray[i][3] != '') {
						tdCell.id = calendarArray[i][3];
					}
				}
			}
		}
	}
	div.appendChild(table);
};
var isArrayAvailable = function (TableIndex) {
	for (var i = 0; i < calendarArray.length; i++) {
		if (calendarArray[i][0] == TableIndex) {
			return true;
			break;
		}
	}
	return false;
};
var genDatesArray = function (yyyymm, pointer, classname, id, value, rate) {
	return new Array(yyyymm, pointer, classname, id, value, rate);
};
var genCalendarArray = function (yyyymm) {
	var str = ToInt(Right(yyyymm, 2)) + "/1/" + Left(yyyymm, 4);
	var dt = new Date(str);
	var dayOfWeek = dt.getDay();
	var noOfDays = getNoOfDaysInMnth(ToInt(Right(yyyymm, 2)), Left(yyyymm, 4));
	var calendarArray = new Array();
	var point, dd;
	for (var i = 0; i < dayOfWeek; i++) {
		point = i + 1;
		calendarArray[i] = genDatesArray(yyyymm, point, "notcurrentblock", "", "", "");
	}
	for (var i = dayOfWeek; i < noOfDays + dayOfWeek; i++) {
		point = i + 1;
		dd = i - dayOfWeek + 1;
		calendarArray[i] = genDatesArray(yyyymm, point, "notavailable", "c" + yyyymm + ToString(dd), dd, "");
	}
	for (var i = noOfDays + dayOfWeek; i < 42; i++) {
		point = i + 1;
		dd = point - noOfDays - dayOfWeek;
		calendarArray[i] = genDatesArray(yyyymm, point, "notcurrentblock", "", dd, "");
	}
	return calendarArray;
};
var isDefined = function (ckVar) {
	var DEFINED_V = true;
	var handleError = function () {
		DEFINED_V = false;
		return true;
	};
	var oldOnError = window.onerror;
	window.onerror = handleError;
	try {
		eval(ckVar);
	} catch (e) {
		DEFINED_V = false;
	}
	window.onerror = oldOnError;
	return DEFINED_V;
};
var addLoadEvent = function (func) {
	var oldonload = window.onload;
	if (typeof window.onload != 'function') {
		window.onload = func;
	} else {
		window.onload = function () {
			oldonload();
			func();
		};
	}
};
var clearSelectedDateAfterReset = function () {
	if (blnReset == false && isDefined('modifiedArray') == true) {
		var div = document.getElementById("calendars");
		var tds = div.getElementsByTagName("td");
		for (var i = 0; i < tds.length; i++) {
			for (var j = 0; j < modifiedArray.length; j++) {
				if (tds[i].id == modifiedArray[j][0]) {
					tds[i].className = modifiedArray[j][1];
				}
			}
		}
	}
};
addLoadEvent(LoadPageEvent);
