var first_show_col = 3;
var last_show_col = 16;
var last_col = 30;

var new_first_show_col = 0;
var new_last_show_col = 13;
var new_last_col = 27;

var current_first_col = new Array();
var current_last_col = new Array();

function readCurrency()
{
	var currency = readCookie("lt_currency");
	if (currency == null) return;
	
	var oSelect = document.getElementById("SelectCurrency");
	if (oSelect) {
		oSelect.selectedIndex = currency;
		changeCurrency(oSelect);
	}
	
	// multiple select in ccPromotion page
	var currencyDropDowns = document.getElementsByName("currencySelect");
	if (currencyDropDowns.length > 0) {
		// call to update first select, it will then, update the rest
		var m_select = document.getElementById("SelectCurrency[0]");
		if (!m_select) return;
		m_select.selectedIndex = currency;
		changeMultipleCurrency(0);
	}
}

function changeMultipleCurrency(idx) {
	var m_select = document.getElementById("SelectCurrency[" + idx + "]");
	if (!m_select) return;
	var idx = m_select.selectedIndex;
	var currencyDropDowns = document.getElementsByName("currencySelect");
	if (currencyDropDowns.length > 0) {
		for (var i=0; i<currencyDropDowns.length; i++) {
			var oSelect = document.getElementById("SelectCurrency[" + i + "]");
			var base_currency = document.getElementById("block_currency[" + i + "]").value;
			var from_col = document.getElementById("from_col[" + i + "]").value;
			var to_col = document.getElementById("to_col[" + i + "]").value;
			oSelect.selectedIndex = idx;
			changeCurrency(oSelect, base_currency, from_col, to_col);
		}
	}
	createCookie('lt_currency', idx, 365);
}

function changeCurrency(oSelect, base_curr, from_no, to_no)
{
	var currency = oSelect.value;
	
	/* we have more than one currecncy in promotion page
	var currCurrency = document.getElementById("CurrencyCode").value;
	*/
	if (base_curr == null)
	{
		base_curr = document.getElementById("CurrencyCode").value;
	}
	
	if (currency != "0")
	{
		var to_rate = CurrencyArray[currency]["Value"];

		var cname = CurrencyArray[currency]["Name"];
		var l_cname = cname.length;

		if (to_no == null)
		{
			var rate_count = document.getElementById("total_rate").value;
		}
		else
		{
			var rate_count = new Number(to_no);
		}
		
		var loop_from = 0;
		if (from_no != null)
		{
			loop_from = new Number(from_no);
		}
		
		for (var i=loop_from; i<rate_count; i++)
		{
			from = document.getElementById("thai_rate_" + i).value;
			to = new Number(from/to_rate);
			oTo = document.getElementById("rate_" + i);
			
			// we use only first 3 decimal point to prevent very small different value
			str_to = to+'';
			arr_to = str_to.split('.');
			str_integer = arr_to[0];
			str_decimal = arr_to.length > 1 ? '.' + arr_to[1] : '';
			str_decimal = str_decimal.substr(0, 4);
			str_to = str_integer+str_decimal;
			to = new Number(str_to);
			
			if (currency == base_curr)
			{
				oTo.style.display = 'none';
				oTo.innerHTML = '';
			}
			else
			{
				if (oTo != null && to > 0)
				{
					oTo.innerHTML = addCommas(Math.ceil(to));
					oTo.style.display = 'block';
				}
			}
		}
		
		// put into form hidden field, used by secure site
		var forms = document.getElementsByTagName("form");
		
		for (var i=0; i<forms.length; i++)
		{
			if(forms[i].id.substring(0,4)=="form")
			{
				// forms[i].ExchangeRate.value = to_rate;
				// forms[i].ShowCurrencyCode.value = currency;
				// forms[i].ShowCurrencyName.value = cname;
				if ($('ExchangeRate_F'+ i)) {
					$('ExchangeRate_F'+ i).value = to_rate;
					$('ShowCurrencyCode_F'+ i).value = currency;
					$('ShowCurrencyName_F'+ i).value = cname;
				}
			}
		}		
	}
}

/****************************************************/
/** 2011-04 : Validate availibility form. 		   **/
/****************************************************/
var objVar = new Array();

function getCookieDomain() {
	var domain = window.location.hostname;
	var re = /(.*?)\.?latestays\.(.*)/;
	var d = domain.replace(re, ".latestays.$2");
	return d;
}

function correctCookieDate() {
	var mtx_check_in 	= readCookie("mtx_check_in");
	var mtx_check_out 	= readCookie("mtx_check_out");
	
	if ((mtx_check_in || mtx_check_out) && $('calendarStartDate')) {
		var mtx_check_in 	= mkDateObj(readCookie("mtx_check_in"));
		var mtx_check_out 	= mkDateObj(readCookie("mtx_check_out"));
		var calendarStartDate = mkDateObj($('calendarStartDate').value);
		var d = getCookieDomain();
		
		if (mtx_check_in < calendarStartDate && mtx_check_out < calendarStartDate) {
			document.cookie = "mtx_check_in=;path=/;domain="+ d;
			document.cookie = "mtx_check_out=;path=/;domain="+ d;
		} else if (mtx_check_in < calendarStartDate) {
			mtx_check_in = calendarStartDate;
			
			chkIn 	= dateReformat(mtx_check_in, 'Ymd');
			document.cookie = "mtx_check_in=" + chkIn + ";path=/;domain="+ d;
			
			if (mtx_check_out == calendarStartDate) {
				chkOut 	= dateReformat(calcDay(chkIn, 1), 'Ymd');
				document.cookie = "mtx_check_out=" + chkOut + ";path=/;domain="+ d;
			}
		}
	}
}

