
(function($){ev.frontEnd.constants.inputValidationClass="input-validation-error";var fixJqueryAutocompleterForValidation=function(){if($.Autocompleter){var _AutocompleterCache=$.Autocompleter.Cache;$.Autocompleter.Cache=function(options){ev.frontEnd.autocompleterCacheData=[];var cache=_AutocompleterCache(options);var _add=cache.add;cache.add=function(searchTerm,results){_add(searchTerm,results);$.each(results,function(i,result){ev.frontEnd.autocompleterCacheData.push(result.value);});};var _flush=cache.flush;cache.flush=function(){_flush();ev.frontEnd.autocompleterCacheData=[];};return cache;};}};fixJqueryAutocompleterForValidation();(function(){var standardEmailValidator=$.validator.methods.email;$.validator.methods.email=function(value,element){return standardEmailValidator.apply(this,[$.trim(value),element]);};})();$.validator.addMethod('validPhoneNumber',function(value,element){if(value.length===0){return true;}
return(/^\({0,1}((0|\+61)(2|4|3|7|8)){0,1}\){0,1}(\ |-){0,1}[0-9]{2}(\ |-){0,1}[0-9]{2}(\ |-){0,1}[0-9]{1}(\ |-){0,1}[0-9]{3}$/).test(value.replace(/\s+/g,''));},'Please enter a valid phone number');$.validator.addMethod("validLettersOnly",function(value,element){if(value.length===0){return true;}
return(/^[a-zA-Z ]+$/).test(value);},"Please enter only letters");$.validator.addMethod('validUnitNumber',function(value,element){if(value.length===0){return true;}
return(/^\s*[\-0-9A-Za-z ]+\s*$/).test(value);},'Please enter a valid unit number, using the separate box below to enter a street number');$.validator.addMethod('validStreetNumber',function(value,element){if(value.length===0){return true;}
return(/^\s*[\-0-9A-Za-z]+\s*$/).test(value);},'Please enter a valid street number, using the separate box above to enter a unit number');$.validator.addMethod("validSelectionRequiredIfEnabled",function(value,element){var select=$(element);if(value===""||typeof(value)===undefined){value=$(element).val();}
if(select.attr("disabled")||select.is(":hidden")||select.find("option").size()<=1){return true;}else{return value!==ev.frontEnd.constants.pleaseSelect&&value!=="";}},function(ruleValue,element){return element.attributes['errorMessage']?element.attributes['errorMessage'].value:"Please select a valid "+element.name.humanise();});$.validator.addMethod("validAutocompleteOptionSelected",function(value,element){var field=$(element);if(field.is(":hidden")){return true;}
if(field.val().length<3){return false;}
if(element.defaultValue===value){return true;}
return ev.frontEnd.autocompleterCacheData.contains(value);},function(ruleValue,element){return"Please enter a valid "+element.name.humanise();});$.validator.addMethod("validAutocompleteOptionSelectedForHomeLocality",function(value,element){var field=$(element);if(field.is(":hidden")){return true;}
if(field.val().length<3){return false;}
if(field.val().split(' ').length<3){return false;}
if(field.is(".field_invalid")){return false;}
if(element.defaultValue===value){return true;}
return true;},function(ruleValue,element){return"Please enter postcode/suburb";});$.validator.addMethod("validAutocompleteOptionSelectedForStreetName",function(value,element){var field=$(element);if(field.is(":hidden")){return true;}
if(field.is(".field_invalid")){return false;}
return true;},function(ruleValue,element){return"Please enter street name";});$.validator.addMethod("validAutocompleteOptionSelectedForStreetNumber",function(value,element){var field=$(element);if(field.is(":hidden")){return true;}
if(field.is(".field_invalid")){return false;}
return true;},function(ruleValue,element){return"Please enter street number";});$.validator.addMethod("validAutocompleteOptionSelectedForUnitNumber",function(value,element){var field=$(element);if(field.is(":hidden")){return true;}
if(field.is(".field_invalid")){return false;}
return true;},function(ruleValue,element){return"Please enter a valid unit number";});$.validator.addMethod("validUnitNumberIfRequired",function(value,element){var field=$(element);if(field.is(":hidden")||field.is(":disabled")){return true;}
if(field.val().length===0&&field.is(".field_required")){return false;}
return true;},function(ruleValue,element){return"Please enter unit number";});$.validator.addMethod("validABNdigits",function(value,element){var field=$(element);if(field.is(":hidden")||field.is(":disabled")){return true;}
if(field.val().length===0||field.val().length===11){return true;}
return false;},function(ruleValue,elememt){return"Please enter the right ABN number"});var getOtherFieldNameFrom=function(element){var cssClass=$(element).attr("class");return cssClass.substring(cssClass.indexOf("with[")+5,cssClass.indexOf("]"));};var getParameterFrom=function(element,ruleName){var cssClass=$(element).attr("class");cssClass=cssClass.substring(cssClass.indexOf(ruleName)+ruleName.length+1);if(cssClass.match(/^\[/)){return cssClass.substring(1,cssClass.indexOf(']'));}
return null;};var eitherOrMessageCreator=function(ruleValue,element){return"Please enter either "+element.name.humanise()+" OR "+getOtherFieldNameFrom(element).humanise();};var applyRuleToElementAndCompanion=function(element,rule){var field=$(element);var other=$("#"+getOtherFieldNameFrom(element));var res=(other.hasClass(ev.frontEnd.constants.inputValidationClass)||rule(field.val(),other.val()));return res;};$.validator.addMethod("mutuallyExclusive",function(value,element){var field=$(element);if(field.is(":hidden")){return true;}
var other=$("#"+getOtherFieldNameFrom(element));return(field.val()&&!other.val())||(!field.val()&&other.val());},eitherOrMessageCreator);$.validator.addMethod("notAllowedAlong",function(value,element){var field=$(element);if(field.is(":hidden")){return true;}
var other=$("#"+getOtherFieldNameFrom(element));return!(field.val()&&other.val());},eitherOrMessageCreator);$.validator.addMethod("mustHaveSameValue",function(value,element){return applyRuleToElementAndCompanion(element,function(field,other){return field===other;});},function(ruleValue,element){return"Please enter the same value as "+getOtherFieldNameFrom(element).humanise();});$.validator.addMethod("mustHaveSameValueCaseInsensitive",function(value,element){return applyRuleToElementAndCompanion(element,function(field,other){return field.toLowerCase()===other.toLowerCase();});},function(ruleValue,element){return"Please enter the same value as "+getOtherFieldNameFrom(element).humanise();});$.validator.addMethod("validCreditCardNumber",function(value,element){var number=value.replace(/\D/g,'');var number_length=number.length;var parity=number_length%2;var total=0;for(var i=0;i<number_length;i++){var digit=number.charAt(i);if(i%2===parity){digit=digit*2;if(digit>9){digit=digit-9;}}
total=total+parseInt(digit,0);}
if(total%10!==0){return false;}
var cardType=$("#creditCardType").val();if(cardType==="Visa"&&/^4/.test(value)&&(value.length===13||value.length===16)){return true;}
if(cardType==="DinersClub"&&value.length===14&&(/^30[0-5]/.test(value)||/^3[6,8]/.test(value))){return true;}
if(cardType==="AmericanExpress"&&value.length===15&&/^3[4,7]/.test(value)){return true;}
if(cardType==="MasterCard"&&value.length===16&&/^5[1-5]/.test(value)){return true;}
return false;},"Please enter a valid credit card number");$.validator.addMethod('validBSB1',function(value,element){if($(element).attr("disabled")){return true;}
return $('#BsbPart1').val().isDigits();},"Please enter a valid BSB");$.validator.addMethod('validBSB2',function(value,element){if($(element).attr("disabled")){return true;}
return $('#BsbPart2').val().isDigits();},"Please enter a valid BSB");$.validator.addMethod('requiredIgnoreDisabled',function(value,element){if($(element).attr("disabled")||!$(element).is(":visible")){return true;}
return $.validator.methods.required.apply(this,arguments);},function(ruleValue,element){return element.attributes['errorMessage']?element.attributes['errorMessage'].value:$.validator.messages.required;});$.validator.addMethod("validAccountNumber",function(value,element){if($(element).attr("disabled")){return true;}
if((value.length===0)||(value.length>9)||(value==="000000000")){return false;}
return(/^[0-9]*$/).test(value);},"Please enter a valid account number, with up to 9 numbers");$.validator.addMethod("validExpiryDate",function(value,element){if($(element).siblings("select").attr("disabled")){return true;}
var expiry=Date.parse(value);return expiry&&expiry.moveToLastDayOfMonth().compareTo(Date.today())>=0;},"The expiry date you have entered is not valid, please re-enter");$.validator.addMethod('printableCharactersOnly',function(value,element){var printableCharacters=/^[\x20-\x7E]*$/;var lessThanOrGreaterThan=/^[^<>]*$/;return(value===""||(printableCharacters.test(value)&&lessThanOrGreaterThan.test(value)));},'Please enter only letters from the English alphabet or numbers or ( ) & @ #');$.validator.addMethod("validBankAccountName",function(value,element){if($(element).attr("disabled")){return true;}
if(value.length===0){return false;}
return(/^[0-9a-zA-Z\-\+\(\)\.\*\$\|\?\/&!,%:_#@'"=`][0-9a-zA-Z \-\+\(\)\.\*\$\|\?\/&!,%:_#@'"=`]*$/).test(value);},"Please enter a valid account holder name");$.validator.addMethod('validCcvNumber',function(value,element){var numbersOnly=/^[0-9]*$/;return(value.length===3||value.length===4)&&numbersOnly.test(value);},'Please enter at least 3 digits');$.validator.addMethod('positive',function(value,element){return element.disabled?true:value>0.0;},'Please enter a positive value');$.validator.addMethod('validCouponCode',function(value,element){var couponFormat=/^[a-zA-Z0-9]{3,10}$/;return(value.length===0||couponFormat.test(value));},'Please enter a valid coupon code');$.validator.setDefaults({customErrorClass:ev.frontEnd.constants.inputValidationClass,highlight:function(element,errorClass){var jElement=$(element);if(!jElement.is("input[type=hidden]")&&!jElement.is(":radio")){jElement.addClass($.validator.defaults.customErrorClass);}
if(jElement.is("input[type=hidden]")){var dob=jElement.siblings("select.day, select.month, select.year");dob.addClass(ev.frontEnd.constants.inputValidationClass);}
jElement.addClass(errorClass);},unhighlight:function(element,errorClass){var jElement=$(element);if(!jElement.is("input[type=hidden]")&&!jElement.is(":radio")){jElement.removeClass($.validator.defaults.customErrorClass);}
if(jElement.is("input[type=hidden]")){var dob=jElement.siblings("select.day, select.month, select.year");dob.removeClass(ev.frontEnd.constants.inputValidationClass);}
jElement.removeClass(errorClass);},showErrors:function(errorMap,errorList){this.defaultShowErrors();$.each(errorList,function(index,element){if(element.message===""){$(element.element).next().addClass("invisibleUIError");}});}});$.validator.addMethod("validDateAfterSelect",function(value,element){if($(element).is(":disabled")||!$(element).val()){return true;}
if(Date.parseExact(value,ev.frontEnd.isoDateFormat)!==null){return true;}else{return Date.parseExact(value,ev.frontEnd.displayDateFormat)!==null;};},"Please select a valid date");$.validator.addMethod("validDate",function(value,element){if($(element).is(":disabled")){return true;}
if(Date.parseExact(value,ev.frontEnd.isoDateFormat)!==null){return true;}else{return Date.parseExact(value,ev.frontEnd.displayDateFormat)!==null;};},"Please select a valid date");$.validator.addMethod("notTooOldAndYoungDate",function(selectedDate,field,optAge){if($(field).is(":disabled")){return true;}
selectedDate=Date.parseExact(selectedDate,ev.frontEnd.isoDateFormat);var minDOB=new Date(optAge.effectiveDate).addYears(-optAge.minAge);var maxDOB=new Date(optAge.effectiveDate).addYears(-optAge.maxAge);return selectedDate&&(selectedDate.compareTo(minDOB)<=0&&selectedDate.compareTo(maxDOB.addYears(-1))>0);},function(optAge){return"Must be between "+optAge.minAge+" and "+optAge.maxAge+" years of age.";});$.validator.addMethod("notTooOldAndYoungDateAfterSelect",function(selectedDate,field,optAge){if($(field).is(":disabled")||!$(field).val()){return true;}
selectedDate=Date.parseExact(selectedDate,ev.frontEnd.isoDateFormat);var minDOB=new Date(optAge.effectiveDate).addYears(-optAge.minAge);var maxDOB=new Date(optAge.effectiveDate).addYears(-optAge.maxAge);return selectedDate&&(selectedDate.compareTo(minDOB)<=0&&selectedDate.compareTo(maxDOB.addYears(-1))>0);},function(optAge){return"Must be between "+optAge.minAge+" and "+optAge.maxAge+" years of age.";});$.fn.dateOfBirthForHome=function(minAge,maxAge,effectiveDate){var field=this;var day=field.siblings("select.day");var month=field.siblings("select.month");var year=field.siblings("select.year");var dateChanged=function(){var dd=day.val();var MM=month.val();var yyyy=year.val();if(dd&&MM&&yyyy){field.val(ev.frontEnd.isoDateFormat.replace("dd",dd).replace("MM",MM).replace("yyyy",yyyy));}else{field.val('');}
field.siblings(".error").hide();};var removeHighlight=function(){day.removeClass($.validator.defaults.customErrorClass);month.removeClass($.validator.defaults.customErrorClass);year.removeClass($.validator.defaults.customErrorClass);};if(field.hasClass("checkDobAfterSelect")){field.rules("add",{validDateAfterSelect:true,notTooOldAndYoungDateAfterSelect:{minAge:minAge,maxAge:maxAge,effectiveDate:effectiveDate}});}else{field.rules("add",{validDate:true,notTooOldAndYoungDate:{minAge:minAge,maxAge:maxAge,effectiveDate:effectiveDate}});}
$([day[0],month[0],year[0]]).change(dateChanged);$([day[0],month[0],year[0]]).click(removeHighlight);};$.validator.addMethod('dependentDOB',function(selectedDate,field){if($(field).is(':disabled')){return true;}
var maxAge=parseInt(getParameterFrom(field,'dependentDOB'),10);selectedDate=Date.parse(selectedDate);var maxDOB=Date.today().addYears(-maxAge);return selectedDate&&selectedDate.compareTo(maxDOB)>=0;},function(ruleValue,element){var maxAge=parseInt(getParameterFrom(element,'dependentDOB'),10);return'we are unable to insure you because we only cover dependents under the age of '+maxAge+'. <a href="#">Click</a> here to return to the homepage.';});$.validator.addMethod('validClaimsPreferredContactSelect',function(value,element){var field=$(element)[0];var index=field.id.split('_')[1];if(value!==""){var phoneElement=$(element).parent().parent().find("#thirdParty"+value+"_"+index);if(phoneElement.state()===""){phoneElement.focus();return false;}
else
return true;}
else{return true;}},function(ruleValue,element){return"value must be recorded in "+$(element).find("option:[value='"+element.value+"']")[0].text+".";});$.validator.addMethod('validPercent',function(value,element){if($(element).attr("disabled")||!$(element).is(":visible")){return true;}
if(value==""){value="0";}
if(value.isDigits()){if(value>=0&&value<=100){return true;}}
return false;},"Please enter a valid percentage");$.validator.addMethod('validHaveOneSelected',function(value,element){if($(element).parent().parent().find(":checkbox:checked").length>0){return true;}
else{return false;}},"These checkboxs are required less one");$.validator.addMethod('validAlternateContactPreferredContactSelect',function(value,element){var targetElement;if(value!==""){if(value==="001"){targetElement=$("input#homePhone");}else if(value==="002"){targetElement=$("input#workPhone");}else if(value==="003"){targetElement=$("input#mobilePhone");}else if(value==="004"){targetElement=$("input#alternateEmailAddress");}
if(targetElement.state()===""){targetElement.focus();return false;}
else
return true;}
else{return true;}},function(ruleValue,element){return" value must be recorded in "+$(element).find("option:[value='"+element.value+"']")[0].text+".";});$.validator.addMethod('maxCurrency',function(value,element){if(element.attributes['maxCurrency']&&!$(element).is(":hidden")&&!$(element).is(":disabled")){if(parseFloat(value.replace(/,/g,''))<=parseFloat(element.attributes['maxCurrency'].value.replace(/,/g,''))){return true;}
else{return false;}}else{return true;}},function(ruleValue,element){return"Please enter value less than or equal to "+element.attributes['maxCurrency'].value;});$.validator.addMethod('exactlyLength',function(value,element){if(element.attributes['exactlyLength']&&!$(element).is(":hidden")&&!$(element).is(":disabled")){if(value.length===parseFloat(element.attributes['exactlyLength'].value)){return true;}
else{return false;}}else{return true;}},function(ruleValue,element){return"Please enter value exactly "+element.attributes['exactlyLength'].value+" characters";});$.validator.addMethod('notItemDescriptionWaterMark',function(value,element){return"Item Description"!=value;},function(value,element){return"Please enter description";});})(jQuery);

ev.frontEnd.component.getEmbargoMessage=function(defaultMessage,startDate,startTime,description){var embargoStartDate=Date.parse(startDate).toString(ev.frontEnd.displayDateFormat);var embargoStartTime=startTime.substr(0,5);var embargoDescription=$.trim(description);return defaultMessage.replace(/\{EmbargoStartDate\}/,embargoStartDate).replace(/\{EmbargoStartTime\}/,embargoStartTime).replace(/\{EmbargoDescription\}/,embargoDescription);};ev.frontEnd.component.checkLocalityEmbargo=function(localityValue,container,localityEmbargoService){var localityEmbargoCheckURI="";var sep="";var undefinedContainer;this.init=function(){if(localityEmbargoService.homeProductContainer.find('input:radio:checked').length>0){localityEmbargoCheckURI+=sep+"product="+encodeURI($('input:radio:checked',localityEmbargoService.homeProductContainer).val());sep="&";if(localityValue.split(" ").length>=3){localityEmbargoCheckURI+=sep+"locality="+encodeURI(localityValue);$.getJSON(localityEmbargoService.localityEmbargoCheckUrl+"?callback=?",localityEmbargoCheckURI,function(data){if(data.length>0){container.addClass(localityEmbargoService.localityEmbargoClass);localityEmbargoService.localityEmbargoField.val('Yes');ev.frontEnd.localityEmbargoedMessage=ev.frontEnd.component.getEmbargoMessage(localityEmbargoService.localityEmbargoedMessage,data[0].EmbargoStartDate,data[0].EmbargoStartTime,data[0].EmbargoDescription);ev.frontEnd.component.showAddressErrorMessageModal(localityEmbargoService.localityDeclinedMessageContainerID,undefinedContainer,ev.frontEnd.localityEmbargoedMessage);}else{container.removeClass(localityEmbargoService.localityEmbargoClass);localityEmbargoService.localityEmbargoField.val('No');}});}}else{ev.frontEnd.component.showAddressErrorMessageModal(localityEmbargoService.localityDeclinedMessageContainerID,container,localityEmbargoService.productNotFoundMessage);}};this.init();};ev.frontEnd.component.isLocalityEmbargo=function(localityValue,localityEmbargoService){var localityEmbargoCheckURI="";var sep="";this.init=function(){if(localityEmbargoService.homeProductContainer.find('input:radio:checked').length>0){localityEmbargoCheckURI+=sep+"product="+encodeURI($('input:radio:checked',localityEmbargoService.homeProductContainer).val());sep="&";if(localityValue.split(" ").length>=3){localityEmbargoCheckURI+=sep+"locality="+encodeURI(localityValue);$.getJSON(localityEmbargoService.localityEmbargoCheckUrl+"?callback=?",localityEmbargoCheckURI,function(data){return!(data.length>0)});}}else{return true;}};return this.init();};ev.frontEnd.component.showAddressErrorMessageModal=function(msgDivID,domObj,errorMessage){var onCloseFn=function(){if(typeof domObj!=='undefined'){domObj.resetState();}
$.modal.close();};var buttonDiv=$('<div class="confirmDialog"></div>').css
({marginTop:'10px',paddingTop:'5px',borderTop:'1px solid #c1c1c1'}).append
($('<input type="button" class="ok" />').css
({width:'80px',marginRight:'6px',padding:'3px 6px'}).click(onCloseFn)).append
($('<input type="button" class="cancel" />').css
({width:'80px',padding:'3px 6px'}).click(function(){location.href=ev.frontEnd.cmsHost;}));$(msgDivID).html(errorMessage).append(buttonDiv).modal({overlayId:'homedetailsmodal-overlay',containerId:'homedetailsmodal-container',position:[200],closeClass:"modalCloseImg",onClose:onCloseFn});if(typeof(cms)!=='undefined')
cms.homeEmbargoWarningTracking(ev.frontEnd.localityEmbargoedMessage);};ev.frontEnd.component.checkGeocode=function(geocodeService,successHandler){var addressParcel=geocodeService.localityContainer.parcel();var data=addressParcel.homeLocality.state().split(" ");var addressLine1="";var addressLine2="";var sep=" ";var localityGeocodeCheckURI="";if(data.length>=3){addressLine1=addressParcel.homeLocality.state().substring(data[0].length,addressParcel.homeLocality.state().length)+sep+data[0];}
if(addressParcel.localityunitnumber.state()!==""){addressLine2+=addressParcel.localityunitnumber.state();sep="/";}
if(addressParcel.localitystreetnumber.state()!==""){addressLine2+=sep+addressParcel.localitystreetnumber.state();sep=" ";}
if(addressParcel.localitystreetname.state()!==""){addressLine2+=sep+addressParcel.localitystreetname.state();}
if(addressLine1!==""&&addressLine2!==""){sep="&";localityGeocodeCheckURI+="address="+encodeURI($.trim(addressLine1))+sep+"address="+encodeURI($.trim(addressLine2));$.getJSON(geocodeService.localityGeocodeCheckUrl+"?callback=?",localityGeocodeCheckURI,function(data){if(data.length===0||data.GnafPid===""){ev.frontEnd.component.showAddressErrorMessageModal(geocodeService.localityDeclinedMessageContainerID,geocodeService.localityContainer,geocodeService.localityNonGeocodeMessage);}else{geocodeService.localityContainer.removeClass(geocodeService.localityGeocodeClass);$(".addressMatcher-gnafid").val(data.GnafPid);successHandler();}});}}
ev.frontEnd.component.homeLocalityAutocompleter=function(localityContainer,localityActionUris,localityEmbargoService){var state,postcode,suburb,streetName,streetType,streetSuffix;var houseNumber1,houseNumberSuffix1,houseNumber2,houseNumberSuffix2,lotNumber;var postcodeSuburbValue="",streetNameValue="",streetNumberValue="",unitNumberValue="";var KEY={LEFT:37,UP:38,RIGHT:39,DOWN:40,PAGEUP:33,PAGEDOWN:34,TAB:9,ENTER:13};var emptyTypeStreetNamesList=[];var streetNumbersWithUnitOnlyList=[];var streetNamesWithStSuffixList=[];var unitFieldValidation={requiredClass:"field_required"};var localities=localityContainer.parcel();var invalidFieldClass="field_invalid";var defaultsOnValidation={inputValidaionErrorClass:"input-validation-error",errorClass:"error",messages:{homeLocality:{required:"Please enter postcode/suburb",invalidField:"Please re-enter postcode"},localityStreetName:{required:"Please enter street name",invalidField:"Please enter a valid street name"},localityStreetNumber:{required:"Please enter street number",invalidField:"Please enter a valid street number"},localityUnitNumber:{required:"Please enter unit number",invalidField:"Please enter a valid unit number"}}}
var parseAddressData=function(data,field){var splitData=data.split(" ");if(field===localities.localitystreetname&&splitData.length>=2){if($.inArray(data,emptyTypeStreetNamesList)>-1){streetType="";if($.inArray(data,streetNamesWithStSuffixList)>-1){streetSuffix=splitData[splitData.length-1];streetName=$.trim(data.substring(0,data.indexOf(streetSuffix)));}else{streetSuffix="";streetName=data;}}else if(splitData.length>=3){if($.inArray(data,streetNamesWithStSuffixList)>-1){streetSuffix=splitData[splitData.length-1];streetType=splitData[splitData.length-2];}else{streetSuffix="";streetType=splitData[splitData.length-1];}
streetName=$.trim(data.substring(0,data.indexOf(streetType)));}else{streetName=splitData[0];streetType=splitData[1];streetSuffix="";}}else if(field===localities.localitystreetnumber){if(data.toUpperCase().indexOf("LOT")>-1){lotNumber=$.trim(data.replace(/[a-zA-Z]/g,""));houseNumber1="";houseNumberSuffix1="";houseNumber2="";houseNumberSuffix2="";}else{var streetNo=splitData[0];var houseFullNumber1,houseFullNumber2;if(streetNo.indexOf("-")>-1){houseFullNumber1=streetNo.substring(0,streetNo.indexOf("-"));houseFullNumber2=streetNo.substring(streetNo.indexOf("-")+1,streetNo.length);}else{houseFullNumber1=streetNo;houseFullNumber2="";}
lotNumber="";houseNumber1=houseFullNumber1.replace(/[a-zA-Z]/g,"");houseNumberSuffix1=houseFullNumber1.replace(/[\d+]/g,"");houseNumber2=houseFullNumber2.replace(/[a-zA-Z]/g,"");houseNumberSuffix2=houseFullNumber2.replace(/[\d+]/g,"");}}};var focusOnField=function(field){field.focus();};var addClassOnField=function(className,field){field.addClass(className);};var removeClassOnField=function(className,field){field.removeClass(className);};var enableField=function(field){field.removeAttr("disabled").filter(":text").removeClass("disabled");};var disableField=function(field){if(field===localities.localityunitnumber)removeClassOnField(invalidFieldClass,field);hideErrorMessageToField(field);field.attr("disabled","disabled").filter(":text").addClass("disabled").flushCache().val("");}
var hideErrorMessageToField=function(field){removeClassOnField(defaultsOnValidation.inputValidaionErrorClass,field);removeClassOnField(defaultsOnValidation.errorClass,field);if(field.next("label.error:visible"))field.next().css("display","none");}
var showErrorMessageToField=function(field,message){addClassOnField(defaultsOnValidation.inputValidaionErrorClass,field);addClassOnField(defaultsOnValidation.errorClass,field);if(field.next("label.error").length===0){var label=$("<label />").attr({"for":field.attr("name"),generated:true}).addClass(defaultsOnValidation.errorClass).html(message||"");label.insertAfter(field);}else if(field.next("label.error").css("display")==="none"){field.next().css("display","block").html(message||"");}}
var disableAndClearOtherFieldsDependOn=function(field,showErrorMessage){if(field===localities.homeLocality){if(showErrorMessage)showErrorMessageToField(field,field.val()===""?defaultsOnValidation.messages.homeLocality.required:defaultsOnValidation.messages.homeLocality.invalidField);disableField(localities.localitystreetname);disableField(localities.localitystreetnumber);disableField(localities.localityunitnumber);}else if(field===localities.localitystreetname){if(showErrorMessage)showErrorMessageToField(field,field.val()===""?defaultsOnValidation.messages.localityStreetName.required:defaultsOnValidation.messages.localityStreetName.invalidField);disableField(localities.localitystreetnumber);disableField(localities.localityunitnumber);}else if(field===localities.localitystreetnumber){if(showErrorMessage)showErrorMessageToField(field,field.val()===""?defaultsOnValidation.messages.localityStreetNumber.required:defaultsOnValidation.messages.localityStreetNumber.invalidField);disableField(localities.localityunitnumber);}
if(!localityContainer.hasClass(ev.frontEnd.geocodeService.localityGeocodeClass))addClassOnField(ev.frontEnd.geocodeService.localityGeocodeClass,localityContainer);}
var selectResult=function(field){var results=$(".ac_results .ac_over:visible:last");if(results.length===1){parseAddressData(results.text(),field);if(field===localities.homeLocality){if($.trim(results.text())!==$.trim(postcodeSuburbValue)){disableAndClearOtherFieldsDependOn(field,false);addClassOnField(localityEmbargoService.localityEmbargoClass,field);}
if(field.hasClass(localityEmbargoService.localityEmbargoClass)){ev.frontEnd.component.checkLocalityEmbargo(results.text(),localities.homeLocality,localityEmbargoService);}
postcodeSuburbValue=results.text();}else if(field===localities.localitystreetname){if($.trim(results.text())!==$.trim(streetNameValue)){disableAndClearOtherFieldsDependOn(field,false);}
streetNameValue=results.text();}else if(field===localities.localitystreetnumber){if($.trim(results.text())!==$.trim(streetNumberValue)){disableAndClearOtherFieldsDependOn(field,false);}
streetNumberValue=results.text();setUnitNumberRequiredValue(streetNumberValue);}else if(field===localities.localityunitnumber){unitNumberValue=results.text();removeClassOnField(unitFieldValidation.requiredClass,field);}
if(field.val()!==""){removeClassOnField(invalidFieldClass,field);hideErrorMessageToField(field);}else{addClassOnField(invalidFieldClass,field);}
field.val(results.text());}else{if(field===localities.homeLocality){if(field.val()===""||$.trim(field.val())!==$.trim(postcodeSuburbValue)){addClassOnField(invalidFieldClass,field);}}else if(field===localities.localitystreetname){if(field.val()===""||$.trim(field.val())!==$.trim(streetNameValue)){addClassOnField(invalidFieldClass,field);}}else if(field===localities.localitystreetnumber){if(field.val()===""||$.trim(field.val())!==$.trim(streetNumberValue)){addClassOnField(invalidFieldClass,field);}}else if(field===localities.localityunitnumber){if(field.val()!==""&&$.trim(field.val())!==$.trim(unitNumberValue)){addClassOnField(invalidFieldClass,field);}}}};var checkUnitNumberMandatoryOrOpt=function(unitNumberField){if(localities.localityUnitNumberRequired.state().toLowerCase()==="yes"){addClassOnField(unitFieldValidation.requiredClass,unitNumberField);}else{removeClassOnField(unitFieldValidation.requiredClass,unitNumberField);}}
var setUnitNumberRequiredValue=function(streetNumber){var data=$.inArray(streetNumber,streetNumbersWithUnitOnlyList)>-1?"Yes":"No";localities.localityUnitNumberRequired.state(data);}
this.init=function(){var postcodeSuburbField=localities.homeLocality;var streetNameField=localities.localitystreetname;var streetNumberField=localities.localitystreetnumber;var unitNumberField=localities.localityunitnumber;if(!postcodeSuburbField.attr("disabled")&&postcodeSuburbField.val().length>0){parseAddressData(postcodeSuburbField.val(),postcodeSuburbField);postcodeSuburbValue=postcodeSuburbField.val();}
if(!streetNameField.attr("disabled")&&streetNameField.val().length>0){parseAddressData(streetNameField.val(),streetNameField);streetNameValue=streetNameField.val();}
if(!streetNumberField.attr("disabled")&&streetNumberField.val().length>0){enableField(unitNumberField);parseAddressData(streetNumberField.val(),streetNumberField);streetNumberValue=streetNumberField.val();}
if(!unitNumberField.attr("disabled")&&unitNumberField.val().length>0){unitNumberValue=unitNumberField.val();}else{removeClassOnField(invalidFieldClass,unitNumberField);}
postcodeSuburbField.stateChange(function(state){if(postcodeSuburbField.val()===""){$(".ac_results .ac_over:visible").text("");disableAndClearOtherFieldsDependOn(postcodeSuburbField,true);}}).blur(function(){selectResult(postcodeSuburbField);if(!postcodeSuburbField.hasClass(invalidFieldClass)){enableField(streetNameField)}else{disableAndClearOtherFieldsDependOn(postcodeSuburbField,true);};}).keydown(function(e){if(e.keyCode===KEY.LEFT||e.keyCode===KEY.RIGHT||e.keyCode===KEY.TAB||e.keyCode===KEY.ENTER){selectResult(postcodeSuburbField);if(!postcodeSuburbField.hasClass(invalidFieldClass)){enableField(streetNameField)}else{disableAndClearOtherFieldsDependOn(postcodeSuburbField,true);};}});postcodeSuburbField.bind("focus",function(){postcodeSuburbField.unbind('blur keydown');});streetNameField.stateChange(function(state){if(streetNameField.val()===""){addClassOnField(invalidFieldClass,streetNameField);disableAndClearOtherFieldsDependOn(streetNameField,true);}}).blur(function(){selectResult(streetNameField);if(!streetNameField.hasClass(invalidFieldClass)){enableField(streetNumberField);}else{disableAndClearOtherFieldsDependOn(streetNameField,true);}}).keydown(function(e){if(e.keyCode===KEY.LEFT||e.keyCode===KEY.RIGHT||e.keyCode===KEY.TAB||e.keyCode===KEY.ENTER){selectResult(streetNameField);if(!streetNameField.hasClass(invalidFieldClass)){enableField(streetNumberField);}else{disableAndClearOtherFieldsDependOn(streetNameField,true);}}});streetNameField.bind("focus",function(){streetNameField.unbind('blur keydown');});streetNumberField.stateChange(function(state){if(streetNumberField.val()===""){addClassOnField(invalidFieldClass,streetNumberField);disableAndClearOtherFieldsDependOn(streetNumberField,true);}}).blur(function(){selectResult(streetNumberField);if(!streetNumberField.hasClass(invalidFieldClass)){enableField(unitNumberField);}else{disableAndClearOtherFieldsDependOn(streetNumberField,true);}
checkUnitNumberMandatoryOrOpt(unitNumberField);}).keydown(function(e){if(e.keyCode===KEY.LEFT||e.keyCode===KEY.RIGHT||e.keyCode===KEY.TAB||e.keyCode===KEY.ENTER){selectResult(streetNumberField);if(!streetNumberField.hasClass(invalidFieldClass)){enableField(unitNumberField);}else{disableAndClearOtherFieldsDependOn(streetNumberField,true);}
checkUnitNumberMandatoryOrOpt(unitNumberField);}});streetNumberField.bind("focus",function(){streetNumberField.unbind('blur keydown');});unitNumberField.stateChange(function(state){disableAndClearOtherFieldsDependOn(unitNumberField,false);if(unitNumberField.val()!==""){removeClassOnField(unitFieldValidation.requiredClass,unitNumberField);}}).blur(function(){if(unitNumberField.val()===""){checkUnitNumberMandatoryOrOpt(unitNumberField);removeClassOnField(invalidFieldClass,unitNumberField);hideErrorMessageToField(unitNumberField);}else{selectResult(unitNumberField);}}).keydown(function(e){if(e.keyCode===KEY.LEFT||e.keyCode===KEY.RIGHT||e.keyCode===KEY.TAB||e.keyCode===KEY.ENTER){selectResult(unitNumberField);}});unitNumberField.bind("focus",function(){unitNumberField.unbind('blur keydown');});unitNumberField.bind("focusout",function(){if(unitNumberField.val()===""){checkUnitNumberMandatoryOrOpt(unitNumberField);removeClassOnField(invalidFieldClass,unitNumberField);hideErrorMessageToField(unitNumberField);}
if(unitNumberField.hasClass(unitFieldValidation.requiredClass)){showErrorMessageToField(unitNumberField,defaultsOnValidation.messages.localityUnitNumber.required);}});this.parseLocalityData=function(data){var rows=[];streetNumbersWithUnitOnlyList=[];for(var i=0;i<data.length;i=i+1){rows[i]={data:data[i],value:data[i].Tag,result:data[i].Tag};}
if(rows.length===1){postcodeSuburbField.val(rows[0].value);}
if(rows.length===0){addClassOnField(invalidFieldClass,postcodeSuburbField);disableAndClearOtherFieldsDependOn(postcodeSuburbField,true);}
return rows;};this.formatLocalityData=function(row,i,max){return row.Tag;};this.parseStreetData=function(data){var rows=[];emptyTypeStreetNamesList=[];streetNamesWithStSuffixList=[];streetNumbersWithUnitOnlyList=[];for(var i=0;i<data.length;i=i+1){rows[i]={data:data[i],value:data[i].Tag,result:data[i].Tag};if(data[i].TagStType===""&&$.inArray(data[i].Tag,emptyTypeStreetNamesList)<0){emptyTypeStreetNamesList[emptyTypeStreetNamesList.length]=data[i].Tag;}
if(data[i].TagStSuffix!==""&&$.inArray(data[i].Tag,streetNamesWithStSuffixList)<0){streetNamesWithStSuffixList[streetNamesWithStSuffixList.length]=data[i].Tag;}}
if(rows.length===1){streetNameField.val(rows[0].value);}
if(rows.length===0){addClassOnField(invalidFieldClass,streetNameField);disableAndClearOtherFieldsDependOn(streetNameField,true);}
return rows;}
this.formatStreetData=function(row,i,max){return row.Tag;};this.parseStreetNumberData=function(data){var rows=[];for(var i=0;i<data.length;i=i+1){rows[i]={data:data[i],value:data[i].Tag,result:data[i].Tag};if(data[i].TagUnit.toLowerCase()==="mandatory"&&$.inArray(data[i].Tag,streetNumbersWithUnitOnlyList)<0){streetNumbersWithUnitOnlyList[streetNumbersWithUnitOnlyList.length]=data[i].Tag;}}
if(rows.length===1){streetNumberField.val(rows[0].value);}
if(rows.length===0){addClassOnField(invalidFieldClass,streetNumberField);disableAndClearOtherFieldsDependOn(streetNumberField,true);}
return rows;};this.formatStreetNumberData=function(row,i,max){return row.Tag;};this.parseUnitNumberData=function(data){var rows=[];for(var i=0;i<data.length;i=i+1){rows[i]={data:data[i],value:data[i].Tag,result:data[i].Tag};}
if(rows.length===1){unitNumberField.val(rows[0].value);}
if(rows.length===0){addClassOnField(invalidFieldClass,unitNumberField);showErrorMessageToField(unitNumberField,defaultsOnValidation.messages.localityUnitNumber.invalidField);}
return rows;};this.formatUnitNumberData=function(row,i,max){return row.Tag;};postcodeSuburbField.autocomplete(localityActionUris.localityPostcodeSuburb,{dataType:'jsonp',extraParams:{product:function(){if(localityEmbargoService.homeProductContainer.find('input:radio:checked').length>0){return encodeURI($('input:radio:checked',localityEmbargoService.homeProductContainer).val());}else{return"";}}},minChars:3,max:10,parse:this.parseLocalityData,formatItem:this.formatLocalityData,scroll:false,matchContains:false,matchSubset:true,selectFirst:true,autoFill:false,delay:400}).result(function(event,data,formatted){if(data){parseAddressData(data.Tag,postcodeSuburbField);if($.trim(data.Tag)!==$.trim(postcodeSuburbValue)){disableAndClearOtherFieldsDependOn(postcodeSuburbField,false);addClassOnField(localityEmbargoService.localityEmbargoClass,postcodeSuburbField);}
if(postcodeSuburbField.hasClass(localityEmbargoService.localityEmbargoClass)){ev.frontEnd.component.checkLocalityEmbargo(data.Tag,localities.homeLocality,localityEmbargoService);}
postcodeSuburbValue=data.Tag;removeClassOnField(invalidFieldClass,postcodeSuburbField);enableField(streetNameField);}else{disableAndClearOtherFieldsDependOn(postcodeSuburbField,true);}});streetNameField.autocomplete(localityActionUris.localityStreetName,{dataType:'jsonp',extraParams:{locality:function(){return postcodeSuburbField.val();}},parse:this.parseStreetData,formatItem:this.formatStreetData,matchContains:false,matchSubset:true,scroll:false,selectFirst:true,autoFill:false}).result(function(event,data,formatted){if(data){parseAddressData(data.Tag,streetNameField);if($.trim(data.Tag)!==$.trim(streetNameValue)){disableAndClearOtherFieldsDependOn(streetNameField,false);}
streetNameValue=data.Tag;removeClassOnField(invalidFieldClass,streetNameField);enableField(streetNumberField);}else{disableAndClearOtherFieldsDependOn(streetNameField,true);}});streetNumberField.autocomplete(localityActionUris.localityStreetNumber,{dataType:'jsonp',max:10,extraParams:{locality:function(){return postcodeSuburbField.val();},streetName:function(){return streetName;},streetType:function(){return streetType;},streetSuffix:function(){return streetSuffix;}},parse:this.parseStreetNumberData,formatItem:this.formatStreetNumberData,scroll:false,matchContains:false,matchSubset:true,selectFirst:true,autoFill:false}).result(function(event,data,formatted){if(data){parseAddressData(data.Tag,streetNumberField);if($.trim(data.Tag)!==$.trim(streetNumberValue)){disableAndClearOtherFieldsDependOn(streetNumberField,false);}
streetNumberValue=data.Tag;setUnitNumberRequiredValue(streetNumberValue);removeClassOnField(invalidFieldClass,streetNumberField);enableField(unitNumberField);checkUnitNumberMandatoryOrOpt(unitNumberField);}else{disableAndClearOtherFieldsDependOn(streetNumberField,true);}});unitNumberField.autocomplete(localityActionUris.localityUnitNumber,{dataType:'jsonp',max:10,extraParams:{locality:function(){return postcodeSuburbField.val();},streetName:function(){return streetName;},streetType:function(){return streetType;},streetSuffix:function(){return streetSuffix;},lotNumber:function(){return lotNumber;},houseNumber1:function(){return houseNumber1;},houseNumberSuffix1:function(){return houseNumberSuffix1;},houseNumber2:function(){return houseNumber2;},houseNumberSuffix2:function(){return houseNumberSuffix2;}},parse:this.parseUnitNumberData,formatItem:this.formatUnitNumberData,scroll:false,matchContains:false,matchSubset:true,selectFirst:true,autoFill:false}).result(function(event,data,formatted){if(data){unitNumberValue=data.Tag;removeClassOnField(unitFieldValidation.requiredClass,unitNumberField);removeClassOnField(invalidFieldClass,unitNumberField);}});};this.init();};ev.frontEnd.component.addressMatchers={};ev.frontEnd.component.registerAddressMatcher=function(section,options,addressMatcherUrl){var addressMatcher=ev.frontEnd.component.addressMatcher(options,addressMatcherUrl);var sectionAddressMatcher=ev.frontEnd.component.addressMatchers[section];if(!sectionAddressMatcher){ev.frontEnd.component.addressMatchers[section]={};ev.frontEnd.component.addressMatchers[section].matchers=[];ev.frontEnd.component.addressMatchers[section].onComplete=[];sectionAddressMatcher=ev.frontEnd.component.addressMatchers[section];}
sectionAddressMatcher.matchers.push({id:addressMatcher.options.addressBlock,matcher:addressMatcher});if(options.onComplete){sectionAddressMatcher.onComplete.push(options.onComplete);}};ev.frontEnd.component.unregisterAddressMatcher=function(section,addressMatcherId){for(var i=0;i<ev.frontEnd.component.addressMatchers[section].matchers.length;i++){if(ev.frontEnd.component.addressMatchers[section].matchers[i]&&ev.frontEnd.component.addressMatchers[section].matchers[i].id===addressMatcherId){delete ev.frontEnd.component.addressMatchers[section].matchers[i];break;}}
for(i=0;i<ev.frontEnd.component.addressMatchers[section].matchers.length;i++){if(ev.frontEnd.component.addressMatchers[section].matchers[i]){return;}}
delete ev.frontEnd.component.addressMatchers[section];};ev.frontEnd.component.matchAddresses=function(section,callback){var sectionAddressMatcher=ev.frontEnd.component.addressMatchers[section];if(sectionAddressMatcher&&sectionAddressMatcher.matchers.length>0){sectionAddressMatcher.onComplete.push(callback);for(var i=0;i<sectionAddressMatcher.matchers.length;i++){if(sectionAddressMatcher.matchers[i]){sectionAddressMatcher.matchers[i].matcher.remainingMatchers=sectionAddressMatcher.matchers.slice(i+1);sectionAddressMatcher.matchers[i].matcher.onComplete=sectionAddressMatcher.onComplete;sectionAddressMatcher.matchers[i].matcher.validateAddress();return;}}}};ev.frontEnd.component.addressMatcherQuoteUpdater={};ev.frontEnd.component.addressMatcher=function(options,addressMatcherUrl){var matcher={options:options,addressMatcherUrl:addressMatcherUrl};matcher.responseHandlingOptions={exactMatch:{message:[{text:"We have found an exact match for {addressType} address ("},{text:"{displayAddress}",css:{"font-weight":"bold"}},{text:").  Please select the address to continue."}],showConfirmation:false,showAddressSelector:false,showAddressAsEnteredOption:false,showCloseButton:false,closeButtonText:"",canChangeLocality:false},singleMatch:{message:[{text:"A possible match for {addressType} address ("},{text:"{displayAddress}",css:{"font-weight":"bold"}},{text:") has been found.  Please confirm that the address is correct."}],showConfirmation:true,showAddressSelector:true,showAddressAsEnteredOption:true,showCloseButton:false,closeButtonText:"",canChangeLocality:true},multipleMatch:{message:[{text:"We could not find an exact match for {addressType} address ("},{text:"{displayAddress}",css:{"font-weight":"bold"}},{text:").  Possible matches are shown below.  Please select the correct address from the list."}],showConfirmation:true,showAddressSelector:true,showAddressAsEnteredOption:true,showCloseButton:false,closeButtonText:"",canChangeLocality:true},noMatch:{message:[{text:"We could not find any matches for {addressType} address ("},{text:"{displayAddress}",css:{"font-weight":"bold"}},{text:")."}],showConfirmation:true,showAddressSelector:false,showAddressAsEnteredOption:false,showCloseButton:true,closeButtonText:"OK",canChangeLocality:false},error:{message:[{text:"We could not find any matches for {addressType} address ("},{text:"{displayAddress}",css:{"font-weight":"bold"}},{text:").  We will assume this is correct as entered."}],showConfirmation:true,showAddressSelector:false,showAddressAsEnteredOption:false,showCloseButton:true,closeButtonText:"OK",canChangeLocality:false}};matcher.LOCALITY_CHANGE_WARNING="If you select an address in a different suburb, your quote will be re-calculated and may change.";matcher.init=function(){var addressBlockId=".addressMatcher-address";if(matcher.options.addressBlock){addressBlockId=options.addressBlock;}
matcher.container=jQuery(addressBlockId);matcher.fields={unitNo:matcher.container.find(".addressMatcher-unitNo"),streetNo:matcher.container.find(".addressMatcher-streetNo"),streetName:matcher.container.find(".addressMatcher-streetName"),suburb:matcher.container.find(".addressMatcher-suburb"),state:matcher.container.find(".addressMatcher-state"),postcode:matcher.container.find(".addressMatcher-postcode"),poBox:matcher.container.find(".addressMatcher-poBox"),locality:matcher.container.find(".addressMatcher-locality"),dpid:matcher.container.find(".addressMatcher-dpid"),gnafid:matcher.container.find(".addressMatcher-gnafid")};matcher.checkButton=jQuery(addressBlockId+" .addressMatcher-checkButton");matcher.checkButton.click(function(){ev.frontEnd.startSpinners(["validating "+(!!(matcher.options.addressType)?matcher.options.addressType+" ":"")+"address",matcher.getDisplayAddress()]);matcher.checkButton.attr("disabled","disabled");jQuery.getJSON(matcher.addressMatcherUrl,matcher.getAddressURI(),matcher.processMatchResponse);});matcher.container.find(":text").keyup(function(){matcher.fields.dpid.val("");matcher.checkButton.removeAttr("disabled");});};matcher.validateAddress=function(){matcher.currentAddress=matcher.getDisplayAddress();if(matcher.fields.dpid.val()!==""||!matcher.currentAddress||matcher.currentAddress===""){matcher.complete();return;}
ev.frontEnd.startSpinners(["validating "+(!!(matcher.options.addressType)?matcher.options.addressType+" ":"")+"address",{text:matcher.currentAddress.toUpperCase(),css:{"font-weight":"bold"}}]);jQuery.getJSON(matcher.addressMatcherUrl,matcher.getAddressURI(),matcher.processMatchResponse);};matcher.processMatchResponse=function(data){var matchType="error";if(data){if(!data.FuzzySearch){var address=data.Addresses[0];if(data.ExactMatch){matchType="exactMatch";}else{matchType="singleMatch";}}else if(data.Addresses){if(data.Addresses.length>=1){matchType="multipleMatch";}else{matchType="noMatch";}}}
matcher.showAddressSelector(data,matchType);};matcher.showAddressSelector=function(data,matchType){var responseOptions=matcher.responseHandlingOptions[matchType];if(!responseOptions.showConfirmation){if(data&&data.Addresses&&data.Addresses[0]){matcher.selectAddress(data.Addresses[0]);}
return;}
var msg=responseOptions.message;var table=jQuery("<div />").attr("id","display-content").css("height",responseOptions.showAddressSelector?(responseOptions.canChangeLocality&&matcher.options.onLocalityChanged?"90%":"95%"):"50%");var msgDiv=jQuery("<div />").attr("id","am-result").css("padding","5px");for(var i=0;i<msg.length;i++){var msgSpan=jQuery("<span />");if(msg[i].css){msgSpan.css(msg[i].css);}
msgSpan.text(msg[i].text.replace(/\{addressType\}/,matcher.options.addressType).replace(/\{displayAddress\}/,matcher.currentAddress.toUpperCase()));msgDiv.append(msgSpan);}
table.append(msgDiv);if(responseOptions.canChangeLocality&&matcher.options.onLocalityChanged){table.append(jQuery("<div />").css("padding","5px").text(matcher.LOCALITY_CHANGE_WARNING));}
if(responseOptions.showAddressSelector){table.append(jQuery("<div />").css("height",responseOptions.showCloseButton?"60%":"75%").css("overflow","auto").addClass("am_results").append(jQuery("<ul />").mouseover(function(event){if(matcher.target(event).nodeName&&matcher.target(event).nodeName.toUpperCase()==="LI"){jQuery("li",table).removeClass("am_over");jQuery(matcher.target(event)).addClass("am_over");}}).click(function(event){if(matcher.target(event).nodeName&&matcher.target(event).nodeName.toUpperCase()==="LI"){if(jQuery(matcher.target(event)).data("address")){matcher.selectAddress(jQuery(matcher.target(event)).data("address"));}}})));var ul=table.find("ul");if(data&&data.Addresses){for(var j=0;j<data.Addresses.length;j++){var address=data.Addresses[j];jQuery("<li />").addClass(j%2===0?"am_even":"am_odd").data("address",address).text(matcher.formatAddress(address)).appendTo(ul);}}
if(responseOptions.showAddressAsEnteredOption){jQuery("<li />").addClass("am_highlight").data("address","as-is").text("My address "+matcher.currentAddress.toUpperCase()+" is correct as entered").appendTo(ul);}}
if(responseOptions.showCloseButton){jQuery("#updatingMessage .addressmatcher-close-div").css("display","block");jQuery("#updatingMessage .addressmatcher-close").bind("click.addressmatcher",function(){jQuery("#updatingMessage .addressmatcher-close").unbind("click.addressmatcher");jQuery("#updatingMessage .addressmatcher-close-div").css("display","none");matcher.selectAddress("as-is");});}else{jQuery("#updatingMessage .addressmatcher-close-div").css("display","none");}
if(responseOptions.closeButtonText){jQuery("#updatingMessage .addressmatcher-close").text(responseOptions.closeButtonText);}
jQuery("#updatingMessage").css("top","0").css("height","100%").find("#display-content").replaceWith(table);};matcher.selectAddress=function(address){if(address&&address!=="as-is"){var localityChanged=matcher.setAddressAndCheckForLocalityChange(address);if(localityChanged&&matcher.options.onLocalityChanged){matcher.options.onLocalityChanged(address.Locality);}}else{matcher.fields.dpid.val("0");}
matcher.complete();};matcher.complete=function(){matcher.currentAddress="";if(this.remainingMatchers&&this.remainingMatchers.length>0){for(var i=0;i<this.remainingMatchers.length;i++){if(this.remainingMatchers[i]){this.remainingMatchers[i].matcher.remainingMatchers=this.remainingMatchers.slice(i+1);this.remainingMatchers[i].matcher.onComplete=this.onComplete;this.remainingMatchers[i].matcher.validateAddress();return;}}}
matcher.checkButton.removeAttr("disabled");if(this.onComplete&&this.onComplete.length>0){jQuery.each(this.onComplete,function(i,callback){callback();});}else{ev.frontEnd.stopSpinners();}};matcher.setAddressAndCheckForLocalityChange=function(address){var localityChanged=false;matcher.fields.unitNo.val(address.UnitNumber===null||address.UnitNumber===""?"":address.UnitNumber);matcher.fields.streetNo.val(address.StreetNumber===null||address.StreetNumber===""?"":address.StreetNumber);matcher.fields.streetName.val(address.StreetName===null||address.StreetName===""?"":address.StreetName);matcher.fields.poBox.val(address.PostOfficeBox===null||address.PostOfficeBox===""?"":address.PostOfficeBox);matcher.fields.dpid.val(address.Dpid===null||address.Dpid===""?"":address.Dpid);if(matcher.fields.locality&&matcher.fields.locality.length>0){var newLocality=address.Locality.Postcode+" "+address.Locality.Suburb+" "+address.Locality.State;localityChanged=matcher.fields.locality.val().toUpperCase()!==newLocality.toUpperCase();matcher.fields.locality.val(newLocality);matcher.fields.locality.get(0).defaultValue=newLocality;}else{localityChanged=matcher.fields.suburb.text().replace(/[^A-Za-z0-9 ]/g,"").toUpperCase()!==address.Locality.Suburb.toUpperCase()||matcher.fields.postcode.text().replace(/[^A-Za-z0-9 ]/g,"").toUpperCase()!==address.Locality.Postcode.toUpperCase()||matcher.fields.state.text().replace(/[^A-Za-z0-9 ]/g,"").toUpperCase()!==address.Locality.State.toUpperCase();matcher.fields.suburb.text(address.Locality.Suburb);matcher.fields.state.text(address.Locality.State);matcher.fields.postcode.text(address.Locality.Postcode);}
return localityChanged;};matcher.getDisplayAddress=function(){var address="";var sep="";if(matcher.fields.poBox&&matcher.fields.poBox.val()){var poBox=matcher.fields.poBox.val();if(poBox.match(/^\d+$/)){poBox="PO Box "+poBox;}
address+=sep+poBox;sep=", ";}else{if(matcher.fields.unitNo&&matcher.fields.unitNo.val()){address+=sep+matcher.fields.unitNo.val();sep="/";}
if(matcher.fields.streetNo&&matcher.fields.streetNo.val()){address+=sep+matcher.fields.streetNo.val();sep=" ";}
if(matcher.fields.streetName&&matcher.fields.streetName.val()){address+=sep+matcher.fields.streetName.val();sep=", ";}}
if(matcher.fields.locality&&matcher.fields.locality.val()){address+=sep+matcher.fields.locality.val();sep=" ";}else{if(matcher.fields.suburb&&matcher.fields.suburb.text().replace(/[^A-Za-z0-9 ]/g,"")){address+=sep+matcher.fields.suburb.text().replace(/[^A-Za-z0-9 ]/g,"");sep=" ";}
if(matcher.fields.state&&matcher.fields.state.text().replace(/[^A-Za-z0-9 ]/g,"")){address+=sep+matcher.fields.state.text().replace(/[^A-Za-z0-9 ]/g,"");sep=" ";}
if(matcher.fields.postcode&&matcher.fields.postcode.text().replace(/[^A-Za-z0-9 ]/g,"")){address+=sep+matcher.fields.postcode.text().replace(/[^A-Za-z0-9 ]/g,"");sep=" ";}}
if(address==="postcode/suburb"){address="";}
return address;};matcher.getAddressURI=function(){var address="";var sep="";if(matcher.fields.poBox&&matcher.fields.poBox.val()){var poBox=matcher.fields.poBox.val();if(poBox.match(/^\d+$/)){poBox="PO BOX "+poBox;}
address+=sep+"POBox="+encodeURI(poBox);sep="&";}
if(matcher.fields.unitNo&&matcher.fields.unitNo.val()){address+=sep+"UnitNumber="+encodeURI(matcher.fields.unitNo.val());sep="&";}
if(matcher.fields.streetNo&&matcher.fields.streetNo.val()){address+=sep+"StreetNumber="+encodeURI(matcher.fields.streetNo.val());sep="&";}
if(matcher.fields.streetName&&matcher.fields.streetName.val()){address+=sep+"StreetName="+encodeURI(matcher.fields.streetName.val());sep="&";}
if(matcher.fields.suburb&&matcher.fields.suburb.text()){address+=sep+"Suburb="+encodeURI(matcher.fields.suburb.text().replace(/[^A-Za-z0-9 ]/g,""));sep="&";}
if(matcher.fields.state&&matcher.fields.state.text()){address+=sep+"State="+encodeURI(matcher.fields.state.text().replace(/[^A-Za-z0-9 ]/g,""));sep="&";}
if(matcher.fields.postcode&&matcher.fields.postcode.text()){address+=sep+"Postcode="+encodeURI(matcher.fields.postcode.text().replace(/[^A-Za-z0-9 ]/g,""));sep="&";}
if(matcher.fields.locality&&matcher.fields.locality.val()){address+=sep+"Locality="+encodeURI(matcher.fields.locality.val());sep="&";}
if(matcher.fields.locality&&matcher.fields.locality.val()){address+=sep+"GnafID="+encodeURI(matcher.fields.gnafid.val());sep="&";}
return address;};matcher.formatAddress=function(address){return((address.PostOfficeBox&&address.PostOfficeBox!=="")?(address.PostOfficeBox+" "):(((address.UnitNumber&&address.UnitNumber!=="")?""+address.UnitNumber+"/":"")+address.StreetNumber+" "+address.StreetName+", "))+address.Locality.Suburb+"  "+address.Locality.State+"  "+address.Locality.Postcode;};matcher.target=function(event){var element=event.target;while(element&&element.tagName!=="LI"){element=element.parentNode;}
if(!element){return[];}
return element;};matcher.init();return matcher;};

(function($){ev.frontEnd.checkDeclineHomeType=function(homeType,homeCoverType){var homeTypeDeclineFlag;var homeTypeMsgID;for(var i=0;i<ev.frontEnd.homeDecline.homeTypeArray.length;i++){if(ev.frontEnd.homeDecline.homeTypeArray[i].homeTypeID===homeType.state()){if(homeCoverType.state()===ev.frontEnd.coverType.contents){homeTypeDeclineFlag=ev.frontEnd.homeDecline.homeTypeArray[i].contentsDeclineFlag.toUpperCase();homeTypeMsgID=ev.frontEnd.homeDecline.homeTypeArray[i].contentsMsgID;}else{homeTypeDeclineFlag=ev.frontEnd.homeDecline.homeTypeArray[i].buildingDeclineFlag.toUpperCase();homeTypeMsgID=ev.frontEnd.homeDecline.homeTypeArray[i].buildingMsgID;}
if(homeTypeDeclineFlag==="Y"){if(homeTypeMsgID==="002"){ev.frontEnd.showHomeDeclineModal("#declinedHomeType002ErrorMsg",homeType);}else{ev.frontEnd.showHomeDeclineModal("#declinedHomeType001ErrorMsg",homeType);}}}}};ev.frontEnd.checkDeclineWallType=function(wallType){for(var i=0;i<ev.frontEnd.homeDecline.wallTypeArray.length;i++){if(ev.frontEnd.homeDecline.wallTypeArray[i].wallTypeID===wallType.state()&&ev.frontEnd.homeDecline.wallTypeArray[i].declineFlag.toUpperCase()==="Y"){ev.frontEnd.showHomeDeclineModal("#declinedWallTypeErrorMsg",wallType);}}};ev.frontEnd.checkDeclineRoofType=function(roofType){for(var i=0;i<ev.frontEnd.homeDecline.roofTypeArray.length;i++){if(ev.frontEnd.homeDecline.roofTypeArray[i].roofTypeID===roofType.state()&&ev.frontEnd.homeDecline.roofTypeArray[i].declineFlag.toUpperCase()==="Y"){ev.frontEnd.showHomeDeclineModal("#declinedRoofTypeErrorMsg",roofType);}}};ev.frontEnd.checkDeclineYearBuilt=function(yearBuilt){for(var i=0;i<ev.frontEnd.homeDecline.yearBuildArray.length;i++){if(ev.frontEnd.homeDecline.yearBuildArray[i].yearBuiltID===yearBuilt.state()&&ev.frontEnd.homeDecline.yearBuildArray[i].declineFlag.toUpperCase()==="Y"){ev.frontEnd.showHomeDeclineModal("#declinedYearBuildingWasBuiltErrorMsg",yearBuilt);}}};ev.frontEnd.checkBuildingValueLimit=function(buildingValue){if(buildingValue.state()!==""){if(buildingValue.state()>ev.frontEnd.homeDecline.building.maxValue){ev.frontEnd.showHomeDeclineModal("#buildingValueMaxLimitErrorMsg",buildingValue);}else if(buildingValue.state()<ev.frontEnd.homeDecline.building.minValue){ev.frontEnd.showHomeDeclineModal("#buildingValueMinLimitErrorMsg",buildingValue);}}};ev.frontEnd.checkContentsValueLimit=function(contentsValue){if(contentsValue.state()!==""){if(contentsValue.state()>ev.frontEnd.homeDecline.contents.maxValue){ev.frontEnd.showHomeDeclineModal("#contentsValueMaxLimitErrorMsg",contentsValue);}else if(contentsValue.state()<ev.frontEnd.homeDecline.contents.minValue){ev.frontEnd.showHomeDeclineModal("#contentsValueMinLimitErrorMsg",contentsValue);}}};ev.frontEnd.checkContentsValueLimitNotClear=function(contentsValue){if(contentsValue.state()!==""){if(contentsValue.state()>ev.frontEnd.homeDecline.contents.maxValue){ev.frontEnd.showHomeDeclineModalNotClear("#contentsValueMaxLimitErrorMsg",contentsValue);}else if(contentsValue.state()<ev.frontEnd.homeDecline.contents.minValue){ev.frontEnd.showHomeDeclineModalNotClear("#contentsValueMinLimitErrorMsg",contentsValue);}}};ev.frontEnd.checkAgeOfOldestResidentLimit=function(ageOfOldestResident){if(ageOfOldestResident.state()!==""){if(ageOfOldestResident.state()>ev.frontEnd.homeDecline.ageOfOldestResident.maxValue){ev.frontEnd.showHomeDeclineModal("#ageOfOldestResidentMaxLimitErrorMsg",ageOfOldestResident);}else if(ageOfOldestResident.state()<ev.frontEnd.homeDecline.ageOfOldestResident.minValue){ev.frontEnd.showHomeDeclineModal("#ageOfOldestResidentMinLimitErrorMsg",ageOfOldestResident);}}};ev.frontEnd.checkWeeklyRentLimit=function(weeklyRent){if(weeklyRent.state()!==""){if(weeklyRent.state()>ev.frontEnd.homeDecline.weeklyRent.maxValue){ev.frontEnd.showHomeDeclineModal("#weeklyRentMaxLimitErrorMsg",weeklyRent);}else if(weeklyRent.state()<ev.frontEnd.homeDecline.weeklyRent.minValue){ev.frontEnd.showHomeDeclineModal("#weeklyRentMinLimitErrorMsg",weeklyRent);}}};ev.frontEnd.showHomeDeclineModal=function(msgDivID,domObj){$(msgDivID).modal({overlayId:'homedetailsmodal-overlay',containerId:'homedetailsmodal-container',position:[200],closeClass:"modalCloseImg",onClose:function(dialog){if(domObj){domObj.resetState();}
$.modal.close();}});};ev.frontEnd.showHomeDeclineModalNotClear=function(msgDivID,domObj){$(msgDivID).modal({overlayId:'homedetailsmodal-overlay',containerId:'homedetailsmodal-container',position:[200],closeClass:"modalCloseImg",onClose:function(dialog){ev.frontEnd.fetchHomeCoverageDetails();$.modal.close();}});};})(jQuery);

function HomeQuickQuoteBehaviour(startQuoteUrl,ajaxLoadedCallback,homeProductTypeValue,landlordsProductTypeValue,cmsTrackerCallback){var refreshCoverTypeBehaviour=function(){refreshCoverType(this);}.bind(this);this.homeProductType.stateChange(refreshCoverTypeBehaviour,true).stateChange();this.defaultState({homeProductType:homeProductTypeValue,homeType:ev.frontEnd.constants.pleaseSelect,wallType:ev.frontEnd.constants.pleaseSelect,roofType:ev.frontEnd.constants.pleaseSelect,yearBuildingWasBuilt:ev.frontEnd.constants.pleaseSelect,buildingValue:"",contentsValue:"",ageOfOldestResident:"",weeklyRent:""});this.startQuoteUrl=startQuoteUrl;this.ajaxLoadedCallback=ajaxLoadedCallback;this.cmsTrackerCallback=cmsTrackerCallback;var ageOfOldestContainer=this.findOne("div#ageOfOldestResidentDiv");var weeklyRentContainer=this.findOne("div#weeklyRentDiv");this.homeProductType.showHide(ageOfOldestContainer,homeProductTypeValue,true);this.homeProductType.showHide(weeklyRentContainer,landlordsProductTypeValue,true);if(!this.customerSelector){this.customerSelector=$(":radio[name=customerSelector]");}
this.startGeocodeCheckAndQuote=function(){if(ev.frontEnd.geocodeService.localityContainer.hasClass(ev.frontEnd.geocodeService.localityGeocodeClass)){ev.frontEnd.component.checkGeocode(ev.frontEnd.geocodeService,this.startQuote.bind(this));}else{this.startQuote();}};this.find("#submitQuickQuote").click(function(){if($("#quickQuoteForm").valid()){this.cmsTrackerCallback();if(this.customerSelector&&this.customerSelector.state()==="NewCustomer"){ev.widget.startYesNoPopup(ev.message.myBuzzQuickQuoteWidgetText.Value,this.startGeocodeCheckAndQuote.bind(this),function(){});}
else{this.startGeocodeCheckAndQuote();}}}.bind(this));var form=this.is('form')?this:this.parents('form');form.validate($.extend({},ev.defaultValidationOptions,{rules:{homeLocality:{required:true,validAutocompleteOptionSelectedForHomeLocality:true},localitystreetname:{required:true,validAutocompleteOptionSelectedForStreetName:true},localitystreetnumber:{required:true,validAutocompleteOptionSelectedForStreetNumber:true},localityunitnumber:{required:false,validAutocompleteOptionSelectedForUnitNumber:true,validUnitNumberIfRequired:true},homeType:{validSelectionRequiredIfEnabled:true},homeCoverType:{required:true},wallType:{validSelectionRequiredIfEnabled:true},roofType:{validSelectionRequiredIfEnabled:true},yearBuildingWasBuilt:{validSelectionRequiredIfEnabled:true},buildingValue:{requiredIgnoreDisabled:true},contentsValue:{requiredIgnoreDisabled:true},ageOfOldestResident:{requiredIgnoreDisabled:true},weeklyRent:{requiredIgnoreDisabled:true}},messages:{homeCoverType:{required:"Please select cover type"},homeLocality:{required:"Please enter postcode/suburb",validAutocompleteOptionSelectedForHomeLocality:"Please re-enter postcode"},localitystreetname:{required:"Please enter street name",validAutocompleteOptionSelectedForStreetName:"Please enter a valid street name"},localitystreetnumber:{required:"Please enter street number",validAutocompleteOptionSelectedForStreetNumber:"Please enter a valid street number"},localityunitnumber:{validAutocompleteOptionSelectedForUnitNumber:"Please enter a valid unit number",validUnitNumberIfRequired:"Please enter unit number"},buildingValue:{requiredIgnoreDisabled:"Please enter building value"},contentsValue:{requiredIgnoreDisabled:"Please enter contents value"},ageOfOldestResident:{requiredIgnoreDisabled:"Please enter age of oldest resident"},weeklyRent:{requiredIgnoreDisabled:"Please enter weekly rent"}},errorPlacement:function(error,element){if(element.hasClass("evaluation-value")&&element.siblings("a.calculator").length===1){error.insertAfter(element.siblings("a.calculator"));}else if(element.attr('type')==='radio'){var insertAt=element.parents().find(':radio[name='+element.attr('name')+']').siblings('label:last');if(element.attr("name")==="homeCoverType"){insertAt=$("#CoverTypeContainer").find("div:last");}
if(insertAt.size()>0){error.insertAfter(insertAt);}else{error.insertAfter(element);}}else{error.insertAfter(element);}}}));if($.browser.msie){this.homeCoverType.click(function(){setTimeout(function(){$('#buildingValue').hide().show();$('#contentsValue').hide().show();},500);});}}
$.extend(HomeQuickQuoteBehaviour.prototype,{startQuote:function(){var postData=$(":radio[name=customerSelector], #quickQuoteForm").serialize();$.post(this.startQuoteUrl,postData,this.ajaxLoadedCallback,"jsonp");}});function combinedCoverBehaviour(form){$(form.wallType.parent()).slideDown("fast");$(form.roofType.parent()).slideDown("fast");$(form.yearBuildingWasBuilt.parent()).slideDown("fast");$(form.buildingValue.parent()).slideDown("fast");$(form.contentsValue.parent()).slideDown("fast");ev.frontEnd.checkDeclineHomeType(form.homeType,form.homeCoverType);var quoteStepTwoAccordion=$('#quoteStepTwo').data("expandable");var secureStepOneAccordion=$('#secureStepOne').data("expandable");var secureStepThreeAccordion=$('#secureStepThree').data("expandable");if(ev.frontEnd.prevSelectedCoverType===ev.frontEnd.coverType.building){if(quoteStepTwoAccordion){quoteStepTwoAccordion.setStatus(ev.frontEnd.accordionStatus.inProgress);}}else{if(quoteStepTwoAccordion){quoteStepTwoAccordion.setStatus(ev.frontEnd.accordionStatus.inProgress);}
if(secureStepOneAccordion&&secureStepThreeAccordion){secureStepOneAccordion.setStatus(ev.frontEnd.accordionStatus.inProgress);secureStepThreeAccordion.setStatus(ev.frontEnd.accordionStatus.inProgress);}}
ev.frontEnd.prevSelectedCoverType=ev.frontEnd.coverType.combined;}
function buildingCoverBehaviour(form){$(form.wallType.parent()).slideDown("fast");$(form.roofType.parent()).slideDown("fast");$(form.yearBuildingWasBuilt.parent()).slideDown("fast");$(form.buildingValue.parent()).slideDown("fast");$(form.contentsValue.parent()).slideUp("fast");$(form.contentsValue).resetState();ev.frontEnd.checkDeclineHomeType(form.homeType,form.homeCoverType);var quoteStepTwoAccordion=$('#quoteStepTwo').data("expandable");var quoteStepThreeAccordion=$('#quoteStepThree').data("expandable");var secureStepOneAccordion=$('#secureStepOne').data("expandable");var secureStepThreeAccordion=$('#secureStepThree').data("expandable");if(ev.frontEnd.prevSelectedCoverType===ev.frontEnd.coverType.contents){if(quoteStepTwoAccordion){quoteStepTwoAccordion.setStatus(ev.frontEnd.accordionStatus.inProgress);}
if(quoteStepThreeAccordion){if(quoteStepThreeAccordion.getStatus()!==ev.frontEnd.accordionStatus.notStarted){quoteStepThreeAccordion.setStatus(ev.frontEnd.accordionStatus.inProgress);}
if(typeof currentBusinessType!=='undefined'&&currentBusinessType==="Mta"||currentBusinessType==="Renewal"){quoteStepThreeAccordion.setStatus(ev.frontEnd.accordionStatus.completed);}}
if(secureStepOneAccordion&&secureStepThreeAccordion){secureStepOneAccordion.setStatus(ev.frontEnd.accordionStatus.inProgress);secureStepThreeAccordion.setStatus(ev.frontEnd.accordionStatus.inProgress);}}else if(ev.frontEnd.prevSelectedCoverType===ev.frontEnd.coverType.combined){if(quoteStepThreeAccordion){if(quoteStepThreeAccordion.getStatus()!==ev.frontEnd.accordionStatus.notStarted){quoteStepThreeAccordion.setStatus(ev.frontEnd.accordionStatus.inProgress);}
if(typeof currentBusinessType!=='undefined'&&currentBusinessType==="Mta"||currentBusinessType==="Renewal"){quoteStepTwoAccordion.setStatus(ev.frontEnd.accordionStatus.completed);quoteStepThreeAccordion.setStatus(ev.frontEnd.accordionStatus.completed);}}}
ev.frontEnd.prevSelectedCoverType=ev.frontEnd.coverType.building;}
function contentsCoverBehaviour(form){$(form.wallType.parent()).slideUp("fast");$(form.roofType.parent()).slideUp("fast");$(form.yearBuildingWasBuilt.parent()).slideUp("fast");$(form.buildingValue.parent()).slideUp("fast");$(form.contentsValue.parent()).slideDown("fast");$(form.wallType).resetState();$(form.roofType).resetState();$(form.yearBuildingWasBuilt).resetState();$(form.buildingValue).resetState();var quoteStepTwoAccordion=$('#quoteStepTwo').data("expandable");var quoteStepThreeAccordion=$('#quoteStepThree').data("expandable");if(ev.frontEnd.prevSelectedCoverType===ev.frontEnd.coverType.building){if(quoteStepTwoAccordion){if(quoteStepTwoAccordion.getStatus()!==ev.frontEnd.accordionStatus.notStarted){quoteStepTwoAccordion.setStatus(ev.frontEnd.accordionStatus.inProgress);if(typeof currentBusinessType!=='undefined'&&currentBusinessType==="Mta"||currentBusinessType==="Renewal"){quoteStepThreeAccordion.setStatus(ev.frontEnd.accordionStatus.completed);}}}}else if(ev.frontEnd.prevSelectedCoverType===ev.frontEnd.coverType.combined){if(quoteStepThreeAccordion){if(typeof currentBusinessType!=='undefined'&&currentBusinessType==="Mta"||currentBusinessType==="Renewal"){quoteStepTwoAccordion.setStatus(ev.frontEnd.accordionStatus.completed);quoteStepThreeAccordion.setStatus(ev.frontEnd.accordionStatus.completed);}}}
ev.frontEnd.prevSelectedCoverType=ev.frontEnd.coverType.contents;}
function refreshCoverType(form){var building=$('input[id=homeCoverType_Building]:radio').val();var contents=$('input[id=homeCoverType_Contents]:radio').val();if($(form.homeProductType).state()===ev.frontEnd.productType.home){$('input[id=homeCoverType_Building]:radio').val(building.replace("L","H"));$('input[id=homeCoverType_Contents]:radio').val(contents.replace("L","H"));ev.frontEnd.coverType.building=ev.frontEnd.coverType.building.replace("L","H");ev.frontEnd.coverType.contents=ev.frontEnd.coverType.contents.replace("L","H");}else{$('input[id=homeCoverType_Building]:radio').val(building.replace("H","L"));$('input[id=homeCoverType_Contents]:radio').val(contents.replace("H","L"));ev.frontEnd.coverType.building=ev.frontEnd.coverType.building.replace("H","L");ev.frontEnd.coverType.contents=ev.frontEnd.coverType.contents.replace("H","L");}
$('input[id=homeCoverType_Combined]:radio').val($('input[id=homeCoverType_Building]:radio').val()+","+$('input[id=homeCoverType_Contents]:radio').val());ev.frontEnd.coverType.combined=ev.frontEnd.coverType.building+","+ev.frontEnd.coverType.contents;}
function HomeDetailsCoverTypeBehaviour(){var coverBehaviour=function(){refreshCoverType(this);if(this.homeCoverType.state()===ev.frontEnd.coverType.combined){combinedCoverBehaviour(this);}else if(this.homeCoverType.state()===ev.frontEnd.coverType.building){buildingCoverBehaviour(this);}else{contentsCoverBehaviour(this);}}.bind(this);this.defaultState({homeCoverType:ev.frontEnd.coverType.combined});this.homeCoverType.stateChange(coverBehaviour,true).stateChange();}
function HomeMyQuoteWidgetBehaviour(){var quickQuoteSummaryForm=$('#myQuoteStepOne').getParcel();quickQuoteSummaryForm.homeProductType.showHide($('#quoteRightWrapper span#upgradeLevel').parent(),'PHH');var coverType_MyQuoteWidget_BeforeClick='';var buttonBehaviour=function(){if(coverType_MyQuoteWidget_BeforeClick!==quickQuoteSummaryForm.homeCoverType.state()){if(quickQuoteSummaryForm.homeCoverType.state()===ev.frontEnd.coverType.combined){$(".cover-type-btn").text(ev.frontEnd.combinedButton);}else if(quickQuoteSummaryForm.homeCoverType.state()===ev.frontEnd.coverType.building){$(".cover-type-btn").text(ev.frontEnd.contentsButton);}else{$(".cover-type-btn").text(ev.frontEnd.buildingButton);}
coverType_MyQuoteWidget_BeforeClick=quickQuoteSummaryForm.homeCoverType.state();}}.bind(this);buttonBehaviour();quickQuoteSummaryForm.homeCoverType.click(buttonBehaviour);$(".home-summary-option").click(function(){var textContent=$(this).findOne("span").text();if((textContent===ev.frontEnd.combinedButton)||(textContent===ev.frontEnd.contentsButton)||(textContent===ev.frontEnd.buildingButton)){$("#fullQuoteModule").data("expandable").open();$("#myQuoteStepOne").data("expandable").open();}else{$("#fullQuoteModule").data("expandable").open();$("#quoteStepOne").data("expandable").open();}});}
function HomePolicyMyAdditionalPropertyBehaviour(){var buildingCoverTypeValue=ev.frontEnd.coverType.building;var contentsCoverTypeValue=ev.frontEnd.coverType.contents;var combinedCoverTypeValue=ev.frontEnd.coverType.combined;var retrieveQuote=ev.frontEnd.retrieveQuoteFromEmail;var propertyDetailDiv=$("div#propertyDetailEligibilityQuestions");var renovationsContainer=$("#propertyDetailEligibilityQuestions div[class=Renovations]");var renovationAmountContainer=$("#propertyDetailEligibilityQuestions div[class=RenovationAmount]");var watertightContainer=$("#propertyDetailEligibilityQuestions div[class=Watertight]");var coverType=$("#myQuoteStepOne").getParcel();var coverType_PropertyDetail_BeforeClick='';var coverTypeBehaviour=function(){if(coverType_PropertyDetail_BeforeClick!==coverType.homeCoverType.state()){if(coverType.homeCoverType.state()===combinedCoverTypeValue){propertyDetailDiv.find("div.StrataTitle, div.Condition, div.Renovations, div.HeritageListed").slideDown();propertyDetailDiv.find("div.StrataTitle, div.Condition, div.Renovations, div.HeritageListed").find(":radio").addClass("required");}else if(coverType.homeCoverType.state()===buildingCoverTypeValue){propertyDetailDiv.find("div.StrataTitle, div.Condition, div.Renovations, div.HeritageListed").slideDown();propertyDetailDiv.find("div.StrataTitle, div.Condition, div.Renovations, div.HeritageListed").find(":radio").addClass("required");}else{propertyDetailDiv.find("div.Condition").slideDown();propertyDetailDiv.find("div.Condition").find(":radio").addClass("required");propertyDetailDiv.find("div.StrataTitle, div.Renovations, div.RenovationAmount, div.Watertight, div.HeritageListed").slideUp();propertyDetailDiv.find("div.StrataTitle, div.Renovations, div.RenovationAmount, div.Watertight, div.HeritageListed").find(":radio").removeClass("required");propertyDetailDiv.find("div.StrataTitle, div.Renovations, div.RenovationAmount, div.Watertight, div.HeritageListed").find(":radio:checked").removeAttr("checked");}
coverType_PropertyDetail_BeforeClick=coverType.homeCoverType.state();}};$("label[for=PropertyDetail_RenovationAmountNo]").text("No");$("label[for=PropertyDetail_RenovationAmountYes]").text("Yes");this.PropertyDetail_Renovations.showHide(renovationAmountContainer,"Yes",true);this.PropertyDetail_RenovationAmount.showHide(watertightContainer,"No",true);$("#enterPolicyDetails").validate($.extend({},ev.defaultValidationOptions,{rules:{},messages:{TruthDeclaration:"To be able to insure you, please read and agree to our Terms & Conditions by clicking above"},errorPlacement:function(error,element){if(element.attr('type')==='radio'){error.insertAfter(element.siblings('label:last'));}
else if(element.attr('type')==='checkbox')
{error.insertAfter(element.parent().parent().find("div:last"));if(element.attr('name')=="TruthDeclaration")
{cms.homeDeclarationDeclineTracking(error.text());}}else{error.insertAfter(element);}}}));coverTypeBehaviour();coverType.homeCoverType.click(coverTypeBehaviour);$.each(this.fields,function(i,f){if(f.is(":radio")){f.defaultState(null);}else if(f.is(":checkbox")){f.defaultState([]);}else if(f.is("select")){f.defaultState("please select");}});this.defaultState({alarm:"NOA"});}
function HomeDetailsCheckForDeclineBehaviour(pleaseSelectText){this.homeType.change(function(){ev.frontEnd.checkDeclineHomeType(this.homeType,this.homeCoverType);}.bind(this));this.wallType.change(function(){ev.frontEnd.checkDeclineWallType(this.wallType);}.bind(this));this.roofType.change(function(){ev.frontEnd.checkDeclineRoofType(this.roofType);}.bind(this));this.yearBuildingWasBuilt.change(function(){ev.frontEnd.checkDeclineYearBuilt(this.yearBuildingWasBuilt);}.bind(this));this.buildingValue.change(function(){ev.frontEnd.checkBuildingValueLimit(this.buildingValue);}.bind(this));this.contentsValue.change(function(){if($("#comprehensiveInsuredContentsValue").length===0){ev.frontEnd.checkContentsValueLimit(this.contentsValue);}}.bind(this));this.ageOfOldestResident.change(function(){ev.frontEnd.checkAgeOfOldestResidentLimit(this.ageOfOldestResident);}.bind(this));this.weeklyRent.change(function(){ev.frontEnd.checkWeeklyRentLimit(this.weeklyRent);}.bind(this));}
function HomePropertyAndHistoryBehaviour(){var retrieveQuote=ev.frontEnd.retrieveQuoteFromEmail;var eligibilityContainer=this.findOne("div#propertyAndHistoryEligibilityQuestions");this.buildingUses.showHide(eligibilityContainer,"2",true);this.buildingUses.stateChange(function(){if(retrieveQuote)
{if(this.buildingUses.state()==='2'){var propertyAndHistoryEligibilityQuestionsContainer=$("#propertyAndHistoryEligibilityQuestions div");propertyAndHistoryEligibilityQuestionsContainer.find(":radio:checked").removeAttr("checked");}}
if(this.buildingUses.state()==='3'){ev.frontEnd.showHomeDeclineModal('#buildingUsesDeclineMessageDiv',this.buildingUses);}}.bind(this));$("#ruralPropertyNo").click(function(){if(retrieveQuote)
{var ruralPropertyEligiblityContainer=this.findOne("div#ruralPropertyEligibilityQuestions");ruralPropertyEligiblityContainer.find(":radio:checked").removeAttr("checked");}}.bind(this));this.policyInceptionDate.stateChange(function(){ev.frontEnd.inceptionDateChange();}.bind(this))
var showHideBuildingOccupancies=function(){var state=this.buildingOccupancies.state();for(var i=0;i<ev.frontEnd.buildingOccupancies.length;i++){if(ev.frontEnd.buildingOccupancies[i].code===state){if(ev.frontEnd.buildingOccupancies[i].declineCode!=="Y"&&ev.frontEnd.buildingOccupancies[i].businessRuleID==="010"){return true;}else{return false;}}}
return false;}.bind(this);$("#myQuoteStepOne").getParcel().homeProductType.click(function(){var quickQuoteSummaryForm=$('#myQuoteStepOne').getParcel();var homeProductType=quickQuoteSummaryForm.homeProductType.state();if(ev.frontEnd.SelectedProductType!==homeProductType){$('#buildingOccupancies').hide();$('#buildingOccupancies').html('');$.each(ev.frontEnd.buildingOccupanciesDetails[homeProductType],function(index,item){$('<option></option>').val(item.Value).html(item.Text).appendTo($('#buildingOccupancies'));});ev.frontEnd.SelectedProductType=homeProductType;this.buildingOccupancies.showHide(buildingEligiblityContainer,showHideBuildingOccupancies,true);$("#quoteStepTwo").data("expandable").setStatus(ev.frontEnd.accordionStatus.inProgress);$('#buildingOccupancies').show();}}.bind(this));var ruralPropertyEligiblityContainer=this.findOne("div#ruralPropertyEligibilityQuestions");this.ruralProperty.showHide(ruralPropertyEligiblityContainer,"Yes",true);var buildingEligiblityContainer=this.findOne("div#buildingEligibilityQuestions");this.buildingOccupancies.showHide(buildingEligiblityContainer,showHideBuildingOccupancies,true);$.each(this.fields,function(i,f){if(f.is(":radio")){f.defaultState(null);}else if(f.is(":checkbox")){f.defaultState([]);}else if(f.is("select")){f.defaultState("please select");}});this.defaultState({buildingUses:ev.frontEnd.constants.pleaseSelect,buildingOccupancies:ev.frontEnd.constants.pleaseSelect});}
function BuildingOnlyNumberOfClaimsBehaviour(){$("#claimsHistoryBuildingContainer").slideDown("fast");$("#claimsHistoryContentsContainer").slideUp("fast");$("#contentsClaims").resetState();}
function ContentsOnlyNumberOfClaimsBehaviour(){$("#claimsHistoryBuildingContainer").slideUp("fast");$("#claimsHistoryContentsContainer").slideDown("fast");$("#buildingClaims").resetState();}
function BuildingOnlySumInsuredBehaviour(){BuildingOnlyNumberOfClaimsBehaviour();$("#ContentsInsuredSection").slideUp("fast");$("#comprehensiveInsuredContentsValue").resetState();}
function ContentsOnlySumInsuredBehaviour(){ContentsOnlyNumberOfClaimsBehaviour();$("#BuildingInsuredSection").slideUp("fast");$("#comprehensiveInsuredBuildingValue").resetState();}
function BuildingOnlyCoverOptionBehaviour(){buildingCoverOption=$("div#HomeQuoteComponent_BuildingTitle");contentsCoverOption=$("div#HomeQuoteComponent_ContentsTitle");buildingCoverOption.slideDown("fast");contentsCoverOption.slideUp("fast");buildingCoverOption.findOne(":checkbox").attr("checked",true);contentsCoverOption.findOne(":checkbox").attr("checked",false);}
function ContentsOnlyCoverOptionBehaviour(){buildingCoverOption=$("div#HomeQuoteComponent_BuildingTitle");contentsCoverOption=$("div#HomeQuoteComponent_ContentsTitle");buildingCoverOption.slideUp("fast");contentsCoverOption.slideDown("fast");buildingCoverOption.findOne(":checkbox").attr("checked",false);contentsCoverOption.findOne(":checkbox").attr("checked",true);}
function BuildingOnlyFieldsBehaviour(){BuildingOnlyNumberOfClaimsBehaviour();BuildingOnlySumInsuredBehaviour();BuildingOnlyCoverOptionBehaviour();var quoteStepThree=$("#quoteStepThree").data("expandable");if(quoteStepThree){quoteStepThree.setStatus(ev.frontEnd.accordionStatus.inProgress);quoteStepThree.parent.setStatus(ev.frontEnd.accordionStatus.inProgress);}}
function ContentsOnlyFieldsBehaviour(){ContentsOnlyNumberOfClaimsBehaviour();ContentsOnlySumInsuredBehaviour();ContentsOnlyCoverOptionBehaviour();var quoteStepThree=$("#quoteStepThree").data("expandable");if(quoteStepThree){quoteStepThree.setStatus(ev.frontEnd.accordionStatus.inProgress);quoteStepThree.parent.setStatus(ev.frontEnd.accordionStatus.inProgress);}}
function ClaimsHistoryBehaviour(){$("#claimsHistory").validate();this.buildingClaimsMax=5;this.contentsClaimsMax=5;this.maxBuildingClaim=parseFloat($("#buildingClaims option:last").val());this.maxContentsClaim=parseFloat($("#contentsClaims option:last").val());this.claimsHistoryBuildingContainer=this.findOne("#claimsHistoryBuildingContainer");this.claimsHistoryContentsContainer=this.findOne("#claimsHistoryContentsContainer");this.defaultState({buildingClaims:"0",contentsClaims:"0"});var disableControlFn=function(currentControl,enable,declineMessageObj){if(enable){$.each($(".accordion").data("expandable").children,function(){var header=this.header;header.unbind("click");});$('#quoteStepTwo input, #quoteStepTwo select').attr('disabled',true);declineMessageObj.slideDown('fast');}else{$.each($(".accordion").data("expandable").children,function(){var expandable=this;expandable.header.unbind("click");expandable.header.bind("click",function(){expandable.toggle();});});$('#quoteStepTwo input, #quoteStepTwo select').attr('disabled',null);declineMessageObj.slideUp('fast');}
currentControl.attr('disabled',null);};this.buildingClaims.stateChange(function(){var selectedBuildingClaim=parseFloat(this.buildingClaims.val());if(selectedBuildingClaim>this.buildingClaimsMax){selectedBuildingClaim=0;}
for(var i=this.maxBuildingClaim;i>selectedBuildingClaim;i--){this.removeOverClaimsYears("building",i);}
for(var i=1;i<=selectedBuildingClaim;i++){this.addClaimYears("building",i);}
if(selectedBuildingClaim===0){$("#buildingClaimsYearContainer").slideUp("fast");}
else{$("#buildingClaimsYearContainer").slideDown("fast");}
disableControlFn(this.buildingClaims,this.buildingClaims.state()==='006',$('#buildingClaimsDeclineMessage'));}.bind(this));this.contentsClaims.stateChange(function(){var selectedContentsClaim=parseFloat(this.contentsClaims.val());if(selectedContentsClaim>this.contentsClaimsMax){selectedContentsClaim=0;}
for(var i=this.maxContentsClaim;i>selectedContentsClaim;i--){this.removeOverClaimsYears("contents",i);}
for(var i=1;i<=selectedContentsClaim;i++){this.addClaimYears("contents",i);}
if(selectedContentsClaim===0){$("#contentsClaimsYearContainer").slideUp("fast");}
else{$("#contentsClaimsYearContainer").slideDown("fast");}
disableControlFn(this.contentsClaims,this.contentsClaims.state()==='006',$('#contentsClaimsDeclineMessage'));}.bind(this));var myQuoteStepOne=$("#myQuoteStepOne").getParcel();myQuoteStepOne.homeCoverType.click(function(){this.showModeClaimsHistory(myQuoteStepOne.homeCoverType.state());}.bind(this));if(ev.frontEnd.existingBuildingClaimsYears)
{$.each(ev.frontEnd.existingBuildingClaimsYears,function(i,year){var newClaim=this.addClaimYears("building",i+1);$(newClaim).findOne("select").state(year);}.bind(this));$("#buildingClaimsYearContainer").slideDown("fast");}
if(ev.frontEnd.existingContentsClaimsYears)
{$.each(ev.frontEnd.existingContentsClaimsYears,function(i,year){var newClaim=this.addClaimYears("contents",i+1);$(newClaim).findOne("select").state(year);}.bind(this));$("#contentsClaimsYearContainer").slideDown("fast");}}
$.extend(ClaimsHistoryBehaviour.prototype,{showModeClaimsHistory:function(homeCoverType){var quoteStepTwoAccordion=$('#quoteStepTwo').data("expandable");var prevAccordionStatus;if(quoteStepTwoAccordion){prevAccordionStatus=quoteStepTwoAccordion.getStatus();}
if(homeCoverType===ev.frontEnd.coverType.combined){this.claimsHistoryBuildingContainer.slideDown("fast");this.claimsHistoryContentsContainer.slideDown("fast");}else if(homeCoverType===ev.frontEnd.coverType.building){BuildingOnlyNumberOfClaimsBehaviour();if(ev.frontEnd.prevSelectedCoverType===ev.frontEnd.coverType.combined&&quoteStepTwoAccordion){quoteStepTwoAccordion.setStatus(prevAccordionStatus);}}else if(homeCoverType===ev.frontEnd.coverType.contents){ContentsOnlyNumberOfClaimsBehaviour();if(ev.frontEnd.prevSelectedCoverType===ev.frontEnd.coverType.combined&&quoteStepTwoAccordion){quoteStepTwoAccordion.setStatus(prevAccordionStatus);}}else{this.claimsHistoryBuildingContainer.slideDown("fast");this.claimsHistoryContentsContainer.slideDown("fast");}},addClaimYears:function(claimsType,sequencer){var claimsTemplate=$("#"+claimsType+"ClaimsYearTemplate");var claimsContainer=$("#"+claimsType+"ClaimsYearContainer");var newClaimsYear=claimsTemplate.clone().removeAttr("id");var claimsYearLabel,claimsYearDropdown;if($("#"+claimsType+"ClaimsYear_"+sequencer.toString()).length===0){newClaimsYear.attr("id",claimsType+"ClaimsYear_"+sequencer.toString());claimsYearDropdown=newClaimsYear.find("#"+claimsType+"ClaimsYearDropdown");claimsYearDropdown.attr("id",claimsType+"ClaimsYearDropdown_"+sequencer.toString());claimsYearDropdown.attr("name",claimsYearDropdown.attr("id"));claimsYearLabel=newClaimsYear.find("#"+claimsType+"ClaimsYearLabel");claimsYearLabel.html("Claim "+sequencer.toString()+claimsYearLabel.html());claimsYearLabel.attr("for",claimsYearLabel.attr("id"));claimsYearDropdown.change(function(){ev.quoteInvalidChangeHandler();var quoteStepTwo=$("#quoteStepTwo").data("expandable");if(quoteStepTwo){quoteStepTwo.setStatus(ev.frontEnd.accordionStatus.inProgress);quoteStepTwo.parent.setStatus(ev.frontEnd.accordionStatus.inProgress);}
ev.frontEnd.policy.resetPolicySummary();});claimsContainer.append(newClaimsYear);newClaimsYear.slideDown("fast");return newClaimsYear;}},removeOverClaimsYears:function(claimsType,sequencer){$("#"+claimsType+"ClaimsYear_"+sequencer.toString()).remove();}});function DateBehaviour(){var formatDate=function(format){var s=this.state();var date=Date.parse(s.year+"-"+s.month+"-"+s.day);return date?date.toString(format):"";}.bind(this);this.toString=function(){return formatDate(ev.frontEnd.isoDateFormat);};this.toDisplayString=function(){return formatDate(ev.frontEnd.displayDateFormat);};}
function MyQuoteMyCoverLevelBehaviour(coverlevelcontentlabelId,coverlevellandlordcontentlabelId)
{var myQuoteStepOne=$("#myQuoteStepOne").getParcel();this.coverLevelContentLabel=this.find("#"+coverlevelcontentlabelId);this.coverLevelContent=this.coverLevelContentLabel.nextAll("div.tooltip-container").find(".tooltip-template");if(this.coverLevelContentLabel!==null){var coverLevelContentId=this.coverLevelContent!==null?this.coverLevelContent.attr("id"):coverlevelcontentlabelId;this.coverLevelContentLabel.click(function(event){event.preventDefault();}).mouseover(function(){TagToTip(coverLevelContentId,BALLOON,true,FIX,[this,-30,5],ABOVE,true);}).mouseout(function(){UnTip();});}
var coverCheckboxLabel="Choose this cover";var chosenCover="Cover Chosen!";var coverageOptionGroup=$(".home-quote-details .coverage-title:gt(1)");var coverLevelButton=$(".cover-level-btn");var upgradeLevelDescription=$("#upgradeLevelDesc");var updateRightWrapperWidget=function(levelDesc,widgetButton){coverLevelButton.text(widgetButton);upgradeLevelDescription.text(levelDesc);if(myQuoteStepOne.homeProductType.state()!==ev.frontEnd.productType.landlords){$('#quoteRightWrapper span#upgradeLevel').parent().slideDown("fast");}}.bind(this);var coverTabelSelected=function(chosenItem){var chosenLevel=chosenItem.attr("level");var selectedProductType=myQuoteStepOne.homeProductType.state();var selectedCoverType=myQuoteStepOne.homeCoverType.state();var selectedCoveLevel=this.find(":checked[name=coverLevel]").attr("level");this.find(".basic, .standard, .premium").removeClass("cover-selected");var keepCoverageOptions=function(){ev.frontEnd.coverageOptionArray=new Array();var i=0;coverageOptionGroup.find(".coverageOption").each(function(index,checkBox){var checkBoxObj=$(checkBox);if(checkBoxObj.attr("checked")){ev.frontEnd.coverageOptionArray[i]=checkBoxObj.val();i++;}});}
var bindCoverageOptions=function(){if(ev.frontEnd.coverageOptionArray!==null&&ev.frontEnd.coverageOptionArray!==undefined){coverageOptionGroup.find(".coverageOption").each(function(index,checkBox){var checkBoxObj=$(checkBox);for(var i=0;i<ev.frontEnd.coverageOptionArray.length;i++){if(ev.frontEnd.coverageOptionArray[i]===checkBoxObj.val()){checkBoxObj.attr("checked",true);checkBoxObj.next("span.coverage-select").text("YES").parent().addClass("checkbox-on")}}});}}
if(chosenLevel==="Basic"){keepCoverageOptions();this.find(".basic").addClass("cover-selected");coverageOptionGroup.slideUp("fast");updateRightWrapperWidget("(Base Cover Pack)","Upgrade to Central");ev.frontEnd.showHideDependent(selectedProductType,selectedCoverType,selectedCoveLevel);ev.frontEnd.resetCoverageSelections(selectedCoverType,selectedCoveLevel);}else if(chosenLevel==="Standard"){this.find(".standard").addClass("cover-selected");coverageOptionGroup.slideDown("fast");updateRightWrapperWidget("(Central Cover Pack)","Upgrade to Buzz Plus");bindCoverageOptions();ev.frontEnd.coverageOptionArray=null;ev.frontEnd.showHideDependent(selectedProductType,selectedCoverType,selectedCoveLevel);}else if(chosenLevel==="Premium"){this.find(".premium").addClass("cover-selected");coverageOptionGroup.slideDown("fast");updateRightWrapperWidget("(Buzz Plus Cover Pack)","Change to Central");$('#quoteRightWrapper span#upgradeLevel').parent().slideUp("fast");bindCoverageOptions();ev.frontEnd.coverageOptionArray=null;ev.frontEnd.showHideDependent(selectedProductType,selectedCoverType,selectedCoveLevel);}}.bind(this);coverTabelSelected($('#coverLevelSection').find('input:checked'));var coverLevelLandlordContentLabel=this.find("#"+coverlevellandlordcontentlabelId);var coverLevelLandlordContent=coverLevelLandlordContentLabel.nextAll("div.tooltip-container").find(".tooltip-template");var homeCoverSection=$("#homeCover");var landlordsCoverSection=$("#landlordsCover");var landlordsCoverSectionInfo=landlordsCoverSection.find(".info-coverleveltable");var homeCoverSectionTooltipContainer=homeCoverSection.find(".tooltip-container").find(".tooltip-template");var landlordsCoverSectionTooltipContainer=landlordsCoverSection.find(".tooltip-container").find(".tooltip-template");var showHideCoverLevelForProductType=function(){if(myQuoteStepOne.homeProductType.state()===ev.frontEnd.productType.landlords){homeCoverSection.css("display","none");landlordsCoverSection.css("display","block");landlordsCoverSectionTooltipContainer.addClass("landlords-table");landlordsCoverSectionTooltipContainer.css("display","block")
landlordsCoverSectionInfo.css("display","none");}else{homeCoverSection.css("display","");landlordsCoverSection.css("display","none");homeCoverSectionTooltipContainer.removeClass("landlords-table");landlordsCoverSectionTooltipContainer.css("display","")}}.bind(this);myQuoteStepOne.homeProductType.showHide(this.coverLevelContent,ev.frontEnd.productType.landlords,false,showHideCoverLevelForProductType);myQuoteStepOne.homeProductType.showHide(this.findOne("#homeCoverLevel"),ev.frontEnd.productType.home,false,showHideCoverLevelForProductType);myQuoteStepOne.homeProductType.showHide(this.coverLevelContentLabel,ev.frontEnd.productType.home);var coverCheckbox=this.find(":checkbox.coverageLevelOption");coverCheckbox.each(function(i,checkbox){$(checkbox).click(function(sender){coverCheckbox.removeAttr("checked").siblings("label").text(coverCheckboxLabel).css("color","#6F297B");;$(sender.target).attr("checked","true").siblings("label").text(chosenCover).css("color","#FF6712");coverTabelSelected($(sender.target));}.bind(this));}.bind(this));}
function MyInsuranceCoverageOptionBehaviour()
{var myQuoteStepOne=$("#myQuoteStepOne").getParcel();var quoteStepOne=$("#quoteStepOne").getParcel();this.buildingOption=this.findOne("div#HomeQuoteComponent_BuildingTitle");this.contentsOption=this.findOne("div#HomeQuoteComponent_ContentsTitle");this.dependentOption=this.findOne("div#HomeQuoteComponent_DependencyPremiumTitle");var showHideCoverageOption=function(){if(myQuoteStepOne.homeCoverType.state()===ev.frontEnd.coverType.building){BuildingOnlyCoverOptionBehaviour();}else if(myQuoteStepOne.homeCoverType.state()===ev.frontEnd.coverType.contents){ContentsOnlyCoverOptionBehaviour();}else{this.buildingOption.slideDown("fast");this.contentsOption.slideDown("fast");this.buildingOption.findOne(":checkbox").attr("checked",true);this.contentsOption.findOne(":checkbox").attr("checked",true);}}.bind(this);showHideCoverageOption();var coverLevel=quoteStepOne.find(":checked[name=coverLevel]").attr("level");ev.frontEnd.showHideDependent(myQuoteStepOne.homeProductType.state(),myQuoteStepOne.homeCoverType.state(),coverLevel);ev.frontEnd.showOptionalExtraText(myQuoteStepOne.homeProductType.state(),myQuoteStepOne.homeCoverType.state(),coverLevel);myQuoteStepOne.homeProductType.click(function(){coverLevel=quoteStepOne.find(":checked[name=coverLevel]").attr("level");ev.frontEnd.showHideDependent(myQuoteStepOne.homeProductType.state(),myQuoteStepOne.homeCoverType.state(),coverLevel);ev.frontEnd.showOptionalExtraText(myQuoteStepOne.homeProductType.state(),myQuoteStepOne.homeCoverType.state(),coverLevel);}.bind(this));myQuoteStepOne.homeCoverType.click(function(){coverLevel=quoteStepOne.find(":checked[name=coverLevel]").attr("level");ev.frontEnd.showHideDependent(myQuoteStepOne.homeProductType.state(),myQuoteStepOne.homeCoverType.state(),coverLevel);ev.frontEnd.showOptionalExtraText(myQuoteStepOne.homeProductType.state(),myQuoteStepOne.homeCoverType.state(),coverLevel);}.bind(this));quoteStepOne.find(":input[name=coverLevel]").click(function(){coverLevel=quoteStepOne.find(":checked[name=coverLevel]").attr("level");ev.frontEnd.showOptionalExtraText(myQuoteStepOne.homeProductType.state(),myQuoteStepOne.homeCoverType.state(),coverLevel);}.bind(this));myQuoteStepOne.homeCoverType.click(function(){showHideCoverageOption();}.bind(this));}
function MySpecialContentsBehaviour(){var specialItemID="specialItem";var specialContentsCategoryID="specialContentsCategory";var itemSumInsuredID="itemSumInsured";var itemPremiumID="itemPremium";var itemDescriptionID="itemDescription";var coverOutsideHomeID="coverOutsideHome";var removeSpecialContentsID="removeSpecialContents";var specialItemsContainer=$("#specialItemContainer");var specialItemsForm=$("#mySpecialContentsSection");var specialContentItemSequencer=1;$("#mySpecialContents").validate();var validateCategoryUpperLimit=function(category,itemInsured){var valid=true;for(var i=0;i<ev.frontEnd.specialItemsCategory.length;i++){if(ev.frontEnd.specialItemsCategory[i].categoryCode===category.attr("options")[category.attr("selectedIndex")].value){if(ev.frontEnd.specialItemsCategory[i].categoryUpperLimit<parseFloat(itemInsured.val())){$("#categoryLimitErrorMsgShow").html($("#categoryLimitErrorMsg").html().replace("{AMOUNT}",ev.frontEnd.specialItemsCategory[i].categoryUpperLimit));ev.frontEnd.showHomeDeclineModal("#categoryLimitErrorMsgShow",itemInsured);valid=false;}}}
return valid;};var validateItemInsuredValue=function(itemInsured){var itemValueMax=ev.frontEnd.homeDecline.specialContents.itemMaxPercent*parseFloat($("#contentsValue").val())/100;var itemValueMin=ev.frontEnd.homeDecline.specialContents.itemMinPercent*parseFloat($("#contentsValue").val())/100;var valid=true;if(parseFloat(itemInsured.val())>itemValueMax){ev.frontEnd.showHomeDeclineModal("#itemPercentMaxLimitErrorMsg",itemInsured);valid=false;}else if(parseFloat(itemInsured.val())<itemValueMin){ev.frontEnd.showHomeDeclineModal("#itemPercentMinLimitErrorMsg",itemInsured);valid=false;}
return valid;};var validateTotalInsuredValue=function(itemInsuredToResetState){var totalValueMax=ev.frontEnd.homeDecline.specialContents.totalMaxPercent*parseFloat($("#contentsValue").val())/100;var totalValueMin=ev.frontEnd.homeDecline.specialContents.totalMinPercent*parseFloat($("#contentsValue").val())/100;var totalInsured=0;var valid=true;specialItemsContainer.find(":input[name^='itemSumInsured_']").each(function(index){if($(this).val()!==""){totalInsured+=parseFloat($(this).val());}});if(totalInsured>totalValueMax){ev.frontEnd.showHomeDeclineModal("#totalPercentMaxLimitErrorMsg",itemInsuredToResetState);valid=false;}else if(totalInsured<totalValueMin){ev.frontEnd.showHomeDeclineModal("#totalPercentMinLimitErrorMsg",itemInsuredToResetState);valid=false;}
return valid;};var validateContentsValueLowerLimit=function(contentsValueInput,warningMsgLabel,canNotBeEmptyString){var maxSpecialItemValue=0;var totalSpecialItemValue=0;$("input[name*=itemSumInsured_]").each(function(i,element){totalSpecialItemValue+=parseFloat($(element).val());if(parseFloat($(element).val())>maxSpecialItemValue){maxSpecialItemValue=parseFloat($(element).val());}});var specialItemLowerLimit=Math.ceil((100*maxSpecialItemValue)/ev.frontEnd.homeDecline.specialContents.itemMaxPercent);var specialTotalLowerLimit=Math.ceil((100*totalSpecialItemValue)/ev.frontEnd.homeDecline.specialContents.totalMaxPercent);var specialLowerLimit=specialTotalLowerLimit<specialItemLowerLimit?specialItemLowerLimit:specialTotalLowerLimit;if((ev.frontEnd.homeDecline.contents.minValue<specialLowerLimit)&&(parseFloat(contentsValueInput.val())<specialLowerLimit||(contentsValueInput.val()===""&&canNotBeEmptyString))){contentsValueInput.val(specialLowerLimit);warningMsgLabel.html($.format("Your contents value must be more than {0}. This is because of your special item values. To decrease your value further you must decrease your special items first.",specialLowerLimit));warningMsgLabel.show();}else{warningMsgLabel.hide();}};var hideSpecialContents=function(){$("#mySpecialContentsSection").show();if($(":checkedbox[name=homeProductType]").state()===ev.frontEnd.productType.landlords){$("#mySpecialContentsSection").hide();$(":radio[name=purchaseAddCover]").state("No");}
if($(":checkedbox[name=homeCoverType]").state()===ev.frontEnd.coverType.building){$("#mySpecialContentsSection").hide();$(":radio[name=purchaseAddCover]").state("No");}};var specialContentsWasModified=function(invalidateQuote,itemPremiumID){if(invalidateQuote){ev.frontEnd.quoteInvalidator.makeSpecialContentsInvalid(itemPremiumID);}
var quoteStepThree=$("#quoteStepThree").data("expandable");if(quoteStepThree){quoteStepThree.setStatus(ev.frontEnd.accordionStatus.inProgress);quoteStepThree.parent.setStatus(ev.frontEnd.accordionStatus.inProgress);}
ev.frontEnd.policy.resetPolicySummary();};var removeItem=function(itemID){$("#"+itemID).remove();};var removeAllItems=function(){for(var i=1;i<=specialContentItemSequencer;i++){removeItem(specialItemID+"_"+i.toString());}
specialContentItemSequencer=1;};var addItem=function(){var newSpecialItem;var elements;var theSequencer=specialContentItemSequencer.toString();newSpecialItem=$("#specialItemTemplate").clone().removeAttr("id");newSpecialItem.attr("id",specialItemID+"_"+theSequencer);elements=newSpecialItem.find("select, input[type=text], input[type=checkbox], textarea");elements.each(function(i,element){element.name=element.name+"_"+theSequencer;}.bind(this));elements=newSpecialItem.find("select, input[type=text], input[type=checkbox], input[type=button], textarea, span, label");elements.each(function(i,element){element.id=element.id+"_"+theSequencer;}.bind(this));newSpecialItem.slideDown("fast");specialItemsContainer.append(newSpecialItem);$("#"+itemSumInsuredID+"_"+theSequencer).preventNonDigits();$("#"+specialContentsCategoryID+"_"+theSequencer).change(function(){for(var i=0;i<ev.frontEnd.specialItemsCategory.length;i++){if(ev.frontEnd.specialItemsCategory[i].categoryCode===this.options[this.selectedIndex].value){if(ev.frontEnd.specialItemsCategory[i].portableCover.toString().toLowerCase()==="true"){$("#coverNotAvailable_"+theSequencer).hide();$("#"+coverOutsideHomeID+"_"+theSequencer).attr("disabled",false);}else{$("#coverNotAvailable_"+theSequencer).show();$("#"+coverOutsideHomeID+"_"+theSequencer).attr("disabled",true);$("#"+coverOutsideHomeID+"_"+theSequencer).attr("checked",false);}}}
specialContentsWasModified(true,"#"+itemPremiumID+"_"+theSequencer);validateCategoryUpperLimit($(this),$("#"+itemSumInsuredID+"_"+theSequencer));});$("#"+itemSumInsuredID+"_"+theSequencer).change(function(){if(validateCategoryUpperLimit($("#"+specialContentsCategoryID+"_"+theSequencer),$(this))){if(validateItemInsuredValue($(this))){validateTotalInsuredValue($(this));}}
$("#warningSpecialContentsLimitMI").hide();specialContentsWasModified(true,"#"+itemPremiumID+"_"+theSequencer);});$("#"+removeSpecialContentsID+"_"+theSequencer).click(function(){removeItem(specialItemID+"_"+theSequencer);if(specialItemsContainer.find("div[fieldname=specialItem]").length===0){$(":radio[name=purchaseAddCover]").state("No");specialContentItemSequencer=1;}
$("#warningSpecialContentsLimitMI").hide();ev.frontEnd.refreshHomeCoveragePremium();specialContentsWasModified(false);});$("#"+itemDescriptionID+"_"+theSequencer).change(function(){specialContentsWasModified(true,"#"+itemPremiumID+"_"+theSequencer);});$("#"+coverOutsideHomeID+"_"+theSequencer).click(function(){specialContentsWasModified(true,"#"+itemPremiumID+"_"+theSequencer);});$("#"+itemDescriptionID+"_"+theSequencer).keyup(function(){specialContentsWasModified(true,"#"+itemPremiumID+"_"+theSequencer);});$("#"+itemDescriptionID+"_"+theSequencer).focus(function(){if($(this).val()==="Item Description"){$(this).removeClass("initial");$(this).val("");}});$("#"+itemDescriptionID+"_"+theSequencer).keydown(function(){if($(this).val()==="Item Description"){$(this).removeClass("initial");$(this).val("");}});$("#"+itemDescriptionID+"_"+theSequencer).click(function(){if($(this).val()==="Item Description"){$(this).removeClass("initial");$(this).val("");}});$("#"+itemDescriptionID+"_"+theSequencer).mouseout(function(){if($("#"+itemDescriptionID+"_"+theSequencer).val()===""){$("#"+itemDescriptionID+"_"+theSequencer).addClass("initial");}});$("#"+itemSumInsuredID+"_"+theSequencer).keyup(function(){specialContentsWasModified(true,"#"+itemPremiumID+"_"+theSequencer);});$("#"+itemDescriptionID+"_"+theSequencer).rules("add",{notItemDescriptionWaterMark:true});specialContentItemSequencer++;};this.purchaseAddCover.click(function(){if(this.purchaseAddCover.state()==="Yes"){if(specialContentItemSequencer===1){addItem();$("#updateSpecialContentsWarning").hide();$("#purchaseAddCoverContainer").slideDown("fast");specialContentsWasModified(false);}}else{$("#subTotal").html("0.00");$("#purchaseAddCoverContainer").slideUp("fast");removeAllItems();ev.frontEnd.specialContentsJSON(null);ev.frontEnd.refreshHomeCoveragePremium();$("#warningSpecialContentsLimitMI").hide();specialContentsWasModified(false);ev.frontEnd.quoteInvalidator.makeSpecialContentsValid();}}.bind(this));$("#addSpecialContents").click(function(){addItem();specialContentsWasModified(false);}.bind(this));$("#updateSpecialContents").click(function(){$("#updateSpecialContentsWarning").hide();if($("#quoteStepThree").data("expandable").isValidAndComplete()){ev.frontEnd.fetchSpecialContents();$("#warningSpecialContentsLimitMI").hide();}}.bind(this));$("#myQuoteStepOne").getParcel().homeCoverType.click(function(){hideSpecialContents();});$("#myQuoteStepOne").getParcel().homeProductType.click(function(){hideSpecialContents();});ev.frontEnd.validateSpecialContentsLimit=validateContentsValueLowerLimit;hideSpecialContents();if($(":radio[name=purchaseAddCover]").state()==="Yes"){$("#purchaseAddCoverContainer").slideDown("fast")}
for(var i=1;i<=ev.frontEnd.existingSpecialContentsItems.length;i++){addItem();$("#"+specialContentsCategoryID+"_"+i).val(ev.frontEnd.existingSpecialContentsItems[i-1].specialItemCategoryCode);$("#"+itemSumInsuredID+"_"+i).val(ev.frontEnd.existingSpecialContentsItems[i-1].itemValue);$("#"+itemDescriptionID+"_"+i).val(ev.frontEnd.existingSpecialContentsItems[i-1].itemDescription);$("#"+coverOutsideHomeID+"_"+i).attr("checked",ev.frontEnd.existingSpecialContentsItems[i-1].portableCover);}}
function MyQuoteSumInsuredBehaviour(){var ctrlSlider={};var excessBuildingSliderIndex=1;var excessContentsSliderIndex=2;var showErrorAndFetchHomeCoverageDetails=function(msgDiv){$(msgDiv).modal({overlayId:'homedetailsmodal-overlay',containerId:'homedetailsmodal-container',position:[200],closeClass:"modalCloseImg",onClose:function(dialog){$.modal.close();ev.frontEnd.fetchHomeCoverageDetails();}});};var showHideInsured=function(){var buildingInsuredSection=$("#BuildingInsuredSection");var contentsInsuredSection=$("#ContentsInsuredSection");var homeCoverType=$(':checkedbox[name=homeCoverType]');var showBuilding=function(){if(!buildingInsuredSection.is(":visible")){initBulidingSlider();}
buildingInsuredSection.show();}
var hideBuilding=function(){buildingInsuredSection.hide();$("#comprehensiveExcessBuildingValue").val("");}
var showContents=function(){if(!contentsInsuredSection.is(":visible")){initContentsSlider();}
contentsInsuredSection.show();}
var hideContents=function(){contentsInsuredSection.hide();$("#comprehensiveExcessContentsValue").val("");}
if(homeCoverType.state()===ev.frontEnd.coverType.combined){showBuilding();showContents();}else if(homeCoverType.state()===ev.frontEnd.coverType.building){showBuilding();hideContents();}else if(homeCoverType.state()===ev.frontEnd.coverType.contents){showContents();hideBuilding();}};var destroyBuildingSlider=function(){$("#comprehensiveExcessBuildingValue").next().remove();if(ctrlSlider[excessBuildingSliderIndex]!==undefined){ctrlSlider[excessBuildingSliderIndex].destroy();}};var destroyContentsSlider=function(){$("#comprehensiveExcessContentsValue").next().remove();if(ctrlSlider[excessContentsSliderIndex]!==undefined){ctrlSlider[excessContentsSliderIndex].destroy();}};var initBulidingSlider=function(){destroyBuildingSlider();ctrlSlider[excessBuildingSliderIndex]=new ev.frontEnd.component.SliderWithAllowedValues("#comprehensiveExcessBuildingValue",ev.frontEnd.buildingExcess,"#myExcessBuildingDesc","#comprehensiveExcessBuildingValue");};var initContentsSlider=function(){destroyContentsSlider();ctrlSlider[excessContentsSliderIndex]=new ev.frontEnd.component.SliderWithAllowedValues("#comprehensiveExcessContentsValue",ev.frontEnd.contentsExcess,"#myExcessContentDesc","#comprehensiveExcessContentsValue");};$("#buildingValue").change(function(){if($("#buildingValue").val()!==this.comprehensiveInsuredBuildingValue.val()){this.comprehensiveInsuredBuildingValue.val($("#buildingValue").val());initBulidingSlider();}}.bind(this));$("#contentsValue").change(function(){ev.frontEnd.validateSpecialContentsLimit($("#contentsValue"),$("#warningSpecialContentsLimitQQ"),false);$("#warningSpecialContentsLimitMI").hide();if($("#contentsValue").val()!==""){if($("#warningSpecialContentsLimitQQ").css("display")==="none"){ev.frontEnd.checkContentsValueLimitNotClear($("#contentsValue"));}else{ev.frontEnd.fetchHomeCoverageDetails();}
if(parseInt($("#contentsValue").val(),10)<ev.frontEnd.homeDecline.contents.minValue){$("#contentsValue").val(ev.frontEnd.homeDecline.contents.minValue);}else if(parseInt($("#contentsValue").val(),10)>ev.frontEnd.homeDecline.contents.maxValue){$("#contentsValue").val(ev.frontEnd.homeDecline.contents.maxValue)}}
if($("#contentsValue").val()!==this.comprehensiveInsuredContentsValue.val()){this.comprehensiveInsuredContentsValue.val($("#contentsValue").val());initContentsSlider();}}.bind(this));$("#myQuoteStepOne").getParcel().homeCoverType.click(function(){showHideInsured();}.bind(this));this.comprehensiveInsuredBuildingValue.stateChange(function(){if(this.comprehensiveInsuredBuildingValue.val()!==""){if(parseInt(this.comprehensiveInsuredBuildingValue.val(),10)<ev.frontEnd.homeDecline.building.minValue){this.comprehensiveInsuredBuildingValue.val(ev.frontEnd.homeDecline.building.minValue);$("#buildingValue").val(this.comprehensiveInsuredBuildingValue.val());showErrorAndFetchHomeCoverageDetails("#buildingValueMinLimitErrorMsg");}else if(parseInt(this.comprehensiveInsuredBuildingValue.val(),10)>ev.frontEnd.homeDecline.building.maxValue){this.comprehensiveInsuredBuildingValue.val(ev.frontEnd.homeDecline.building.maxValue);$("#buildingValue").val(this.comprehensiveInsuredBuildingValue.val());showErrorAndFetchHomeCoverageDetails("#buildingValueMaxLimitErrorMsg");}else{$("#buildingValue").val(this.comprehensiveInsuredBuildingValue.val());ev.frontEnd.fetchHomeCoverageDetails();}}else{$("#buildingValue").val(this.comprehensiveInsuredBuildingValue.val());}}.bind(this));this.comprehensiveExcessBuildingValue.stateChange(function(){ev.frontEnd.quoteInvalidator.invalidate();ev.frontEnd.fetchHomeCoverageDetails();}.bind(this));this.comprehensiveInsuredContentsValue.stateChange(function(){ev.frontEnd.validateSpecialContentsLimit(this.comprehensiveInsuredContentsValue,$("#warningSpecialContentsLimitMI"));$("#warningSpecialContentsLimitQQ").hide();if(this.comprehensiveInsuredContentsValue.val()!==""){if(parseInt(this.comprehensiveInsuredContentsValue.val(),10)<ev.frontEnd.homeDecline.contents.minValue){this.comprehensiveInsuredContentsValue.val(ev.frontEnd.homeDecline.contents.minValue);$("#contentsValue").val(this.comprehensiveInsuredContentsValue.val());showErrorAndFetchHomeCoverageDetails("#contentsValueMinLimitErrorMsg");}else if(parseInt(this.comprehensiveInsuredContentsValue.val(),10)>ev.frontEnd.homeDecline.contents.maxValue){this.comprehensiveInsuredContentsValue.val(ev.frontEnd.homeDecline.contents.maxValue);$("#contentsValue").val(this.comprehensiveInsuredContentsValue.val());showErrorAndFetchHomeCoverageDetails("#contentsValueMaxLimitErrorMsg");}else{$("#contentsValue").val(this.comprehensiveInsuredContentsValue.val());ev.frontEnd.fetchHomeCoverageDetails();}}else{$("#contentsValue").val(this.comprehensiveInsuredContentsValue.val());}}.bind(this));this.comprehensiveExcessContentsValue.stateChange(function(){ev.frontEnd.quoteInvalidator.invalidate();ev.frontEnd.fetchHomeCoverageDetails();}.bind(this));this.comprehensiveInsuredBuildingValue.val($("#buildingValue").val());this.comprehensiveInsuredContentsValue.val($("#contentsValue").val());initBulidingSlider();initContentsSlider();$("#comprehensiveInsuredContentsValue").preventNonDigits();$("#comprehensiveInsuredBuildingValue").preventNonDigits();showHideInsured();}
function CustomerAndInsuredDetailsBehaviour(calendarUrl,mortgageProviderUrl,localityPostcodeSuburbUri,isEditCustomerDetails){var createDatePicker=function(field,minAge,maxAge){var startDate=maxAge!==null?(new Date()).addYears(-maxAge):null;var endDate=minAge!==null?(new Date()).addYears(-minAge):null;field.datepicker({duration:"",changeFirstDay:false,dateFormat:ev.frontEnd.datePicker.dateFormat,changeMonth:true,changeYear:true,showOtherMonths:true,hideIfNoPrevNext:true,minDate:startDate,maxDate:endDate,defaultDate:endDate,showButtonPanel:true,showOn:'both',buttonImage:calendarUrl||'',buttonImageOnly:true,buttonText:''});};var addDOBFieldValidation=function(field){if(field.attr('name')==='ownerDOB1'){minAge=ev.frontEnd.homePolicyAgeLimits.policyHolder.minAge;maxAge=ev.frontEnd.homePolicyAgeLimits.policyHolder.maxAge;}else if(field.attr('name').indexOf('dobForDep')>-1){minAge=ev.frontEnd.homePolicyAgeLimits.policyDependent.minAge;maxAge=ev.frontEnd.homePolicyAgeLimits.policyDependent.maxAge;}else{minAge=ev.frontEnd.homePolicyAgeLimits.policyOther.minAge;maxAge=ev.frontEnd.homePolicyAgeLimits.policyOther.maxAge;}
field.dateOfBirthForHome(minAge,maxAge,ev.frontEnd.homePolicyAgeLimits.effectiveDate);};var postcodeSuburbValue=""
var localityEmbargoClass="ac_embargo";var invalidFieldClass="field_invalid";var KEY={LEFT:37,UP:38,RIGHT:39,DOWN:40,PAGEUP:33,PAGEDOWN:34,TAB:9,ENTER:13};var postCodeAutocomplete=function(field){var defaultsOnValidation={inputValidaionErrorClass:"input-validation-error",errorClass:"error",messages:{homeLocality:{required:"Please enter postcode/suburb",invalidField:"Please re-enter postcode"}}}
var addClassOnField=function(className,field){field.addClass(className);};var removeClassOnField=function(className,field){field.removeClass(className);};var showErrorMessageToField=function(field,message){addClassOnField(defaultsOnValidation.inputValidaionErrorClass,field);addClassOnField(defaultsOnValidation.errorClass,field);if(field.next("label.error").length===0){var label=$("<label />").attr({"for":field.attr("name"),generated:true}).addClass(defaultsOnValidation.errorClass).css("display","block").html(message||"");label.insertAfter(field);}else if(field.next("label.error").css("display")==="none"){field.next().css("display","block").html(message||"");}else{field.next("label.error").css("display","block");}}
var hideErrorMessageToField=function(field){removeClassOnField(defaultsOnValidation.inputValidaionErrorClass,field);removeClassOnField(defaultsOnValidation.errorClass,field);if(field.next("label.error:visible"))field.next().css("display","none");}
var disableAndClearOtherFieldsDependOn=function(field,showErrorMessage){if(showErrorMessage)showErrorMessageToField(field,field.val()===""?defaultsOnValidation.messages.homeLocality.required:defaultsOnValidation.messages.homeLocality.invalidField);}
var selectResult=function(field){var results=$(".ac_results .ac_over:visible:last");if(results.length===1){if($.trim(results.text())!==$.trim(postcodeSuburbValue)){disableAndClearOtherFieldsDependOn(field,false);addClassOnField(localityEmbargoClass,field);}
postcodeSuburbValue=results.text();if(field.val()!==""){removeClassOnField(invalidFieldClass,field);hideErrorMessageToField(field);}else{addClassOnField(invalidFieldClass,field);}
field.val(results.text());}else{if(field.val()===""||$.trim(field.val())!==$.trim(postcodeSuburbValue)){addClassOnField(invalidFieldClass,field);}}};field.stateChange(function(state){if($(this).val()===""){$(".ac_results .ac_over:visible").text("");disableAndClearOtherFieldsDependOn($(this),true);}}).blur(function(){selectResult($(this));if($(this).hasClass(invalidFieldClass)){disableAndClearOtherFieldsDependOn($(this),true);};}).keydown(function(e){if(e.keyCode===KEY.LEFT||e.keyCode===KEY.RIGHT||e.keyCode===KEY.TAB||e.keyCode===KEY.ENTER){selectResult($(this));if($(this).hasClass(invalidFieldClass)){disableAndClearOtherFieldsDependOn($(this),true);};}});field.autocomplete(localityPostcodeSuburbUri,postCodeAutocompleteOption(field));};var postCodeAutocompleteOption=function(field)
{return{dataType:'jsonp',extraParams:{product:function(){return encodeURI(quickQuoteSummaryForm.homeProductType.val());}},minChars:3,max:10,parse:function(data){var rows=[];for(var i=0;i<data.length;i=i+1){rows[i]={data:data[i],value:data[i].Tag,result:data[i].Tag};}
if(rows.length===0){field.valid();}
return rows;}.bind(this),formatItem:function(row,i,max){return row.Tag;},scroll:false,mathContains:false,matchSubset:true,selectFirst:true,autoFill:false,delay:400};};var customerDetailWasModified=function(){var secureStepThree=$("#secureStepThree").data("expandable");if(secureStepThree){secureStepThree.setStatus(ev.frontEnd.accordionStatus.inProgress);secureStepThree.parent.setStatus(ev.frontEnd.accordionStatus.inProgress);}
ev.frontEnd.policy.resetPolicySummary();};var bindSetToInprogress=function(container){if(container){container.find("select").change(customerDetailWasModified);container.find("input").not(":button").change(customerDetailWasModified);}};var noName=['1','2','3','4','5'];var otherInsuredsTemplate=$('<div>').append($('#otherInsuredsTemplateDiv').eq(0).clone()).html();var dependentTemplate=$('<div>').append($('#dependentTemplateDiv').eq(0).clone()).html();var mortgageProviderTemplate=$('<div>').append($('#mortgageProviderTemplateDiv').eq(0).clone()).html();$('#otherInsuredsTemplateDiv').remove();$('#dependentTemplateDiv').remove();$('#mortgageProviderTemplateDiv').remove();var quickQuoteSummaryForm=$('#myQuoteStepOne').getParcel();var quoteStepThreeForm=$('#quoteStepThree').getParcel();var homeProductTypeStateChangeFn=function(){var homeProductType=quickQuoteSummaryForm.homeProductType.state();if($('#secretQuestion').is('select')&&$('#secretQuestion option').length<3){$.each(ev.frontEnd.customerAndInsuredDetail.secretQuestions[homeProductType],function(index,item){if(item!==undefined){$('<option></option>').val(item.Value).html(item.Text).appendTo($('#secretQuestion'));}});}};quickQuoteSummaryForm.homeProductType.stateChange(homeProductTypeStateChangeFn);homeProductTypeStateChangeFn();if(ev.frontEnd.customerAndInsuredDetail.selectedQuestion){$('#secretQuestion').val(ev.frontEnd.customerAndInsuredDetail.selectedQuestion);delete ev.frontEnd.customerAndInsuredDetail.selectedQuestion;}
var homeCoverTypeStateChangeFn=function(){var section=this.numberOfMortgages.parents('.section');if(quickQuoteSummaryForm.homeCoverType.state()===ev.frontEnd.coverType.contents){section.slideUp('fast');var secureStepThreeAccordion=$('#secureStepThree').data("expandable");var preAccordionStatus;var preParentAccordionStatus;if(secureStepThreeAccordion){preAccordionStatus=secureStepThreeAccordion.getStatus();preParentAccordionStatus=secureStepThreeAccordion.parent.getStatus();}
this.numberOfMortgages.resetState();if(secureStepThreeAccordion){secureStepThreeAccordion.setStatus(preAccordionStatus);secureStepThreeAccordion.parent.setStatus(preParentAccordionStatus);}}else{section.slideDown('fast');this.numberOfMortgages.val()===null?this.numberOfMortgages.resetState():this;}}.bind(this);quickQuoteSummaryForm.homeCoverType.stateChange(homeCoverTypeStateChangeFn);var addRequireClass=function(){this.ownerTitle2.addClass("required");this.ownerFirstName2.addClass("required");this.ownerLastName2.addClass("required");this.dob_ownerDOB2.addClass("validDate");this.dob_ownerDOB2.ownerDOB2.rules('add',{validDate:true});this.ownerGender2.addClass("validSelectionRequiredIfEnabled");}.bind(this);var removeRequireClass=function(){this.ownerTitle2.removeClass("required");this.ownerFirstName2.removeClass("required");this.ownerLastName2.removeClass("required");this.dob_ownerDOB2.removeClass("validDate");this.dob_ownerDOB2.ownerDOB2.rules('remove','validDate');this.ownerGender2.removeClass("validSelectionRequiredIfEnabled");}.bind(this);var checkGroupValidateFn=function(){if((this.ownerTitle2.val()==="")&&(this.ownerFirstName2.val()==="")&&(this.ownerMiddleInitial2.val()==="")&&(this.ownerLastName2.val()==="")&&(this.dob_ownerDOB2.day.val()==="")&&(this.dob_ownerDOB2.month.val()==="")&&(this.dob_ownerDOB2.year.val()==="")&&(this.ownerGender2.val()===ev.frontEnd.constants.pleaseSelect)){removeRequireClass();}else{addRequireClass();}}.bind(this);this.ownerTitle2.change(checkGroupValidateFn);this.ownerFirstName2.change(checkGroupValidateFn);this.ownerMiddleInitial2.change(checkGroupValidateFn);this.ownerLastName2.change(checkGroupValidateFn);this.dob_ownerDOB2.change(checkGroupValidateFn);this.ownerGender2.change(checkGroupValidateFn);var genDepAmountFn=function(){var enable=quoteStepThreeForm.findOne("#HomeQuoteComponent_DependencyPremiumcheckBox").attr("checked")&&quickQuoteSummaryForm.homeProductType.state()!='PLL';var n=parseInt(quoteStepThreeForm.dependentAmount.state(),10)||0;var haveToSetInProgress=false;var templatePlaceHolder=$('#dependentsDiv');if(quickQuoteSummaryForm.homeProductType.state()==='PHH')
{$('#HomeCMSMessage').show();$('#LandLordCMSMessage').hide();}
else
{$('#HomeCMSMessage').hide();$('#LandLordCMSMessage').show();}
if(!enable){$('#dependentsDiv').parents('.section').hide();}else{$('#dependentsDiv').parents('.section').show();}
for(var i=1;i<=3;i++){if(enable&&i<=n&&$('#dep'+i+'Name').size()===0){$(dependentTemplate.replace(/\{No\}/g,i).replace(/\_No/g,i)).attr('id','dependentDetails'+i).appendTo(templatePlaceHolder);addDOBFieldValidation($('#dobForDep'+i));$('#dep'+i+'Suburb').rules('add',{required:true,validAutocompleteOptionSelectedForHomeLocality:true,messages:{required:'Please enter postcode',validAutocompleteOptionSelectedForHomeLocality:'Please re-enter postcode'}});postCodeAutocomplete($('#dep'+i+'Suburb'));if(ev.frontEnd.existingDependencies.length>=i){var dependencyValue=ev.frontEnd.existingDependencies[i-1];$('#dep'+i+'Name').val(dependencyValue.Name);$('#dep'+i+'StreetAddress').val(dependencyValue.StreetAddress);$('#dep'+i+'Suburb').val(dependencyValue.Suburb);var existingDepedencyDOB="";if(dependencyValue.DOB.Month<10)
{dependencyValue.DOB.Month="0"+dependencyValue.DOB.Month;}
if(dependencyValue.DOB.Day<10)
{dependencyValue.DOB.Day="0"+dependencyValue.DOB.Day;}
existingDepedencyDOB=dependencyValue.DOB.Year+"-"+dependencyValue.DOB.Month+"-"+dependencyValue.DOB.Day;$("#fieldset_dobForDep"+i).find(".day").val(dependencyValue.DOB.Day);$("#fieldset_dobForDep"+i).find(".month").val(dependencyValue.DOB.Month);$("#fieldset_dobForDep"+i).find(".year").val(dependencyValue.DOB.Year);$('#dobForDep'+i).val(existingDepedencyDOB);}
haveToSetInProgress=true;}
else if(i>n||!enable){if(templatePlaceHolder.find('#dependentDetails'+i).size()>0){templatePlaceHolder.find('#dependentDetails'+i).remove();haveToSetInProgress=false;if(n==1&&i>n&&!enable){$('#dep1Name').val("");$('#dep1StreetAddress').val("");$('#dep1Suburb').val("");$('#fieldset_dobForDep1 .day').state("day");$('#fieldset_dobForDep1 .month').state("month");$('#fieldset_dobForDep1 .year').state("year");}}}}
bindSetToInprogress(templatePlaceHolder);var accordionSection=$('#secureStepThree').data("expandable");if(accordionSection){if($('#secureStepThree').size()>0&&haveToSetInProgress&&enable){accordionSection.setStatus(ev.frontEnd.accordionStatus.inProgress);}}};quickQuoteSummaryForm.homeProductType.stateChange(genDepAmountFn);quoteStepThreeForm.findOne("#HomeQuoteComponent_DependencyPremiumcheckBox").stateChange(genDepAmountFn);quoteStepThreeForm.dependentAmount.stateChange(genDepAmountFn);genDepAmountFn();this.declaration.click(function()
{if(this.declaration.state()=='Yes'){ev.frontEnd.showHomeDeclineModal('#declarationDeclineMessageDiv',this.declaration);}}.bind(this));var differentMailingShowHideError=function(){var differentMailingAddressDiv=$("div#differentMailingAddressDiv");if(this.differentMailing.state()==="No"){differentMailingAddressDiv.find("input[id!=mailingDpid][id!=mailingUnitNo]").removeClass("input-validation-error error");differentMailingAddressDiv.find("label.error").hide();}}.bind(this);if(isEditCustomerDetails==="true"){this.differentMailing.showHide($('#differentMailingAddressDiv'),"Yes",true,differentMailingShowHideError);}
if(ev.frontEnd.existingJsonOtherInsureds){var templatePlaceHolder=$('#otherInsuredsDiv');$.each(ev.frontEnd.existingJsonOtherInsureds,function(i,existingInsured){i++;$(otherInsuredsTemplate.replace(/\{No\}/g,i).replace(/\_id/g,i).replace(/\{NoName\}/g,noName[i-1])).attr('id','insuredGroupDiv'+i).attr('class','otherInsuredGroup').appendTo(templatePlaceHolder);addDOBFieldValidation($('#insuredDateOfBirth'+i));var existingInsuredDOB="";if(existingInsured.DateOfBirth.Month<10){existingInsured.DateOfBirth.Month="0"+existingInsured.DateOfBirth.Month;}
if(existingInsured.DateOfBirth.Day<10){existingInsured.DateOfBirth.Day="0"+existingInsured.DateOfBirth.Day;}
existingInsuredDOB=existingInsured.DateOfBirth.Year+"-"+existingInsured.DateOfBirth.Month+"-"+existingInsured.DateOfBirth.Day;$('#insuredTitle'+i).val(existingInsured.Title);$('#insuredFirstName'+i).val(existingInsured.FirstName);$('#insuredMiddleInitial'+i).val(existingInsured.MiddleInitial||'');$('#insuredLastName'+i).val(existingInsured.LastName);$('#insuredGender'+i).val((existingInsured.Gender==="M"||existingInsured.Gender==="Male")?("Male"):("Female"));$("#fieldset_insuredDateOfBirth"+i).find(".day").val(existingInsured.DateOfBirth.Day);$("#fieldset_insuredDateOfBirth"+i).find(".month").val(existingInsured.DateOfBirth.Month);$("#fieldset_insuredDateOfBirth"+i).find(".year").val(existingInsured.DateOfBirth.Year);$('#insuredDateOfBirth'+i).val(existingInsuredDOB);});bindSetToInprogress(templatePlaceHolder);}
this.noOfOtherInsureds.stateChange(function(){var n=parseInt($(this).state(),10)||0;var templatePlaceHolder=$('#otherInsuredsDiv');for(var i=1;i<=3;i++){if($('#insuredTitle'+i).size()===0&&i<=n){$(otherInsuredsTemplate.replace(/\{No\}/g,i).replace(/\_id/g,i).replace(/\{NoName\}/g,noName[i-1])).attr('id','insuredGroupDiv'+i).attr('class','otherInsuredGroup').appendTo(templatePlaceHolder);addDOBFieldValidation($('#insuredDateOfBirth'+i));}
else if(i>n){templatePlaceHolder.find('#insuredGroupDiv'+i).remove();}}
bindSetToInprogress(templatePlaceHolder);});this.businessOnPolicy.showHide(this.businessName.parent(),"Yes",true);if(ev.frontEnd.existingJsonMortgageProviders){var templatePlaceHolder=$('#mortgageDiv');$.each(ev.frontEnd.existingJsonMortgageProviders,function(i,mortgage){i++;$(mortgageProviderTemplate.replace(/\{No\}/g,i).replace(/\{NoName\}/g,noName[i-1])).attr('id','mortgageProviderDiv'+i).appendTo(templatePlaceHolder);$('#mortgageProvider'+i).val(mortgage);new ev.frontEnd.component.mortgageAutocompleter('mortgageProvider'+i,mortgageProviderUrl);});bindSetToInprogress(templatePlaceHolder);}
this.numberOfMortgages.stateChange(function(){var n=parseInt($(this).state(),10)||0;var templatePlaceHolder=$('#mortgageDiv');for(var i=1;i<=5;i++){if($('#mortgageProvider'+i).size()===0&&i<=n){$(mortgageProviderTemplate.replace(/\{No\}/g,i).replace(/\{NoName\}/g,noName[i-1])).attr('id','mortgageProviderDiv'+i).appendTo(templatePlaceHolder);new ev.frontEnd.component.mortgageAutocompleter('mortgageProvider'+i,mortgageProviderUrl);}
else if(i>n){templatePlaceHolder.find('#mortgageProviderDiv'+i).remove();}}
bindSetToInprogress(templatePlaceHolder);});homeCoverTypeStateChangeFn();addDOBFieldValidation($('#ownerDOB1'));addDOBFieldValidation($('#ownerDOB2'));checkGroupValidateFn();if(isEditCustomerDetails==="true"&&localityPostcodeSuburbUri){postCodeAutocomplete(this.Securelocality);}
if(typeof currentBusinessType!=='undefined'&&currentBusinessType==="Mta"){$('#secureStepThree .section-form-content:first .radioButtonWrapper :input').attr('disabled','true');$('#otherInsuredsDiv :input').change(function(){$('#secureStepThree .section-form-content:first .radioButtonWrapper :input').removeAttr('disabled').removeAttr('checked');});}
this.defaultState({numberOfMortgages:"0"});}
function MyDocumentMessage()
{$('#HomeCMSMessage').hide();$('#LandLordCMSMessage').hide();if(ev.frontEnd.productType.home==='PHH')
{$('#HomeCMSMessage').show();}
else
{$('#LandLordCMSMessage').show();}}
function ChangingRiskAddressBehaviour(){this.findOne("div#locality-question").stateChange(function(){var setDefaultStateFn=function(fields){$.each(fields,function(i,f){f=$(f);if(f.is(":radio")){f.defaultState(null);}else if(f.is(":checkbox")){f.defaultState([]);}else if(f.is("select")){f.defaultState("please select");}});};this.findOne("div#quickquote-details").resetState();if(ev.frontEnd.retrieveQuoteFromEmail){this.findOne("div#quickquote-questions-home").resetState();}
else{this.findOne("#buildingValue").resetState();this.findOne("#weeklyRent").resetState();}
var quoteStepTwo=$("#quoteStepTwo").getParcel();quoteStepTwo.find("#MyPropertyNHistoryDetailsFormContent :radio").attr("checked","");quoteStepTwo.findOne("#buildingUsesQuestions").resetState();quoteStepTwo.findOne("#propertyAndHistoryEligibilityQuestions").resetState();quoteStepTwo.findOne("#ruralPropertyEligibilityQuestions").resetState();quoteStepTwo.findOne("#buildingOccupanciesDiv").resetState();quoteStepTwo.findOne("#buildingEligibilityQuestions").resetState();quoteStepTwo.findOne("div#ruralPropertyEligibilityQuestions").slideUp('fast');if(ev.frontEnd.retrieveQuoteFromEmail){quoteStepTwo.findOne("#claimsHistorySection").resetState();}
var secureStepOne=$('#secureStepOne');var secureStepTwo=$('#secureStepTwo');var secureStepThree=$('#secureStepThree');var secureStepFive=$('#secureStepFive');if(secureStepOne){if(ev.frontEnd.retrieveQuoteFromEmail){$("#propertyDetailEligibilityQuestions").resetState();}
else{secureStepOne.resetState();}}
if(secureStepTwo.size()){setDefaultStateFn(secureStepTwo.find(':input'));secureStepTwo.resetState();}
if(secureStepThree){if(this.homeCoverType.state()!==ev.frontEnd.coverType.contents){$("#mortgageDiv").resetState();}}
if(secureStepFive){$("#secureStepFive div#accept").resetState();}
var quoteStepTwoAccordion=quoteStepTwo.data("expandable");var secureStepOneAccordion=secureStepOne.data("expandable");var secureStepTwoAccordion=secureStepTwo.data("expandable");var secureStepThreeAccordion=secureStepThree.data("expandable");if(quoteStepTwoAccordion){quoteStepTwoAccordion.setStatus(ev.frontEnd.accordionStatus.inProgress);}
if(secureStepOneAccordion&&secureStepTwoAccordion&&secureStepThreeAccordion){secureStepOneAccordion.setStatus(ev.frontEnd.accordionStatus.inProgress);secureStepTwoAccordion.setStatus(ev.frontEnd.accordionStatus.inProgress);if(this.homeCoverType.state()!==ev.frontEnd.coverType.contents){secureStepThreeAccordion.setStatus(ev.frontEnd.accordionStatus.inProgress);}}
setDefaultStateFn(this.fields);}.bind(this));}
function ChangingCoverTypeBehaviour(){this.homeCoverType.click(function(){if(this.homeCoverType.state()===ev.frontEnd.coverType.building){BuildingOnlyFieldsBehaviour();if($("#secureStepThree").length>0){var mortgageDiv=$("#mortgageDiv").parcel();mortgageDiv.parents('.section').show();}}else if(this.homeCoverType.state()===ev.frontEnd.coverType.contents){ContentsOnlyFieldsBehaviour();if($("#secureStepThree").length>0){var mortgageDiv=$("#mortgageDiv").parcel();mortgageDiv.parents('.section').hide();mortgageDiv.resetState();}}}.bind(this));}
function MtaPaymentBreakdownsBehaviour(){ev.frontEnd.payment.paymentInstalmentChangeHandler();var mtaPaymentBreakdowns=$.evalJSON(this.mtaPaymentBreakdowns.state());if(this.recurringAnnual(mtaPaymentBreakdowns)&&this.premiumIncreased(mtaPaymentBreakdowns)){bt.ShowPaymentDetails(ev.frontEnd.payment);}else{bt.HidePaymentDetails(ev.frontEnd.payment);}}
$.extend(MtaPaymentBreakdownsBehaviour.prototype,{premiumIncreased:function(mtaPaymentBreakdowns){return parseFloat(mtaPaymentBreakdowns.newAmountPayable)>0;},recurringAnnual:function(mtaPaymentBreakdowns){return mtaPaymentBreakdowns.recurring==="Annual";}});

