function keyHandler(evt){ var keyCode = evt.which ? evt.which : evt.keyCode; //return keyCode < '0'.charCodeAt() || keyCode > '9'.charCodeAt(); //if(keyCode == 46){alert("46!!")}; //alert(keyCode + " is " + String.fromCharCode(keyCode)); return keyCode == 9; } function validateCal() { error = false; if(error == false) { validateDates(); document.getElementById("f_calcdate").focus(); } } function validateDates() { var monthLength = new Array(31,28,31,30,31,30,31,31,30,31,30,31); var vyear1 = document.getElementById("startYear").value; var vyear2 = document.getElementById("endYear").value; var vmonth1 = document.getElementById("startMonth").value; var vmonth2 = document.getElementById("endMonth").value; var vday1 = document.getElementById("startDay").value; var vday2 = document.getElementById("endDay").value; if (!vday1 || !vmonth1 || !vyear1) return false; if (vyear1/4 == parseInt(vyear1/4)) monthLength[1] = 29; if (vday1 > monthLength[vmonth1-1]) return false; monthLength[1] = 28; var now = new Date(); now = now.getTime(); //NN3 /*var dateToCheck1 = new Date(); dateToCheck1.setYear(vyear1); dateToCheck1.setMonth(vmonth1-1); dateToCheck1.setDate(vday1); var checkDate1 = dateToCheck1.getTime(); var dateToCheck2 = new Date(); dateToCheck2.setYear(vyear2); dateToCheck2.setMonth(vmonth2-1); dateToCheck2.setDate(vday2); var checkDate2 = dateToCheck2.getTime();*/ var checkDate1 = vyear1+vmonth1+vday1; var checkDate2 = vyear2+vmonth2+vday2; var cd1 = (parseInt(checkDate1)); var cd2 = (parseInt(checkDate2)); if(checkDate2 < checkDate1){ error = true; } checkErrorSelect("valid range of dates"); } function validateCalToday(which) { var monthLength = new Array(31,28,31,30,31,30,31,31,30,31,30,31); if(which == "start") { var vyear1 = parseFloat(document.getElementById("startYear").value); var vmonth1 = parseFloat(document.getElementById("startMonth").value); var vday1 = parseFloat(document.getElementById("startDay").value); } if(which == "end") { var vyear1 = parseFloat(document.getElementById("endYear").value); var vmonth1 = parseFloat(document.getElementById("endMonth").value); var vday1 = parseFloat(document.getElementById("endDay").value); } if(which == "hotel") { var vyear1 = parseFloat(document.getElementById("respYear").value); var vmonth1 = parseFloat(document.getElementById("respMonth").value); var vday1 = parseFloat(document.getElementById("respDay").value); } if(which == "group") { var vyear1 = parseFloat(document.getElementById("groupYear").value); var vmonth1 = parseFloat(document.getElementById("groupMonth").value); var vday1 = parseFloat(document.getElementById("groupDay").value); } if (!vday1 || !vmonth1 || !vyear1) return false; if (vyear1/4 == parseInt(vyear1/4)) monthLength[1] = 29; if (vday1 > monthLength[vmonth1-1]) return false; monthLength[1] = 28; var now = new Date(); now = now.getTime(); //NN3 var dateToCheck = new Date(); dateToCheck.setYear(vyear1); dateToCheck.setMonth(vmonth1-1); dateToCheck.setDate(vday1); var checkDate = dateToCheck.getTime(); var futureDate = (now < checkDate); var pastDate = (now > checkDate); if(pastDate == true){ error = true; }else{ error = false; } checkErrorSelect("date that is not in the past"); } function advanceEndDate() { var newDay; var sMonth = document.getElementById("iMonth").value; var sDay = document.getElementById("iDay").value; var sYear = document.getElementById("iYear").value; var eMonth = document.getElementById("eMonth"); var eMonthVal = document.getElementById("eMonth").value; var eDay = document.getElementById("eDay"); var eDayVal = document.getElementById("eDay").value; var eYear = document.getElementById("eYear"); var eYearVal = document.getElementById("eYear").value; var sdropMonth = document.getElementById("iMonth"); var sdropDay = document.getElementById("iDay"); var sdropYear = document.getElementById("iYear"); var validDays = new Array(31,28,31,30,31,30,31,31,30,31,30,31); eDayVal = eval( (parseFloat(sDay)) + 2); eMonthVal = ( (parseFloat(sMonth)) ); if (eDayVal > validDays[sMonth-1]) { eDayVal = eDayVal - validDays[sMonth-1]; eMonthVal = ( (parseFloat(sMonth)) + 1); if (eMonthVal > 12) { eMonthVal = 1; eYearVal = ( (parseFloat(sYear)) + 1); } else { eYearVal = sYear; } } if (eMonth) { for (i=0; i < eMonth.options.length; i++) { // assume field_mo is a select list eMonth.options[i].selected = false; // this clears out the select list - FOR IE 5.2 on MAC if (eMonthVal == eMonth.options[i].value) eMonth.options[i].selected = true; } } if (eDay) { for (i=0; i < eDay.options.length; i++) { // assume field_day is a select list eDay.options[i].selected = false; // this clears out the select list - FOR IE 5.2 on MAC if (eDayVal == eDay.options[i].value) eDay.options[i].selected = true; } } if (eYear) { for (i=0; i < eYear.options.length; i++) { // assume field_year is a select list eYear.options[i].selected = false; // this clears out the select list - FOR IE 5.2 on MAC if (eYearVal == eYear.options[i].value) eYear.options[i].selected = true; } } var openerVal = document.getElementById("CalendarLastBookableDate"); var month = eMonthVal; var bmonth = (month < 10) ? '0'+month : ''+month; var bdate = bmonth + "/" + eDayVal + "/" + eYearVal; //openerVal.value = bdate; //window.opener.document.startdate.CalendarCurrentDate.value = bdate; }