/* Copyright (c) 2005-2007 TeamF1, Inc. All rights reserved. */ function isFieldEmpty (fieldId, alertFlag, errMsg) { var obj = document.getElementById(fieldId); if (!obj || obj.disabled) return false; if (!obj.value.length) { if (alertFlag) alert (errMsg); obj.focus (); return true; } return false; } function txtFieldArrayCheck (txtFieldIdArr) { for (var i = 0; i < txtFieldIdArr.length; ++i) { var result = false; var strArr = txtFieldIdArr[i].split(","); result = isFieldEmpty (strArr[0]); if (result) { if (strArr.length > 1) alert (strArr[1]); return false; } } return true; } function fieldLengthCheck (fieldId, minLen, maxLen, errMsg) { if (!fieldId) return false; var fldObj = document.getElementById(fieldId); if (!fldObj) return false; if (fldObj.disabled) return true; var strVal = fldObj.value; if (minLen && (strVal.length < minLen)) { if (errMsg) alert (errMsg); fldObj.focus (); return false; } if (maxLen && (strVal.length > maxLen)) { if (errMsg) alert (errMsg); fldObj.focus (); return false; } return true; } function fieldValueCompare (fieldId1, fieldId2, minLen, maxLen, errMsg) { if (!fieldId1 || !fieldId2) return false; var fldObj1 = document.getElementById(fieldId1); var fldObj2 = document.getElementById(fieldId2); if (fldObj1.disabled && fldObj2.disabled) return true; var val1 = document.getElementById(fieldId1).value; if (minLen && maxLen) { if (val1.length < minLen || val1.length > maxLen) return false; } var val2 = document.getElementById(fieldId2).value; if (minLen && maxLen) { if (val2.length < minLen || val2.length > maxLen) return false; } if (val1 != val2) { if (errMsg) alert (errMsg); return false; } return true; } function numericValueCheck (eventObj, exceptionCharStr) { var charUniCode = eventObj.charCode ? eventObj.charCode : eventObj.keyCode; /* check for any exceptional characters */ if (exceptionCharStr) { for (i=0; i < exceptionCharStr.length; ++i) if (exceptionCharStr.charCodeAt (i) == charUniCode) return true; } switch (charUniCode) { case 8: /* back space */ case 9: /* tab */ case 16: /* shift */ /* case 37: */ /* left arrow */ /* case 39: */ /* right arrow */ /* case 46: */ /* delete - not supporting as in netscape it's char code is same as '.'*/ return true; default: break; } /* allow back space */ if (charUniCode < 48 || charUniCode > 57) return false; return true; } function numericValueRangeCheck (srcObj, minLen, minLenErrStr, minVal, maxVal, errFlag, prefixErrStr, suffixErrStr) { if (!srcObj || srcObj.disabled) return true; var value = srcObj.value; /* check for minimum length if specified */ if (minLen && (value.length < minLen)) { if (minLenErrStr) alert (minLenErrStr); srcObj.focus (); return false; } if ((minVal && (value < minVal)) || (maxVal && (value > maxVal))) { if (errFlag) { var errStr = ''; if (prefixErrStr) errStr += prefixErrStr; errStr += ' Please enter a value between ' + minVal + " - " + maxVal + " "; if (suffixErrStr) errStr += suffixErrStr; alert (errStr); } srcObj.focus (); return false; } return true; } function numericValueRangeCheck1 (srcObj, minLen, minLenErrStr, minVal, errFlag, prefixErrStr, suffixErrStr) { if (!srcObj || srcObj.disabled) return true; var value = srcObj.value; /* check for minimum length if specified */ if (minLen && (value.length < minLen)) { if (minLenErrStr) alert (minLenErrStr); srcObj.focus (); return false; } if ((minVal && (value < minVal))) { if (errFlag) { var errStr = ''; if (prefixErrStr) errStr += prefixErrStr; errStr += ' Please enter a value not less than ' + minVal + " "; if (suffixErrStr) errStr += suffixErrStr; alert (errStr); } srcObj.focus (); return false; } return true; } function macAddrCheck (eventObj, srcObj) { if (!eventObj || !srcObj) return false; var charUniCode = eventObj.charCode ? eventObj.charCode : eventObj.keyCode; var macAddr = srcObj.value; var maxBytes = (macAddr.split (":")).length; if (maxBytes > 6) return false; macAddr = macAddr.lastIndexOf (":") == -1 ? macAddr : macAddr.substring (macAddr.lastIndexOf (":")+1); if (macAddr.indexOf ("0x") == 0 || macAddr.indexOf ("0X") == 0) checkLen = 4; else checkLen = 2; switch (charUniCode) { case 58: /* : */ if (macAddr.length == 0 || macAddr.length < (checkLen - 1)) return false; if (maxBytes != 6) return true; return false; case 88: /* x */ case 120: /* X */ if (macAddr.length > 1 || macAddr.indexOf ("0") != 0) return false; return true; case 9: /* tab key */ if (maxBytes != 6) return false; case 8: /* back space */ case 37: /* left arrow */ case 39: /* right arrow */ case 46: /* delete */ return true; } if (macAddr.length == checkLen && charUniCode != 58) { if (maxBytes != 6) srcObj.value = srcObj.value + ":"; return false; } /* allow a - f */ if (charUniCode >= 97 && charUniCode <= 102) return true; /* allow A - F */ if (charUniCode >= 65 && charUniCode <= 70) return true; if (charUniCode < 48 || charUniCode > 57) return false; return true; } function macFormatCheck (macAddr, errMsg) { if (!macAddr) return false; var macBytes = macAddr.split (":"); if (macBytes.length != 6 || (macBytes[5].length == 0)) { if (errMsg) alert (errMsg); return false; } return true; } function macAddrVerify (eventObj, srcObj) { if (!eventObj || !srcObj) return false; var charUniCode = eventObj.charCode ? eventObj.charCode : eventObj.keyCode; /* process only 'tab' */ if (eventObj.keyCode != 9) return true; if (!(macFormatCheck (srcObj.value, "invalid MAC address"))) { srcObj.focus (); return false; } return true; } function isProblemChar (eventObj, problemCharStr, errMsg) { var charUniCode = eventObj.charCode ? eventObj.charCode : eventObj.keyCode; /* check for any problematic characters */ if (problemCharStr) { for (i=0; i < problemCharStr.length; ++i) if (problemCharStr.charCodeAt (i) == charUniCode) { if (errMsg) { var errStr1 = "Please enter valid characters for " + errMsg if (problemCharStr.length == 1) { var errStr2 = "\nFollowing character is not supported for this field: " if (charUniCode == 32) /* Space */ alert (errStr1 + errStr2 + "space char"); else alert (errStr1 + errStr2 + String.fromCharCode(charUniCode)); } else { var errStr3 = errStr1 + "\nThe following characters are not supported for this field: " for (i=0; i < problemCharStr.length; ++i) if (problemCharStr.charCodeAt (i) == 32) /* Space */ errStr3 += " space char " else errStr3 += problemCharStr.charAt(i) alert (errStr3); } } return true; } } return false; }