function getHotelOffers(sDay, targetHotelOffersBox, loadCookie) {
	
	if (loadCookie == 1) {
		$(targetHotelOffersBox).innerHTML = "<div style=\"padding:50px 50px 50px 50px\"><img src=\"/images/loading_orange.gif\" width=\"20\" height=\"20\"></div>";
	} else {
		$(targetHotelOffersBox).className = 'h_transparent';
	}
	
	pageLang = objVar[targetHotelOffersBox]['pageLang'];
	pageID = objVar[targetHotelOffersBox]['pageID'];
	pageType = objVar[targetHotelOffersBox]['pageType'];
	
	var d = getCookieDomain();
	document.cookie = "matrixState=" + sDay + ";" + ";path=/;domain="+ d;
	
	if (pageType == 'Hotel') {
		correctCookieDate();
		var URLTarget = '/'+ pageLang  +'/daychart/hotel/'+ pageID +'/'+ sDay +'/'+ targetHotelOffersBox +'/';
		var mtx_check_in 	= readCookie("mtx_check_in");
		var mtx_check_out 	= readCookie("mtx_check_out");
		if (mtx_check_in && mtx_check_out) {
			URLTarget += mtx_check_in +'/'+ mtx_check_out +'/';
		}
	}
	
	if (pageType == 'ccPromotion') {
		var URLTarget = '/'+ pageLang  +'/daychart/ccpromo/'+ pageID +'/'+ sDay +'/'+ targetHotelOffersBox +'/';
	}
	
	new Ajax.Request(URLTarget,
	{
		method: 'post',
		onSuccess: function(transport) {
			$(targetHotelOffersBox).className = "";
			$(targetHotelOffersBox).innerHTML = transport.responseText;
			
			if (pageType == 'ccPromotion') {
				if (loadCookie == 1) {
					assignAvailByCookie(targetHotelOffersBox);
				}
				assignCheck();
				updateonecurrencybox(targetHotelOffersBox);
			} else {
				applyInOut(targetHotelOffersBox);
				synchronizeCalendar(CALENDAR_LANGUAGE_MAP[ objVar['hotelOffersBox']['pageLang'] ]);
			}
		},
		onFailure: function() {
				document.location = $('ERROR_URL_BASE').value;
		}
	});
}

var selectedOffer = new Array();
var selectedOfferRule = new Array();
var selectedOfferOnRequest = new Array();
var selectedOfferOldBtn = new Array();

function rememberCheck(myRoomId, OfferId, DateSelect) {

	OfferId = myRoomId;
	
	var deleteState = 0;
	if (is_array(selectedOffer[OfferId])) {
		if (selectedOffer[OfferId][DateSelect] == 1) {
			delete selectedOffer[OfferId][DateSelect];
			delete selectedOfferRule[OfferId][DateSelect];
			if (selectedOfferOnRequest[OfferId][DateSelect] == 1) { 
				delete selectedOfferOnRequest[OfferId][DateSelect]; 
			}
			deleteState = 1;
		} else {
			selectedOffer[OfferId][DateSelect] = 1;
			selectedOfferRule[OfferId][DateSelect] = $('RuleDate_F'+ OfferId +'_D'+ DateSelect).value;
		}
	} else {
		selectedOffer[OfferId] = new Array();
		selectedOffer[OfferId][DateSelect] = 1;
		selectedOfferRule[OfferId] = new Array();
		selectedOfferRule[OfferId][DateSelect] = $('RuleDate_F'+ OfferId +'_D'+ DateSelect).value;
		selectedOfferOnRequest[OfferId] = new Array();
	}
	
	// Remember Onrequest State
	var objTarget = "StateDate_F"+ OfferId +"_D"+ DateSelect;
	if ($(objTarget).value == "OnRequest" && deleteState == 0) {
		selectedOfferOnRequest[OfferId][DateSelect] = 1;
	}
	checkOnRequestBtn(OfferId);
	rememberAvailByCookie(OfferId);
}

function assignCheck() {
	// Check Selected State
	var selectedOfferKeys = array_keys(selectedOffer);
	if (is_array(selectedOfferKeys)) {
		for (i=0; i < selectedOfferKeys.length; i++) {
			// Assisend Checkbox state
			var fKey = selectedOfferKeys[i];
			if (is_array(selectedOffer[fKey])) {
				var dKey = array_keys(selectedOffer[fKey]);
				// alert(dKey);
				for (j=0; j < dKey.length; j++) {
					var objTarget = "book_F"+ fKey +"_D"+ dKey[j];
					if ($(objTarget)) {
						$(objTarget).checked = true;
					} else {
						// Remove soldout  selected
						var stateTarget = "RuleDate_F"+ fKey +"_D"+ dKey[j];
						if ($(stateTarget)) {
							if ($(stateTarget).value == "-") {
								delete selectedOffer[fKey][dKey[j]];
								delete selectedOfferRule[fKey][dKey[j]];
								if (selectedOfferOnRequest[fKey][dKey[j]] == 1) { 
									delete selectedOfferOnRequest[fKey][dKey[j]]; 
								}
							}
						}
					}
				}
			}
			
			checkOnRequestBtn(fKey);
		}
	}
}

function checkOnRequestBtn(fKey) {
	var objTarget = "clickbook_F"+ fKey;
	
	if (!selectedOfferOldBtn[fKey]) { selectedOfferOldBtn[fKey] = $(objTarget).src; }
	cKey = array_keys(selectedOfferOnRequest[fKey]);
	if (cKey.length > 0) {
		// $(objTarget).src = str_replace('book.gif', 'request.gif', $(objTarget).src);
		updateBookBtn(fKey, 'OnRequest');
	} else {
		// $(objTarget).src = selectedOfferOldBtn[fKey];
		updateBookBtn(fKey, '');
	}
}

