// Open the Dealer Search window function dealerlocator() { window.open ("http://www.multimap.com/clients/browse.cgi?client=honda3","Dealer"); } // Format the Price function formatCurrency(num) { num = num.toString().replace(/\$|\,/g,''); if(isNaN(num)) num = "0"; sign = (num == (num = Math.abs(num))); num = Math.floor(num*100+0.50000000001); num = Math.floor(num/100).toString(); for (var i = 0; i < Math.floor((num.length-(1+i))/3); i++) num = num.substring(0,num.length-(4*i+3))+','+ num.substring(num.length-(4*i+3)); return (((sign)?'':'-') + num); } // Back to last page function goBack() { history.go(-1); } // Trim for string function trim(str) { // left trim while (('' + str.charAt(0)) == ' ') { str = str.substring(1,str.length); } // right trim while (('' + str.charAt(str.length - 1)) == ' ') { str = str.substring(0, str.length - 1) } return str; } // check Number function isNumber(str) { str = trim(str); var bNumber = true; if (str.length == 0) bNumber = false; for (var i=0; i < str.length; i++) { if (((str.charAt(i) < "0") || (str.charAt(i) > "9"))) { bNumber = false; } } return bNumber; } // check Phone number (The length of Phone must be greater than 8) function isPhoneNumber(checkObject) { var str = trim(checkObject.value); var bPhone = true; if (((str.charAt(0) < "0") || (str.charAt(0) > "9")) && (str.charAt(0) != "+")) { bPhone = false; } else { bPhone = isNumber(str.substring(1,str.length)); if ((bPhone) && (str.length < 9)) bPhone = false; } return bPhone; } function isEmail(checkObject) { var str = trim(checkObject.value); if (str == "") return false; var emailPat=/^(.+)@(.+)$/ var specialChars="\\(\\)<>@,;:\\\\\\\"\\.\\[\\]" var validChars="\[^\\s" + specialChars + "\]" var quotedUser="(\"[^\"]*\")" var ipDomainPat=/^\[(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\]$/ var atom=validChars + '+' var word="(" + atom + "|" + quotedUser + ")" var userPat=new RegExp("^" + word + "(\\." + word + ")*$") var domainPat=new RegExp("^" + atom + "(\\." + atom +")*$") var matchArray=str.match(emailPat) if (matchArray==null) { return false; } var user=matchArray[1] var domain=matchArray[2] if (user.match(userPat)==null) { return false; } var IPArray=domain.match(ipDomainPat) if (IPArray!=null) { // this is an IP address for (var i=1;i<=4;i++) { if (IPArray[i]>255) { return false; } } return true; } var domainArray=domain.match(domainPat) if (domainArray==null) { return false; } var atomPat=new RegExp(atom,"g") var domArr=domain.match(atomPat) var len=domArr.length if (domArr[domArr.length-1].length<2 || domArr[domArr.length-1].length>3) { return false; } if (len<2) { return false; } return true; } // UpperCase the first letter function capitaliseFirstLetter(str) { if (str.length > 0) { str = str.charAt(0).toUpperCase() + str.substring(1); } return str; } // Check Date function isDate(checkObject) { var dateValue = checkObject.value; var bInvalid = true; var sDay, sMonth,sYear, n1, n2; n1 = 0;n2 = 0; // The first '/' if (dateValue.substring(2,3)=='/') // dd/... n1 = 2; if (dateValue.substring(1,2)=='/') // d/... n1 = 1; // The second '/' if (dateValue.substring(3,4)=='/') // d/m/... n2 = 3; if (dateValue.substring(4,5)=='/') // dd/m/... or d/mm/... n2 = 4; if (dateValue.substring(5,6)=='/') // dd/mm/... n2 = 5; if (n1==0 || n2==0) bInvalid = false; if (bInvalid) { // day sDay = dateValue.substring(0, n1); if (sDay.length == 1) sDay = "0" + sDay; nDay = parseInt(sDay, 10); // month sMonth = dateValue.substring(n1+1, n2); if (sMonth.length == 1) sMonth = "0" + sMonth; nMonth = parseInt(sMonth, 10); // year sYear = dateValue.substring(n2+1, dateValue.length); if (sYear.length == 2) sYear = "20" + sYear; nYear = parseInt(sYear, 10); if (isNaN(nDay) || isNaN(nMonth) || isNaN(nYear)) bInvalid = false; // check value of day if ((nDay<1 ||nDay>31|| isNaN(sDay) || sDay.indexOf('.') !=-1) ) bInvalid = false; // check value of month if ((nMonth<1 || nMonth>12 || isNaN(sMonth) || sMonth.indexOf('.') !=-1) ) bInvalid = false; // check value of year if (sYear.length != 4) bInvalid = false; if (nYear<1900 || nYear>9999|| isNaN(sYear) || sYear.indexOf('.') !=-1) bInvalid = false; //whatever years acceptable can be put here if (nMonth==4 || nMonth==6 || nMonth==9 || nMonth==11) { if (nDay==31) bInvalid = false; } if (nMonth==2) { var g=parseInt(nYear/4, 10); if (isNaN(g)) { bInvalid = false; } if (nDay>29) bInvalid = false; if (nDay==29 && (((nYear/4)!=parseInt(nYear/4, 10)) || ((nYear/400)!= parseInt(nYear/400, 10)))) bInvalid = false; } if (bInvalid) { // set valid value for date checkObject.value = sDay + "/" + sMonth + "/" + sYear; } } return bInvalid; } // Check Blank function isBlank(checkObject) { var str = trim(checkObject.value); var bBlank = false; if (str.length == 0) { bBlank = true; } return bBlank; } // Reset all function resetAll() { for (var i=0; i < document.forms[0].elements.length; i++) { resetElement(document.forms[0].elements[i]) } for (var i=0; i < document.forms[0].elements.length; i++) { if (document.forms[0].elements[i].type != "hidden") document.forms[0].elements[i].focus(); return; } } function resetElement(anElement) { switch(anElement.type) { case "radio": case "checkbox": anElement.checked = false; break; case "select-one": case "select-multiple": anElement.selectedIndex = 0; break; case "hidden": case "button": case "file": case "submit": return; //Ignore default: anElement.value = ""; } //end switch } //end function // Alert function doAlert(obj,strMessage) { alert(strMessage); obj.focus(); if (obj.type == "text") obj.select(); }