function clearDatePicker(strForm, strDatePickName) { eval(strForm + '[\'day' + strDatePickName + '\'].value = \'(day)\';'); eval(strForm + '.month' + strDatePickName + '.selectedIndex = 0;'); eval(strForm + '.year' + strDatePickName + '.value = \'(year)\';'); } function clearDatePicker_preset(strForm, strDatePickName, sDay,sMonth, sYear ) { eval(strForm + '[\'day' + strDatePickName + '\'].value = \'' + sDay + '\';'); eval(strForm + '.month' + strDatePickName + '.selectedIndex = 0;'); eval(strForm + '[\'month' + strDatePickName + '\'].value = \''+ sMonth + '\';'); eval(strForm + '.year' + strDatePickName + '.value = \'(year)\';'); eval(strForm + '.year' + strDatePickName + '.value = \'' + sYear +'\';'); } function clearDatePicker1(strForm, strDatePickName,sMonth, sYear) { eval(strForm + '[\'day' + strDatePickName + '\'].selectedIndex = 0;'); eval(strForm + '[\'month' + strDatePickName + '\'].value = \''+ sMonth + '\';'); // eval(strForm + '.month' + strDatePickName + '.selectedIndex = 0;'); eval(strForm + '.Year' + strDatePickName + '.value = \'' + sYear +'\';'); } function checkDTPonFocus (objDateTime) { if (isNaN(objDateTime.value)) { objDateTime.value = ""; objDateTime.select(); } } function checkDTPonBlur (objDateTime, strDefault, intMinVal, intMaxVal) { if (objDateTime.value.length == 0) { objDateTime.value = strDefault; } } function checkMaxLength (objDateTime, intMaxLen) { if (objDateTime.value.length > intMaxLen) { objDateTime.value = objDateTime.value.slice(0, intMaxLen); } } function getFullDateValueNoValidate (strID, objToSetValue) { var objArray = new Array (null, null, null); var dayVal; var monthVal; // clear the value of the object (probably hidden input) objToSetValue.value = ""; if (initDateObjs (objArray, strID)) { objToSetValue.value = objArray[2].value + "-" + objArray[1].value + "-" + objArray[0].value; } } function getFullDateValue (strID, objToSetValue, blnOptional, strErrorMsg) { var objArray = new Array (null, null, null); var dayVal; var monthVal; // clear the value of the object (probably hidden input) objToSetValue.value = ""; if (initDateObjs (objArray, strID)) { if (!isNaN(objArray[0].value)) { // range check if (!parseInt(objArray[0].value, 10) > 0 && parseInt(objArray[0].value, 10) <= 31) { return (giveFocus (objArray[0], "The valid range for a day value is from 1 to 31.")); } } else if (objArray[0].value != "(day)") { return (giveFocus (objArray[0], "Illegal value has been entered, please rectify...")); } if (!isNaN(objArray[2].value)) { if (objArray[2].value.length != 4) { return (giveFocus (objArray[2], "The year must be 4 digits long.")); } } else if (objArray[2].value != "(year)") { return (giveFocus (objArray[2], "Illegal value has been entered, please rectify...")); } } else { alert("The page did not load up properly, please refresh the page."); return false; } // valid values have been entered. if (!isNaN(objArray[0].value) && (objArray[1].options[objArray[1].selectedIndex].value > 0) && !isNaN(objArray[2].value)) { switch (parseInt(objArray[1].options[objArray[1].selectedIndex].value, 10)) { case 1: case 3: case 5: case 7: case 8: case 10: case 12: if (objArray[0].value > 31) return (checkNumOfDays(objArray[0])); break; case 4: case 6: case 9: case 11: if (objArray[0].value > 30) return (checkNumOfDays(objArray[0])); break; case 2: // leap year check if ((objArray[2].value%4) == 0 || ((objArray[2].value%100) == 0 && (objArray[2].value%400) == 0)) { if (objArray[0].value > 29) return (checkNumOfDays(objArray[0])); } else { if (objArray[0].value > 28) return (checkNumOfDays(objArray[0])); } break; default: return false; break; } if (objArray[0].value.length == 1) dayVal = '0' + objArray[0].value; // make two digit day value else dayVal = objArray[0].value; if (objArray[1].options[objArray[1].selectedIndex].value.length == 1) monthVal = '0' + objArray[1].options[objArray[1].selectedIndex].value; // make two digit month value else monthVal = objArray[1].options[objArray[1].selectedIndex].value; // objToSetValue.value = dayVal + "/" + monthVal + "/" + objArray[2].value; // international date format objToSetValue.value = objArray[2].value + "-" + monthVal + "-" + dayVal; return true; } else { // partial complete test if (!isNaN(objArray[0].value) || (objArray[1].options[objArray[1].selectedIndex].value > 0) || !isNaN(objArray[2].value)) { if (isNaN(objArray[0].value)) { return partialComplete(objArray[0]); } else if (objArray[1].options[objArray[1].selectedIndex].value == 0) { return partialComplete(objArray[1]); } else if (isNaN(objArray[2].value)) { return partialComplete(objArray[2]); } } else { if (!blnOptional) { alert(strErrorMsg); return false; } else { return true; } } } return false; } function getFullTimeValue(strID, objToSetValue, blnOptional, strErrorMsg) { var objArray = new Array (null, null, null); var strOut = ""; // clear the value of the object (probably hidden input) objToSetValue.value = ""; if (initTimeObjs(objArray, strID)) { if (!isNaN(objArray[0].value)) { if (objArray[0].value <= 12 && objArray[0].value > 0) { // am pm thing if (objArray[2].options[objArray[2].selectedIndex].value == 1) { // pm if (objArray[0].value != 12) strOut = parseInt(objArray[0].value, 10) + 12; // make 24 hour time else strOut = "12"; } else { if (objArray[0].value == 12) strOut = "0"; else strOut = objArray[0].value; } } else { return (giveFocus (objArray[0], "The valid range for a hour value is from 1 to 12.")); } } else if (objArray[0].value != "(hh)") { return (giveFocus (objArray[0], "Illegal value has been entered, please rectify...")); } if (!isNaN(objArray[1].value)) { if (parseInt(objArray[1].value, 10) < 60 && parseInt(objArray[1].value, 10) >= 0) { strOut = strOut + ":" + objArray[1].value; } else { return (giveFocus (objArray[1], "The valid range for a minute value is from 0 to 59.")); } } else if (objArray[1].value != "(mm)") { return (giveFocus (objArray[1], "Illegal value has been entered, please rectify...")); } } else { alert("The page did not load up properly, please refresh the page."); return false; } if (!isNaN(objArray[0].value) && !isNaN(objArray[1].value)) { objToSetValue.value = strOut; return true; } else { // valid values have been entered. if (!isNaN(objArray[0].value) || !isNaN(objArray[1].value)) { if (isNaN(objArray[0].value)) { return partialComplete(objArray[0]); } else if (isNaN(objArray[1].value)) { return partialComplete(objArray[1]); } } else { if (!blnOptional) { alert(strErrorMsg); return false; } else { return true; } } } return false; } function initDateObjs (objArr, strID) { var blnOk = false; //var objDoc = (document.all) ? document.all : (document.getElementById) ? document.getElementById : null; if (document.getElementById) { objArr[0] = document.getElementById("idDay" + strID); objArr[1] = document.getElementById("idMonth" + strID); objArr[2] = document.getElementById("idYear" + strID); if (objArr[0] != null && objArr[1] != null && objArr[2] != null) blnOk = true; } else if (document.all) { if ((objArr[0] = document.all("idDay" + strID))) { if ((objArr[1] = document.all("idMonth" + strID))) { if ((objArr[2] = document.all("idYear" + strID))) { blnOk = true; } } } } else { if ((objArr[0] = document.forms[0]["day" + strID])) { if ((objArr[1] = document.forms[0]["month" + strID])) { if ((objArr[2] = document.forms[0]["year" + strID])) { blnOk = true; } } } } return blnOk; } function initTimeObjs (objArr, strID) { var blnOk = false; if (document.all) { if ((objArr[0] = document.all("idHour" + strID))) { if ((objArr[1] = document.all("idMin" + strID))) { if ((objArr[2] = document.all("idAmPm" + strID))) { blnOk = true; } } } } else if (document.getElementById) { if ((objArr[0] = document.getElementById("idHour" + strID))) { if ((objArr[1] = document.getElementById("idMin" + strID))) { if ((objArr[2] = document.getElementById("idAmPm" + strID))) { blnOk = true; } } } } else { if ((objArr[0] = document.forms[0]["hour" + strID])) { if ((objArr[1] = document.forms[0]["min" + strID])) { if ((objArr[2] = document.forms[0]["AmPm" + strID])) { blnOk = true; } } } } return blnOk; } function giveFocus(objRef, strMsg) { alert(strMsg); objRef.focus(); objRef.select(); return false; } function checkNumOfDays(objDay) { alert("The day value exceeds its upper limit."); objDay.focus(); objDay.select(); return false; } function partialComplete (objRef) { alert("You've partially entered a date/time value. Please complete."); objRef.focus(); if (objRef.type == "textbox") { objRef.select(); } return false; } function SetInputAvailability (objInput, blnValue) { objInput.disabled = !blnValue; } function SetDTPAvailability (strID, blnValueToSet, blnTimeField) { var objDateArr = new Array (null, null, null); var objTimeArr; var i = 0; if (initDateObjs (objDateArr, strID)) { for (i = 0; i < objDateArr.length; i++) SetInputAvailability (objDateArr[i], blnValueToSet); } else { alert("Cannot find one or more date objects.\nThis page didn\'t seem to load up properly."); } if (blnTimeField) { objTimeArr = new Array (null, null, null); if (initTimeObjs (objTimeArr, strID)) { for (i = 0; i < objTimeArr.length; i++) SetInputAvailability (objTimeArr[i], blnValueToSet); } else { alert("Cannot find one or more time objects.\nThis page didn\'t seem to load up properly."); } } return true; }