function validateMe(myRoomId, OfferId, rtId) {
	
	OfferId = myRoomId;
	// Get First & Last Date
	var fDate = "";
	var lDate = "";
	var cDate = "";
	var AlertMSG = "";
	var rMinDay = "";
	var rMaxDay = "";
	
	if (is_array(selectedOffer[OfferId])) {
		var selectedOfferKeys = array_keys(selectedOffer[OfferId]);
		var totalSelectedNight = selectedOfferKeys.length;
		for (i=0; i < totalSelectedNight; i++) {
			cDate = selectedOfferKeys[i];
			// First Date
			if (fDate == "" || fDate > cDate) {
				fDate = cDate;
			}
			// Last Date
			if (lDate == "" || lDate < cDate) {
				lDate = cDate;
			}
		}
			
		for (i=0; i < totalSelectedNight; i++) {
			cDate = selectedOfferKeys[i];
			// Restriction : Pre for Min & Max Date
			var extractRule = explode('|', selectedOfferRule[OfferId][cDate]);
			if (trim(extractRule[1]) != "") {
				cRule = explode(',', trim(extractRule[1]));
				
				wMinNight = trim(cRule[1]) * 1;
				wMaxNight = trim(cRule[2]) * 1;
				bMinNight = trim(cRule[4]) * 1;
				bMaxNight = trim(cRule[5]) * 1;
				
				if (rMinDay == "" || ((bMinNight < rMinDay) && bMinNight > 0)) {
					rMinDay = bMinNight;
				}
				if (rMaxDay == "" || ((bMaxNight > rMaxDay) && bMaxNight > 0)) {
					rMaxDay = bMaxNight;
				}
				
				// Check Check-In Date
				// alert(fDate +" == "+ cDate +" : "+ rMinDay +" : "+ wMinNight);
				if (fDate == cDate) {
					if (rMinDay == "" || ((wMinNight < rMinDay) && wMinNight > 0)) {
						rMinDay = wMinNight;
				}
					if (rMaxDay == "" || ((wMaxNight > rMaxDay) && wMaxNight > 0)) {
						rMaxDay = wMaxNight;
				}
			}
		}
		}
		
		// alert(rMinDay +" : "+ rMaxDay);
		
		// Get Total Night
		var totalNight = calcDays(fDate, lDate) + 1;
		
		// Debug
		AlertMSG += "FirstDate : "+ fDate +"\r\n";
		AlertMSG += "LastDate : "+ lDate +"\r\n";
		AlertMSG += "TotalDate : "+ totalNight +"\r\n";
		AlertMSG += "SelectedDate : "+ totalSelectedNight +"\r\n";
		// alert(AlertMSG);
		
		// No Date selected
		if (totalSelectedNight == 0) {
			alert(index_alert[0]);
			return false;
		}
		
		// Check gap betaween date selected
		if (totalNight != totalSelectedNight) {
			alert(index_alert[3]);
			return false;
		}
		
		// DayUse
		if ($('dayuse_F'+ OfferId).value == "1" && totalNight > 1) {
			alert(index_alert[1]);
			return false;
		}
		
		// Check Min Night
		var cMinNight = $('minNight_F'+ OfferId).value;
		if (cMinNight > totalNight) {
			var aStr = index_alert[2].replace("{minstay}", cMinNight);
			alert(aStr);
			return false;
		}
		
		// Rule Apply
		// Ex : CloseToArrival,{CloseType: 1 = CheckIn, 2 = CheckOut, 3 = Both}, {MinNightStay: 0 = NotAllow, > 0 = MinNightSet}|{minNight}, {maxNight}, {closedToArrival}
		// -- CloseOnArrival
		var extractRule = explode('|', selectedOfferRule[OfferId][fDate]);
		if (stristr(extractRule[0], 'CloseToArrival')) {
			cRule = explode(',', trim(extractRule[0]));
			cType = trim(cRule[1]);
			cValue = trim(cRule[2]);
			if ((cType == 1 || cType == 3) && (cValue == 0 || cValue > totalNight)) {
				alert(index_alert[4]);
				return false;
			}
		}
		// -- Restriction
		// -- -- closedToArrival
		if (trim(extractRule[1]) != "") {
			cRule = explode(',', trim(extractRule[1]));
			if (trim(cRule[2]) == 1) {
				var aStr = index_alert[8].replace("{date}",fDate);
				alert(aStr);
				return false;
			}
		}
		// -- CloseOnDeparture
		var extractRule = explode('|', selectedOfferRule[OfferId][lDate]);
		if (stristr(extractRule[0], 'CloseToArrival')) {
			cRule = explode(',', trim(extractRule[0]));
			cType = trim(cRule[1]);
			cValue = trim(cRule[2]);
			cValue_1 = trim(cRule[3]);
			if (((cType == 2) && (cValue == 0 || cValue > totalNight)) || ((cType == 3) && (cValue_1 == 0 || cValue_1 > totalNight))) {
				alert(index_alert[5]);
				return false;
			}
		}
		
		// -- Restriction
		// -- -- MinNight
		if (rMinDay != "" && rMinDay > totalNight) {
			var aStr = index_alert[6].replace("{nights}",rMinDay);
			alert(aStr);
			return false;
		}
		// -- -- MaxNight
		if (rMaxDay != "" && rMaxDay != 0 && rMaxDay < totalNight) {
			var aStr = index_alert[7].replace("{nights}",rMaxDay);
			alert(aStr);
			return false;
		}
	} else {
		alert(index_alert[0]);
		return false;
	}
	
	buildSubmitForm(OfferId);
}

function buildSubmitForm(OfferId, submittype) {
	$('Post_FORM').action = $('Action_F'+ OfferId).value;
	
	$('build_FORM').innerHTML = "";
	$('build_FORM').innerHTML += "<input name=\"ExchangeRate\" value=\""+ $('ExchangeRate_F'+ OfferId).value +"\" type=\"text\">";
	$('build_FORM').innerHTML += "<input name=\"hotelId\" value=\""+ $('hotelId_F'+ OfferId).value +"\" type=\"text\">";
	$('build_FORM').innerHTML += "<input name=\"WholeSalerID\" value=\""+ $('WholeSalerID_F'+ OfferId).value +"\" type=\"text\">";
	$('build_FORM').innerHTML += "<input name=\"System\" value=\""+ $('System_F'+ OfferId).value +"\" type=\"text\">";
	$('build_FORM').innerHTML += "<input name=\"offerId\" value=\""+ $('offerId_F'+ OfferId).value +"\" type=\"text\">";
	$('build_FORM').innerHTML += "<input name=\"rtId\" value=\""+ $('rtId_F'+ OfferId).value +"\" type=\"text\">";
	$('build_FORM').innerHTML += "<input name=\"minNight\" value=\""+ $('minNight_F'+ OfferId).value +"\" type=\"text\">";
	$('build_FORM').innerHTML += "<input name=\"lpromoNight\" value=\""+ $('lpromoNight_F'+ OfferId).value +"\" type=\"text\">";
	$('build_FORM').innerHTML += "<input name=\"ShowCurrencyCode\" value=\""+ $('ShowCurrencyCode_F'+ OfferId).value +"\" type=\"text\">";
	$('build_FORM').innerHTML += "<input name=\"ShowCurrencyName\" value=\""+ $('ShowCurrencyName_F'+ OfferId).value +"\" type=\"text\">";
	$('build_FORM').innerHTML += "<input name=\"currency\" value=\""+ $('currency_F'+ OfferId).value +"\" type=\"text\">";
	$('build_FORM').innerHTML += "<input name=\"dayuse\" value=\""+ $('dayuse_F'+ OfferId).value +"\" type=\"text\">";
	$('build_FORM').innerHTML += "<input name=\"refid\" value=\""+ $('refid_F'+ OfferId).value +"\" type=\"text\">";
	
	if (submittype == 'inout') {
		correctCookieDate();
		var chkIn 	= dateReformat(mkDateObj(readCookie("mtx_check_in")), 'Y-m-d');
		var chkOut 	= dateReformat(mkDateObj(readCookie("mtx_check_out")), 'Y-m-d');
		
		// Each day Rule
		var currdate = chkIn;
		while (currdate < chkOut) {
			$('build_FORM').innerHTML += "<input name=\"BookDate[]\" value=\""+ currdate +"\" type=\"text\">";
			currdate = dateReformat(calcDay(currdate, 1), 'Y-m-d');
		}
		
		submitBuildForm(OfferId);
	} else {
		if (is_array(selectedOffer[OfferId])) {
			var selectedOfferKeys = array_keys(selectedOffer[OfferId]);
			var totalSelectedNight = selectedOfferKeys.length;
			for (i=0; i < totalSelectedNight; i++) {
				$('build_FORM').innerHTML += "<input name=\"BookDate[]\" value=\""+ selectedOfferKeys[i] +"\" type=\"text\">";
			}
			submitBuildForm(OfferId);
		}
	}
}

