itemOver=function(C,D,B){if(editMode){return }if(C){C.cancelBubble=true;if(C.stopPropagation){C.stopPropagation();C.preventDefault()}}window.status=(B)?B:"";var A=Navigation.getItem(D);if(!A){return }if((A.getLevel()==0)&&window.hideMenuListener){hideMenuListener(C)}if(!A.isOn()){A.over()}if(A.isSection()){if(window.setHideMenuListener){setHideMenuListener()}Navigation.setDisplayedSectionId(D);A.showMenu()}};clearHideMenuListener=function(){document.body.onmouseover=null};setHideMenuListener=function(){document.body.onmouseover=new Function("hideMenuListener(window.event);")};itemOut=function(B,C){if(B){B.cancelBubble=true;if(B.stopPropagation){B.stopPropagation();B.preventDefault()}}window.status="";var A=Navigation.getItem(C);if(!A){return }if(!A.isOn()&&(Navigation.getDisplayedSectionId()!=A.getId())){A.out()}};hideMenuListener=function(C){if(C){C.cancelBubble=true;if(C.stopPropagation){C.stopPropagation();C.preventDefault()}}if(window.clearHideMenuListener){clearHideMenuListener()}var A=(Navigation.getDisplayedSectionId())?Navigation.getDisplayedSectionId():((Navigation.getSelectedIdAt(0)&&Navigation.getItem(Navigation.getSelectedIdAt(0)).isSection())?Navigation.getSelectedIdAt(0):null);var B=Navigation.getItem(A);if(!B||!B.isSection()){return }B.hideMenu();if(!B.isOn()){B.out()}Navigation.setDisplayedSectionId(null)};var _VALIDATION_ISLOADED=true;var _VALIDATION_SPECIALCHARS="\"\\`\\'\\~\\^\\$\\@\\#\\&\\|\\!\\_\\;\\:\\,\\.\\?\\<\\>\\(\\)\\[\\]\\{\\}\\+\\*\\-\\/\\\\%\\=";var _VALIDATION_SPECIALCHARS_WITHOUT_HYPHEN="\"\\`\\'\\~\\^\\$\\@\\#\\&\\|\\!\\_\\;\\:\\.\\?\\<\\>\\(\\)\\[\\]\\{\\}\\+\\*\\/\\\\%\\=";var _VALIDATION_NUMERIC="0-9";var _VALIDATION_HEXA=/[^a-f0-9]/i;var _VALIDATION_ALPHA="^0-9"+_VALIDATION_SPECIALCHARS+"";var _VALIDATION_ALPHANUMERIC="^"+_VALIDATION_SPECIALCHARS+"";var _VALIDATION_ALPHANUMERIC_WITH_HYPHEN="^"+_VALIDATION_SPECIALCHARS_WITHOUT_HYPHEN+"";var _VALIDATION_BLANKCHARS="\\s";var _VALIDATION_ALPHANUMERIC_WITHOUT_BLANKCHARS=_VALIDATION_ALPHANUMERIC+_VALIDATION_BLANKCHARS;var _VALIDATION_ADDRESS=new RegExp("^(["+_VALIDATION_ALPHANUMERIC+"]|[\\#\\,\\-\\.\\' ])*$");var _VALIDATION_VENDOR=new RegExp("^(["+_VALIDATION_ALPHANUMERIC+"]|[\\_\\.\\s])*$");var _VALIDATION_MONEY=new RegExp("^["+_VALIDATION_NUMERIC+"\\$\\,]*\\.?["+_VALIDATION_NUMERIC+"]*$");var _VALIDATION_CITY=new RegExp("^(["+_VALIDATION_ALPHA+"]|[\\- \\.\\'])*$");var _VALIDATION_ODOMETER=new RegExp("^["+_VALIDATION_NUMERIC+"\\,]*$");var _VALIDATION_LATLONG=new RegExp("^["+_VALIDATION_NUMERIC+"\\.\\-]*$");var _VALIDATION_CREDITCARDNUMBER=new RegExp("^["+_VALIDATION_NUMERIC+"\\- ]*$");var _VALIDATION_TRACKINGFIELDS=new RegExp("^((.*(\\/|\\\\))?([^"+_VALIDATION_SPECIALCHARS+" ]|[\\.\\_]){1,250})?$");var _VALIDATION_ASSETNAME=new RegExp("^((.*(\\/|\\\\))?([^"+_VALIDATION_SPECIALCHARS+" ]|[\\.\\_]){1,80})?$");var _VALIDATION_LIBRARYNAME=new RegExp("^([^"+_VALIDATION_SPECIALCHARS+"]|[ \\-\\_])*$");var _VALIDATION_DATE_ORDER=["m","d","y"];var _VALIDATION_DATE_MAP={"01":"31","02":"28","03":"31","04":"30","05":"31","06":"30","07":"31","08":"31","09":"30","10":"31","11":"30","12":"31"};var _VALIDATION_DATE_DL="/";var _VALIDATION_DATE_THIRTYONEDAYS="((0[1-9])|([12][0-9])|(3[01]))";var _VALIDATION_DATE_THIRTYDAYS="((0[1-9])|([12][0-9])|(30))";var _VALIDATION_DATE_TWENTYEIGHTDAYS="((0[1-9])|(1[0-9])|(2[0-8]))";var _VALIDATION_DATE_TWENTYNINEDAYS="((0[1-9])|(1[0-9])|(2[0-9]))";var _VALIDATION_DATE_THIRTYONEDAYMONTHS="((0[13578])|(1[02]))";var _VALIDATION_DATE_THIRTYDAYMONTHS="((0[469])|(11))";var _VALIDATION_DATE_FEBRUARY="(02)";var _VALIDATION_DATE_ALLYEARS="(((19)|(20))[0-9]{2})";var _VALIDATION_DATE_LEAPYEARS="(((19)|(20))(([02468][048])|([13579][26])))";var _VALIDATION_DATE_NOTLEAPYEARS="(((19)|(20))(([02468][^048])|([13579][^26])))";var _VALIDATION_DATE=new RegExp("^(((("+_VALIDATION_DATE_THIRTYONEDAYMONTHS+_VALIDATION_DATE_DL+_VALIDATION_DATE_THIRTYONEDAYS+")|("+_VALIDATION_DATE_THIRTYDAYMONTHS+_VALIDATION_DATE_DL+_VALIDATION_DATE_THIRTYDAYS+"))"+_VALIDATION_DATE_DL+_VALIDATION_DATE_ALLYEARS+")|("+_VALIDATION_DATE_FEBRUARY+_VALIDATION_DATE_DL+"(("+_VALIDATION_DATE_TWENTYEIGHTDAYS+_VALIDATION_DATE_DL+_VALIDATION_DATE_NOTLEAPYEARS+")|("+_VALIDATION_DATE_TWENTYNINEDAYS+_VALIDATION_DATE_DL+_VALIDATION_DATE_LEAPYEARS+"))))?$");var _VALIDATION_EMAIL=/^[a-z0-9!#$%&\'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&\'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i;var _VALIDATION_PROTOCOL=new RegExp("^((?:["+_VALIDATION_ALPHA+"]+:\\/?\\/?)|#)(.*)$","i");var _VALIDATION_URL=new RegExp("^((["+_VALIDATION_ALPHA+']+:\\/?\\/?)?([^":]+))?$',"i");var _VALIDATION_PHONEFAX=new RegExp("^(\\(?[A-Z"+_VALIDATION_NUMERIC+"]{3}\\)?[\\. -]?[A-Z"+_VALIDATION_NUMERIC+"]{3}[\\. -]?[A-Z"+_VALIDATION_NUMERIC+"]{4})?$");var _VALIDATION_NUMERIC_PHONEFAX=new RegExp("^(\\(?["+_VALIDATION_NUMERIC+"]{3}\\)?[\\. -]?["+_VALIDATION_NUMERIC+"]{3}[\\. -]?["+_VALIDATION_NUMERIC+"]{4})?$");var _VALIDATION_ZIP=new RegExp("^(["+_VALIDATION_NUMERIC+"]{5}((-| )["+_VALIDATION_NUMERIC+"]{4})?)?$");var _VALIDATION_SSN=new RegExp("^(["+_VALIDATION_NUMERIC+"]{3}-["+_VALIDATION_NUMERIC+"]{2}-["+_VALIDATION_NUMERIC+"]{4})?$");var _VALIDATION_NAME='^0-9"\\`\\~\\^\\$\\@\\#\\&\\|\\!\\_\\;\\:\\,\\.\\?\\<\\>\\(\\)\\[\\]\\{\\}\\+\\*\\-\\/\\\\%\\=';var _VALIDATION_ZIP_LENGTH=5;var _VALIDATION_FORMATERROR_ADDRESS="Enter address";var _VALIDATION_FORMATERROR_CITY="Enter city";var _VALIDATION_FORMATERROR_EMAIL="Enter valid email address";var _VALIDATION_FORMATERROR_NUMERIC_PHONEFAX="Enter phone number, (123) 456 7890 format";var _VALIDATION_FORMATERROR_ZIP="Enter zip code, numbers only";var _VALIDATION_FORMATERROR_ODOMETER="Enter valid miles";var _VALIDATION_FORMATERROR_YEAR="Enter valid year";var ALL_YEARS="All Years";var ALL_LOCATIONS="All Locations";var ALL_MAKES="All Makes";var ALL_MODELS="All Models";var ALL_TRIMS="All Trims";var ALL_TYPES="All Types";var ANY="Any";var BROWSE_INVENTORY="Browse Inventory";var BOOKMARK_ERROR_MSG="Press <Ctrl>+D to bookmark";var CERTIFIED="Certified";var CONFIRM_FORM_RESET="Are you sure you want to reset this form?";var CONTACT_US="Contact Us";var DGP_MILES="miles";var EMAIL_A_FRIEND_VERSION_TOOLTIP="Email a friend";var EMAILAFRIEND_IS_UNAVAILABLE="Email a Friend is not available";var ENTER_ZIP="Enter Zip";var ERROR_CODE="Error code";var ERRORMESSAGE_BAD_REQUEST="A directions request could not be successfully parsed.";var ERRORMESSAGE_CAPTCHA_VERIFICATION="The keyword text you entered did not match the image displayed. Please try entering the text again.";var ERRORMESSAGE_DOWNPAYMENTTOOLARGE="The Down Payment is larger than the Purchase Price.";var ERRORMESSAGE_EMAIL_FORM="Our system was unable to process your request. Please verify that all email addresses are entered correctly, and try again. If the problem persists, please try again at a later time.";var ERRORMESSAGE_ENTER_REQUIRED_DATA="Please enter valid information in the highlighted required field(s) and resend your request.";var ERRORMESSAGE_ENTER_REQUIRED_DATA_BACK_GMCL="\nIf you've already entered information, be sure to check your spelling.";var ERRORMESSAGE_ENTER_REQUIRED_DATA_EMAIL_GMCL="Information appears to be misspelled or inaccurate.\nPlease verify the spelling and accuracy of the information in the following areas: ";var ERRORMESSAGE_ENTER_REQUIRED_DATA_FRONT_GMCL="Information appears to be missing.\nPlease enter information in the following areas: ";var ERRORMESSAGE_ENTER_VALID_DATA="The information entered is invalid for the highlighted fields.  Please enter valid information and resend your request. ";var ERRORMESSAGE_GET_DIRECTIONS="Please complete the fields highlighted below.";var ERRORMESSAGE_INVALID_KEY="The given key is either invalid or does not match the domain for which it was given.";var ERRORMESSAGE_INVALID_RADIUS="Please select a default radius in [#] before saving.";var ERRORMESSAGE_LOCATION_NOT_FOUND="No corresponding geographic location could be found for one of the specified addresses. This may be due to the fact that the address is relatively new, or it may be incorrect.";var ERRORMESSAGE_NOT_PROCESSED="A geocoding or directions request could not be successfully processed, yet the exact reason for the failure is not known.";var ERRORMESSAGE_NO_NEAREST_DEALER="There are no dealers in the ZIP code + distance you selected.  Here are the closest dealers";var ERRORMESSAGE_PARAMETER_MISSING="The HTTP q parameter was either missing or had no value. For geocoder requests, this means that an empty address was specified as input. For directions requests, this means that no query was specified in the input.";var ERRORMESSAGE_UNKNOWN_DIRECTIONS="The GDirections object could not compute directions between the points mentioned in the query. This is usually because there is no route available between the two points, or because we do not have data for routing in that region.";var ERRORMESSAGE_UNAVAILABLE_ADDRESS="The geocode for the given address or the route for the given directions query cannot be returned due to legal or contractual reasons.";var ERRORMESSAGE_UNKNOWN_ERROR="An unknown error occurred.";var FACEBOOK_TOOLTIP="Share page on Facebook";var FAVORITES_TOOLTIP="Bookmark as favorite";var FLASH_UPDATE_MESSAGE='<strong>This content requires a more recent version of the Macromedia Flash Player. You may have to restart your browser after downloading the new version.<br><br></strong><a href="http://www.adobe.com/products/flashplayer/" target="_new">Click here to upgrade your Flash Player.</a>';var GET_A_QUOTE="Get a Quote";var GET_DIRECTIONS="Get Directions";var INVALID_FROM_ADDRESS="Please enter a valid From address";var INVALID_ZIP_CODE=" is an invalid zip code. Please enter a valid zip code";var INVENTORY="Inventory";var LEADFORM_FIELDSET_HIDEOPTIONAL="Click here to hide optional form fields";var LEADFORM_FIELDSET_SHOWOPTIONAL="Click here to show optional form fields";var MILES=" miles";var NEW="New";var NO_INVENTORY_AVAILABLE="No Inventory Available";var NON_CERTIFIED="Non-Certified";var PREOWNED="Used";var PRINTER_FRIENDLY_VERSION_TOOLTIP="Print page";var SALES="Sales";var SCHEDULE_SERVICE="Schedule Service";var SELECT_ONE="Select One";var SERVICE="Service";var SHOW_LOCATION="Show Location";var UP_TO="Up to ";var USED="Used";var VIEW="View";var WEBSITE="Website";var SELECTED="Selected";var TWITTER_TOOLTIP="Share page on Twitter";var LINK_HOME="Home Page";var LINK_INVENTORY="Search Inventory";var LINK_SPECIALS="View Specials";var LINK_SERVICE="Schedule Service";var VIDEO_CONTENT_NOT_AVAILABLE="Video content not available";var i18nLabels={getYears:function(){return(i18nLabels.year||ALL_YEARS)},getLocation:function(){return(i18nLabels.location||ALL_LOCATIONS)},getMake:function(){return(i18nLabels.make||ALL_MAKES)},getModel:function(){return(i18nLabels.model||ALL_MODELS)},getSearchType:function(){return(i18nLabels.searchType||ALL_TYPES)},getType:function(){return(i18nLabels.searchType||ALL_TYPES)},getTrim:function(){return(i18nLabels.trim||ALL_TRIMS)},setYears:function(A){i18nLabels.year=A},setLocation:function(A){i18nLabels.location=A},setMake:function(A){i18nLabels.make=A},setModel:function(A){i18nLabels.model=A},setSearchType:function(A){i18nLabels.searchType=A},setType:function(A){i18nLabels.searchType=A},setTrim:function(A){i18nLabels.trim=A}};var payCalc={getFormattedPrice:function(C,B){if(arguments.length==1){var B=0}var A="$"+getFormattedNumber(C,B);return A}};function getFormattedNumber(D,H){if(arguments.length==1){var H=0}numPieces=new String(D).split(".");var B=numPieces[0];var F="";var A=-1;for(var E=B.length-1;E>=0;E--){if((++A%3==0)&&(A>0)){F=","+F}F=B.charAt(E)+F}if(H>0){var G=(numPieces.length>1)?numPieces[1]:"";if(G.length<H){for(var C=G.length;C<=H;C++){G=G+"0"}}truncatedFraction=G.substring(0,H);F+="."+truncatedFraction}return F}var ERROR_SELECTMAKEMODEL="Please select a vehicle make and model.";var FORM_PREOWNED="Pre-Owned";var FORM_CERTIFIED="Certified pre-owned";function showmilesWithComma(C,B){var C=C.toString();var A=new RegExp("(-?[0-9]+)([0-9]{3})");while(A.test(C)){C=C.replace(A,"$1,$2")}jQuery(B).val(C)};handleException=function(A){if(A instanceof CobaltError){A.handleException()}else{throw A}};function CobaltError(){this.titleKey="INCORRECT.INFORMATION";this.messageKeys=["ERRORMESSAGE.INCORRECT.DATA"]}CobaltError.prototype.handleException=function(){};FormUtility={HIGHLIGHT_COLOR:"#FFFF66",LABEL_COLOR:"#FF0000",highlightedFields:[],initializedFieldVOs:{},sections:{},changeFieldsColor:function(D,B){var A,F;for(var E=0;E<D.length;E++){var A=D[E];if(!A){break}currType=A.type;if((currType!="button")&&(currType!="submit")&&(currType!="reset")&&(currType!="hidden")){if(!A.length||currType=="select-one"){A.style.backgroundColor=B}else{for(var C=0;C<A.length;C++){A[C].style.backgroundColor=B}}}}},changeLabelColor:function(D,B){var A,F;for(var E=0;E<D.length;E++){var A=D[E];if(!A){break}currType=A.type;labelId=A.name+"_label";if((currType!="button")&&(currType!="submit")&&(currType!="reset")&&(currType!="hidden")){if(!A.length||currType=="select-one"){document.getElementById(labelId).style.color=B}else{for(var C=0;C<A.length;C++){A[C].style.backgroundColor=B}}}}},getBadlyFormatted:function(F){var C=FormUtility.getFormattedFields(F);var A=[];for(var G in C){var E=C[G];var B=FormUtility.getFormatRule(E);var D=(E.length&&!E.name)?E[0].className:E.className;if((D.indexOf("disabled")==-1)&&(!B||!B(E.value))){A.push(E)}}return A},getFormattedFields:function(A){if(!A){return{}}if(!FormUtility.sections[A.id]){FormUtility.registerFields(A)}return FormUtility.sections[A.id]["formatted"]},getFormatRule:function(C){var B=FormUtility.getFieldVO(C).getFormatRule().split(".");var D=window;for(var A=0;A<B.length;A++){if(D[B[A]]){D=D[B[A]]}else{return null}}return D},getFieldsByTagName:function(E,C){var A=E.getElementsByTagName(C);var D=[];for(var B=0;B<A.length;B++){D.push(A[B])}return D},getFieldVO:function(C){if(!FormUtility.initializedFieldVOs[C.name]){var B=C.form;var A=(B[C.name]==C)?new FormFieldVO(C):new GroupFormFieldVO(B[C.name]);FormUtility.initializedFieldVOs[C.name]=A}return FormUtility.initializedFieldVOs[C.name]},getMissingRequired:function(E){var B=FormUtility.getRequiredFields(E);var A=[];for(var F in B){var D=B[F];var C=(D.length&&!D.name)?D[0].className:D.className;if((C.indexOf("disabled")==-1)&&!isCompleted(D)){A.push(D)}}return A},getLengthRequired:function(E){var C=FormUtility.getRequiredFields(E);var A=[];for(var F in C){var D=C[F];var B=D.value.split(",");if(B.length>500){A.push(D)}}return A},getRequiredFields:function(A){if(!A){return{}}if(!FormUtility.sections[A.id]){FormUtility.registerFields(A)}return FormUtility.sections[A.id]["required"]},highlightFields:function(A){FormUtility.changeFieldsColor(A,FormUtility.HIGHLIGHT_COLOR);FormUtility.highlightedFields=A},addFieldGroupErrorClass:function(B){var A,D;for(var C=0;C<B.length;C++){var A=B[C];if(!A){break}currType=A.type;if((currType!="button")&&(currType!="submit")&&(currType!="reset")&&(currType!="hidden")){jQuery(A).parent().find("span.required").addClass("fieldGroupError")}}},removeFieldGroupErrorClass:function(B){if(!B){var B=FormUtility.highlightedFields}var A,D;for(var C=0;C<B.length;C++){var A=B[C];if(!A){break}currType=A.type;if((currType!="button")&&(currType!="submit")&&(currType!="reset")&&(currType!="hidden")){jQuery(A).parent().find("span.required").removeClass("fieldGroupError")}}},colorLabels:function(A){FormUtility.changeLabelColor(A,FormUtility.LABEL_COLOR);FormUtility.highlightedFields=A},registerFields:function(C){if(C.tagName.toLowerCase()=="form"){var D=C.elements}else{var D=FormUtility.getFieldsByTagName(C,"input");D=D.concat(FormUtility.getFieldsByTagName(C,"textarea"));D=D.concat(FormUtility.getFieldsByTagName(C,"select"))}FormUtility.sections[C.id]={};FormUtility.sections[C.id]["formatted"]={};FormUtility.sections[C.id]["required"]={};for(var A=0;A<D.length;A++){if(!D[A].name){continue}var B=FormUtility.getFieldVO(D[A]);if(!FormUtility.sections[C.id]["formatted"][D[A].name]&&B.getFormatRule()){FormUtility.sections[C.id]["formatted"][D[A].name]=B.getField()}if(!FormUtility.sections[C.id]["required"][D[A].name]&&B.isRequired()){FormUtility.sections[C.id]["required"][D[A].name]=B.getField()}}},resetErrors:function(C,A){FormUtility.unHighlightFields();if(A=="label"||A=="both"){FormUtility.unHighlightLabels()}if(A=="class"){FormUtility.removeFieldGroupErrorClass()}FormUtility.highlightedFields=[];if(!C){return }for(var B=0;B<C.length;B++){if(C[B]&&C[B].style){C[B].style.display="none"}}},unHighlightFields:function(A){if(!A){var A=FormUtility.highlightedFields}FormUtility.changeFieldsColor(A,"")},unHighlightLabels:function(A){if(!A){var A=FormUtility.highlightedFields}FormUtility.changeLabelColor(A,"000000")}};FormFieldVO=function(A){this.classType="FormFieldVO";this.field=A;return this};FormFieldVO.prototype.getField=function(){return this.field};FormFieldVO.prototype.getFormatRule=function(){return(this.field.getAttribute("formatRule")||null)};FormFieldVO.prototype.getGroup=function(){var A=this.field.form[this.getName()];return A};FormFieldVO.prototype.isRequired=function(){return((this.field.getAttribute("required")=="")||(this.field.getAttribute("required")=="true"))?true:false};FormFieldVO.prototype.toString=function(){return this.classType+": "+this.field.name+"; required: "+this.isRequired()+"; formatRule: "+this.getFormatRule()};GroupFormFieldVO=function(A){this.classType="GroupFormFieldVO";this.groupField=A;this.fieldVOs=[];for(var B=0;B<this.groupField.length;B++){this.fieldVOs.push(new FormFieldVO(this.groupField[B]))}return this};GroupFormFieldVO.prototype.getField=function(A){return this.groupField};GroupFormFieldVO.prototype.getFieldVOs=function(A){return this.fieldVOs};GroupFormFieldVO.prototype.getFormatRule=function(){return(this.groupField[0].getAttribute("formatRule")||null)};GroupFormFieldVO.prototype.isRequired=function(){return((this.groupField[0].getAttribute("required")=="")||(this.groupField[0].getAttribute("required")=="true"))?true:false};GroupFormFieldVO.prototype.toString=function(){return this.classType+": "+this.getField()[0].name+"; required: "+this.isRequired()+"; formatRule: "+this.getFormatRule()};function isNumeric(B){var A=new RegExp("^["+_VALIDATION_NUMERIC+"]*$");return A.test(B)}function isPercentage(A){var B=/(^(100(?:\.0{1,2})?))|^\d{1,2}(\.\d{1,2})?$/;return B.test(A)}function isAlpha(B){var A=new RegExp("^["+_VALIDATION_ALPHA+"]*$");return A.test(B)}function isHexaDecimal(A){return(!_VALIDATION_HEXA.test(A))}function isName(B){var A=new RegExp("^["+_VALIDATION_NAME+"]*$");return A.test(B)}function isAlphaNumeric(B){var A=new RegExp("^["+_VALIDATION_ALPHANUMERIC+"]*$");return A.test(B)}function isStockOrVIN(B){var A=new RegExp("^["+_VALIDATION_ALPHANUMERIC_WITHOUT_BLANKCHARS+"]*$");return A.test(B)}function isWebID(B){var A=new RegExp("^["+_VALIDATION_ALPHANUMERIC_WITH_HYPHEN+"]*$");return A.test(B)}function hasNoQuotes(A){return hasNoCustom(A,'"')}function hasNoHTML(A){return hasNoCustom(A,'"<>')}function hasNoCustom(C,B){if(!B){return true}var A=new RegExp("^[^"+B+"]*$");return A.test(C)}function isAssetName(A){return _VALIDATION_ASSETNAME.test(A)}function isLibraryName(A){return _VALIDATION_LIBRARYNAME.test(A)}function isEmail(A){return _VALIDATION_EMAIL.test(A)}function isAbsoluteUrl(B){var A=/^[a-z]+:(\/\/)?/i;return A.test(B)}function isSitePageUrl(A){return(A.indexOf(".")==-1)?true:false}function isPhoneFax(A){return _VALIDATION_PHONEFAX.test(A)}function isNumericPhoneFax(A){return _VALIDATION_NUMERIC_PHONEFAX.test(A)}function isZip(A){return _VALIDATION_ZIP.test(A)}var strGlobalDate=null;function isFreeformDate(A){strGlobalDate=A;return _VALIDATION_DATE.test(A)}function isValidEndDate(A){convertedGlobalDate=new Date(strGlobalDate);convertedGlobalDate=convertedGlobalDate.toLocaleDateString();localizedGlobalDate=new Date(convertedGlobalDate);startDateMilliseconds=localizedGlobalDate.getTime();endDate=new Date(A);endDate=endDate.toLocaleDateString();localizedEndDate=new Date(endDate);endDateMilliseconds=localizedEndDate.getTime();if(startDateMilliseconds>endDateMilliseconds){return false}if(isFreeformDate(A)){return true}}function isYear(B){var A=new RegExp("^"+_VALIDATION_DATE_ALLYEARS+"?$");return A.test(B)}function isAddress(A){return _VALIDATION_ADDRESS.test(A)}function isMoney(A){return _VALIDATION_MONEY.test(A)}function isCity(A){return _VALIDATION_CITY.test(A)}function isOdometer(A){return _VALIDATION_ODOMETER.test(A)}function isLatLong(A){return _VALIDATION_LATLONG.test(A)}function isCCNumber(A){return _VALIDATION_CREDITCARDNUMBER.test(A)}function isSSNumber(A){return _VALIDATION_SSN.test(A)}function isTrackingVendor(A){return _VALIDATION_VENDOR.test(A)}function isTrackingFields(A){return _VALIDATION_TRACKINGFIELDS.test(A)}function isCompleted(A){if(!A.type&&A.length&&A.className){return isSelected(A)}switch(A.type){case"text":case"textfield":case"textarea":case"password":case"file":case"hidden":return(isEmpty(A.value))?false:true;case"checkbox":case"radio":return(isChecked(A))?true:false;case"select-one":return(!isEmpty(A.value))?true:false;case"select-multiple":return(A.options.length)?true:false;default:return true}}function isEmpty(B){if(B==""){return true}var A=new RegExp("^["+_VALIDATION_BLANKCHARS+"]*$");return A.test(B)}function isSelected(C,A){if(arguments.length==1){var A=""}var B=getSelected(C);if(!B||(B.value==null)){return false}else{return(B.value!=A)}}function isChecked(A){return(getSelected(A))?true:false}function checkMaxLength(C,B){var A=parseInt(B.getAttribute("maxlength"));if((C.keyCode<48)&&(C.keyCode!=32)){return true}if(B.value.length==A){return false}if(B.value.length>A){B.value=B.value.substring(0,A);return false}return true}function getSelected(F){if(F.type=="select-one"){var E=F.selectedIndex;if(E>=0){return{index:E,value:F.options[E].value}}}if(F.length){var D=(F[0].type=="checkbox")?true:false;var A=new Array();var B=new Array();for(var C=0;C<F.length;C++){if(F[C].checked&&!D){return{index:C,value:F[C].value}}if(F[C].checked&&D){A[A.length]=F[C].value;B[B.length]=C}}if(D){if(B.length){return{index:B,value:A}}else{return{index:null,value:null}}}}else{if(F.checked){return{index:0,value:F.value}}}return false}function setSelected(D,E){var C=(D.type=="select-one")?D.options:D;var B=(D.type=="select-one")?"selected":"checked";if(arguments.length==1){D[0][B]=true}else{if(C.length){for(var A=0;A<C.length;A++){if(C[A].value==E){C[A][B]=true;break}}}else{if(C.value==E){C[B]=true}else{C[B]=false}}}}function setDisabledStatus(A,B){if(B.disabled){return }if(B.value!=undefined){if(!B.getAttribute("currentValue")||!A){B.setAttribute("currentValue",B.value)}B.value=(A)?B.getAttribute("currentValue"):""}B.className=(A)?"":"disabled";B.onfocus=(A)?null:function(){emulateDisabled(this)}}String.prototype.capitalize=function(){return this.replace(/^([a-z])/,function(A){return A.toUpperCase()})};function deployFreeformDate(someForm,dateFieldHash){var freeformDateRE=new RegExp("^([0-9]{2})"+_VALIDATION_DATE_DL+"([0-9]{2})"+_VALIDATION_DATE_DL+"([0-9]{4})$");for(var freeformField in dateFieldHash){if(!someForm[freeformField]){return }freeformDateRE.exec(someForm[freeformField].value);for(var i=0;i<_VALIDATION_DATE_ORDER.length;i++){if(someForm[dateFieldHash[freeformField][_VALIDATION_DATE_ORDER[i]]]){someForm[dateFieldHash[freeformField][_VALIDATION_DATE_ORDER[i]]].value=eval("RegExp.$"+(i+1))}}}};function FormValidationError(B,C,A,D){this.fieldList=B;if(C){this.message=C}if(A){this.errorMsgId=A}if(D){this.errorType=D}}FormValidationError.prototype=new CobaltError;FormValidationError.prototype.executeStandardActions=function(){if(this.errorType=="label"){FormUtility.colorLabels(this.fieldList)}else{if(this.errorType=="both"){FormUtility.colorLabels(this.fieldList);FormUtility.highlightFields(this.fieldList)}else{if(this.errorType=="class"){FormUtility.changeFieldsColor(this.fieldList,"fdd9db");FormUtility.addFieldGroupErrorClass(this.fieldList);FormUtility.highlightedFields=this.fieldList}else{FormUtility.highlightFields(this.fieldList)}}}if(this.errorMsgId){document.getElementById(this.errorMsgId).style.display="block";document.getElementById(this.errorMsgId).innerHTML=this.message;if(typeof handleResize!="undefined"){handleResize()}return false}else{alert(this.message)}};FormValidationError.prototype.handleException=function(){this.executeStandardActions()};function MissingRequiredError(B,A,C){this.superClass(B,ERRORMESSAGE_ENTER_REQUIRED_DATA,A,C)}MissingRequiredError.prototype=new FormValidationError;MissingRequiredError.prototype.superClass=FormValidationError;function BadFormatError(B,A,C){this.superClass(B,ERRORMESSAGE_ENTER_REQUIRED_DATA,A,C)}BadFormatError.prototype=new FormValidationError;BadFormatError.prototype.superClass=FormValidationError;var ALL_VALUE="";var ALL_VALUES_RE=/^(All||Any)?$/i;var SEARCHTYPE_NAME="search";var SEARCHTYPE_ROW="qsSearchType";var LOCATION_NAME="location";var LOCATION_ROW="qsLocation";var MAKE_NAME="make";var MAKE_ROW="qsMake";var MODEL_NAME="model";var MODEL_ROW="qsModel";var TRIM_NAME="trim";var TRIM_ROW="qsTrim";var VEHICLETYPE_NAME="bodyType";var VEHICLETYPE_ROW="qsbodyType";var CHAINED_FIELDS=[LOCATION_NAME,VEHICLETYPE_NAME,MAKE_NAME,MODEL_NAME,TRIM_NAME];var allFieldsQS=null;var criteriaList=null;var isCIREnabled=false;QuickSearchConfig={defaultSearchType:"new",focusOnSubmit:true,locationLabel:ALL_LOCATIONS,makeLabel:ALL_MAKES,modelLabel:ALL_MODELS,optionAllSearchTypes:false,searchTypeLabel:ALL_TYPES,nullSearchTypes:true,trimLabel:ALL_TRIMS,displayOptionAllSearchTypes:function(){return QuickSearchConfig.optionAllSearchTypes},displayNullSearchTypes:function(){return QuickSearchConfig.nullSearchTypes},doFocusOnSubmit:function(){return QuickSearchConfig.focusOnSubmit},getDefaultSearchType:function(){return QuickSearchConfig.defaultSearchType},getLocationLabel:function(){return QuickSearchConfig.locationLabel},getMakeLabel:function(){return QuickSearchConfig.makeLabel},getModelLabel:function(){return QuickSearchConfig.modelLabel},getSearchTypeLabel:function(){return QuickSearchConfig.searchTypeLabel},getTrimLabel:function(){return QuickSearchConfig.trimLabel},setDefaultSearchType:function(A){QuickSearchConfig.defaultSearchType=A},setDisplayOptionAllSearchTypes:function(A){QuickSearchConfig.optionAllSearchTypes=A},setDisplayNullSearchTypes:function(A){QuickSearchConfig.nullSearchTypes=A},setFocusOnSubmit:function(A){QuickSearchConfig.focusOnSubmit=A},setAllLocationsLabel:function(A){QuickSearchConfig.locationLabel=A},setAllMakesLabel:function(A){QuickSearchConfig.makeLabel=A},setAllModelsLabel:function(A){QuickSearchConfig.modelLabel=A},setAllSearchTypesLabel:function(A){QuickSearchConfig.searchTypeLabel=A},setAllTrimsLabel:function(A){QuickSearchConfig.trimLabel=A}};function QuickSearch(B){this.jsdata=B;this.searchForm=null;allFieldsQS=CHAINED_FIELDS;criteriaList=new CriteriaList();for(var A=0;A<allFieldsQS.length;A++){criteriaList.add(new QuickSearchCriteria(allFieldsQS[A],ALL_VALUE,A))}}QuickSearch.prototype.handleNoInventory=function(A){if(!A){this.searchForm[SEARCHTYPE_NAME].options.length=0;this.searchForm[SEARCHTYPE_NAME].options[0]=new Option(NO_INVENTORY_AVAILABLE,"",true,true);this.searchForm[SEARCHTYPE_NAME].disabled=true;var A=LOCATION_NAME}for(var B=criteriaList[A].index;B<allFieldsQS.length;B++){if(this.searchForm[allFieldsQS[B]]){criteriaList[allFieldsQS[B]].setOptions(this.searchForm[allFieldsQS[B]],[],new Option(NO_INVENTORY_AVAILABLE,""));this.searchForm[allFieldsQS[B]].disabled=true}}if(this.searchForm.quickSearchSubmitButton){this.searchForm.quickSearchSubmitButton.disabled=true}return };QuickSearch.prototype.init=function(D){this.searchForm=(D)?D:document.forms[0];var B=false;for(var C in this.jsdata){for(var A in this.jsdata[C]){B=true;this["has"+C.capitalize()]=true;break}}if(!B){this.jsdata=new Object();this.handleNoInventory()}else{this.initCriteria();this.setSearchType(QuickSearchConfig.getDefaultSearchType())}};QuickSearch.prototype.initCriteria=function(){this.populateSearchType();criteriaList[LOCATION_NAME].setAllOption(new Option(QuickSearchConfig.getLocationLabel(),ALL_VALUE,true,true));criteriaList[VEHICLETYPE_NAME].setAllOption(new Option(QuickSearchConfig.getSearchTypeLabel(),ALL_VALUE,true,true));criteriaList[MAKE_NAME].setAllOption(new Option(QuickSearchConfig.getMakeLabel(),ALL_VALUE,true,true));criteriaList[MODEL_NAME].setAllOption(new Option(QuickSearchConfig.getModelLabel(),ALL_VALUE,true,true));criteriaList[TRIM_NAME].setAllOption(new Option(QuickSearchConfig.getTrimLabel(),ALL_VALUE,true,true))};QuickSearch.prototype.populateSearchType=function(){if(this.searchForm[SEARCHTYPE_NAME]&&(this.searchForm[SEARCHTYPE_NAME].type=="select-one")){this.searchForm[SEARCHTYPE_NAME].options.length=0;if(QuickSearchConfig.displayOptionAllSearchTypes()){this.searchForm[SEARCHTYPE_NAME].options[this.searchForm[SEARCHTYPE_NAME].options.length]=new Option(QuickSearchConfig.getSearchTypeLabel(),"")}for(var A in this.jsdata){if(!QuickSearchConfig.displayNullSearchTypes()&&!this["has"+A.capitalize()]){continue}this.searchForm[SEARCHTYPE_NAME].options[this.searchForm[SEARCHTYPE_NAME].options.length]=new Option(window[A.toUpperCase()],A)}if(this.searchForm[SEARCHTYPE_NAME].options.length==0){this.handleNoInventory()}}};QuickSearch.prototype.setSearchType=function(A){setSelected(this.searchForm[SEARCHTYPE_NAME],A);if(A&&!this["has"+A.capitalize()]){this.handleNoInventory(LOCATION_NAME);return }if(!window.editMode){for(var B=criteriaList[LOCATION_NAME].index;B<allFieldsQS.length;B++){if(this.searchForm[allFieldsQS[B]]){this.searchForm[allFieldsQS[B]].disabled=false}}if(this.searchForm.quickSearchSubmitButton){this.searchForm.quickSearchSubmitButton.disabled=false}}QuickSearchConfig.focusOnSubmit=false;criteriaList.resetCriteria(LOCATION_NAME);criteriaList[LOCATION_NAME].nodeList[criteriaList[LOCATION_NAME].nodeList.length]=this.jsdata[A];criteriaList[LOCATION_NAME].addToValueMap(this.jsdata[A]);criteriaList[LOCATION_NAME].resetNodeLists();criteriaList[LOCATION_NAME].set(this.searchForm);if(QuickSearchConfig.doFocusOnSubmit()&&this.searchForm.quickSearchSubmitButton){this.searchForm.quickSearchSubmitButton.focus()}};QuickSearch.prototype.setLocation=function(A){criteriaList[LOCATION_NAME].value=A;criteriaList[LOCATION_NAME].resetNodeLists();criteriaList[VEHICLETYPE_NAME].set(this.searchForm);if(QuickSearchConfig.doFocusOnSubmit()&&this.searchForm.quickSearchSubmitButton){this.searchForm.quickSearchSubmitButton.focus()}};QuickSearch.prototype.setVehicleType=function(A){criteriaList[VEHICLETYPE_NAME].value=A;criteriaList[VEHICLETYPE_NAME].resetNodeLists();criteriaList[MAKE_NAME].set(this.searchForm);if(QuickSearchConfig.doFocusOnSubmit()&&this.searchForm.quickSearchSubmitButton){this.searchForm.quickSearchSubmitButton.focus()}};QuickSearch.prototype.setMake=function(A){criteriaList[MAKE_NAME].value=A;criteriaList[MAKE_NAME].resetNodeLists();criteriaList[MODEL_NAME].set(this.searchForm);if(QuickSearchConfig.doFocusOnSubmit()&&this.searchForm.quickSearchSubmitButton){this.searchForm.quickSearchSubmitButton.focus()}};QuickSearch.prototype.setModel=function(A){criteriaList[MODEL_NAME].value=A;criteriaList[MODEL_NAME].resetNodeLists();criteriaList[TRIM_NAME].set(this.searchForm);if(QuickSearchConfig.doFocusOnSubmit()&&this.searchForm.quickSearchSubmitButton){this.searchForm.quickSearchSubmitButton.focus()}};QuickSearch.prototype.setTrim=function(A){criteriaList[TRIM_NAME].value=A;if(QuickSearchConfig.doFocusOnSubmit()&&this.searchForm.quickSearchSubmitButton){this.searchForm.quickSearchSubmitButton.focus()}};QuickSearch.prototype.submitForm=function(){try{if(isCIREnabled){if(document.getElementsByName("search")[0].value=="preowned"&&document.getElementsByName("certified")[0].value=="yes"){document.quickSearchForm.search.options[1].value="certified"}}if(window.validateQuickSearch){validateQuickSearch(this.searchForm[SEARCHTYPE_NAME],this.searchForm[MAKE_NAME],this.searchForm[MODEL_NAME],this.searchForm[TRIM_NAME])}return true}catch(A){handleException(A);return false}};function QuickSearchCriteria(B,C,A){this.name=B;this.value=C;this.index=A;this.option=null;this.valueMap={};this.nodeList=[];this.isPreSorted=false;return this}QuickSearchCriteria.prototype.addToValueMap=function(B){for(var A in B){this.valueMap[A]=B[A][0]}};QuickSearchCriteria.prototype.doPopulate=function(){return(!(((this.name==MODEL_NAME)&&(criteriaList[MAKE_NAME].value==ALL_VALUE))||((this.name==TRIM_NAME)&&(criteriaList[MODEL_NAME].value==ALL_VALUE))))};QuickSearchCriteria.prototype.doTruncate=function(A){return(((this.name==MAKE_NAME)||(this.name==MODEL_NAME))&&(A==1))};QuickSearchCriteria.prototype.getOptions=function(){var B=new Array();for(var A in this.valueMap){if(A.trim()){B[B.length]=new Option(this.valueMap[A],A)}}return B};QuickSearchCriteria.prototype.getSelectedValue=function(A){if(A[this.name]){return A[this.name].value}else{return this.value}};QuickSearchCriteria.prototype.reset=function(){this.nodeList=[];this.valueMap={};this.value=ALL_VALUE};QuickSearchCriteria.prototype.resetNodeLists=function(){criteriaList.resetCriteria(allFieldsQS[this.index+1]);for(var A=0;A<this.nodeList.length;A++){this.recurseNodes(this.nodeList[A],(this.index+1))}};QuickSearchCriteria.prototype.recurseNodes=function(D,A){var C=criteriaList[CHAINED_FIELDS[A]];if(this.value==ALL_VALUE){for(var B in D){if(C){C.nodeList[C.nodeList.length]=D[B][1];if(C.doPopulate()){C.addToValueMap(D[B][1])}C.recurseNodes(D[B][1],(A+1))}}}else{if(D[this.value]){if(C){C.nodeList[C.nodeList.length]=D[this.value][1];if(C.doPopulate()){C.addToValueMap(D[this.value][1])}C.recurseNodes(D[this.value][1],(A+1))}}}};QuickSearchCriteria.prototype.set=function(A){if((this.value!=ALL_VALUE)&&!this.valueMap[this.value]){this.value=ALL_VALUE;if(criteriaList.resetCriteria(allFieldsQS[this.index+1])){}}var C=(this.isPreSorted)?this.getOptions():this.getOptions().sort(optionComparator);var B=(this.doTruncate(C.length))?null:this.option;if(this.doTruncate(C.length)){this.value=C[0].value;var E=criteriaList[CHAINED_FIELDS[this.index+1]];for(var D=0;D<E.nodeList.length;D++){E.addToValueMap(E.nodeList[D])}}this.setOptions(A[this.name],C,B);if((this.index+1)<CHAINED_FIELDS.length){criteriaList[CHAINED_FIELDS[this.index+1]].set(A)}};QuickSearchCriteria.prototype.setAllOption=function(A){this.option=A};QuickSearchCriteria.prototype.setIsPreSorted=function(A){this.isPreSorted=A};QuickSearchCriteria.prototype.setOptions=function(E,C,B){if(!E){return }E.length=0;var A=0;if(B){E.options[0]=B}if(C&&C.length){for(var D=0;D<C.length;D++){if(C[D].value==this.value){A=E.options.length}E.options[E.options.length]=C[D]}}else{if(E.options[0].value!=ALL_VALUE){E.options[0]=new Option(ANY,ALL_VALUE,true,true)}}E.options[A].selected=true};function CriteriaList(){}CriteriaList.prototype.add=function(A){if(!A.name){return }this[A.name]=A};CriteriaList.prototype.resetCriteria=function(A){for(var B=this[A].index;B<allFieldsQS.length;B++){this[allFieldsQS[B]].reset()}};if(!window.validateQuickSearch){validateQuickSearch=function(C,D,B,A){if(isEmpty(C.value)){return false}return true}}function alphaComparator(B,A){if(B.toLowerCase()>A.toLowerCase()){return 1}else{if(B.toLowerCase()<A.toLowerCase()){return -1}else{return 0}}}function numberComparator(B,A){return B-A}function optionComparator(B,A){return alphaComparator(B.text,A.text)}String.prototype.trim=function(){return this.replace(/^\s*([^\s]*)\s$/g,"\1")};String.prototype.capitalize=function(){var A=new RegExp("^([a-z])").exec(this)[1].toUpperCase();return this.replace(/^[a-z]/,A)};function toArray(B){var C=[];for(var A in B){C[C.length]=A}return C};