function submitBuildForm(OfferId) {
	$('Post_FORM').serialize();
	$('Post_FORM').submit();
}

function updatecurrencybox(objBox) {
	var indexval = $('SelectCurrency_'+ objBox).selectedIndex;
	createCookie('lt_currency', indexval, 365);
	
	var cindex = readCookie("lt_currency");
	
	// Update all currency list box;
	var allBox = explode("|", $('cbBox').value);
	for (var i = 0; i < allBox.length; i++) {
		if ($('SelectCurrency_'+ allBox[i]).selectedIndex != cindex) {
			$('SelectCurrency_'+ allBox[i]).selectedIndex = cindex;
		}
		updatecurrencyratebox(allBox[i]);
	}
}

function updateonecurrencybox(objBox) {
	var cindex = readCookie("lt_currency");
	$('SelectCurrency_'+ objBox).selectedIndex = cindex;
	updatecurrencyratebox(objBox)
}

function updatecurrencyratebox(boxName) {
	var cCurrency = $('SelectCurrency_'+ boxName).value;
	var bCurrency = $('CurrencyCode_'+ boxName).value;
	
	if (cCurrency != 0) {
		var to_rate = CurrencyArray[cCurrency]["Value"];
		var cname = CurrencyArray[cCurrency]["Name"];
	}
	
	// Get Offer Id
	var allOffer = explode("|", $('cbOffer_'+ boxName).value);
	for (var i = 0; i < allOffer.length; i++) {
		var cOffer = allOffer[i];
		
		for (var j = 0; j < 15; j++) {
			if (document.getElementById("thai_rate_F"+ cOffer +"_" + j)) {
				from = document.getElementById("thai_rate_F"+ cOffer +"_" + j).value;
				to = new Number(from/to_rate);
				oTo = $("rate_F"+ cOffer +"_" + j);
				
				if (!oTo) { continue; }
				
				// we use only first 3 decimal point to prevent very small different value
				str_to = to+'';
				arr_to = str_to.split('.');
				str_integer = arr_to[0];
				str_decimal = arr_to.length > 1 ? '.' + arr_to[1] : '';
				str_decimal = str_decimal.substr(0, 4);
				str_to = str_integer+str_decimal;
				to = new Number(str_to);
				
				if (cCurrency == bCurrency || cCurrency == 0)
				{
					oTo.style.display = 'none';
					oTo.innerHTML = '';
				}
				else
				{
					if (oTo != null && to > 0)
					{
						oTo.innerHTML = addCommas(Math.ceil(to));
						oTo.style.display = 'block';
					}
				}
			}
		}
	}
}

function assignAvailByCookie(boxName) {
	// alert(targetHotelOffersBox);
	// Get Offer 
	var allOffer = explode("|", $('cbOffer_'+ boxName).value);
	for (var i = 0; i < allOffer.length; i++) {
		var cOffer = allOffer[i];
		var lSelected = readCookie("selectedAvailState_"+ cOffer);
		var lRule = readCookie("ruleAvailState_"+ cOffer);
		var lRq = readCookie("rqAvailState_"+ cOffer);
		
		if (lSelected) {
			// alert(lSelected);
			var allSelected = explode("/", lSelected);
			var allRule = explode("/", lRule);
			var allRq = explode("/", lRq);
			
			selectedOffer[cOffer] = new Array();
			selectedOfferRule[cOffer] = new Array();
			selectedOfferOnRequest[cOffer] = new Array();
			
			for (var j = 0; j < allSelected.length; j++) {
				var cSelected = trim(allSelected[j]);
				if (cSelected != "") {
					selectedOffer[cOffer][cSelected] = 1;
					selectedOfferRule[cOffer][cSelected] = allRule[j];
					if (allRq[j] == 1) {
						selectedOfferOnRequest[cOffer][cSelected] = "1";
					}
				}
			}
		}
	}
}

function rememberAvailByCookie(OfferId) {
	var selectedOfferKeys = array_keys(selectedOffer[OfferId]);
	var totalSelectedNight = selectedOfferKeys.length;
	var SelectedNight = "";
	var SelectedRule = "";
	var SelectedRq = "";
	
	for (i=0; i < totalSelectedNight; i++) {
		var cNight = selectedOfferKeys[i];
		SelectedNight += cNight +"/";
		SelectedRule += selectedOfferRule[OfferId][cNight] +"/";
		if (selectedOfferOnRequest[OfferId][cNight] == 1) {
			SelectedRq += "1/";
		} else {
			SelectedRq += "0/";
		}
	}
	
	var d = getCookieDomain();
	
	document.cookie = "selectedAvailState_"+ OfferId +"=" + SelectedNight + ";" + ";path=/;domain="+ d;
	document.cookie = "ruleAvailState_"+ OfferId +"=" + SelectedRule + ";" + ";path=/;domain="+ d;
	document.cookie = "rqAvailState_"+ OfferId +"=" + SelectedRq + ";" + ";path=/;domain="+ d;
}

/****************************************************/

/****************************************************/
/** 2011-06 : Support calendar select.				*/
/****************************************************/
function applyChart(selectObjName) {
	var check_in 	= mkDateObj($('mtx_check_in').value);
	var check_out 	= mkDateObj($('mtx_check_out').value);
	var startDate 	= mkDateObj(supportStartDate);
	var endDate 	= mkDateObj(supportEndDate);
	
	// alert(check_in +'\r\n'+ check_out +'\r\n'+ startDate +'\r\n'+ endDate);
	
	// Validate Date Selected 
	if (check_in >= check_out) {
		return;
	} else if (check_in < startDate) {
		return;
	} else if (check_out > endDate) {
		return;
	}
	
	correctmatrixState();
	
	if (selectObjName) {
		var matrixState = readCookie("matrixState");
		if (!matrixState) { matrixState = 0; };
		getHotelOffers(matrixState, selectObjName, 0);
	}
}

function applyInOut(objName) {
	var matrixState 	= readCookie("matrixState") * 1;
	var mtx_check_in 	= readCookie("mtx_check_in");
	var mtx_check_out 	= readCookie("mtx_check_out");
	var startDate 		= supportStartDate;
	var lOffers = explode("|", $('cbOffer_'+ objName).value);
	
	// Clear Date Row
	for (ii = 0; ii < 14; ii++) {
		cDate = calcDay(startDate, (matrixState + ii));
		cPHPDate = dateReformat(cDate, 'Y-m-d');
		targetChecked = 'dateTD_hotelOffersBox_'+ cPHPDate;
		
		if ($(targetChecked)) {
			$(targetChecked).removeClassName('reservation');
		}
	}
	
	// Clear All Select
	for (i = 0; i < lOffers.length; i++) {
		for (ii = 0; ii < 14; ii++) {
			cDate = calcDay(startDate, (matrixState + ii));
			cPHPDate = dateReformat(cDate, 'Y-m-d');
			targetChecked = 'book_F'+ lOffers[i] +'_D'+ cPHPDate;
			targetBoxChecked = 'offerTD_'+ lOffers[i] +'_'+ cPHPDate;
			if ($(targetChecked)) {
				$(targetChecked).checked = false;
				$(targetBoxChecked).removeClassName('reservation');
			}
		}
		
		buildBookBtn(lOffers[i], objName);
	}
	
	if (!mtx_check_in || !mtx_check_out) {
		return false;
	}
	
	// Check by In & Out Date
	var mtx_nights = dateDiff(mtx_check_in, mtx_check_out);
	
	// Date Row
	for (ii = 0; ii < mtx_nights; ii++) {
		cDate = calcDay(mtx_check_in, ii);
		cPHPDate = dateReformat(cDate, 'Y-m-d');
		targetChecked = 'dateTD_hotelOffersBox_'+ cPHPDate;
		
		if ($(targetChecked)) {
			$(targetChecked).addClassName('reservation');
		}
	}
	
	for (i = 0; i < lOffers.length; i++) {
		for (ii = 0; ii < mtx_nights; ii++) {
			cDate = calcDay(mtx_check_in, ii);
			cPHPDate = dateReformat(cDate, 'Y-m-d');
			targetChecked = 'book_F'+ lOffers[i] +'_D'+ cPHPDate;
			targetBoxChecked = 'offerTD_'+ lOffers[i] +'_'+ cPHPDate;
			
			if ($(targetChecked)) {
				$(targetChecked).checked = true;
				$(targetBoxChecked).addClassName('reservation');
			}
		}
	}
	
}

function selectDateCheck(objtarget, OfferId, currdate) {
	correctCookieDate();
	var chkIn 	= readCookie("mtx_check_in");
	var chkOut 	= readCookie("mtx_check_out");
	
	if (chkIn && chkOut) {
		var rChkIn 	= mkDateObj(readCookie("mtx_check_in"));
		var rChkOut	= mkDateObj(readCookie("mtx_check_out"));
		var chkIn 	= dateReformat(rChkIn, 'Y-m-d');
		var chkOut 	= dateReformat(rChkOut, 'Y-m-d');
		
		//alert(currdate +" == "+ datePHP(calcDay(chkOut, -1)));
		
		if (currdate == chkOut) {
			/** CIN - COUT - CLICK **/
			rChkOut = calcDay(currdate, 1);
		} else if (currdate == dateReformat(calcDay(chkIn, -1), 'Y-m-d')) {
			/** CLICK - CIN - COUT **/
			rChkIn = calcDay(chkIn, -1);
		} else if (currdate == dateReformat(calcDay(chkOut, -1), 'Y-m-d')) {
			/** CIN - COUT == CLICK **/
			rChkOut = calcDay(chkOut, -1);
		} else if (currdate == chkIn) {
			/** CLICK == CIN - COUT **/
			rChkIn = calcDay(chkIn, 1);
		} else {
			clearDatePopupOn(currdate);
			return false;
		}
		
	} else {
		rChkIn 	= mkDateObj(currdate);
		rChkOut = calcDay(currdate, 1);
	}
	
	chkIn 	= dateReformat(rChkIn, 'Ymd');
	chkOut 	= dateReformat(rChkOut, 'Ymd');
	if (chkIn == chkOut) {
		chkIn 	= "";
		chkOut	= "";
	}
	var d = getCookieDomain();
	document.cookie = "mtx_check_in=" + chkIn + ";" + ";path=/;domain="+ d;
	document.cookie = "mtx_check_out=" + chkOut + ";" + ";path=/;domain="+ d;
	applyInOut(objtarget);
	
	return true;
}

function updateBookBtn(OfferId, btnstate) {
	if ($('clickbook_F'+ OfferId)) {
		var currObjImg = $('clickbook_F'+ OfferId).src;
		
		if (btnstate == 'OnRequest') {
			var currBtnImg = "btn-request.png";
		} else if (btnstate == 'Disable') {
			var currBtnImg = "btn-book-disable.png";
		} else {
			var currBtnImg = "btn-book.png";
		}
		
		currObjImg = str_replace('btn-book.png', currBtnImg, currObjImg);
		currObjImg = str_replace('btn-request.png', currBtnImg, currObjImg);
		currObjImg = str_replace('btn-book-disable.png', currBtnImg, currObjImg);
		
		$('clickbook_F'+ OfferId).src = currObjImg;
	}
}

function buildBookBtn(OfferId, objtarget) {	
	// No Date selected
	if (!readCookie("mtx_check_in") || !readCookie("mtx_check_out")) {
		updateBookBtn(OfferId, 'Disable');
		return;
	}
	
	var chkIn 	= dateReformat(mkDateObj(readCookie("mtx_check_in")), 'Y-m-d');
	var chkOut 	= dateReformat(mkDateObj(readCookie("mtx_check_out")), 'Y-m-d');
	var lastNight	= dateReformat(calcDay(chkOut, -1), 'Y-m-d');
	var totalNight	= dateDiff(chkIn, chkOut);
	var btnstate = "";
	
	// Each day Check
	var currdate = chkIn;
	while (currdate < chkOut) {
		// StateDate => soldOut
		if ($('StateDate_F'+ OfferId +'_D'+ currdate)) {
			if ($('StateDate_F'+ OfferId +'_D'+ currdate).value == 'soldOut') {
				btnstate = 'Disable';
				break;
			}
		}
		// inoutRule => soldOut
		if ($('inoutRule_F'+ OfferId +'_D'+ currdate)) {
			cInoutRule = $('inoutRule_F'+ OfferId +'_D'+ currdate).value;
			if (stristr(cInoutRule, 'soldOut')) {
				btnstate = 'Disable';
				break;
			}
		}
		
		// StateDate => OnRequest
		if ($('StateDate_F'+ OfferId +'_D'+ currdate)) {
			if ($('StateDate_F'+ OfferId +'_D'+ currdate).value == 'OnRequest') {
				btnstate = 'OnRequest';
				break;
			}
		}		
		// inoutRule => OnRequest
		if ($('inoutRule_F'+ OfferId +'_D'+ currdate)) {
			cInoutRule = $('inoutRule_F'+ OfferId +'_D'+ currdate).value;
			if (stristr(cInoutRule, 'OnRequest')) {
				btnstate = 'OnRequest';
				break;
			}
		}
		
		currdate = dateReformat(calcDay(currdate, 1), 'Y-m-d');
	}
	
	updateBookBtn(OfferId, btnstate);
}

function clearDatePopupOn(currdate) {
	$('dateErrorTMP').value = currdate;
	$('dateErrorBox').style.top = ((document.viewport.getHeight() / 2) - 50) +"px";
	$('dateErrorBox').style.left = ((document.viewport.getWidth() / 2) - 250) +"px";
	$('dateErrorMainBox').style.height = (document.viewport.getHeight() * 2) +"px";
	$('dateErrorMainBox').style.display = "";
}

function clearDatePopupOff() {
	$('dateErrorMainBox').style.height = "0px";
	$('dateErrorMainBox').style.display = "none";
}

function setDateCookie(objtarget) {
	var currdate = $('dateErrorTMP').value;
	chkIn 	= dateReformat(mkDateObj(currdate), 'Ymd');
	chkOut 	= dateReformat(calcDay(currdate, 1), 'Ymd');
	var d = getCookieDomain();
	document.cookie = "mtx_check_in=" + chkIn + ";" + ";path=/;domain="+ d;
	document.cookie = "mtx_check_out=" + chkOut + ";" + ";path=/;domain="+ d;
	applyInOut(objtarget);
	clearDatePopupOff();
}

function inoutValidate(OfferId) {
	
	// No Date selected
	if (!readCookie("mtx_check_in") || !readCookie("mtx_check_out")) {
		alert(index_alert[0]);
		return false;
	}
	
	// Click On Disable Btn
	if (stristr($('clickbook_F'+ OfferId).src, 'disable')) {
		alert(index_alert[9]);
		return false;
	}
	
	var chkIn 	= dateReformat(mkDateObj(readCookie("mtx_check_in")), 'Y-m-d');
	var chkOut 	= dateReformat(mkDateObj(readCookie("mtx_check_out")), 'Y-m-d');
	var lastNight	= dateReformat(calcDay(chkOut, -1), 'Y-m-d');
	var totalNight	= dateDiff(chkIn, chkOut);

	// LS : DayUse
	if ($('dayuse_F'+ OfferId).value == "1" && totalNight > 1) {
		alert(index_alert[1]);
		return false;
	}
	
	// LS : minNight
	cMinNight = $('minNight_F'+ OfferId).value;
	if (totalNight < cMinNight) {
		var aStr = index_alert[6].replace("{nights}", cMinNight);
		alert(aStr);
		return false;
	}
	
	// Each day Rule
	var currdate = chkIn;
	while (currdate < chkOut) {
		// StateDate => soldOut
		if ($('StateDate_F'+ OfferId +'_D'+ currdate)) {
			if ($('StateDate_F'+ OfferId +'_D'+ currdate).value == 'soldOut') {
				alert(index_alert[3]);
				return false;
			}
		}
		
		// Check inout Rule
		var cInoutRule = "";
		if ($('inoutRule_F'+ OfferId +'_D'+ currdate)) {
			cInoutRule = $('inoutRule_F'+ OfferId +'_D'+ currdate).value;
			
			// InoutRule => soldOut
			if (stristr(cInoutRule, 'soldOut')) {
				alert(index_alert[3]);
				return false;
			}
			
			var lRule = explode('|', cInoutRule);
			for (i = 0; i < lRule.length; i++) {
				// LS : CloseOnArrivalDeparture
				// Ex : CloseToArrival,{CloseType: 1 = CheckIn, 2 = CheckOut, 3 = Both}, {MinNightStay: 0 = NotAllow, > 0 = MinNightSet}|{minNight}, {maxNight}, {closedToArrival}
				if (stristr(lRule[i], 'CloseToArrival') 
					&& !stristr(lRule[i], 'CloseToArrival,0') 
					&& (currdate == chkIn || currdate == lastNight)) 
				{
					cRule = explode(',', trim(lRule[i]));
					cType = trim(cRule[1]);
					cValue = trim(cRule[2]);
					cValue_1 = trim(cRule[3]);
					
					// CloseOnArrival
					if ((currdate == chkIn) 
						&& (cType == 1 || cType == 3) && (cValue == 0 || cValue > totalNight)) 
					{
						alert(index_alert[4]);
						return false;
					}
					
					// CloseOnDeparture
					if ((currdate == lastNight) 
						&& (
							((cType == 2) && (cValue == 0 || cValue > totalNight)) 
							|| ((cType == 3) && (cValue_1 == 0 || cValue_1 > totalNight))
							)
						) 
					{
						alert(index_alert[5]);
						return false;
					}
				}
				
				// Wotif,2,0,0,0,0
				// Wotif,minNight,maxNight,Closetoarrival,bMaxNight,bMinNight
				if (stristr(lRule[i], 'Wotif')
					&& lRule[i] != 'Wotif,0,0,0,0,0') 
				{
					var cRule = explode(',', trim(lRule[i]));
					var minNight = cRule[1];
					var maxNight = cRule[2];
					var Closetoarrival = cRule[3];
					var bMinNight = cRule[4];
					var bMaxNight = cRule[5];
					
					// Period Min Night Check
					if (bMinNight > 0 && bMinNight > totalNight) {
						var aStr = index_alert[6].replace("{nights}", bMinNight);
						alert(aStr);
						return false;
					}
					
					// Period Max Night Check
					if (bMaxNight > 0 && bMaxNight < totalNight) {
						var aStr = index_alert[7].replace("{nights}",bMaxNight);
						alert(aStr);
						return false;
					}
					
					// Check-In Min Night Check
					if ((currdate == chkIn)	&& (minNight > 0 && minNight > totalNight)) {
						var aStr = index_alert[6].replace("{nights}", minNight);
						alert(aStr);
						return false;
					}
					
					// Check-In Max Night Check
					if ((currdate == chkIn)	&& (maxNight > 0 && maxNight < totalNight)) {
						var aStr = index_alert[7].replace("{nights}",maxNight);
						alert(aStr);
						return false;
					}
					
					// Close to arrival Check
					// CloseOnArrival
					if ((currdate == chkIn)	&& (Closetoarrival == 1)) 
					{
						alert(index_alert[4]);
						return false;
					}
				}				
			}
		}
		
		// Check Chart Rule
		var chartRule = "";
		if ($('RuleDate_F'+ OfferId +'_D'+ currdate)) {
			chartRule = $('RuleDate_F'+ OfferId +'_D'+ currdate).value;
			
			// InoutRule => soldOut
			if (stristr(cInoutRule, 'soldOut')) {
				alert(index_alert[3] +'1');
				return false;
			}
			
			var lRule = explode('|', chartRule);
			for (i = 0; i < lRule.length; i++) {
				// LS : CloseOnArrivalDeparture
				// Ex : CloseToArrival,{CloseType: 1 = CheckIn, 2 = CheckOut, 3 = Both}, {MinNightStay: 0 = NotAllow, > 0 = MinNightSet}|{minNight}, {maxNight}, {closedToArrival}
				if (stristr(lRule[i], 'CloseToArrival') 
					&& !stristr(lRule[i], 'CloseToArrival,0') 
					&& (currdate == chkIn || currdate == lastNight)) 
				{
					cRule = explode(',', trim(lRule[i]));
					cType = trim(cRule[1]);
					cValue = trim(cRule[2]);
					cValue_1 = trim(cRule[3]);
					
					// CloseOnArrival
					if ((currdate == chkIn) 
						&& (cType == 1 || cType == 3) && (cValue == 0 || cValue > totalNight)) 
					{
						alert(index_alert[4]);
						return false;
					}
					
					// CloseOnDeparture
					if ((currdate == lastNight) 
						&& (
							((cType == 2) && (cValue == 0 || cValue > totalNight)) 
							|| ((cType == 3) && (cValue_1 == 0 || cValue_1 > totalNight))
							)
						) 
					{
						alert(index_alert[5]);
						return false;
					}
				}
				
				// Wotif,2,0,0
				// Wotif,minNight,maxNight,Closetoarrival
				if (stristr(lRule[i], 'Wotif')
					&& lRule[i] != 'Wotif,0,0,0,0,0') 
				{
					var cRule = explode(',', trim(lRule[i]));
					var minNight = cRule[1];
					var maxNight = cRule[2];
					var Closetoarrival = cRule[3];
					var bMinNight = cRule[4];
					var bMaxNight = cRule[5];
					
					// Period Min Night Check
					if (bMinNight > 0 && bMinNight > totalNight) {
						var aStr = index_alert[6].replace("{nights}", bMinNight);
						alert(aStr);
						return false;
					}
					
					// Period Max Night Check
					if (bMaxNight > 0 && bMaxNight < totalNight) {
						var aStr = index_alert[7].replace("{nights}",bMaxNight);
						alert(aStr);
						return false;
					}
					
					// Check-In Min Night Check
					if ((currdate == chkIn)	&& (minNight > 0 && minNight > totalNight)) {
						var aStr = index_alert[6].replace("{nights}", minNight);
						alert(aStr);
						return false;
					}
					
					// Check-In Max Night Check
					if ((currdate == chkIn)	&& (maxNight > 0 && maxNight < totalNight)) {
						var aStr = index_alert[7].replace("{nights}",maxNight);
						alert(aStr);
						return false;
					}
					
					// Close to arrival Check
					// CloseOnArrival
					if ((currdate == chkIn)	&& (Closetoarrival == 1)) 
					{
						alert(index_alert[4]);
						return false;
					}
				}
			}
		}
		
		currdate = dateReformat(calcDay(currdate, 1), 'Y-m-d');
	}

	buildSubmitForm(OfferId, 'inout');
}
//****************************************************
//****************************************************
function addCommas(nStr) {
	nStr += '';
	x = nStr.split('.');
	x1 = x[0];
	x2 = x.length > 1 ? '.' + x[1] : '';
	var rgx = /(\d+)(\d{3})/;
	while (rgx.test(x1)) {
		x1 = x1.replace(rgx, '$1' + ',' + '$2');
	}
	return x1 + x2;
}

function moveNextNew(tbl_no)
{
	var first_show = new_first_show_col;
	var last_show = new_last_show_col;
	
	if (tbl_no==null)
	{
		tbl_no = "0";
		first_show = new_first_show_col;
		last_show = new_last_show_col;
	}
	else
	{
		if (current_first_col[tbl_no] == undefined)
		{
			current_first_col[tbl_no] = first_show;
		}
		else
		{
			first_show = current_first_col[tbl_no];
		}
		if (current_last_col[tbl_no] == undefined)
		{
			current_last_col[tbl_no] = last_show;
		}
		else
		{
			last_show = current_last_col[tbl_no];
		}
	}
	
	var oTable = document.getElementById("main_tbl"+ tbl_no);
	var offer_row = document.getElementById("numberOffer_"+ tbl_no).value;
		
	// dateTD_0_1
	document.getElementById("dateTD_"+ tbl_no +"_"+ first_show).style.display = "none";
	document.getElementById("dateTD_"+ tbl_no +"_"+ (last_show + 1)).style.display = "";
	
	for (loop = 0; loop < offer_row; loop++)
	{
		document.getElementById("offerTD_"+ tbl_no +"_"+ loop +"_"+ first_show).style.display = "none";
		document.getElementById("offerTD_"+ tbl_no +"_"+ loop +"_"+ (last_show + 1)).style.display = "";
	}
	
	// show or hide action button according to current display location
	document.getElementById("movePrevious_"+ tbl_no).style.visibility = "visible";
	
	
	// increase global variable
	first_show += 1;
	last_show += 1;
	
	if (last_show == new_last_col)
	{
		document.getElementById("moveNext_"+ tbl_no).style.visibility = "hidden";	
	}
	else
	{
		document.getElementById("moveNext_"+ tbl_no).style.visibility = "visible";
	}
	
	if (tbl_no === "")
	{
		new_first_show_col = first_show;
		new_last_show_col = last_show;
	}
	else
	{
		current_first_col[tbl_no] = first_show;
		current_last_col[tbl_no] = last_show;
	}
}

function movePreviousNew(tbl_no)
{
	var first_show = new_first_show_col;
	var last_show = new_last_show_col;
	if (tbl_no==null)
	{
		tbl_no = "";
		first_show = new_first_show_col;
		last_show = new_last_show_col;
	}
	else
	{
		if (current_first_col[tbl_no] == undefined)
		{
			current_first_col[tbl_no] = first_show;
		}
		else
		{
			first_show = current_first_col[tbl_no];
		}
		if (current_last_col[tbl_no] == undefined)
		{
			current_last_col[tbl_no] = last_show;
		}
		else
		{
			last_show = current_last_col[tbl_no];
		}
	}
	
	var oTable = document.getElementById("main_tbl"+tbl_no);
	var offer_row = document.getElementById("numberOffer_"+ tbl_no).value;
	
	// dateTD_0_1
	document.getElementById("dateTD_"+ tbl_no +"_"+ (first_show - 1)).style.display = "";
	document.getElementById("dateTD_"+ tbl_no +"_"+ last_show).style.display = "none";
	
	for (loop = 0; loop < offer_row; loop++)
	{
		document.getElementById("offerTD_"+ tbl_no +"_"+ loop +"_"+ (first_show - 1)).style.display = "";
		document.getElementById("offerTD_"+ tbl_no +"_"+ loop +"_"+ (last_show)).style.display = "none";
	}
	
	// show or hide action button according to current display location
	document.getElementById("moveNext_"+ tbl_no).style.visibility = "visible";
	
	
	// decrease global variable
	first_show -= 1;
	last_show -= 1;
	
	if (first_show == 0)
	{
		document.getElementById("movePrevious_"+ tbl_no).style.visibility = "hidden";	
	}
	else
	{
		document.getElementById("movePrevious_"+ tbl_no).style.visibility = "visible";	
	}
	
	if (tbl_no === "")
	{
		first_show_col = first_show;
		last_show_col = last_show;
	}
	else
	{
		current_first_col[tbl_no] = first_show;
		current_last_col[tbl_no] = last_show;
	}
}






function moveNext(tbl_no)
{
	var first_show = first_show_col;
	var last_show = last_show_col;
	if (tbl_no==null)
	{
		tbl_no = "";
		first_show = first_show_col;
		last_show = last_show_col;
	}
	else
	{
		if (current_first_col[tbl_no] == undefined)
		{
			current_first_col[tbl_no] = first_show;
		}
		else
		{
			first_show = current_first_col[tbl_no];
		}
		if (current_last_col[tbl_no] == undefined)
		{
			current_last_col[tbl_no] = last_show;
		}
		else
		{
			last_show = current_last_col[tbl_no];
		}
	}
	var oTable = document.getElementById("main_tbl"+tbl_no);
	
	for (var r=1; r<oTable.rows.length-1; r++)
	{
		var oRow = oTable.rows[r];
		
		// hide left most column
		oRow.cells[first_show].style.display = "none";
		
		// show right most column
		oRow.cells[last_show+1].style.display = "";
		oRow.cells[last_show+1].style.width = "40";
	}
	
	// show or hide action button according to current display location
	document.getElementById("movePrevious"+tbl_no).style.visibility = "visible";
	
	
	// increase global variable
	first_show += 1;
	last_show += 1;
	
	if (last_show == last_col)
	{
		document.getElementById("moveNext"+tbl_no).style.visibility = "hidden";	
	}
	else
	{
		document.getElementById("moveNext"+tbl_no).style.visibility = "visible";	
	}
	
	if (tbl_no === "")
	{
		first_show_col = first_show;
		last_show_col = last_show;
	}
	else
	{
		current_first_col[tbl_no] = first_show;
		current_last_col[tbl_no] = last_show;
	}
	
	// alert('last_show_col = '+ last_show_col +'\n'+'last_col = '+ last_col);
}

function movePrevious(tbl_no)
{
	var first_show = first_show_col;
	var last_show = last_show_col;
	if (tbl_no==null)
	{
		tbl_no = "";
		first_show = first_show_col;
		last_show = last_show_col;
	}
	else
	{
		if (current_first_col[tbl_no] == undefined)
		{
			current_first_col[tbl_no] = first_show;
		}
		else
		{
			first_show = current_first_col[tbl_no];
		}
		if (current_last_col[tbl_no] == undefined)
		{
			current_last_col[tbl_no] = last_show;
		}
		else
		{
			last_show = current_last_col[tbl_no];
		}
	}
	var oTable = document.getElementById("main_tbl"+tbl_no);
	
	for (var r=1; r<oTable.rows.length-1; r++)
	{
		var oRow = oTable.rows[r];
		
		// show left most column
		oRow.cells[first_show-1].style.display = "";
		oRow.cells[first_show-1].style.width = "40";
		
		// hide right most column
		oRow.cells[last_show].style.display = "none";
	}
	
	// show or hide action button according to current display location
	document.getElementById("moveNext"+tbl_no).style.visibility = "visible";
	
	
	// decrease global variable
	first_show -= 1;
	last_show -= 1;
	
	if (first_show == 3)
	{
		document.getElementById("movePrevious"+tbl_no).style.visibility = "hidden";	
	}
	else
	{
		document.getElementById("movePrevious"+tbl_no).style.visibility = "visible";	
	}
	
	if (tbl_no === "")
	{
		first_show_col = first_show;
		last_show_col = last_show;
	}
	else
	{
		current_first_col[tbl_no] = first_show;
		current_last_col[tbl_no] = last_show;
	}
	
}

function updateSource()
{
	// put agent id in cookie into form hidden field
	var agentId = readCookie("source");
	if (agentId != null)
	{
		var forms = document.getElementsByTagName("form");
		for (var i=0; i<forms.length; i++)
		{
			if (forms[i].refid)
			{
				forms[i].refid.value = agentId;
			}
		}		
	}
}

function initJavascript()
{
	var cForm = document.initValues;
	last_col = cForm.last_col.value;
}


