PageSourceSearch

https://huntingtonbeachplumbingpros.com/dynamo/js/app.js?v=603189b1

js huntingtonbeachplumbingpros.com collected 2026-10-04 07:46:43 UTC 173,800 bytes, 18 lines download raw bytes

1jQuery.fn.reset=function(){$(this).each(function(){this.reset()})},function(d){d.fn.serializeObjectDirect=function(){var e={},t=this.serializeArray();return d.each(t,function(){void 0!==e[this.name]?(e[this.name].push||(e[this.name]=[e[this.name]]),e[this.name].push(this.value||"")):e[this.name]=this.value||""}),e},d.fn.serializeObjectFromDomElement=function(){var e=d(this),t=d(e).wrapInner("<form class='jq_form_wrapper_for_serialize'></form>"),t=d("form:first",t).serializeObject();return d("form.jq_form_wrapper_for_serialize",d(e)).contents().unwrap(),t},d.fn.serializeObject=function(){var a=this,r={},t={},s={validate:/^[a-zA-Z][a-zA-Z0-9_]*(?:\[(?:\d*|[a-zA-Z0-9_]+)\])*$/,key:/[a-zA-Z0-9_]+|(?=\[\])/g,push:/^$/,fixed:/^\d+$/,named:/^[a-zA-Z0-9_]+$/};return this.build=function(e,t,o){return e[t]=o,e},this.push_counter=function(e){return void 0===t[e]&&(t[e]=0),t[e]++},d.each(d(this).serializeArray(),function(){var e=d('[name="'+this.name+'"]');if((!e.hasClass("jq_skip_serialize_if_not_visible")||e.is(":visible"))&&s.validate.test(this.name)){for(var t,o=this.name.match(s.key),n=this.value,i=this.name;void 0!==(t=o.pop());)i=i.replace(new RegExp("\\["+t+"\\]$"),""),t.match(s.push)?n=a.build([],a.push_counter(i),n):t.match(s.fixed)?n=a.build([],t,n):t.match(s.named)&&(n=a.build({},t,n));r=d.extend(!0,r,n)}}),r}}(jQuery);var ModCore=ModCore||function(s){var a={},o={},n={},i={},r="",d={},e={},t="",i=(a={settings:{debug:!0,meta:{},init:function(){}},cache:{window:window,document:document},base_url:function(e){return"/"+(e="undefined"===s.type(e)?"":e)+"/"},url_current:function(){return window.location.href},log:function(e){a.settings.debug&&console.log(e)},form_reset:function(e){s(e).find("input[type=text]:not('.jq_form_not_reset'), textarea:not('.jq_form_not_reset'),select:not('.jq_form_not_reset')").val("")},in_iframe:function(){try{return window.self!==window.top}catch(e){return!0}},cookie_read_all:function(){return s.cookie.json=!0,s.cookie()},cookie_write:function(e,t,o){return void 0!==e&&""!=e&&(void 0===t&&(t=""),(o=void 0!==o?o:{}).expires=void 0!==o.expires?o.expires:14,o.path=void 0!==o.path?o.path:"/",s.cookie.json=!0,s.cookie(e,t,o))},cookie_delete:function(e,t){return void 0!==e&&""!=e&&((t=void 0!==t?t:{}).expires=void 0!==t.expires?t.expires:14,t.path=void 0!==t.path?t.path:"/",s.cookie.json=!0,s.removeCookie(e,t))},cookie_read:function(e){return void 0!==e&&""!=e&&s.cookie(e)},cookie_set_with_options:function(e,t,o,n,i){var a,r="",o=(o&&((a=new Date).setTime(a.getTime()+24*o*60*60*1e3),r="; expires="+a.toUTCString()),e+"="+(t||"")+r+"; path=/");n&&(o+="; domain="+n),i&&(o+="; secure"),document.cookie=o},string_is_empty:function(e){return null==e||""==e},set_value_of_multi:function(e,o){return e=void 0!==e&&"array"==s.type(e)?e:[],o=void 0!==o?o:null,s.each(e,function(e,t){if(!a.string_is_empty(t))return o=t,!1}),o},object_is_valid:function(e){return null!==e&&"object"==typeof e},array_is_valid:function(e){return Array.isArray(e)&&0<e.length},string_nl2br:function(e,t){return(e+"").replace(/([^>\r\n]?)(\r\n|\n\r|\r|\n)/g,"$1<br>$2")},string_generate_unique_id:function(){var e=Math.ceil(100*Math.random());return"i-"+(new Date).getTime()+"-"+e},array_unique:function(o){return s.grep(o,function(e,t){return t===s.inArray(e,o)})},fileToBase64:function(e,t){var o=new FileReader;o.readAsDataURL(e),o.onload=function(){t({status:!0,message:"",data:o.result})},o.onerror=function(e){t({status:!1,message:e,data:""})}},dynamo_data_get:function(){var e=[];return void 0!==window._dynamo&&"array"==s.type(window._dynamo)?e=window._dynamo:void 0!==window._dmo&&"array"==s.type(window._dmo)&&(e=window._dmo),e},dynamo_config_get_value:function(e,o){e=void 0!==e&&"array"==s.type(e)?e:a.dynamo_data_get(),o=void 0!==o?o:"";var n=null;return s.each(e,function(e,t){s.isArray([t])&&2==t.length&&t[0]==o&&(n=t[1])}),n},wizardo_data_get:function(){var e=[];return e=void 0!==window._wizardo&&"object"==s.type(window._wizardo)?window._wizardo:e},wizardo_config_get_value:function(e,t){if(t=void 0!==t&&"object"===s.type(t)?t:a.wizardo_data_get(),void 0===e||""===e)return null;for(var o=e.split("."),n=t,i=0;i<o.length;i++){if(!n.hasOwnProperty(o[i]))return null;n=n[o[i]]}return n},updateFieldJsonData:function(e,t){if("object"==typeof t&&null!==t&&!Array.isArray(t)){var o,e=s(e);if(!(e.length<=0)){try{o=JSON.parse(e.val())}catch(e){o={}}s.extend(o,t),e.val(JSON.stringify(o))}}},resetFieldJsonData:function(e){e=s(e);e.length<=0||e.val(JSON.stringify({}))},getFieldJsonData:function(e){var t,e=s(e);e.length<=0&&(t={});try{t=JSON.parse(e.val())}catch(e){t={}}return t},generateHashFromUrl:function(t){let o=0;if(0!==t.length)for(let e=0;e<t.length;e++){var n=t.charCodeAt(e);o=(o<<5)-o+n,o&=o}return o.toString()},isDevicePhone:function(){var e=navigator.userAgent||navigator.vendor||window.opera,e=/android|iphone|ipad|ipod|mobile|blackberry|iemobile|opera mini/i.test(e),t=window.matchMedia&&window.matchMedia("only screen and (max-width: 767px)").matches;return!(!e&&!t)}
1,array_get_index:function(o,e){return $return=!1,s.each(e,function(e,t){t==o&&($return=e)}),$return||-1},url_redirect:function(e){a.string_is_empty(e)||(window.location.href=e)},phone_number_certainly:function(e){return e=(e=void 0!==e?e:"").replace(/[^0-9]/g,"")},url_redirect_phone:function(e){e=a.phone_number_certainly(e),a.string_is_empty(e)||(window.location.href="tel://"+e)},domSetValue:function(e,t){e=s(e);void 0!==e[0]&&void 0!==e[0].value?e.val(t):e.html(t)},domSetValueExtended:function(e,t){e=s(e);void 0!==e[0]&&(e[0].value,e.val(t),"function"==typeof e.html)&&e.html(t)},anchor_from_url:function(){var e=window.location.href,t=e.indexOf("#");return-1!=t&&e.substring(t+1)},event_trigger:function(e,t){s.event.trigger(e,[t])},objectSetValueByPath:function(e,t,o,n){var i=t.split(n=void 0!==n?n:"/"),t=i.slice(),n=t.pop();t.reduce(function(e,t,o,n){return e[t]=e[t]||(e=i[o+1],String(+e)===e)?[]:{}},e)[n]=o},isInViewport:function(e){var t,o;return!(!e||!e.getBoundingClientRect)&&(e=e.getBoundingClientRect(),t=window.innerHeight||document.documentElement.clientHeight,o=window.innerWidth||document.documentElement.clientWidth,0<=e.top)&&0<=e.left&&e.bottom<=t&&e.right<=o}},{ajaxUrl:a.base_url("ajax"),send:function(e,t,o,n){s.ajax({type:e,url:i.ajaxUrl+t,dataType:"json",data:o,headers:{"X-Gc-Requested-With":"ajax-request"},success:n})},call:function(e,t,o){i.send("POST",e,t,o)},get:function(e,t,o){i.send("GET",e,t,o)},init:function(){return{}}}),n={bindEvents:function(){n.init_tooltips(),n.init_form_validation(),n.init_toggler(),n.init_anchor_action(),n.init_datepicker(),n.init_masked_input(),s(document).on("ready",function(){ModCore.event_trigger("dynamoDocumentOnReady",{})})},on_window_load:function(){},on_resize:function(){},on_scroll:function(){},init_confirm:function(e,t){e=void 0!==e?e:s(document),s("a.jq_require_confirm",e).click(function(e){e.preventDefault();var t=s(this).attr("href"),e="Are you sure?";""!=s(this).data("confirm-message")&&void 0!==s(this).data("confirm-message")&&(e=s(this).data("confirm-message")),bootbox.dialog({message:e,title:"Uyarı",buttons:{success:{label:"Yes",className:"button1",callback:function(){window.location.replace(t)}},danger:{label:"Cancel",className:"button3",callback:function(){}}}})})},init_masked_input:function(e){e=void 0!==e?e:s(document),s(".mi-date",s(e)).mask("00/00/0000"),s(".mi-time",s(e)).mask("00:00:00"),s(".mi-number",s(e)).mask("0ZZZZZZ",{translation:{Z:{pattern:/[0-9]/,optional:!0}}})},init_datepicker:function(e){e=void 0!==e?e:s(document);var o={formatSubmit:"yyyy-mm-dd",weekdaysShort:["Su","Mo","Tu","We","Th","Fr","Sa"],showMonthsShort:!0,closeOnSelect:!0,closeOnClear:!0,today:"",clear:"Clear",close:"Cancel",selectMonths:!1,selectYears:!1,min:0,hiddenName:!0};s.each(s(".jq_datepicker",s(e)),function(e,t){itemType=s(this).attr("data-type"),itemConfig=o,s(this).pickadate(itemConfig)})},init_toggler:function(){holder="undefined"!=typeof holder?holder:s(".page-content"),s.each(s(".jq_toggler",s(holder)),function(e,t){s(this).attr("data-toggletextoff",s(this).text()),s(this).unbind("click").bind("click",function(e){e.preventDefault();var e=s(this),t=s(s(this).data("destination")),o=s(this).data("toggletexton"),n=s(this).data("toggletextoff");0<t.length&&(s(t).toggle(),s(t).is(":visible")?""!=o&&s(e).text(o):""!=n&&s(e).text(n))})})},init_form_validation:function(){s("form").each(function(){s(this).validate({wrapper:"",meta:"validate",errorClass:"error",ignore:":hidden:not('.selectpicker'), :hidden:not('.selectpicker100'), :hidden",validClass:"success",errorPlacement:function(e,t){var o=s(t).data("validationholder"),n=s(t).parents("form:first"),n=s(n).data("fvt");(void 0!==o&&0<s(o).length?s(o):("bt5"!==n?"radio"===s(t).attr("type")||"checkbox"===s(t).attr("type")?s(t).parent().parent():(s(t).parents(".controls:first").find(".controls-validation-holder").show().html(s(e).text()).addClass("error"),s(t).parents(".form-group:first")):"radio"===s(t).attr("type")||"checkbox"===s(t).attr("type")?s(t).parent().parent():s(t).parents(".form-group:first")).find(".controls-validation-holder")).show().html(s(e).text()).addClass("error")},highlight:function(e,t,o){var n,i=s(e).parents("form:first");"bt5"!==s(i).data("fvt")?(("radio"===s(e).attr("type")||"checkbox"===s(e).attr("type")?this.findByName(e.name):s(e)).addClass(t).removeClass(o),(n=s(e).parent().find("span.error")).siblings(".icon").hide(0,function(){n.show()})):"radio"!==s(e).attr("type")&&"checkbox"!==s(e).attr("type")&&s(e).addClass("is-invalid").removeClass("is-valid")},unhighlight:function(e,t,o){var n=s(e).data("validationholder"),i=s(e).parents("form:first");"bt5"!==s(i).data("fvt")?void 0!==n&&0<s(n).length?(s(n).show().html("").removeClass("error"),s(e).removeClass("error")):("radio"===s(e).attr("type")||"checkbox"===s(e).attr("type")?(s(e).removeClass("error"),s(e).parents(".controls:first").find(".controls-validation-holder").hide(),s(e).parents(".form-group:first").find(".controls-validation-holder").hide(),s(e).parents(".controls-validation-scope:first")):(s(e).removeClass("error"),s(e).parents(".controls:first").find(".controls-validation-holder").hide(),s(e).parents(".form-group:first"))).find(".controls-validation-holder").hide():void 0!==n&&0<s(n).length?(s(n).show().html("").removeClass("error"),s(e).removeClass("error")):("radio"===s(e).attr("type")||"checkbox"===s(e).attr("type")?s(e).removeClass("error"):(s(e).removeClass("is-invalid"),s(e).addClass("is-valid")),s(e).parents(".form-group:first").find(".controls-validation-holder").hide())},invalidHandler:function(e,t){t.numberOfInvalids()&&o.ui_noty("Please check the form errors","error"),setTimeout(function(){ModCore.event_trigger("dynamoWizardoFormFixHeight",{})},200)}})})},init_modal_form_validation:function(e){e=void 0!==e?e:s(document),s(e).validate({wrapper:"",meta:"validate",errorClass:"error",errorElement:"span",errorPlacement:function(e,t){var o=s(t).data("validationholder");void 0!==o&&0<s(o).length?s(o).show().html(s(e).text()).addClass("error"):s(t).addClass("tooltip_tipsy_sw").attr("original-title",s(e).text())},highlight:function(e,t,o){("radio"===s(e).attr("type")||"checkbox"===s(e).attr("type")?this.findByName(e.name):s(e)).addClass(t).removeClass(o)},unhighlight:function(e,t,o){var n=s(e).data("validationholder");s(e).removeClass("error"),void 0!==n&&0<s(n).length?(s(n).show().html("").removeClass("error"),s(e).removeClass("error")):(s(e).removeClass("tooltip_tipsy_sw").attr("original-title",""),s(e).unbind("mouseenter mouseleave"),s(".tipsy-sw").remove())},invalidHandler:function(e,t){t.numberOfInvalids()&&o.ui_noty("Please check the form errors","error")}})},init_redirect_confirm:function(e){e=void 0!==e?e:s(document),s(".jq_redirect_confirm",s(e)).unbind("click").bind("click",function(e){e.preventDefault();var t=s(this).attr("href");bootbox.confirm("Bu işlem sizi farklı bir sayfaya yönlendirecektir.",function(e){e&&window.location.replace(t)})})},init_modal_generic:function(t){t=s(void 0!==t?t:document),s(".jq_modal_close",s(t)).bind("click",function(e){e.preventDefault(),o.modal_close(s(t))}),n.init_select_and_redirect()},init_select_and_redirect:function(e){e=s(void 0!==e?e:document),s(".jq_select_and_redirect",s(e)).unbind("change").bind("change",function(e){e.preventDefault();var e=s(this).val(),t=s(this).find(":selected").data("target");""!==e&&("_blank"==t?window.open(e,"_blank"):window.location.href=e)}
1)},init_tooltips:function(){},init_validation_methods:function(){s(document).ready(function(){s.validator.addMethod("valueNotEquals",function(e,t,o){return o!=e},jQuery.validator.messages.valueNotEquals),s.validator.addMethod("minStrict",function(e,t,o){return o<e},jQuery.validator.messages.minStrict)})},init_update_current_url_field:function(){0<s(".jq_update_current_url").length&&s(".jq_update_current_url").val(a.url_current())},init_anchor_action:function(){var e=a.anchor_from_url();0!=e&&"action-listingadd"===e&&s(document).ready(function(){ModCore.event_trigger("dynamoBusinessFormOnShow",{})})},init:function(){n.init_validation_methods(),n.bindEvents(),e.init()}},e={init:function(){e.addAdditionalMethods(),e.addClassRules()},addAdditionalMethods:function(){s.validator&&(s.validator.addMethod("alphanumeric",function(e,t){return this.optional(t)||/^\w+$/i.test(e)},"Letters, numbers, and underscores only please"),s.validator.addMethod("integer",function(e,t){return this.optional(t)||/^-?\d+$/.test(e)},"A positive or negative non-decimal number please"),s.validator.addMethod("notEqualTo",function(e,t,o){return this.optional(t)||!s.validator.methods.equalTo.call(this,e,t,o)},"Please enter a different value, values must not be the same."),s.validator.addMethod("nowhitespace",function(e,t){return this.optional(t)||/^\S+$/i.test(e)},"No white space please"),s.validator.addMethod("zipcodeUS",function(e,t){return this.optional(t)||/^\d{5}(-\d{4})?$/.test(e)},"The specified US ZIP Code is invalid"),s.validator.addMethod("phoneUS",function(e,t){return e=e.replace(/\s+/g,""),this.optional(t)||9<e.length&&e.match(/^(\+?1-?)?(\([2-9]([02-9]\d|1[02-9])\)|[2-9]([02-9]\d|1[02-9]))-?[2-9]([02-9]\d|1[02-9])-?\d{4}$/)},"Please specify a valid phone number"),jQuery.validator.addMethod("emailExt",function(e,t,o){return e.match(/^[a-zA-Z0-9_\.%\+\-]+@[a-zA-Z0-9\.\-]+\.[a-zA-Z]{2,}$/)},"Please enter a valid email address."),jQuery.validator.addMethod("fullname",function(e,t){return!!/^([a-zA-Z]{2,}\s[a-zA-z]{1,}'?-?[a-zA-Z]{2,}\s?([a-zA-Z]{1,})?)/.test(e)},"Please enter your full name (first & last name)"))},addClassRules:function(){s.validator&&s.validator.addClassRules({"vl-fullname":{required:!0,fullname:!0,minlength:2},"vl-name":{required:!0,minlength:2},"vl-email":{required:!0,email:!0,emailExt:!0},"vl-alphanumeric":{required:!0,alphanumeric:!0},"vl-zip-us":{required:!0,zipcodeUS:!0},"vl-zip":{required:!0},"vl-phone":{required:!0},"vl-phone-us":{required:!0,phoneUS:!0},"vl-address":{required:!0},"vl-city":{required:!0,minlength:2},"vl-required":{required:!0}})}},d={init:function(){var e,t;s(".jq_autocomplete_address_api").length&&("object"==typeof window.google&&"object"==typeof window.google.maps&&"object"==typeof window.google.maps.places?d.initAutocomplete():!0!==window.__AddressAPILoading&&(window.__AddressAPILoading=!0,e="",void 0!==window.gmak&&window.gmak?e=window.gmak:(t=ModCore.dynamo_config_get_value(ModCore.dynamo_data_get(),"_gmak"),ModCore.string_is_empty(t)||(e=t)),(t=document.createElement("script")).src="https://maps.googleapis.com/maps/api/js?key="+e+"&libraries=places",t.async=!0,t.defer=!0,t.onload=function(){window.__AddressAPILoading=!1,d.initAutocomplete()},document.head.appendChild(t)))},initAutocomplete:function(){"object"==typeof window.google&&"object"==typeof window.google.maps&&s(".jq_autocomplete_address_api").each(function(){var a=s(this),e=s(a).get(0),r=new google.maps.places.Autocomplete(e,{types:[]});r.setComponentRestrictions({country:["us"]}),r.setOptions({strictBounds:!0}),r.addListener("place_changed",function(){var e=r.getPlace(),t={success:!1,version:"googlev1"},o="",n="";if(0!=e.length){t.success=!0,t.lat=e.geometry.location.lat(),t.lng=e.geometry.location.lng();for(var i=0;i<e.address_components.length;i++)addressType=e.address_components[i].types[0],short_name=void 0!==e.address_components[i].short_name?e.address_components[i].short_name:"",long_name=void 0!==e.address_components[i].long_name?e.address_components[i].long_name:"","street_number"===addressType?o=long_name:"route"===addressType&&(n=long_name),val={short:short_name,long_name:long_name},t[addressType]=val;t.custom_street_address=(o+" "+n).trim()}s(a).trigger("AddressAPIOnData",[t])}),s(a).on("AddressAPIOnData",function(e,t){t=void 0!==t?t:{}
1,apiDataStr=JSON.stringify(t),s(this).attr("data-addressapi",apiDataStr);var o=s(this).data("destapi");ModCore.string_is_empty(o)||s(o).val(apiDataStr),"object"==typeof t.postal_code&&void 0!==t.postal_code.short&&(o=s(this).data("dest"),ModCore.string_is_empty(o)||s(o).val(t.postal_code.short))})})}};return{init:(o={is_fbq:function(){return"function"==typeof window.fbq},is_oaiq:function(){return"function"==typeof window.oaiq},is_gtag:function(){return"function"==typeof window.gtag},wait_for_gtag:function(e,t=10){"function"==typeof gtag?e():0<t&&setTimeout(()=>o.wait_for_gtag(e,t-1),500)},is_widget_mode:function(){var e=ModCore.dynamo_config_get_value(ModCore.dynamo_data_get(),"_cfIsWidget");return"1"===e||!0===e},getEndpointUrl:function(e){return t+"/engine.php?switch="+e},modal_open:function(e){return void 0!==e&&s.magnificPopup.open({callbacks:{open:function(){n.init_modal_generic(s(e))},close:function(){}},items:{src:e,type:"inline"}}),!1},modal_close:function(e){void 0!==e&&s(e).magnificPopup("close")},modal_custom_static_message_hide:function(){0<s("#modal_dynamo_custom_static_message").length&&s("#modal_dynamo_custom_static_message").magnificPopup("close")},modal_custom_static_message_show:function(e){(e=void 0!==e?e:{}).title=void 0!==e.title?e.title:"Please wait",e.message=void 0!==e.message?e.message:"We are processing your request. Please do not close the browser",e.id="modal_dynamo_custom_static_message";e=Mustache.render('<div class="modal-dynamo modal-dynamo-default" id="{{id}}"><div class="modal-dynamo-header"><div class="modal-dynamo-title"><h2>{{title}}</h2></div></div> <div class="modal-dynamo-body">{{message}}</div>',{title:e.title,id:e.id,message:e.message});s.magnificPopup.open({modal:!0,callbacks:{open:function(){},close:function(){}},items:{src:s(e),type:"inline"}})},overlay_loading_show:function(){0==s("#jq_overlay_loading").length&&s("body").append('<div class="overlay-loading" id="jq_overlay_loading">Loading&#8230;</div>')},overlay_loading_hide:function(){s("#jq_overlay_loading").remove()},modal_open_url:function(e){(params="undefined"!=typeof params?params:{}).title=void 0!==e.title?e.title:"Please select",params.id="modal_dynamo_url",params.close_button=void 0===e.close_button||e.close_button,params.show_header=void 0===e.show_header||e.show_header,params.modal=!0===e?.modal,params.closeOnBgClick=!1,params.enableEscapeKey=!1,params.modal||(params.close_button=!1,params.closeOnBgClick=!0,params.enableEscapeKey=!0);var t='<iframe src="'+e.url+'"></iframe>',o=(ModCore.generateHashFromUrl(e.url),"modal-dynamo-md"),e='<div class="modal-dynamo modal-dynamo-url mfp-dynamo-url modal-dynamo-default '+(o=ModCore.string_is_empty(e?.css_class)?o:e?.css_class)+'" id="{{id}}">{{#show_header}}<div class="modal-dynamo-header"><div class="modal-dynamo-title"><h2>{{title}}</h2></div>{{#close_button}}<button class="modal-dynamo-close" id="modalUrlCloseButton">&times;</button>{{/close_button}}</div>{{/show_header}}<div class="modal-dynamo-body">'+t+"</div></div>",o=Mustache.render(e,{title:params.title,id:params.id,message:params.message,close_button:params.close_button,show_header:params.show_header});s.magnificPopup.open({modal:!1,closeOnBgClick:params.closeOnBgClick,enableEscapeKey:params.enableEscapeKey,callbacks:{open:function(){this.container.find("iframe");s(this.container).addClass("mfp-container-no-padding mfp-dynamo-url"),s("body").addClass("mfp-modal-open"),s("#modalUrlCloseButton",s(this.container)).on("click",function(){s(".mfp-dynamo-url:first").magnificPopup("close")}),params.callback_open&&params.callback_open()},close:function(){s("body").removeClass("mfp-modal-open"),params.callback_open&&params.callback_close()}},items:{src:s(o),type:"inline"}})},modal_loading_show:function(e){var t;0==s("#modal_dynamo_loading").length&&((e=void 0!==e?e:{}).title=void 0!==e.title?e.title:"Please wait",e.message=void 0!==e.message?e.message:"We are processing your request",e.id="modal_dynamo_loading",e.mtype=void 0!==e.mtype?e.mtype:"",t='<div class="modal-dynamo modal-dynamo-loading modal-dynamo-default" id="{{id}}"><div class="modal-dynamo-header"><div class="modal-dynamo-title"><h2>{{title}}</h2></div></div> <div class="modal-dynamo-body"><img src="'+r+'/images/progress.gif"><p class="jq_modal_dynamo_msg">{{message}}</p></div>',t=Mustache.render(t,{title:e.title,id:e.id,message:e.message}),s.magnificPopup.open({modal:!0,callbacks:{open:function(){if("lead_process"===e.mtype){const o=[{text:"Analyzing your requirements",minDelay:3e3,maxDelay:6e3},{text:"Reviewing options",minDelay:4e3,maxDelay:8e3}
1,{text:"Thank you for your patience, we're almost done.",minDelay:4e3,maxDelay:8e3},{text:"Almost there, finalizing!",minDelay:5e3,maxDelay:1e4},{text:"5 seconds",staticDelay:1e3},{text:"4 seconds",staticDelay:1e3},{text:"3 seconds",staticDelay:1e3},{text:"2 seconds",staticDelay:1e3},{text:"1 seconds",staticDelay:1e3},{text:"We are redirecting to the results",staticDelay:1e3}];let t=0;const n=()=>{var e=o[t],e=(s(".jq_modal_dynamo_msg").text(e.text),t<o.length-1&&t++,e.staticDelay||Math.random()*(e.maxDelay-e.minDelay)+e.minDelay);setTimeout(n,e)};setTimeout(n,3e3)}},close:function(){}},items:{src:s(t),type:"inline"}}))},modal_loading_hide:function(){0<s("#modal_dynamo_loading").length&&s("#modal_dynamo_loading").magnificPopup("close")},modal_open_static:function(e){return void 0!==e&&(s(e).modal({keyboard:!1,backdrop:"static"}),s(e).appendTo("body").modal("show")),!1},modal_recenter:function(e){},form_post_and_redirect:function(e){if("undefined"===s.type(e))return!1;e.form_action=void 0!==e.form_action?e.form_action:"",e.form_method=void 0!==e.form_method?e.form_method:"POST",e.input=void 0!==e.input?e.input:[];var o=s("<form>",{action:e.form_action,method:e.form_method});s.each(e.input,function(e,t){s(o).append(s("<input>",{name:t.name,value:t.value,type:"hidden"}))}),s(o).appendTo(document.body).submit()},call_phone:function(t){var e;ModCore.dynamo_config_get_value(ModCore.dynamo_data_get(),"_phntr")?(e={phone:a.phone_number_certainly(t)},ModContact.phntr(e,function(e){a.url_redirect_phone(t)})):a.url_redirect_phone(t)},ui_noty:function(e,t,o){t=void 0===t?"alert":t;noty({text:e,type:t,dismissQueue:!0,layout:"top",theme:"notyDynamoTheme",closeWith:["click"],maxVisible:10,modal:!1,animation:{open:{height:"toggle"},close:{height:"toggle"},easing:"swing",speed:500},timeout:2e3})},ui_noty_message_close_all:function(){s.noty.closeAll()},ui_noty_message_clear_queue:function(){s.noty.closeAll()},ui_noty_message:function(e,t,o){t=void 0===t?"alert":t,(o=void 0===o?{}:o).dismissQueue=void 0!==o.dismissQueue&&o.dismissQueue;s(".page-content").noty({text:e,type:t,dismissQueue:o.dismissQueue,layout:"bottom",theme:"notyDynamoThemeBottom",closeWith:["click"],maxVisible:1,modal:!1,animation:{open:{height:"toggle"},close:{height:"toggle"},easing:"swing",speed:500},callback:{onShow:function(){},afterShow:function(){},onClose:function(){},afterClose:function(){}}})},logic:{},init:function(){n.init(),a.settings.init(),r="/dynamo/",a.string_is_empty(a.dynamo_config_get_value(ModCore.dynamo_data_get(),"_baseURL"))||(r=a.dynamo_config_get_value(ModCore.dynamo_data_get(),"_baseURL")),a.string_is_empty(a.dynamo_config_get_value(ModCore.dynamo_data_get(),"_engineURL"))||(t=a.dynamo_config_get_value(ModCore.dynamo_data_get(),"_engineURL"))}}).init,AddressAPI_init:d.init,modal_open:o.modal_open,modal_open_static:o.modal_open_static,modal_close:o.modal_close,modal_custom_static_message_show:o.modal_custom_static_message_show,modal_custom_static_message_hide:o.modal_custom_static_message_hide,modal_loading_show:o.modal_loading_show,modal_loading_hide:o.modal_loading_hide,modal_recenter:o.modal_recenter,modal_open_url:o.modal_open_url,overlay_loading_show:o.overlay_loading_show,overlay_loading_hide:o.overlay_loading_hide,ui_noty:o.ui_noty,ui_noty_message:o.ui_noty_message,ui_noty_message_close_all:o.ui_noty_message_close_all,ui_noty_message_clear_queue:o.ui_noty_message_clear_queue,init_modal_form_validation:n.init_modal_form_validation,init_redirect_confirm:n.init_redirect_confirm,init_toggler:n.init_toggler,init_modal_generic:n.init_modal_generic,init_confirm:n.init_confirm,init_update_current_url_field:n.init_update_current_url_field,form_post_and_redirect:o.form_post_and_redirect,call_phone:o.call_phone,string_nl2br:a.string_nl2br,form_reset:a.form_reset,updateFieldJsonData:a.updateFieldJsonData,getFieldJsonData:a.getFieldJsonData,resetFieldJsonData:a.resetFieldJsonData,url_redirect:a.url_redirect,string_is_empty:a.string_is_empty,set_value_of_multi:a.set_value_of_multi,object_is_valid:a.object_is_valid,array_is_valid:a.array_is_valid,event_trigger:a.event_trigger,string_generate_unique_id:a.string_generate_unique_id,fileToBase64:a.fileToBase64,generateHashFromUrl:a.generateHashFromUrl,isDevicePhone:a.isDevicePhone,in_iframe:a.in_iframe,cookie_read_all:a.cookie_read_all,cookie_write:a.cookie_write,cookie_delete:a.cookie_delete,cookie_read:a.cookie_read,cookie_set_with_options:a.cookie_set_with_options,domSetValue:a.domSetValue,domSetValueExtended:a.domSetValueExtended,url_current:a.url_current,phone_number_certainly:a.phone_number_certainly,dynamo_config_get_value:a.dynamo_config_get_value,dynamo_data_get:a.dynamo_data_get,wizardo_config_get_value:a.wizardo_config_get_value,wizardo_data_get:a.wizardo_data_get,objectSetValueByPath:a.objectSetValueByPath,isInViewport:a.isInViewport,getEndpointUrl:o.getEndpointUrl,is_fbq:o.is_fbq,is_oaiq:o.is_oaiq,is_gtag:o.is_gtag,wait_for_gtag:o.wait_for_gtag,is_widget_mode:o.is_widget_mode}}(window.jQuery),ModContact=(jQuery(document).ready(ModCore.init),function(l){var i,t={},d={},o={},a={},n={},r="",s="",c={},u={},_={},m={},e=!1,p=!1,g=!1,a=(t={settings:{debug:!0,meta:{},init:function(){}},cache:{window:window,document:document},base_url:function(e){return e="undefined"===l.type(e)?"":e},log:function(e){t.settings.debug&&console.log(e)}},{ajaxUrl:t.base_url(""),send:function(e,t,o,n){l.ajax({type:e,url:a.ajaxUrl+t,dataType:"json",data:o,headers:{"X-Gc-Requested-With":"ajax-request"},success:n})},call:function(e,t,o){a.send("POST",e,t,o)},get:function(e,t,o){a.send("GET",e,t,o)},init:function(){return{}}}
1),o={bindEvents:function(){ModCore.in_iframe()&&l("body").addClass("body-in-iframe"),l(".jq_contact_add").bind("click",function(e){e.preventDefault(),0<l(".jq_contact_form_step:visible").length||"function"!=typeof lfo_anywhere?ModCore.event_trigger("dynamoContactFormOnShow",{}):lfo_anywhere()}),l(".jq_cta_gaq").bind("click",function(e){e.preventDefault(),"function"==typeof lfo_anywhere?lfo_anywhere():ModCore.event_trigger("dynamoContactFormOnShow",{})}),l(document).on("dynamoTrustedFormCertIdCallback",function(e,t){g=!0}),o.bind_href_tel(),o.init_zip_auto(),o.init_auto_focus_first()},bind_href_tel:function(e){e=void 0!==e?e:l(document),ModCore.dynamo_config_get_value(ModCore.dynamo_data_get(),"_phntr")&&l("a[href^='tel']",l(e)).on("click",function(e){e.preventDefault();e=l(this).attr("href");ModCore.call_phone(e)})},init_auto_focus_first:function(e){var t=l(".jq_input_focus_first");0!=l(t).length&&ModCore.isInViewport(l(t)[0])&&1===l(t).length&&l(t).focus()},init_zip_auto:function(e){e=l(void 0!==e?e:document);var o,n=l(".jq_zip_auto",l(e));0<l(n).length&&(o=!1,l.each(n,function(e,t){t=l(t).val();ModCore.string_is_empty(t)&&(o=!0)}),o)&&setTimeout(function(){var e=ModCore.getEndpointUrl("gdtl");a.call(e,{},function(t){if(1==t.status)return l(n).each(function(){var e=l(this).val();ModCore.string_is_empty(e)&&l(this).val(t.zipcode)}),!0})},120)},init_contact_form_step:function(e){"other"===e&&l("form",l(".jq_contact_form_step_other")).bind("submit",function(e){e.preventDefault();var e=l(this).serializeObjectDirect(),e=(d.entry_data_set(e),d.entry_data_get()),e=l.extend(e,{rid:r,ridsf:s}),t=(ModCore.event_trigger("dynamoContactFormErrorClear",{}),ModCore.event_trigger("dynamoContactFormOtherErrorClear",{}),ModCore.overlay_loading_show(),ModCore.getEndpointUrl("form3submit"));a.call(t,e,function(e){var t;ModCore.overlay_loading_hide(),1==e.status?(ModCore.modal_close(l(".jq_contact_form_pop",".jq_contact_form_step_other")),ModCore.event_trigger("dynamoPageNotificationShow",{status:"success",msg:"Thank You. Our partners will be in contact with you shortly."})):(t="We cannot process your request. Please try again later",l.type(e.message)&&!ModCore.string_is_empty(e.message)&&(t=e.message),errors=[],l.type(e.errors)&&l.isArray(e.errors)&&(errors=e.errors),ModCore.event_trigger("dynamoContactFormOtherErrorShow",errors),ModCore.event_trigger("dynamoPageNotificationShow",{status:"error",msg:t}))})})},bind_contact_form_checkbox_toogle_html:function(){l(".jq_contact_form_checkbox_toogle_html").bind("change",function(e){var t=l(this).data("toogledestination");l(this).is(":checked")?l(t).show():l(t).hide()}),l(".jq_contact_form_checkbox_toogle_html").trigger("change")},init_contact_form:function(){l(".jq_contact_form_terms_pop").bind("click",function(e){e.preventDefault(),ModCore.modal_open("#jq_contact_form_terms")}),l("form",l(".jq_contact_form_step_custom_type_more")).bind("submit",function(e){e.preventDefault();var e=l(this).serializeObject(),e=(d.entry_data_set(e),l.extend(e,{rid:r,ridsf:s})),t=(ModCore.event_trigger("dynamoContactFormErrorClear",{}),ModCore.modal_loading_show(),ModCore.getEndpointUrl("formcustomtypemore"));a.call(t,e,function(e){var t;ModCore.modal_loading_hide(),1==e.status?(cfCustomNextStepOtherShow=void 0!==e.cfCustomNextStepOtherShow&&e.cfCustomNextStepOtherShow,"standalone"===ModCore.dynamo_config_get_value(ModCore.dynamo_data_get(),"_stepOther")?(ModCore.modal_loading_show(),d.step_other_show()):(d.step_show("thankyou"),cfCustomNextStepOtherShow&&d.step_other_show())):(t=["We cannot process your request. Please try again later"],l.type(e.errors)&&l.isArray(e.errors)&&(t=e.errors),ModCore.event_trigger("dynamoContactFormErrorShow",t),t="Please check the errors",l.type(e.message)&&!ModCore.string_is_empty(e.message)&&(t=e.message),ModCore.event_trigger("dynamoPageNotificationShow",{status:"error",msg:t}))})}),l("form",l(".jq_contact_form_step_address")).bind("submit",function(e){e.preventDefault();var e=l(this).serializeObject(),e=(d.entry_data_set(e),l.extend(e,{rid:r,ridsf:s})),t=(ModCore.event_trigger("dynamoContactFormErrorClear",{}),ModCore.modal_loading_show(),ModCore.getEndpointUrl("form2submit"));a.call(t,e,function(e){var t;ModCore.modal_loading_hide(),1==e.status?(d.step_show("thankyou"),d.step_other_show()):(t=["We cannot process your request. Please try again later"],l.type(e.errors)&&l.isArray(e.errors)&&(t=e.errors),ModCore.event_trigger("dynamoContactFormErrorShow",t),t="Please check the errors",l.type(e.message)&&!ModCore.string_is_empty(e.message)&&(t=e.message),ModCore.event_trigger("dynamoPageNotificationShow",{status:"error",msg:t}))})}),l("input",l("form",l(".jq_contact_form_step_detail"))).on("focus",function(){d.lead_start_tracking(),d.lead_start_recaptcha(),l("input").off("focus")}),0<l(".jq_wizardo_form").length&&(d.lead_start_tracking(),d.lead_start_recaptcha()),0<l(".jq_contact_form_v4").length&&(l("li",l(".jq_tskslctr")).click(function(){l(this).find('input[type="radio"]').prop("checked",!0)}),l(".jq_tskslctr_item").on("change",function(){var e;l(this).is(":checked")&&(e=l(this).data("kv"),l('input[name="tskslctrkv"]').val(e)),setTimeout(function(){l('button[type="submit"]',l
1(".jq_tskslctr")).trigger("click")},200)}),l('button[type="submit"]',l(".jq_tskslctr")).on("click.submitHandler",function(e){if(e.preventDefault(),0===l(".jq_tskslctr_item:checked").length)return ModCore.ui_noty("Please select an option","error"),!1;l(this).off("click.submitHandler").trigger("click")})),l(".jq_frmcta1_dflt").bind("submit",function(e){var t;e.preventDefault(),(is_valid=l(this).validate().checkForm())?(e=l(this).serializeObject(),d.entry_data_set(e),e=d.entry_data_get(),t=ModCore.dynamo_config_get_value(ModCore.dynamo_data_get(),"_cfGRToken"),ModCore.string_is_empty(t)||(e._cfGRToken=t),t=ModCore.getEndpointUrl("formcta"),ModCore.modal_loading_show(),a.call(t,e,function(e){var t;ModCore.modal_loading_hide(),ModCore.object_is_valid(e)?1==e.status?(cftype=void 0!==e.cftype?e.cftype:ModCore.dynamo_config_get_value(ModCore.dynamo_data_get(),"_cfType"),cfCustomNextStep=void 0!==e.cfCustomNextStep?e.cfCustomNextStep:"",ModCore.dynamo_config_get_value(ModCore.dynamo_data_get(),"_stepOther"),cftype,"thankyou"==cfCustomNextStep?(d.step_show("thankyou"),cfCustomNextStepOtherShow&&d.step_other_show(),d.run_step_detail_complete_tracking_code()):(cfRdrct=void 0===e.cfRdrct||ModCore.string_is_empty(e.cfRdrct)?"/lead":e.cfRdrct,(mdl=!(void 0===e.mdl||!ModCore.object_is_valid(e.mdl))&&e.mdl)?(ModCore.modal_loading_hide(),ModCore.modal_open_url(mdl)):ModCore.url_redirect(cfRdrct))):(l.type(e.errors)&&l.isArray(e.errors)&&e.errors,t="Please check the errors",l.type(e.message)&&!ModCore.string_is_empty(e.message)&&(t=e.message),ModCore.event_trigger("dynamoPageNotificationShow",{status:"error",msg:t})):ModCore.event_trigger("dynamoContactFormErrorShow",["We cannot process your request. Please try again later"])})):ModCore.event_trigger("dynamoPageNotificationShow",{status:"error",msg:"Please check the errors"})}),l("form",l(".jq_contact_form_step_detail")).bind("submit",function(e){e.preventDefault();var e=l(this).serializeObject(),e=(d.contact_form_image_upload_enabled()&&(e._imageUploadData=ImageUpload.getData()),ModCore.is_fbq(),d.entry_data_set(e),d.entry_data_get()),t=ModCore.dynamo_config_get_value(ModCore.dynamo_data_get(),"_cfGRToken"),t=(ModCore.string_is_empty(t)||(e._cfGRToken=t),ModCore.event_trigger("dynamoContactFormErrorClear",{}),ModCore.modal_loading_show(),ModCore.getEndpointUrl("form1submit"));a.call(t,e,function(e){if(ModCore.modal_loading_hide(),ModCore.object_is_valid(e))if(1==e.status){void 0!==e.rid&&(r=e.rid),void 0!==e.ridsf&&(s=e.ridsf),cftype=void 0!==e.cftype?e.cftype:ModCore.dynamo_config_get_value(ModCore.dynamo_data_get(),"_cfType"),cfCustomNextStep=void 0!==e.cfCustomNextStep?e.cfCustomNextStep:"thankyou",ModCore.string_is_empty(cfCustomNextStep)&&(cfCustomNextStep="thankyou"),cfCustomNextStepOtherShow=void 0!==e.cfCustomNextStepOtherShow&&e.cfCustomNextStepOtherShow,cfCustomNextSkipQuestion=void 0!==e.cfCustomNextSkipQuestion&&e.cfCustomNextSkipQuestion;var t=ModCore.dynamo_config_get_value(ModCore.dynamo_data_get(),"_stepOther");switch(cftype){case"default":case"":case null:l('input[name="yzipcodework"]').val(l('input[name="yzipcode"]').val()),l('input[name="fzipcodework"]').val(l('input[name="fzipcode"]').val()),d.step_show("address"),d.run_step_detail_complete_tracking_code();break;case"hnypt":var o="";l.type(e.message)&&!ModCore.string_is_empty(e.message)&&(o=e.message),ModCore.string_is_empty(o)||ModCore.event_trigger("dynamoPageNotificationShow",{status:"success",msg:o}),d.step_show("thankyou");break;case"v2":"standalone"===t?(ModCore.modal_loading_show(),d.run_step_detail_complete_tracking_code(function(e){e.isInjected?setTimeout(function(){d.step_other_show()},2e3):d.step_other_show()})):(d.step_show("thankyou"),d.step_other_show());break;case"v3":case"v4":ModCore.modal_loading_show(),cfRdrct=void 0===e.cfRdrct||ModCore.string_is_empty(e.cfRdrct)?"/lead":e.cfRdrct,(mdl=!(void 0===e.mdl||!ModCore.object_is_valid(e.mdl))&&e.mdl)?(ModCore.modal_loading_hide(),ModCore.modal_open_url(mdl)):ModCore.url_redirect(cfRdrct);break;default:"thankyou"==cfCustomNextStep?"standalone"===t?cfCustomNextStepOtherShow?d.run_step_detail_complete_tracking_code(function(e){e.isInjected?setTimeout(function(){d.step_other_show()},2e3):d.step_other_show()}):(d.step_show("thankyou"),d.run_step_detail_complete_tracking_code()):(d.step_show("thankyou"),cfCustomNextStepOtherShow&&d.step_other_show(),d.run_step_detail_complete_tracking_code()):(d.custom_form_skip_question(cfCustomNextSkipQuestion),d.step_show("custom_type_more"),d.run_step_detail_complete_tracking_code())}}else{var n=["We cannot process your request. Please try again later"],o=(l.type(e.errors)&&l.isArray(e.errors)&&(n=e.errors),ModCore.event_trigger("dynamoContactFormErrorShow",n),"Please check the errors");l.type(e.message)&&!ModCore.string_is_empty(e.message)&&(o=e.message),ModCore.event_trigger("dynamoPageNotificationShow",{status:"error",msg:o})}else{n=["We cannot process your request. Please try again later"];ModCore.event_trigger("dynamoContactFormErrorShow",n)}})}),c.init_form(),d.contact_form_image_upload_enabled()&&ImageUpload.init()},init_chd_form:function(){var e;l("form",l(".jq_chd_form_step_channel")).bind("submit",function(e){e.preventDefault();var o,t,e=l(this).serializeObject();d.entry_data_set(e);(void 0!==(e=l.extend(e,{})).channels?e.channels.length:0)<1?ModCore.event_trigger("dynamoPageNotificationShow",{status:"error",msg:"Please select an option"}):(ModCore.event_trigger("dynamoContactFormErrorClear",{}),o=[],ModCore.is_fbq()&&l.isArray(e.channels)&&l.each(e.channels,function(e,t){ModCore.string_is_empty(t)||(val_rtcid=l("#cbox-"+t).data("rtcid"),ModCore.string_is_empty(val_rtcid))||o.push(val_rtcid)}),ModCore.modal_loading_show(),t=ModCore.getEndpointUrl("formchd-select"),a.call(t,e,function(e){var t;ModCore.modal_loading_hide(),1==e.status?(ModCore.is_fbq()&&l.isArray(o)&&0<o.length&&l.each(o,function(e,t){__fbData={content_name:t,content_ids:[t]},fbq("track","Lead",__fbData)}),t=void 0!==e.url_direct?e.url_direct:"",ModCore.string_is_empty(t)&&(t="/"),ModCore.url_redirect(t)):(ModCore.modal_loading_hide(),t=["We cannot process your request. Please try again later"],l.type(e.errors)&&l.isArray(e.errors)&&(t=e.errors),ModCore.event_trigger("dynamoContactFormErrorShow",t),t="Please check the errors",l.type(e.message)&&!ModCore.string_is_empty(e.message)&&(t=e.message),ModCore.event_trigger("dynamoPageNotificationShow",{status:"error",msg:t}))}))}),0<l("form",l(".jq_chd_form_step_lead")).length&&(d.lead_start_tracking(),e=l("form",l(".jq_chd_form_step_lead")),l(".jq_itm_edit",l(e)).unbind("click").bind("click",function(){l(".jq_itm_text",l(e)).toggle(),l(".jq_itm_form",l(e)).toggle()}),l("form",l(".jq_chd_form_step_lead")).bind("submit",function(e){e.preventDefault();var t,e=l(this).serializeObject();
1(is_valid=l(this).validate().checkForm())&&(d.entry_data_set(e),e=l.extend(e=e,{}),ModCore.event_trigger("dynamoContactFormErrorClear",{}),ModCore.modal_loading_show(),t=ModCore.getEndpointUrl("formchd-lead"),a.call(t,e,function(e){var t;1==e.status?(t=void 0!==e.url_direct?e.url_direct:"",ModCore.string_is_empty(t)&&(t="/"),ModCore.url_redirect(t)):(ModCore.modal_loading_hide(),t=["We cannot process your request. Please try again later"],l.type(e.errors)&&l.isArray(e.errors)&&(t=e.errors),ModCore.event_trigger("dynamoContactFormErrorShow",t),t="Please check the errors",l.type(e.message)&&!ModCore.string_is_empty(e.message)&&(t=e.message),ModCore.event_trigger("dynamoPageNotificationShow",{status:"error",msg:t}))}))}))},init:function(){o.bindEvents(),o.init_contact_form(),o.init_chd_form()}};return ImageUpload={data:[],getData:function(){return ImageUpload.data},init:function(){var e;void 0!==window.Dropzone&&(e=ModCore.getEndpointUrl("form1imageupload"),l("div#jq_contact_form_drzn_upldr").dropzone({url:e,maxFilesize:5,maxFiles:3,acceptedFiles:".jpg,.jpeg,.png",clickable:!0,addRemoveLinks:!0,paramName:"file",thumbnailWidth:72,thumbnailHeight:72,dictRemoveFile:"Remove",dictCancelUpload:"Cancel",dictDefaultMessage:"[Click here to upload some photos]",resizeWidth:"1920",resizeMimeType:"image/jpeg",resizeMethod:"contain",parallelUploads:1,init:function(){this.on("sending",function(e,t,o){}),this.on("addedfile",function(e){}),this.on("removedfile",function(e){ImageUpload.removeByFile(e)}),this.on("error",function(e,t){ModCore.event_trigger("dynamoPageNotificationShow",{status:"error",msg:t}),this.removeFile(e)}),this.on("success",function(e,t){t.status?ImageUpload.addByFile(e):(ModCore.event_trigger("dynamoPageNotificationShow",{status:"error",msg:t.message}),this.removeFile(e))}),this.on("complete",function(e){})}}))},addByData:function(e){return ModCore.string_is_empty(e)||ImageUpload.data.push(e),!0},removeByData:function(e){return ModCore.string_is_empty(e)||(value=e,ImageUpload.data=ImageUpload.data.filter(function(e){return e!==value})),!0},addByFile:function(e){void 0!==e.name&&void 0!==e.xhr.response&&(e=jQuery.parseJSON(e.xhr.response).data,ImageUpload.addByData(e))},removeByFile:function(e){if(void 0!==e.name){if(void 0===e.xhr)return!1;void 0!==e.xhr.response&&(e=jQuery.parseJSON(e.xhr.response).data,ImageUpload.removeByData(e))}}},d={init:function(){o.init(),t.settings.init(),("v2"===d.contact_form_type()||0<l(".jq_autocomplete_address_api").length)&&ModCore.AddressAPI_init(),u.init(),c.init(),m.init()},lfo_anywhere:function(e){c.submitHandler(e)},is_trusted_form_loaded:function(){return"undefined"!==l.type(g)&&!!g},is_trusted_form_enabled:function(){return"function"==l.type(window.loadTrustedForm)},is_widget_mode:function(){return ModCore.is_widget_mode()},lead_start_tracking:function(){return"undefined"!==l.type(e)&&(!!e||(e=!0,void("function"==l.type(window.loadTrustedForm)&&loadTrustedForm())))},lead_start_recaptcha:function(){return"undefined"!==l.type(p)&&(!!p||(p=!0,void("function"==l.type(window.loadRecaptcha)&&loadRecaptcha())))},contact_form_type:function(){var e=ModCore.dynamo_config_get_value(ModCore.dynamo_data_get(),"_cfType");return ModCore.string_is_empty(e)?"default":e},contact_form_image_upload_enabled:function(){return"1"==ModCore.dynamo_config_get_value(ModCore.dynamo_data_get(),"_cfIsUpImg")},contact_form_address_field_type:function(){var e=ModCore.dynamo_config_get_value(ModCore.dynamo_data_get(),"_cfAFType");return ModCore.string_is_empty(e)?"default":e},isOwnership:function(){return"1"==ModCore.dynamo_config_get_value(ModCore.dynamo_data_get(),"_cfIsoWnrshp")},phntr:function(e,t){(e=void 0!==e?e:{}).phone=void 0!==e.phone?ModCore.phone_number_certainly(e.phone):"",post_data={phone:e.phone};e=ModCore.getEndpointUrl("phntr");a.call(e,post_data,function(e){if("function"!=typeof t)return e;t(e)})},run_step_detail_complete_tracking_code:function(a){d.fetch_step_detail_complete_tracking_code(function(e){var t,o,n=!1,i=(1==e.status&&(ModCore.string_is_empty(e.html)||(t=l("<div></div>",{css:{display:"none"}}),l(t).append(e.html),l("body").append(t),ModCore.string_is_empty(e.html))||(n=!0),ModCore.is_fbq()&&!window.__fbTracked&&Array.isArray(e?.fb_trc_dt)&&0<e.fb_trc_dt.length&&(window.__fbTracked=!0,e.fb_trc_dt.forEach(function(e){var t,o,n;e?.command&&e?.name&&(t=e.command,o=e.name,n=e.params||{},e=e.extra||{},0<Object.keys(e).length?fbq(t,o,n,e):0<Object.keys(n).length?fbq(t,o,n):fbq(t,o))}),n=!0),ModCore.is_oaiq()&&!window.__oaTracked&&Array.isArray(e?.oa_trc_dt)&&0<e.oa_trc_dt.length&&(window.__oaTracked=!0,e.oa_trc_dt.forEach(function(e){var t,o,n;e?.command&&e?.name&&(t=e.command,o=e.name,n=e.params||{},e=e.extra||{},0<Object.keys(e).length?oaiq(t,o,n,e):0<Object.keys(n).length?oaiq(t,o,n):oaiq(t,o))}),n=!0),!ModCore.is_gtag()||ModCore.string_is_empty(e?.enchncd_trc_dt)||(t=e?.enchncd_trc_dt?.gtagID,o=e?.enchncd_trc_dt?.gtagEventID,ModCore.string_is_empty(e?.enchncd_trc_dt.email))||(i={},ModCore.string_is_empty(e?.enchncd_trc_dt.email)||(i.email=e?.enchncd_trc_dt.email),ModCore.string_is_empty(e?.enchncd_trc_dt.phone_e164)||(i.phone_number=e?.enchncd_trc_dt.phone_e164),n=!0,gtag("set","user_data",i),ModCore.string_is_empty(t)||gtag("event","form_submit",{send_to:t}
1),ModCore.string_is_empty(o)),ModCore.is_widget_mode())&&!window.__widgetTracked&&Array.isArray(e?.widget_trc_dt)&&0<e.widget_trc_dt.length&&(window.__widgetTracked=!0,e.widget_trc_dt.forEach(function(e){e&&e.event&&window.parent.postMessage({source:"projectquote-widget",event:e.event,payload:e.payload||{}},"*")}),n=!0),{status:!0,isInjected:n});if("function"!=typeof a)return i;a(i)})},fetch_step_detail_complete_tracking_code:function(t){var e=ModCore.getEndpointUrl("fetch_step_detail_complete_tracking_code");a.call(e,{},function(e){t(e)})},step_fetch_html:function(e,t){ModCore.modal_loading_show(),t=void 0!==(e=void 0!==e?e:"")?t:{};var o={step:e,rid:r,ridsf:s},n={},e=(n.current_category_slug=ModCore.dynamo_config_get_value(ModCore.dynamo_data_get(),"_ciCategorySlug"),o=l.extend(o,n),"getstephtml"),n=ModCore.getEndpointUrl(e);a.call(n,o,function(e){ModCore.modal_loading_hide(),t(e)})},entry_data_set:function(e){return e=ModCore.object_is_valid(e)?e:{},n=l.extend(!0,n,e),!0},entry_data_extend:function(e){return d.entry_data_set(e)},entry_data_get:function(){data=n;return data=l.extend(data,{})},wizordo_step_request:function(e){var t=e=void 0!==e?e:{},o=(d.contact_form_image_upload_enabled()&&(t._imageUploadData=ImageUpload.getData()),ModCore.is_fbq(),d.entry_data_set(t),ModCore.dynamo_config_get_value(ModCore.dynamo_data_get(),"_cfGRToken")),o=(ModCore.string_is_empty(o)||(t._cfGRToken=o),ModCore.event_trigger("dynamoContactFormErrorClear",{}),l(".jq_hide_on_submit").hide(),ModCore.event_trigger("dynamoWizardoFormLoadingShow",{}),ModCore.getEndpointUrl("wizardostepsubmit")),s={name:e?.step_name};"1"==t?.step_submit&&ModCore.modal_loading_show({mtype:"lead_process"}),a.call(o,t,function(e){if(ModCore.event_trigger("dynamoWizardoFormLoadingHide",{}),ModCore.object_is_valid(e)){var t;if(1==e.status)if(e.token=void 0!==e.token?e.token:"",e.step_next=void 0!==e.step_next?e.step_next:"",e.step_next_id=void 0!==e.step_next_id?e.step_next_id:"",e.fstp=void 0!==e.fstp?e.fstp:"",e.form_data=void 0!==e.form_data?e.form_data:{},e.preconsent=void 0!==e.preconsent?e.preconsent:{},e.custom_tcpa=void 0!==e.custom_tcpa?e.custom_tcpa:{},e.fstp,ModCore.string_is_empty(e.step_next_id)){if(!e.custom_tcpa?.status||ModCore.string_is_empty(e.custom_tcpa.html)||PreConsentTCPA.applyRenderData({html:e.custom_tcpa.html}),e.preconsent?.status)switch(e.preconsent?.consent_type){default:case"PingConsentCompanyList":ModCore.event_trigger("dynamoWizardoConsentRequired",!0),PreConsent.applyRenderData({html:e.preconsent.html});break;case"PingConsentTCPAList":PreConsentTCPA.applyRenderData({html:e.preconsent.html})}var o={};switch(o.form_data=e.form_data,ModCore.string_is_empty(s.name)||_.trackStep(s.name),e.step_next){case"_step_next":case"next":return void ModCore.event_trigger("dynamoWizardoFormGotoNextStep",o);case"_step_prev":case"prev":return void ModCore.event_trigger("dynamoWizardoFormGotoPrevStep",o);case"_step_thankyou":case"thankyou":_.trackCompletion();const r=d.is_widget_mode();ModCore.modal_loading_show();var n=e.url_redirect,i=e.url_redirect_full;return void d.run_step_detail_complete_tracking_code(function(t){let e=500;t.isInjected&&(e=2e3),setTimeout(function(){if(r){var e=void 0!==t&&"object"==typeof t.wdgt?t.wdgt:{};switch(ModCore.modal_loading_hide(),d.step_show("thankyou"),e?.["wdgt-md"]){default:ModCore.string_is_empty(n)||ModCore.url_redirect(n);break;case"embed":case"external":case"guest":o.url=i,ModCore.event_trigger("dynamoWidgetModelOpenUrl",o),ModCore.event_trigger("dynamoWidgetOnLeadSubmit",{})}}else ModCore.url_redirect(n)},e)})}}else(t={}).id=e.step_next_id,t.form_data=void 0!==e.form_data?e.form_data:{},ModCore.event_trigger("dynamoWizardoFormGotoStepID",t);else void 0!==e.redirect&&"self"==e.redirect?window.location.reload(!0):(void 0!==e.actions&&l.type(e.actions)&&l.isArray(e.actions)&&0<e.actions.length&&u.doResponseActions({actions:e.actions}),a=[],t=(l.type(e.errors)&&l.isArray(e.errors)&&0<e.errors.length&&(a=e.errors),l.isArray(a)&&0<a.length&&ModCore.event_trigger("dynamoContactFormErrorShow",a),"Please check the errors"),l.type(e.message)&&!ModCore.string_is_empty(e.message)&&(t=e.message),ModCore.event_trigger("dynamoPageNotificationShow",{status:"error",msg:t}),ModCore.modal_loading_hide())}else{var a=["We cannot process your request. Please try again later"];ModCore.event_trigger("dynamoContactFormErrorShow",a),ModCore.modal_loading_hide()}})},custom_form_skip_question:function(e){l.isArray(e)&&l.each(e,function(e,t){ModCore.string_is_empty(t)||l('*[data-cfqid="'+t+'"]').remove()})},step_show:function(e){switch(ModCore.event_trigger("dynamoContactFormErrorClear",{}),l(".jq_contact_form_step").hide(),l(".jq_contact_form_step_"+e).show(),e){case"address":ModCore.AddressAPI_init();break;case"thankyou":l(".jq_contact_wizard").hide()}ModCore.event_trigger("dynamoContactFormStepChanged",{step:e})},step_other_show:function(){switch(ModCore.dynamo_config_get_value(M
1odCore.dynamo_data_get(),"_stepOther")){case"ajax":case"standalone":d.step_fetch_html("other",function(e){var t;1==e.status&&("standalone"==(void 0!==e.type?e.type:"")?(ModCore.modal_loading_show(),ModCore.url_redirect(e.url_redirect)):(t=l(e.html),l(".jq_contact_form_step_detail:last").after(t),o.init_contact_form_step("other"),ModCore.modal_open(l(".jq_contact_form_pop",".jq_contact_form_step_other")),o.bind_contact_form_checkbox_toogle_html(),"function"==typeof window.loadTrustedForm&&loadTrustedForm(),void 0!==e.thankyou&&e.thankyou&&d.step_show("thankyou")))});break;default:o.init_contact_form_step("other"),ModCore.modal_open(l(".jq_contact_form_pop",".jq_contact_form_step_other")),o.bind_contact_form_checkbox_toogle_html()}},mark_exin_seen:function(){var e=ModCore.getEndpointUrl("mark_exin_seen");a.call(e,{},function(e){return 1==e.status})},is_visitor_completedLeadForm:function(){return!ModCore.string_is_empty(r)}},PreConsent={applyRenderData:function(e){(e=void 0!==e?e:{}).service=void 0!==e.service?e.service:"",e.html=void 0!==e.html?e.html:"";var e=e.html,t=l("#jq_gc_cnsntcmpny");l(t).empty(),l(t).html(e),ModCore.event_trigger("dynamoWizardoFormFixHeight",{})}},PreConsentTCPA={applyRenderData:function(e){var t;(e=void 0!==e?e:{}).service=void 0!==e.service?e.service:"",e.html=void 0!==e.html?e.html:"",d.isOwnership()||(e=e.html,t=l(".jq_gc_cnsnttcpacmpny"),l(t).empty(),l(t).html(e),ModCore.event_trigger("dynamoWizardoFormFixHeight",{}))}},m={init:function(){var e;m.init_dynamo_events(),void 0!==window.clnt_rspnse_actions&&(e=window.clnt_rspnse_actions,l(document).ready(function(){m.processActions(e)}))},log_tokenGearsV2Process_action:function(e){(e=void 0!==e?e:{}).token=void 0!==e.token?e.token:"",e.data=void 0!==e.data?e.data:{};var e={token:e.token,data:e.data},t=ModCore.getEndpointUrl("ltgp_act");a.call(t,e,function(e){return e})},init_dynamo_events:function(){l(document).on("dynamoModalConsentClose",function(e,t){var o=l(".mfp-dynamo-consent").attr("data-cnstid"),o=(ModCore.string_is_empty(o)||localStorage.setItem("dynamoModalConsentClosed",o),l(".mfp-dynamo-consent").magnificPopup("close"),void 0!==window.clnt_gt?window.clnt_gt:"");ModCore.string_is_empty(o)||m.log_tokenGearsV2Process_action({token:o,data:{action:"completed"}}),"1"==ModCore.dynamo_config_get_value(ModCore.dynamo_data_get(),"_cfIsChld")&&ModCore.ui_noty("Please submit the form for the quote","success")}),l(document).on("dynamoModalConsentOpened",function(e,t){var o=void 0!==window.clnt_gt?window.clnt_gt:"";ModCore.string_is_empty(o)||m.log_tokenGearsV2Process_action({token:o,data:{action:"shown"}})}),l(document).on("dynamoModalConsentLoading",function(e,t){var o=void 0!==window.clnt_gt?window.clnt_gt:"";ModCore.string_is_empty(o)||m.log_tokenGearsV2Process_action({token:o,data:{action:"loading"}})}),l(document).on("dynamoModalConsentLoaded",function(e,t){var o=void 0!==window.clnt_gt?window.clnt_gt:"";ModCore.string_is_empty(o)||m.log_tokenGearsV2Process_action({token:o,data:{action:"loaded"}})})},processAction:function(e){m.Actions[e.type]?m.Actions[e.type](e.data):m.Utils.log("Unknown action type: "+e.type)},processActions:function(e){Array.isArray(e)&&e.forEach(function(e){m.processAction(e)})},Utils:{log:function(e){},insertScriptToDom:function(e){var e=e.replace(/&lt;/g,"<").replace(/&gt;/g,">").replace(/&apos;/g,"'").replace(/&quot;/g,'"').replace(/&amp;/g,"&"),t=document.createElement("script"),e=e.replace("<script>","").replace("<\/script>","");t.textContent=e,document.body.appendChild(t)},safeStringForVariable:function(e){return e.replace(/[^a-zA-Z0-9]/g,"")},generateHashFromUrl:function(t){let o=0;if(0!==t.length)for(let e=0;e<t.length;e++){var n=t.charCodeAt(e);o=(o<<5)-o+n,o&=o}return o.toString()},getTokenValueFromUrl:function(e){e=new URL(e);return new URLSearchParams(e.search).get("gt")},getTokenValueFromCurrentUrl:function(){return m.Utils.getTokenValueFromUrl(window.location.href)}},Actions:{Navigate:function(e){m.Utils.log("Navigating to: "+e),e&&""!==e.trim()?window.location.href=e:m.Utils.log("Navigation failed: URL is empty or invalid"),window.location.href=e},DisplayContent:function(e){m.Utils.log("Displaying content: "+e.content);var t=l("#scai-cra-content");t.length?"text/html"===e.contentType?t.html(e.content):t.text(e.content):m.Utils.log("Target div not found.")},ModalOpen:function(e){m.Utils.log("Opening modal with URL: "+e.url),ModCore.modal_open_url(e)},ModalConsent:function(t){m.Utils.log("Opening modal with URL: "+t.url),(params="undefined"!=typeof params?params:{}).title=void 0!==t.title?t.title:"Please select",params.id="modal_dynamo_consent",params.close_button=void 0!==t.close_button&&t.close_button,params.show_header=void 0===t.show_header||t.show_header,params.loading_notification=!0;var e="modal_"+m.Utils.generateHashFromUrl(t.url),o=m.Utils.getTokenValueFromCurrentUrl();const n=o||e;localStorage.getItem("dynamoModalConsentClosed")===n?m.Utils.log("Modal already closed, not opening again."):(params.loading_notification&&(o=l(`
2                        <div class="modalConsentLoadingOverlay">
3                           <div class="mfi-body">
4                                <div class="mfi-toptitle">
5                                 
6                                </div>
7                                <div class="mfi-title">
8                                    Please Wait
9                                </div>
10                                <div class="mfi-subtitle">
11                                    We are connecting you to the best pros.
12                                </div>
13                                <div class="mfi-bottomtitle">
14                                    DO NOT CLOSE YOUR BROWSER
15                                </div>
16                            </div>
17                        </div>
18                    `),l("body").append(o),setTimeout(function(){l(".modalConsentLoadingOverlay").remove()},2500)),e=Mustache.render('<div class="modal-dynamo modal-dynamo-consent modal-dynamo-default" id="{{id}}">
18{{#show_header}}<div class="modal-dynamo-header"><div class="modal-dynamo-title"><h2>{{title}}</h2></div>{{#close_button}}<button class="modal-dynamo-close" id="modalCloseButton">&times;</button>{{/close_button}}</div>{{/show_header}}<div class="modal-dynamo-body"><iframe src=""></iframe></div></div>',{title:params.title,id:params.id,message:params.message,close_button:params.close_button,show_header:params.show_header}),l.magnificPopup.open({modal:!0,callbacks:{open:function(){ModCore&&ModCore.event_trigger("dynamoModalConsentOpened");var e=this.container.find("iframe");switch(e.on("load",function(){params.loading_notification,ModCore&&ModCore.event_trigger("dynamoModalConsentLoaded")}),ModCore&&ModCore.event_trigger("dynamoModalConsentLoading"),e.attr("src",t.url),l(this.container).addClass("mfp-container-no-padding mfp-dynamo-consent"),l(this.container).attr("data-cnstid",n),l("#modalCloseButton",l(this.container)).on("click",function(){l(".mfp-dynamo-consent").magnificPopup("close")}),t?.service){case"ehat":window.addEventListener("message",function(e){e=e.data;"homeyou"===e.source&&e.payload.requestComplete&&ModCore&&ModCore.event_trigger("dynamoModalConsentClose")});break;case"pqpro":window.addEventListener("message",function(e){e.data&&"pageState"===e.data.event&&"ThankYou"===e.data.payload&&ModCore&&ModCore.event_trigger("dynamoModalConsentClose")})}t?.script&&m.Utils.insertScriptToDom(t.script),ModCore&&ModCore.event_trigger("dynamoModalConsentOpened")},close:function(){}},items:{src:l(e),type:"inline"}}))},TriggerEvent:function(e){m.Utils.log("Triggering event: "+e.eventName),ModCore.string_is_empty(e.eventName)||(params="undefined"!=typeof params?params:{},e.eventData=void 0!==e.eventData?e.eventData:{},ModCore.event_trigger(e.eventName,e.eventData))},ShowNotification:function(e){m.Utils.log("Showing notification: "+e.message),e.message&&""!==e.message.trim()&&(e.type&&""!==e.type.trim()&&e.type,ModCore.ui_noty(e.message,e.type))},ProcessData:function(e){m.Utils.log("Processing data with CjLeadKey: "+e.CjLeadKey)}}},_={isEnabled:!0,isValid:!(u={settings:{requireConsent:!(c={init:function(){},init_tcpa_text:function(){setTimeout(function(){l(".jq_lfo_anywhere_form_tcpa_abv_plchdr").html("")},100)},init_form_inline:function(){var e;0<l(".jq_lfo_anywhere_form_inline").length&&(e=l(".jq_lfo_form_autocomplete_address_api")).length&&(e.each(function(){var e=l(this),t=e.closest(".jq_lfo_anywhere_form_inline"),o=t.find('input[name="zip_code"], input[data-rl="zipcode"]').first(),n="jq_itm_"+Math.random().toString(36).substring(2,18),i="jq_itm_"+Math.random().toString(36).substring(2,18),o=(o.addClass(n),t.find('input[name="yaddress_address_api_data"]').first());0===o.length&&(o=l("<input>",{type:"hidden",name:"yaddress_address_api_data"}),e.after(o)),o.addClass(i),e.addClass("jq_autocomplete_address_api").attr("data-dest","."+n).attr("data-destapi","."+i)}),ModCore.AddressAPI_init())},init_form:function(){0<l("#jq_lfo_anywhere_form").length&&ModContact.lead_start_tracking(),l("#jq_lfo_anywhere_form").bind("submit",function(e){e.preventDefault();var i=l(this),e=l(this).serializeObject(),t=(ModCore.is_fbq(),ModCore.dynamo_config_get_value(ModCore.dynamo_data_get(),"_cfGRToken")),t=(ModCore.string_is_empty(t)||(e._cfGRToken=t),e.lfo_anywhere="1",ModCore.event_trigger("dynamoContactFormErrorClear",{}),ModCore.modal_loading_show(),ModCore.getEndpointUrl("form1submit"));a.call(t,e,function(e){var t,o,n;ModCore.modal_loading_hide(),ModCore.object_is_valid(e)?1==e.status?(void 0!==e.rid&&(r=e.rid),void 0!==e.ridsf&&(s=e.ridsf),cftype=void 0!==e.cftype?e.cftype:ModCore.dynamo_config_get_value(ModCore.dynamo_data_get(),"_cfType"),cfCustomNextStep=void 0!==e.cfCustomNextStep?e.cfCustomNextStep:"thankyou",ModCore.string_is_empty(cfCustomNextStep)&&(cfCustomNextStep="thankyou"),cfCustomNextStepOtherShow=void 0!==e.cfCustomNextStepOtherShow&&e.cfCustomNextStepOtherShow,cfCustomNextSkipQuestion=void 0!==e.cfCustomNextSkipQuestion&&e.cfCustomNextSkipQuestion,ModCore.dynamo_config_get_value(ModCore.dynamo_data_get(),"_stepOther"),ModCore.modal_loading_show(),cfRdrct=void 0===e.cfRdrct||ModCore.string_is_empty(e.cfRdrct)?"/lead":e.cfRdrct,(mdl=!(void 0===e.mdl||!ModCore.object_is_valid(e.mdl))&&e.mdl)?(ModCore.modal_loading_hide(),ModCore.modal_open_url(mdl)):ModCore.url_redirect(cfRdrct)):(o=["We cannot process your request. Please try again later"],n=(o=l.type(e.errors)&&l.isArray(e.errors)?e.errors:o).join("<br>"),l(i).trigger("LfoAnywhere:error",[{message:n}]),t="Please check the errors",l.type(e.message)&&!ModCore.string_is_empty(e.message)&&(t=e.message),ModCore.event_trigger("dynamoPageNotificationShow",{status:"error",msg:t})):(ModCore.event_trigger("dynamoContactFormErrorShow",o=["We cannot process your request. Please try again later"]),n=o.join("<br>"),l(i).trigger("LfoAnywhere:error",[{message:n}]))})}),c.init_form_inline()},submitHandler:function(o){var t={first_name:"first_name",last_name:"last_name",phone:"phone",zip_code:"zip_code",email:"email",address:"address",comment:"comment",lfo_anywhere_preset:"lfo_anywhere_preset",lfo_anywhere_type:"lfo_anywhere_type",bcd:"bcd"},a=(o=o||{},l("#jq_lfo_anywhere_form"));a.data("lfo_params",o),a.off(".lfo_anywhere"),"function"==typeof o.onBeforeSubmit&&a.on("LfoAnywhere:beforeSubmit.lfo_anywhere",function(e,t){o.onBeforeSubmit.call(o,t)}
18),"function"==typeof o.onError&&a.on("LfoAnywhere:error.lfo_anywhere",function(e,t){o.onError.call(o,t)}),"function"==typeof o.onSuccess&&a.on("LfoAnywhere:success.lfo_anywhere",function(e,t){o.onSuccess.call(o,t)}),Object.keys(o).forEach(function(e){var n,i;"function"!=typeof o[e]&&"source_form"!==e&&void 0!==o[e]&&null!==o[e]&&(n=t[e]||e,"object"==typeof(i=o[e])?Object.keys(i).forEach(function(e){var t=n+"["+e+"]",e=i[e],o=a.find('[name="'+t+'"]');o.length?o.val(e):l("<input>",{type:"hidden",name:t,value:e}).appendTo(a)}):(e=a.find('[name="'+n+'"]')).length?e.val(i):l("<input>",{type:"hidden",name:n,value:i}).appendTo(a))}),a.trigger("LfoAnywhere:beforeSubmit",[o]),a.submit()},getConsentStepIndex:function(){var e=l(".nav-item",l(".jq_wizardo_form")).index(l(this.settings.consentStepSelector));return"number"==typeof e&&0<=e?e:-1}}),consentStepSelector:'[data-step-type="preconsent"]',phoneVerificationStepSelector:'[data-step-type="phone_verification"]'},init:function(){var e,t,o;0!=l(".jq_wizardo_form").length&&(l(".jq_wizardo_prev").unbind("click").bind("click",function(e){e.preventDefault(),u.goToStepPrev()}),l("#wizardoForm").on("initialized",function(e){}),l("#wizardoForm").on("leaveStep",function(e,t,o,n,i){return ModCore.event_trigger("dynamoWizardoOnLeaveStep",{anchorObject:t,currentStepIndex:o,nextStepIndex:n,stepDirection:i}),!0}),l("#wizardoForm").on("showStep",function(e,t,o,n,i){l("input:enabled:visible:first",l("#wizardoForm")).focus(),ModCore.event_trigger("dynamoWizardoOnShowStep",{anchorObject:t,stepIndex:o,stepDirection:n,stepPosition:i}),"1"==ModCore.wizardo_config_get_value("wstptrck")&&u.onShowStep({stepIndex:o,stepDirection:n,stepPosition:i})}),l("#wizardoForm").on("loaded",function(e){ModContact.is_trusted_form_enabled()&&(u.loaderShow(),setTimeout(function(){ModContact.is_trusted_form_loaded()||u.loaderHide()},8e3)),u.init_widget_mode_page_loader(),ModContact.lead_start_tracking(),ModContact.lead_start_recaptcha(),ModCore.event_trigger("dynamoWidgetOnReady",{})}),o=this.getConsentStepIndex(),e=this.getPhoneVerificationStepIndex(),t=this.getPhoneVerificationStepEnabled(),o=this.settings.requireConsent||-1===o?[]:[o],e&&-1!==e&&!0!==t&&o.push(e),l("#wizardoForm").smartWizard({selected:0,autoAdjustHeight:!0,enableUrlHash:!1,hiddenSteps:o,toolbar:{position:"none",showNextButton:!0,showPreviousButton:!0,extraHtml:""},keyboard:{keyNavigation:!1},anchor:{enableNavigation:!1,enableNavigationAlways:!1,enableDoneState:!1,markPreviousStepsAsDone:!1,unDoneOnBackNavigation:!1,enableDoneStateNavigation:!1}}),l("form","#wizardoForm").bind("submit",function(e){e.preventDefault();e=l(this).serializeObject(),e=u.extendStepData(e);(is_valid=l(this).validate().checkForm())&&ModContact.wizordo_step_request(e)}),u.init_dynamo_events(),u.init_category_selector(),u.init_consent_company_selector(),u.init_phone_verification(),u.init_email_suggest(),u.init_phone_suggest(),u.init_tracker())},stop_browser_autofill_sync:function(){i&&(clearInterval(i),i=null)},init_browser_autofill_sync:function(){var e,t,o;function n(){t&&clearTimeout(t),t=setTimeout(function(){t=null,l.each(e,function(e,t){var o=l(t.source).first().val();o&&l.each(t.targets,function(e,t){l(t).each(function(){l(this).val()!==o&&l(this).val(o).trigger("input").trigger("change").trigger("blur")})})})},100)}0!==l(".jq_dynamo_browser_autofill_proxy").length&&l(".jq_dynamo_browser_autofill_proxy").is(":visible")&&(e=[{source:'input[name="bcd[e]"]',targets:['input[name="wzi[yemail]"]']},{source:'input[name="bcd[p]"]',targets:['input[name="wzi[yphone]"]','input[name="yphone"]']},{source:'input[name="bcd[z]"]',targets:['input[name="wzi[yzipcode]"]','input[name="yzipcode"]']},{source:'input[name="bcd[a]"]',targets:['input[name="wzi[yaddress]"]']}],t=null,l(document).on("input change blur",".jq_dynamo_browser_autofill_proxy input",function(){n()}),o=0,i=setInterval(function(){n(),15<=++o&&(clearInterval(i),i=null)},1e3),setTimeout(n,300),setTimeout(n,1e3),setTimeout(n,2500),l(document).off("dynamoWizardoOnLeaveStep.browserAutoFillSync"),l(document).on("dynamoWizardoOnLeaveStep.browserAutoFillSync",function(){u.isCurrentStep("name")&&(l(document).off("dynamoWizardoOnLeaveStep.browserAutoFillSync"),u.stop_browser_autofill_sync())}))},getConsentStepIndex:function(){var e=l(".nav-item",l(".jq_wizardo_form")).index(l(this.settings.consentStepSelector));return"number"==typeof e&&0<=e?e:-1},getPhoneVerificationStepIndex:function(){var e=l(".nav-item",l(".jq_wizardo_form")).index(l(this.settings.phoneVerificationStepSelector));return"number"==typeof e&&0<=e?e:-1},getPhoneVerificationStepEnabled:function(){var e=this.getPhoneVerificationStepIndex();let t=!1;return-1!==e&&(e=l(l(".nav-item",l(".jq_wizardo_form")).eq(e).find("a")[0]),t=!l(e).hasClass("hidden")),t}
18,getStepIndexByType:function(e){e='[data-step-type="'+e?.type+'"]',e=l(".nav-item",l(".jq_wizardo_form")).index(l(".nav-item"+e,l(".jq_wizardo_form")));return"number"==typeof e&&0<=e?e:-1},getStepIndexByStepIdPublic:function(e){let t=e?.id;return(t="string"==typeof t?t.replace(/^#?step-/,""):t)&&"number"==typeof(e=l(".nav-item",l(".jq_wizardo_form")).index(l('.nav-link[href="#step-'+t+'"]',l(".jq_wizardo_form")).closest(".nav-item")))&&0<=e?e:-1},setConsentRequired:function(e){this.settings.requireConsent=e;var t,o=this.getConsentStepIndex();-1!==o&&(t=l("#wizardoForm").data("smartWizard"),e?t.unsetState([o],"hidden"):t.setState([o],"hidden"))},init_tracker:function(){var e=ModCore.wizardo_config_get_value("wtd");e&&"object"==typeof e&&_.initWithJson(e)},init_dynamo_events:function(){l(document).on("dynamoWizardoConsentRequired",function(e,t){u.setConsentRequired(t)}),l(document).on("dynamoWizardoFormLoadingShow",function(e,t){u.loaderShow()}),l(document).on("dynamoWizardoFormLoadingHide",function(e,t){u.loaderHide()}),l(document).on("dynamoTrustedFormCertIdCallback",function(e,t){u.loaderHide()}),l(document).on("dynamoWidgetOnReady",function(e,t){ModCore.is_widget_mode()&&window.parent&&window.parent.postMessage({source:"projectquote-widget",event:"widgetReady",payload:[]},"*")}),l(document).on("dynamoWizardoSubmitStep",function(e,t){u.submitStep({})}),l(document).on("dynamoWizardoFormGotoNextStep",function(e,t){var o={};o.form_data=void 0!==t.form_data?t.form_data:{},u.goToStepNext(o)}),l(document).on("dynamoWizardoFormGotoPrevStep",function(e,t){u.goToStepPrev()}),l(document).on("dynamoWizardoFormGotoStepID",function(e,t){u.goToStep(t)}),l(document).on("dynamoWizardoFormFixHeight",function(e,t){u.fixHeight()}),l(document).on("dynamoWizardoCategorySelectorUpdateOtherData",function(e,t){ModCore.updateFieldJsonData("#jq_ctgry_slctr_otherdata",t)}),l(document).on("dynamoWizardoCategorySelectorApiSelected",function(e,t){l(".jq_ctgry_slctr_apiid").val(t?.api_id),l(".jq_ctgry_slctr_kywrdid").val(t?.keyword_id??t?.name??null);t={submit:t?.submit};ModCore.event_trigger("dynamoWizardoFormNextEnable",t)}),l(document).on("dynamoWizardoCategorySelectorBackClicked",function(e,t){ModCore.event_trigger("dynamoWizardoFormNextDisable",{type:"option"})}),l(document).on("dynamoWizardoFormNextDisable",function(e,t){l(".jq_wizardo_next").addClass("contact-wizard-btn-disabled"),l(".jq_wizardo_next").off("click.disabledHandler").on("click.disabledHandler",function(e){e.preventDefault();e={};e.type=void 0!==t.type?t.type:{},"option"===e.type&&ModCore.ui_noty("Please select an option","error")})}),l(document).on("dynamoWizardoFormNextEnable",function(e,t){l(".jq_wizardo_next").prop("disabled",!1),l(".jq_wizardo_next").off("click.disabledHandler"),l(".jq_wizardo_next").removeClass("contact-wizard-btn-disabled"),!0===t?.submit&&u.submitStep({})}),l(document).on("dynamoWizardoEmailSuggest",function(e,t){t=t?.email;u.assign_email_suggest({email:t})}),l(document).on("dynamoWizardoPhoneSuggest",function(e,t){t=t?.phone;u.assign_phone_suggest({phone:t})})},init_widget_mode_page_loader:function(){if(ModCore.is_widget_mode()){var t=document.querySelector(".jq_contact_wizard");let e=new ResizeObserver(function(){e.disconnect(),ModCore.event_trigger("dynamoWidgetPageLoadingHide",{})});e.observe(t),setTimeout(function(){e.disconnect(),ModCore.event_trigger("dynamoWidgetPageLoadingHide",{})},2e3)}},init_consent_company_selector:function(){l(".jq_wizardo_cnsntcmpny_slctr").length},init_phone_verification:function(){0<l(".jq_wizardo_phnvrfctn").length&&WizardoPhoneVerification.init({})},doResponseActions:function(e){(e=void 0!==e?e:{}).actions=void 0!==e.actions?e.actions:[],l.type(e.actions)&&l.isArray(e.actions)&&0<e.actions.length&&l.each(e.actions,function(e,t){var o=t.type,n=void 0!==t.data?t.data:null;if(void 0!==o)switch(o){case"email_suggest":ModCore.event_trigger("dynamoWizardoEmailSuggest",n);break;case"phone_suggest":ModCore.event_trigger("dynamoWizardoPhoneSuggest",n)}})},assign_email_suggest:function(e){(e=void 0!==e?e:{}).email=void 0!==e.email?e.email:"",ModCore.string_is_empty(e.email)||(l(".jq_wizardo_email_sugggest_link").find("span").text(e.email),l(".jq_wizardo_email_sugggest").show(),l("#jq_wizardo_email_sugggested_is").val("1"),u.triggerWizardoResize())},assign_phone_suggest:function(e){(e=void 0!==e?e:{}).phone=void 0!==e.phone?e.phone:"",ModCore.string_is_empty(e.phone)||(l(".jq_wizardo_phone_sugggest_link").find("span").text(e.phone),l(".jq_wizardo_phone_sugggest").show(),l("#jq_wizardo_phone_sugggested_is").val("1"),u.triggerWizardoResize())},init_email_suggest:function(){0<l(".jq_wizardo_email_sugggest").length&&(l(".jq_wizardo_email_sugggest_close").bind("click",function(e){l(".jq_wizardo_email_sugggest").hide(),u.triggerWizardoResize()}),l(".jq_wizardo_email_sugggest_link").bind("click",function(e){e.preventDefault();var e=l(this).find("span").text(),t=l('*[data-bind-js="email"]');ModCore.domSetValueExtended(t,e),l(".jq_wizardo_email_sugggest").hide(),u.triggerWizardoResize()}))},init_phone_suggest:function(){0<l(".jq_wizardo_phone_sugggest").length&&l(".jq_wizardo_phone_sugggest_close").bind("click",function(e){l(".jq_wizardo_phone_sugggest").hide(),u.triggerWizardoResize()})},init_step_name:function(){u.init_browser_autofill_sync()},init_category_selector:function(){var e,t,o,n;0<l(".jq_wizardo_ctgry_slctr_1").length&&(e=l(".jq_wizardo_ctgry_slctr_1"),t=l(".jq_item_category_selector",l(e)),o=l(".jq_item_service_selector",l(e)),n=l(".jq_item_service_selector_wrapper",l(e)),l(t).bind("change",function(e){var t=l(this).val();if(!t)return l(n).hide(),u.triggerWizardoResize(),!1;l(n).show(),u.triggerWizardoResize(),u.fetchCategoryServicesData({id:t},function(e){l(o).empty(),l(o).append('<option value="">Select a service</option>'),e.status&&(e=void 0!==e.data?e.data:[],l.each(e,function(e,t){l(o).append(l("<option>",{value:t.value,text:t.text}))}))})})),0<l(".jq_wizardo_ctgry_slctr_2").length&&l(document).ready(function(){var t,o,n;void 0!==ModCategorySelectorV2&&(t=ModCore.wizardo_config_get_value("catsel.allowedCategory"),o=ModCore.wizardo_config_get_value("catsel.crtTask"),ModCore.wizardo_config_get_value("catsel.fnlStatus"),n=ModCore.wizardo_config_get_value("catsel.fnlCstmData"),setTimeout(function(){var e;n?(e=n,ModCategorySelectorV2.setCategoryData(e,{}),ModCategorySelectorV2.init(),ModCategorySelectorV2.configureByType("KeywordFunnel"),ModCategorySelectorV2.showCategorySelector()):(ModCore.array_is_valid(t)&&ModCategorySelectorV2.setAllowedCategories(t),ModCore.object_is_valid(o)&&ModCategorySelectorV2.setCurrentTaskData(o),ModCategorySelectorV2.init(),setTimeout(function(){ModCategorySelectorV2.showCategorySelector()},500))},200),ModCore.event_trigger("dynamoWizardoFormNextDisable",{type:"option"}))})},triggerWizardoResize:function(e){setTimeout(function(){ModCore.event_trigger("dynamoWizardoFormFixHeight",{}),"function"==typeof e&&e()},200)},loaderShow:function(){l("#wizardoForm").smartWizard("loader","show")},loaderHide:function(){l("#wizardoForm").smartWizard("loader","hide")},extendStepData:function(e){e="Object"!=typeof e?e:{};var t=l("#wizardoForm").smartWizard("getStepInfo"),o={},t=(o.step=t,l("#jq_wizordo_token").val()),t=(ModCore.string_is_empty(t)&&(t=ModCore.wizardo_config_get_value("token")),ModCore.string_is_empty(t)&&(t=l("#wizardoForm").data("token")),o.token=t,l("#jq_wizordo_tokenvrfy").val());return ModCore.string_is_empty(t)&&(t=ModCore.wizardo_config_get_value("tokenvrfy")),o.tokenvrfy=t,e=l.extend(e,o)},applyStepFormData:function(e){e="undefined"!=l.type(e)?e:{},l.each(e,function(e,t){ModCore.domSetValueExtended(l('*[data-bind-wsfd="'+e+'"]'),t)})},applyResponseFormData:function(e){var t,o,n,i,a,r,s,d;return e="undefined"!=l.type(e)?e:{},conf={skip_tcpa_phone_number:!1,skip_contact_detail:!1},"undefined"!=l.type(e.skip_tcpa_phone_number)&&!0===e.skip_tcpa_phone_number&&(conf.skip_tcpa_phone_number=!0),l.each(e,function(e,t){ModCore.domSetValueExtended(l('*[data-bind-wrfd="'+e+'"]'),t)}),l(".jq_wizardo_phone_number_tcpa").hide(),!0!==conf.skip_tcpa_phone_number?"undefined"!=l.type(e.tcpa_phone_number)&&(s="undefined"!=l.type(e.tcpa_phone_number.formatted)?e.tcpa_phone_number.formatted:"",phone_text="undefined"!=l.type(e.tcpa_phone_number.text)?e.tcpa_phone_number.text:"",ModCore.domSetValueExtended(l('*[data-bind-js="tcpa_phone_number"]'),s),ModCore.domSetValueExtended(l('*[data-bind-js="tcpa_phone_number_text"]'),phone_text),l(".jq_wizardo_phone_number_tcpa").show(),conf.skip_contact_detail=!0,0<l(".jq_wizardo_phone_number_tcpa").length)&&(t=l(".jq_wizardo_phone_number_tcpa"),l(".jq_itm_edit",l(t)).unbind("click").bind("click",function(){l(".jq_itm_text",l(t)).hide(),l(".jq_itm_form",l(t)).show(),setTimeout(function(){ModCore.event_trigger("dynamoWizardoFormFixHeight",{})},200)})):l(".jq_wizardo_phone_number_tcpa").hide(),"undefined"!=l.type(e.suggested_phone_number)&&(l(".jq_wizardo_suggested_phone_number").hide(),phone_href="undefined"!=l.type(e.suggested_phone_number.href)?e.suggested_phone_number.href:"",phone_text="undefined"!=l.type(e.suggested_phone_number.text)?e.suggested_phone_number.text:"",ModCore.string_is_empty(phone_href)||(t=l(".jq_wizardo_suggested_phone_number"),l(t).find("[data-type='href']").attr("href",phone_href),l(t).find("[data-type='text']").html(phone_text),ModContact.bind_href_tel(l(t)),l(t).show())),!0!==conf.skip_contact_detail?"undefined"!=l.type(e.contact_data)&&0<l(".jq_wizardo_contact_detail").length&&(t=l(".jq_wizardo_contact_detail"),o="undefined"!=l.type(e.contact_data.name)?e.contact_data.name:"",n="undefined"!=l.type(e.contact_data.email)?e.contact_data.email:"",i="undefined"!=l.type(e.contact_data.address)?e.contact_data.address:"",a="undefined"!=l.type(e.contact_data.zipcode)?e.contact_data.zipcode:"",r="undefined"!=l.type(e.contact_data.phone)?e.contact_data.phone:"",s=s="undefined"!=l.type(e.contact_data.phone_formatted)?e.contact_data.phone_formatted:"",ModCore.string_is_empty(s)&&(s=r),d="undefined"!=l.type(e.step_edit_id)?e.step_edit_id:"",ModCore.domSetValueExtended(l('*[data-bind-js="cd_name"]'),o),ModCore.domSetValueExtended(l('*[data-bind-js="cd_email"]'),n),ModCore.domSetValueExtended(l('*[data-bind-js="cd_address"]'),i),ModCore.domSetValueExtended(l('*[data-bind-js="cd_zipcode"]'),a),ModCore.domSetValueExtended(l('*[data-bind-js="cd_phone"]'),s),l(".jq_wizardo_contact_detail").show(),l(".jq_itm_edit",l(t)).unbind("click").bind("click",function(){ModCore.string_is_empty(d)||(l('input[name="bcd[sts]"]').val("0"),ModCore.event_trigger("dynamoWizardoFormGotoStepID",{id:d}))}),setTimeout(function(){ModCore.event_trigger("dynamoWizardoFormFixHeight",{})},200)):l(".jq_wizardo_contact_detail").hide(),!0},submitStep:function(e){var t=l(".jq_wizardo_next:visible","#wizardoForm");0<t.length&&l(t).click()},goToStepNext:function(e){"object"==l.type((e=void 0!==e?e:{}).form_data)&&u.applyResponseFormData(e.form_data),l("#wizardoForm").smartWizard("next")},goToStepPrev:function(){l("#wizardoForm").smartWizard("prev")},goToStep:function(e){var t;"object"==l.type((e=void 0!==e?e:{}).form_data)&&u.applyResponseFormData(e.form_data),"undefined"!==l.type(e.index)?l("#wizardoForm").smartWizard("goToStep",e.index,!0):"undefined"!==l.type(e.type)?(t=u.getStepIndexByType({type:e.type}),l("#wizardoForm").smartWizard("goToStep",t,!0)):"undefined"!==l.type(e.id)&&0<=(t=u.getStepIndexByStepIdPublic({id:e.id}))&&l("#wizardoForm").smartWizard("goToStep",t,!0)},fixHeight:function(){l("#wizardoForm").length&&l("#wizardoForm").smartWizard("fixHeight")},isCurrentStep:function(e){e=e||"";var t=u.getVisibleStep();if(0!==t.length)switch(e){case"name":return 0<l('input[name="wzi[yname]"]',t).length?!0:0<l('input[name="wzi[ylname]"]',t).length;case"email":return 0<l('input[name="wzi[yemail]"]',t).length?!0:!1;case"phone":return 0<l('input[name="wzi[phone]"]',t).length?!0:!1;case"address":return 0<l('input[name="wzi[address]"]',t).length?!0:!1}return!1},getVisibleStep:function(){return l(".jq_wizardo_form .tab-pane:visible").first()},onShowStep:function(e,t){(e=void 0!==e?e:{}).stepIndex=void 0!==e.stepIndex?e.stepIndex:"",e.stepDirection=void 0!==e.stepDirection?e.stepDirection:"",e.stepPosition=void 0!==e.stepPosition?e.stepPosition:"";var o=l(".jq_contact_wizard .tab-pane:visible").find('input[name="step_id"]').val(),n=l('.jq_contact_wizard input[name="cntntlfolgid"]').val(),e={stepIndex:e.stepIndex,stepDirection:e.stepDirection,stepPosition:e.stepPosition,wzi_step_id:o,wzi_cntntlfolgid:n},o=ModCore.getEndpointUrl("wizardoonshwstp");a.call(o,e,function(e){ModCore.object_is_valid(e)&&"function"==typeof t&&t(e)})},fetchCategoryServicesData:function(e,t){(e=void 0!==e?e:{}).id=void 0!==e.id?e.id:"";var e={id:e.id},o=ModCore.getEndpointUrl("wizardocategoryservice");ModCore.event_trigger("dynamoWizardoFormLoadingShow",{}),a.call(o,e,function(e){ModCore.event_trigger("dynamoWizardoFormLoadingHide",{}),ModCore.object_is_valid(e)&&t(e)})}}),trackedSteps:new Set,init:function(e,t,o={}){this.version=e,this.variant=t,this.customDimensions=o,this.resetTracking(),ModCore.string_is_empty(this.version)?this.disable():(this.isValid=!0,this.trackInit())},initWithJson:function(e){var t,o;e&&"object"==typeof e&&({version:e,variant:t,dmns:o}=e,e)?this.init(e,t,o||{}):this.disable()},enable:function(){this.isEnabled=!0},disable:function(){this.isEnabled=!1},executeGtag:function(e,t){return"function"==typeof gtag&&(gtag("event",e,t),!0)},trackStep:function(e){var t;this.isEnabled&&this.isValid&&!ModCore.string_is_empty(e)&&!this.trackedSteps.has(e)&&(t={event_category:""+this.version,event_label:e,variant:this.variant,...this.customDimensions},this.executeGtag("Step Completed: "+e,t))&&this.trackedSteps.add(e)},trackInit:function(){var e;
18this.isEnabled&&this.isValid&&(e={event_category:""+this.version,event_label:"Inited",variant:this.variant,...this.customDimensions},this.executeGtag("Wizard Inited",e))},trackCompletion:function(){var e;this.isEnabled&&this.isValid&&(e={event_category:""+this.version,event_label:"Completed",variant:this.variant,...this.customDimensions},this.executeGtag("Wizard Completed",e))},resetTracking:function(){this.trackedSteps.clear()}},WizardoPhoneVerification={RESEND_SECONDS:60,lastSendAt:null,cooldownInterval:null,options:{},refreshViewTimer:null,moduleData:{},otp_digit_count:4,init:function(e={}){this.options=e||{},l(".jq_wizardo_phnvrfctn").length<=0||(this.cacheElements(),this.bindEvents(),this.showStepPreSend())},cacheElements:function(){this.changeNumberLink=l(".jq_otp_changeNumberLink"),this.resendLink=l(".jq_otp_resendLink"),this.resendTimer=document.getElementById("jq_otp_resendTimer"),this.otpInputs=document.querySelectorAll(".jq_otp_input"),this.sendCodeBtn=document.getElementById("jq_otp_sendCodeBtn"),this.stepPreSend=document.getElementById("jq_otp_step_presend"),this.stepOtp=document.getElementById("jq_otp_step_otp"),this.verifyCodeBtn=document.getElementById("jq_otp_verifyCodeBtn"),this.displayPhone=document.getElementById("jq_otp_displayPhone"),this.displayPhoneOtp=document.getElementById("jq_otp_displayPhoneOtp"),this.containerElement=l(".jq_wizardo_phnvrfctn"),this.formCurrent=l(this.containerElement).parents("form:first")},bindEvents:function(){var t=this;l(document).on("dynamoWizardoOnLeaveStep",function(e,t){WizardoPhoneVerification.isModuleVisible()}),l(document).on("dynamoWizardoOnShowStep",function(e,t){u.isCurrentStep("name")&&u.init_step_name(),WizardoPhoneVerification.isModuleVisible()&&WizardoPhoneVerification.showStepPreSend()}),this.sendCodeBtn&&l(this.sendCodeBtn).on("click",function(e){e.preventDefault(),t.handleSendInitial()}),this.changeNumberLink&&l(this.changeNumberLink).on("click",function(e){e.preventDefault(),t.handleChangeNumber()}),this.resendLink&&l(this.resendLink).on("click",function(){t.handleResendClick()}),this.verifyCodeBtn&&this.verifyCodeBtn.addEventListener("click",function(e){e.preventDefault(),t.handleVerifyClick()}),this.bindOtpInputEvents()},bindOtpInputEvents:function(){var n=this;l(this.otpInputs).on("input",function(){this.value=this.value.replace(/[^0-9]/g,"")}),this.otpInputs.forEach(function(t,o){t.addEventListener("input",function(){1===t.value.length&&o<n.otpInputs.length-1&&n.otpInputs[o+1].focus()}),t.addEventListener("keydown",function(e){"Backspace"===e.key&&!t.value&&0<o&&n.otpInputs[o-1].focus()}),t.addEventListener("paste",function(e){e.preventDefault();var o=(e.clipboardData||window.clipboardData).getData("text").replace(/\D/g,"").split("").slice(0,6);o.length&&(n.otpInputs.forEach(function(e,t){e.value=o[t]||""}),e=(e=o.length)<n.otpInputs.length?e:n.otpInputs.length-1,n.otpInputs[e].focus())})})},entry_data_set:function(e){return e=ModCore.object_is_valid(e)?e:{},n=l.extend(!0,this.moduleData,e),!0},entry_data_extend:function(e){return this.entry_data_set(e)},entry_data_get:function(){data=this.moduleData;return data=l.extend(data,{})},isModuleVisible:function(){return!!l(".jq_wizardo_phnvrfctn").is(":visible")},hideAlert:function(){},showAlert:function(e,t){switch(e){default:ModCore.ui_noty(t,"alert");break;case"success":ModCore.ui_noty(t,"success");break;case"error":ModCore.ui_noty(t,"error")}},refreshView:function(){this.isModuleVisible()&&(clearTimeout(this.refreshViewTimer),this.refreshViewTimer=setTimeout(function(){ModCore.event_trigger("dynamoWizardoFormFixHeight",{})},200))},showStepPreSend:function(){this.stepPreSend&&this.stepPreSend.classList.remove("d-none"),this.stepOtp&&this.stepOtp.classList.add("d-none"),this.clearCooldown(),this.hideResendTimer(),this.refreshView()},showStepOtp:function(){this.stepPreSend&&this.stepPreSend.classList.add("d-none"),this.stepOtp&&this.stepOtp.classList.remove("d-none"),this.displayPhone&&this.displayPhoneOtp&&(this.displayPhoneOtp.textContent=this.displayPhone.textContent),this.otpInputs.forEach(function(e){e.value=""}),this.otpInputs.length&&this.otpInputs[0].focus();var t=this;l(this.formCurrent).off("keydown.otpPrevent").on("keydown.otpPrevent",function(e){"Enter"===e.key&&t.stepOtp&&!t.stepOtp.classList.contains("d-none")&&(e.preventDefault(),t.handleVerifyClick())}),void 0!==ModCore&&ModCore.event_trigger,this.refreshView()},onCodeActuallySent:function(){this.lastSendAt=Date.now(),this.hideResendTimer()},getRemainingCooldownSeconds:function(){var e;
18return this.lastSendAt&&(e=Date.now()-this.lastSendAt,0<(e=1e3*this.RESEND_SECONDS-e))?Math.ceil(e/1e3):0},showResendTimer:function(e){this.resendTimer&&(l(this.resendTimer).html('You can resend in <span class="otp-second-digits">'+e+"</span> seconds."),l(".jq_otp_resend_wrapper").show(),this.refreshView())},hideResendTimer:function(){this.resendTimer&&(l(".jq_otp_resend_wrapper").hide(),this.refreshView())},startCooldown:function(e){var t,o=this;this.clearCooldown(),e<=0?this.hideResendTimer():(t=e,this.showResendTimer(t),this.cooldownInterval=setInterval(function(){--t<=0?(o.clearCooldown(),o.hideResendTimer()):o.showResendTimer(t)},1e3))},clearCooldown:function(){this.cooldownInterval&&(clearInterval(this.cooldownInterval),this.cooldownInterval=null)},getOtpValue:function(){return Array.prototype.map.call(this.otpInputs,function(e){return e.value.trim()}).join("")},handleVerifyClick:function(){this.hideAlert();var o,e,t=this.getOtpValue();t.length!==this.otp_digit_count?this.showAlert("error","Please enter a valid "+this.otp_digit_count+"-digit code."):(l((o=this).formCurrent).serializeObject(),e=d.entry_data_get(),this.entry_data_get(),t={action:"otp_verify",code:t,token:e?.token,phone:e?.wzi?.yphone,cftype:e?.cftype,cntntlpp:e?.cntntlpp,step:e?.step,step_id:e?.step_id},e=ModCore.getEndpointUrl("phnvrfctn"),ModCore.event_trigger("dynamoContactFormErrorClear",{}),ModCore.event_trigger("dynamoWizardoFormLoadingShow",{}),a.call(e,t,function(e){ModCore.overlay_loading_hide(),ModCore.event_trigger("dynamoWizardoFormLoadingHide",{});var t=e?.message;1==e.status?(l(o.formCurrent).off("keydown.otpPrevent"),o.showAlert("success",t||"Phone verified successfully!"),l(o.formCurrent).submit(),"function"==typeof o.options?.handleVerifyClick&&o.options.handleVerifyClick(this)):o.showAlert("error",t||"Failed to send verification code. Please try again.")}))},handleSendInitial:function(){this.hideAlert();var o=this,e=(l(this.formCurrent).serializeObject(),d.entry_data_get()),e=(this.entry_data_get(),{action:"otp_send",token:e?.token,phone:e?.wzi?.yphone,cftype:e?.cftype,cntntlpp:e?.cntntlpp,step:e?.step,step_id:e?.step_id}),t=ModCore.getEndpointUrl("phnvrfctn");ModCore.event_trigger("dynamoContactFormErrorClear",{}),ModCore.event_trigger("dynamoWizardoFormLoadingShow",{}),a.call(t,e,function(e){ModCore.overlay_loading_hide(),ModCore.event_trigger("dynamoWizardoFormLoadingHide",{});var t=e?.message;1==e.status?(e.token=void 0!==e.token?e.token:"",o.showAlert("success",t||"We have sent a verification code to your phone."),o.onCodeActuallySent(),o.showStepOtp(),"function"==typeof o.options?.handleSendInitial&&o.options.handleSendInitial(this)):o.showAlert("error",t||"Failed to send verification code. Please try again.")})},handleChangeNumber:function(){ModCore.event_trigger("dynamoWizardoFormGotoStepID",{type:"phone"}),"function"==typeof this.options?.onChangeNumber&&this.options.onChangeNumber(this)},handleResendClick:function(){this.hideAlert();var o,e,t=this.getRemainingCooldownSeconds();0<t?this.startCooldown(t):(l((o=this).formCurrent).serializeObject(),t=d.entry_data_get(),this.entry_data_get(),t={action:"otp_resend",token:t?.token,phone:t?.wzi?.yphone,cftype:t?.cftype,cntntlpp:t?.cntntlpp,step:t?.step,step_id:t?.step_id},e=ModCore.getEndpointUrl("phnvrfctn"),ModCore.event_trigger("dynamoContactFormErrorClear",{}),ModCore.event_trigger("dynamoWizardoFormLoadingShow",{}),a.call(e,t,function(e){ModCore.overlay_loading_hide(),ModCore.event_trigger("dynamoWizardoFormLoadingHide",{});var t=e?.message;1==e.status?(o.showAlert("success",t||"A new verification code has been sent."),o.onCodeActuallySent(),"function"==typeof this.options?.handleResendClick&&this.options.handleResendClick(this)):o.showAlert("error",t||"Failed to resend verification code. Please try again.")}))}},{init:d.init,lead_start_tracking:d.lead_start_tracking,lead_start_recaptcha:d.lead_start_recaptcha,is_visitor_completedLeadForm:d.is_visitor_completedLeadForm,mark_exin_seen:d.mark_exin_seen,phntr:d.phntr,contact_form_type:d.contact_form_type,entry_data_get:d.entry_data_get,entry_data_extend:d.entry_data_extend,wizordo_step_request:d.wizordo_step_request,is_trusted_form_enabled:d.is_trusted_form_enabled,is_trusted_form_loaded:d.is_trusted_form_loaded,lfo_anywhere:d.lfo_anywhere,bind_href_tel:o.bind_href_tel}}(window.jQuery)||ModContact);jQuery(document).ready(ModContact.init),window.CategoryData={name:"Services",list_type:"list",items:[{name:"Bathroom Remodel",question:"What type of bathroom remodel do you need?",answers:[{name:"Full Bathroom Remodeling",value:"185",keyword_id:"Bathroom Remodeling"},{name:"Walk-In Shower Installation",value:"2900",keyword_id:"Walk In Shower Installation"},{name:"Bathtub Installation",value:"161",keyword_id:"Bathtub Installation"},{name:"Tub to Shower Conversion",value:"2329",keyword_id:"Tub to Shower Conversion"},{name:"Walk-In Tub Installation",value:"462",keyword_id:"Walk In Tub Installation"}]},{name:"Closets",question:"Where is the closet located?",answers:[{name:"Master bedroom",question:"Would you like built-in shelves?",answers:[{name:"Yes",value:"15"},{name:"No",value:"15"}]},{name:"Other bedroom",question:"Would you like built-in shelves?",answers:[{name:"Yes",value:"15"},{name:"No",value:"15"}]},{name:"Hallway",question:"Would you like built-in shelves?",answers:[{name:"Yes",value:"15"},{name:"No",value:"15"}]},{name:"Laundry/utility room",question:"Would you like built-in shelves?",answers:[{name:"Yes",value:"15"},{name:"No",value:"15"}]},{name:"Bathroom",question:"Would you like built-in shelves?",answers:[{name:"Yes",value:["15","1164"]},{name:"No",value:"15"}]},{name:"Other",question:"Would you like built-in shelves?",answers:[{name:"Yes",value:"15"},{name:"No",value:"15"}]}]},{name:"Concrete",question:"What type of concrete work do you need?",answers:[{name:"Driveways",question:"What kind of driveway work do you need help with?",answers:[{name:"Install new driveway",value:"36",keyword_id:"Concrete Driveway Installation"},{name:"Replace existing driveway",value:"36",keyword_id:"Concrete Driveway Replacement"},{name:"Repair existing driveway",value:"37",keyword_id:"Concrete Driveway Repair"}]},{name:"Floors",answers:[{name:"Install new concrete floors",value:"2275",keyword_id:"Concrete Floor Installation"},{name:"Replace existing concrete floors",value:"2275",keyword_id:"Concrete Floor Replacement"},{name:"Repair existing concrete floors",value:"31",keyword_id:"Concrete Floor Repair"},{name:"Apply concrete finishing, overlays & coloring",value:"1189",keyword_id:"Concrete Finishing"},{name:"Repair & resurface concrete flatwork",value:"31",keyword_id:"Concrete Flatwork Repair"},{name:"Apply concrete floor coating",value:"27",keyword_id:"Epoxy Floor Coating Installation"}]},{name:"Patios, walks and steps",answers:[{name:"Concrete Install",value:"34",keyword_id:"Concrete Patio Installation"},{name:"Concrete Repair",value:"30",keyword_id:"Concrete Patio Repair"},{name:"Brick, stone or interlocking pavers",value:"528",keyword_id:"Paver Patio Installation"}]},{name:"Foundations",answers:[{name:"Foundation Installation",value:"38",keyword_id:"Concrete Foundation Installation"},{name:"Foundation Repair",value:"290",keyword_id:"Foundation Repair"},{name:"Foundation or Basement Waterproofing",value:"264",keyword_id:"Foundation Waterproofing"}]},{name:"Walls",answers:[{name:"Install Concrete Walls",value:"32",keyword_id:"Concrete Walls Installation"},{name:"Repair Concrete Walls",value:"1049",keyword_id:"Concrete Walls Repair"}]}]},{name:"Fences",question:"What type of flooring service do you need?",answers:[{name:"Fence Installation or Replacement",question:"Is this for a residential or commercial property?",answers:[{name:"Residential",question:"What type of fence do you want installed?",answers:[{name:"Wood",value:"86",keyword_id:"Wood Fence Installation"},{name:"Vinyl",value:"84",keyword_id:"Vinyl Fence Installation"},{name:"Aluminum",value:"78",keyword_id:"Aluminum Fence Installation"},{name:"Wrought Iron",value:"88",keyword_id:"Wrought Iron Fence Installation"},{name:"Chain Link",value:"82",keyword_id:"Chain Link Fence Installation"},{name:"Barbed Wire",value:"80",keyword_id:"Barbed Wire Fence Installation"}]},{name:"Commercial",question:"What type of fence do you want installed?",answers:[{name:"Wood",value:"1760",keyword_id:"Commercial Wood Fence Installation"},{name:"Vinyl",value:"1767",keyword_id:"Commercial Vinyl Fence Installation"},{name:"Aluminum",value:"1771",keyword_id:"Commercial Aluminum Fence Installation"},{name:"Wrought Iron",value:"1769",keyword_id:"Commercial Wrought Iron Fence Installation"},{name:"Chain Link",value:"1762",keyword_id:"Commercial Chain Link Fence Installation"},{name:"Barbed Wire",value:"1773",keyword_id:"Commercial Barbed Wire Fence Installation"}]}]},{name:"Fence Repair",question:"Is this for a residential or commercial property?",answers:[{name:"Residential",question:"What type of fence do you need repaired?",answers:[{name:"Wood",value:"87",keyword_id:"Wood Fence Repair"},{name:"Vinyl",value:"85",keyword_id:"Vinyl Fence Repair"},{name:"Aluminum",value:"79",keyword_id:"Aluminum Fence Repair"},{name:"Wrought Iron",value:"325",keyword_id:"Wrought Iron Fence Repair"},{name:"Chain Link",value:"83",keyword_id:"Chain Link Fence Repair"},{name:"Barbed Wire",value:"81",keyword_id:"Barbed Wire Fence Repair"}]},{name:"Commercial",question:"What type of fence do you need repaired?",answers:[{name:"Wood",value:"1761",keyword_id:"Commercial Wood Fence Repair"},{name:"Vinyl",value:"1768",keyword_id:"Commercial Vinyl Fence Repair"},{name:"Aluminum",value:"1772",keyword_id:"Commercial Aluminum Fence Repair"},{name:"Wrought Iron",value:"1770",keyword_id:"Commercial Wrought Iron Fence Repair"},{name:"Chain Link",value:"1763",keyword_id:"Commercial Chain Link Fence Repair"},{name:"Barbed Wire",value:"1774",keyword_id:"Commercial Barbed Wire Fence Repair"}]}]}]},{name:"Flooring",question:"What type of flooring service do you need?",answers:[{name:"Hardwood",question:"What type of service?",answers:[{name:"Install",question:"Is this for a residential or commercial property?",answers:[{name:"Residential",question:"Have you already purchased the materials for this project?",answers:[{name:"Yes",value:"359",keyword_id:"Hardwood Floor Installation"},{name:"No",value:"89",keyword_id:"Hardwood Floor Installation"}]},{name:"Commercial",value:"1641",keyword_id:"Commercial Hardwood Installation"}]},{name:"Repair",question:"Is this for a residential or commercial property?",answers:[{name:"Residential",value:"94",keyword_id:"Hardwood Floor Repair"},{name:"Commercial",value:"1543",keyword_id:"Commercial Hardwood Floor Repair"}]},{name:"Refinishing",question:"Is this for a residential or commercial property?",answers:[{name:"Residential",value:"95",keyword_id:"Hardwood Floor Refinishing"},{name:"Commercial",value:"1487",keyword_id:"Commercial Hardwood Floor Refinishing"}]}]},{name:"Vinyl/Linoleum",question:"What type of service?",answers:[{name:"Install",question:"Have you already purchased the materials for this project?",answers:[{name:"Yes",value:"2939",keyword_id:"Vinyl Floor Installation"},{name:"No",value:"92",keyword_id:"Vinyl Floor Installation"}]},{name:"Repair",value:"93",keyword_id:"Vinyl Floor Repair"}]},{name:"Laminate",question:"What type of service?",answers:[{name:"Install",question:"Have you already purchased the materials for this project?",answers:[{name:"Yes",value:"2940",keyword_id:"Laminate Floor Installation"},{name:"No",value:"90",keyword_id:"Laminate Floor Installation"}]},{name:"Repair",value:"91",keyword_id:"Laminate Floor Repair"}]},{name:"Carpet",question:"What type of service?",answers:[{name:"Install",question:"Have you already purchased the materials for this project?",answers:[{name:"Yes",value:"284",keyword_id:"Carpet Installation"},{name:"No",value:"239",keyword_id:"Carpet Installation"}]},{name:"Repair",value:"285",keyword_id:"Carpet Repair"}]},{name:"Tile",question:"What type of tile?",answers:[{name:"Ceramic and Porcelain",question:"What type of service?",answers:[{name:"Install",question:"Have you already purchased the materials for this project?",answers:[{name:"Yes",value:"2937",keyword_id:"Tile Floor Installation"},{name:"No",value:"233",keyword_id:"Tile Floor Installation"}]},{name:"Repair",value:"234",keyword_id:"Tile Floor Repair"},{name:"Grout Cleaning",value:"230",keyword_id:"Grout Cleaning"}]},{name:"Natural Stone",question:"What type of service?",answers:[{name:"Install",question:"Have you already purchased the materials for this project?",answers:[{name:"Yes",value:"2938",keyword_id:"Stone Floor Installation"},{name:"No",value:"2021",keyword_id:"Stone Floor Installation"}]},{name:"Repair",value:"1004",keyword_id:"Stone Floor Repair"},{name:"Grout Cleaning",value:"230",keyword_id:"Grout Cleaning"}]},{name:"Exterior Tile",question:"What type of service?",answers:[{name:"Exterior Tile Installation",value:"460",keyword_id:"Exterior Tile Installation"},{name:"Exterior Tile Repair",value:"234",keyword_id:"Exterior Tile Repair"},{name:"Grout Cleaning",value:"230",keyword_id:"Grout Cleaning"}]}]}]},{name:"Foundation Repair",question:"What type of service do you need?",answers:[{name:"Foundation Repair",value:"290",keyword_id:"Foundation Repair"},{name:"Basement Waterproofing",value:"264",keyword_id:"Basement Waterproofing"},{name:"House Leveling / Raising",question:"What type of structure is this?",answers:[{name:"Single or Multi Family Home",value:"1191",keyword_id:"Foundation Raising"}
18,{name:"Mobile Home or Trailer",value:"2228",keyword_id:"Mobile Home Leveling"}]},{name:"Concrete Leveling / Mudjacking",value:"263",keyword_id:"Mudjacking"},{name:"Foundation Installation",value:"38",keyword_id:"Concrete Foundation Installation"},{name:"Not Sure",value:"290"}]},{name:"Foundations",question:"What type of foundation service do you need?",answers:[{name:"Foundation Installation",value:"38",keyword_id:"Concrete Foundation Installation"},{name:"Foundation Repair",answers:[{name:"General Foundation Repair",value:"290",keyword_id:"Foundation Repair"},{name:"Basement Waterproofing",value:"264",keyword_id:"Basement Waterproofing"},{name:"House Leveling / Raising",value:"1191",keyword_id:"Foundation Raising"},{name:"Slab Leveling / Mudjacking",value:"263",keyword_id:"Mudjacking"},{name:"Not Sure",value:"290"}]}]},{name:"Gutters",question:"What type of gutter service do you need?",answers:[{name:"Install new gutter system",question:"Are you interested in gutter covers?",answers:[{name:"Yes",value:["9","338"]},{name:"No",value:"9"}]},{name:"Repair an existing gutter system",question:"Are you interested in gutter covers?",answers:[{name:"Yes",value:"338"},{name:"No",value:"111"}]}]},{name:"Handyman",question:"What type of service do you need?",answers:[{name:"Single project",question:"Select the task that best describes your project:",answers:[{name:"General handyman",value:"238"},{name:"Carpentry",question:"Is the repair needed due to dry rot or water damage?",answers:[{name:"Yes",value:"1852"},{name:"No",value:"238"},{name:"Not sure",value:"238"}]},{name:"Doors",value:"238"},{name:"Electrical",value:"238"},{name:"Plumbing",question:"Is this an emergency?",answers:[{name:"Yes",value:"238",action:"popup_800",action_data:{phone:"8774993249"}},{name:"No/skip",value:"238"}]},{name:"Appliances",value:"238"},{name:"Furniture assembly",value:"802"},{name:"TV Mounting",value:"403"},{name:"Drywall",value:"238"},{name:"Windows",question:"What type of service?",answers:[{name:"Replace",question:"How many windows?",answers:[{name:"1",value:"236"},{name:"2",value:"482"},{name:"3-5",value:"482"},{name:"6+",value:"487"}]},{name:"Repair",question:"How many windows?",answers:[{name:"1",value:"116"},{name:"2",value:"495"},{name:"3-5",value:"500"},{name:"6+",value:"505"}]}]},{name:"Landscaping",value:"238"},{name:"Air conditioning system",value:"238"}]},{name:"A variety of projects",type:"multiselect",question:"Select all that apply:",options:[{name:"General handyman",value:"238"},{name:"Carpentry",value:"238"},{name:"Doors",value:"238"},{name:"Electrical",value:"238"},{name:"Plumbing",value:"238"},{name:"Appliances",value:"238"},{name:"Furniture assembly",value:"802"},{name:"TV Mounting",value:"403"},{name:"Drywall",value:"238"},{name:"Windows",value:"115"},{name:"Landscaping",value:"238"},{name:"Air conditioning system",value:"238"}]}]},{name:"Heating & AC",question:"What type of service do you need?",answers:[{name:"Install/Replace",answers:[{name:"Central Heating/Furnace",answers:[{name:"Natural gas",value:"128"},{name:"Oil",value:"286"},{name:"Propane gas",value:"370"},{name:"Electric",value:"368"},{name:"I don't know",value:"128"}]},{name:"Heat Pump",answers:[{name:"Natural gas",value:"130"},{name:"Oil",value:"130"},{name:"Propane gas",value:"130"},{name:"Electric",value:"130"},{name:"I don't know",value:"130"}]},{name:"Boiler/Radiator",answers:[{name:"Natural gas",value:"366"},{name:"Oil",value:"362"},{name:"Propane gas",value:"363"},{name:"Electric",value:"1836"},{name:"I don't know",value:"366"}]},{name:"Air Conditioner",value:"120"}]},{name:"Repair",question:"If your HVAC unit cannot be repaired, would you consider a replacement?",answers:[{name:"Yes",answers:[{name:"Central Heating/Furnace",answers:[{name:"Natural gas",value:"129"},{name:"Oil",value:"372"},{name:"Propane gas",value:"373"},{name:"Electric",value:"371"},{name:"I don't know",value:"129"}]},{name:"Heat Pump",answers:[{name:"Natural gas",value:"131"},{name:"Oil",value:"131"},{name:"Propane gas",value:"131"},{name:"Electric",value:"131"},{name:"I don't know",value:"131"}]},{name:"Boiler/Radiator",answers:[{name:"Natural gas",value:"364"},{name:"Oil",value:"365"},{name:"Propane gas",value:"364"},{name:"Electric",value:"119"},{name:"I don't know",value:"119"}]},{name:"Air Conditioner",value:"121"}]},{name:"No",answers:[{name:"Central Heating/Furnace",answers:[{name:"Natural gas",value:"129"},{name:"Oil",value:"372"},{name:"Propane gas",value:"373"},{name:"Electric",value:"371"},{name:"I don't know",value:"129"}]},{name:"Heat Pump",answers:[{name:"Natural gas",value:"131"},{name:"Oil",value:"131"},{name:"Propane gas",value:"131"},{name:"Electric",value:"131"},{name:"I don't know",value:"131"}]},{name:"Boiler/Radiator",answers:[{name:"Natural gas",value:"364"},{name:"Oil",value:"365"},{name:"Propane gas",value:"364"},{name:"Electric",value:"119"},{name:"I don't know",value:"119"}]},{name:"Air Conditioner",value:"121"}]}]}]},{name:"Kitchen Remodel",question:"Which best describes your needs?",answers:[{name:"Full Kitchen Remodeling",question:"Add or remove walls?",answers:[{name:"Yes",value:"420",keyword_id:"Kitchen Renovation"},{name:"No",value:"192",keyword_id:"Kitchen Remodeling"},{name:"Not sure",value:"192",keyword_id:"Kitchen Remodeling"}]},{name:"New Cabinets Installation",value:"12",keyword_id:"New Cabinets Installation"},{name:"Custom Cabinets Building",value:"256",keyword_id:"Custom Cabinets Building"},{name:"Cabinets Refacing",value:"283",keyword_id:"Cabinets Refacing"},{name:"New countertops",question:"Material type:",answers:[{name:"Granite Countertops",answers:[{name:"Install or replace",value:"295",keyword_id:"Granite Countertops Installation"},{name:"Repair",value:"1050",keyword_id:"Granite Countertop Repair"}]},{name:"Laminate Countertops",answers:[{name:"Install or replace",value:"296",keyword_id:"Laminate Countertop Installation"},{name:"Repair",value:"968",keyword_id:"Laminate Countertop Repair"}]},{name:"Marble Countertops",answers:[{name:"Install or replace",value:"297",keyword_id:"Marble Countertop Installation"},{name:"Repair",value:"1050",keyword_id:"Marble Countertop Repair"}]},{name:"Other Solid Stone Countertops",answers:[{name:"Install or replace",value:"297",keyword_id:"Stone Countertop Installation"},{name:"Repair",value:"1050",keyword_id:"Stone Countertop Repair"}]},{name:"Stainless Steel Countertops",answers:[{name:"Install or replace",value:"298",keyword_id:"Stainless Steel Countertop Installation"},{name:"Repair",value:"1053",keyword_id:"Stainless Steel Countertop Repair"}]},{name:"Wood Countertops",answers:[{name:"Install or replace",value:"299",keyword_id:"Wood Countertop Installation"},{name:"Repair",value:"968",keyword_id:"Wood Countertop Repair"}]},{name:"Solid Surface Countertops",answers:[{name:"Install or replace",value:"296",keyword_id:"Solid Surface Countertop Installation"},{name:"Repair",value:"1053",keyword_id:"Solid Surface Countertop Repair"}]},{name:"Concrete Countertops",answers:[{name:"Install or replace",value:"28",keyword_id:"Concrete Countertop Installation"},{name:"Repair",value:"1053",keyword_id:"Concrete Countertop Repair"}]}]}]},{name:"Landscaping",question:"Which landscaping service do you need?",answers:[{name:"Lawn mowing/lawn maintenance",value:"142"},{name:"Landscaping for yard/garden",value:"138",type:"multiselect",question:"Select what will be included in your landscaping project:",options:[{name:"Grass",value:"138"},{name:"Mulch",value:"138"},{name:"Rock",value:"138"},{name:"Sand",value:"138"},{name:"Soil",value:"138"},{name:"Trees/shrubs",value:"138"}]},{name:"Grade or reslope ground",question:"What is the purpose of grading?",answers:[{name:"Improving existing drainage",value:"1118"},{name:"Erosion/flood prevention",value:"1118"},{name:"New construction",value:"696"},{name:"Other",value:"696"}]},{name:"Delivery of soil, sand, mulch, rock",value:"392"},{name:"Install sod",question:"What is the size of the area?",answers:[{name:"Small (less than 1,000 sq ft)",value:"147"},{name:"Medium (1,000-3,000 sq ft)",value:"147"},{name:"Large (3,000-10,000 sq ft)",value:"147"},{name:"Very Large (more than 10,000 sq ft)",value:"147"}]},{name:"Install landscaping curbing",value:"137"},{name:"Install synthetic grass",value:"521"},{name:"Plan and install outdoor lighting",value:"139"},{name:"Repair outdoor lighting",value:"985"},{name:"Sprinklers or Irrigation System",value:"143"},{name:"Tree Trimming",value:"149"},{name:"Tree Removal",value:"461"},{name:"Snow Removal",value:"146"}]},{name:"Moving",question:"What type of move is this?",answers:[{name:"Local or within state",answers:[{name:"Packing and moving",question:"What size home?",answers:[{name:"Studio",type:"zipcode",question:"Where are you moving to?",value:"2048"},{name:"1 bedroom",type:"zipcode",question:"Where are you moving to?",value:"2048"},{name:"2-3 bedrooms",type:"zipcode",question:"Where are you moving to?",value:"2048"},{name:"4+ bedrooms",type:"zipcode",question:"Where are you moving to?",value:"2048"}]},{name:"Just moving",question:"What size home?",answers:[{name:"Studio",type:"zipcode",question:"Where are you moving to?",value:"2048"},{name:"1 bedroom",type:"zipcode",question:"Where are you moving to?",value:"2048"},{name:"2-3 bedrooms",type:"zipcode",question:"Where are you moving to?",value:"2048"},{name:"4+ bedrooms",type:"zipcode",question:"Where are you moving to?",value:"2048"}]},{name:"Just packing",value:"2048"},{name:"Move a piano",value:"972"},{name:"Truck or container rental",value:"2046"}]},{name:"Long distance or out-of-state",answers:[{name:"Packing and moving",question:"What size home?",answers:[{name:"Studio",type:"zipcode",question:"Where are you moving to?",value:"694"},{name:"1 bedroom",type:"zipcode",question:"Where are you moving to?",value:"694"},{name:"2-3 bedrooms",type:"zipcode",question:"Where are you moving to?",value:"694"},{name:"4+ bedrooms",type:"zipcode",question:"Where are you moving to?",value:"694"}]},{name:"Just moving",question:"What size home?",answers:[{name:"Studio",type:"zipcode",question:"Where are you moving to?",value:"694"},{name:"1 bedroom",type:"zipcode",question:"Where are you moving to?",value:"694"},{name:"2-3 bedrooms",type:"zipcode",question:"Where are you moving to?",value:"694"},{name:"4+ bedrooms",type:"zipcode",question:"Where are you moving to?",value:"694"}]},{name:"Just packing",value:"694"},{name:"Move a piano",value:"972"},{name:"Truck or container rental",value:"2046"},{name:"Vehicle shipment",value:"2320"}]},{name:"Piano",value:"972"}]},{name:"Painting",question:"What type of painting service do you need?",answers:[{name:"Residential Interior Painting",answers:[{name:"1-2 rooms",value:"156",keyword_id:"Interior Painting"},{name:"3+ rooms",value:"155",keyword_id:"Interior Painting"},{name:"Small projects (less than 1 room)",value:"260",keyword_id:"Small Project Interior Painting"},{name:"Cabinet Painting",value:"519",keyword_id:"Cabinet Painting"},{name:"Furniture Painting / Refinishing",value:"955",keyword_id:"Furniture Painting"}]},{name:"Residential Exterior Painting",answers:[{name:"More than half of the home exterior (3-4 sides)",value:"154",keyword_id:"Whole House Painting"},{name:"Less than half of the home exterior (1-2 sides)",value:"2230",keyword_id:"Exterior Painting"},{name:"Deck, porch or fence",value:"2273",keyword_id:"Deck Painting"},{name:"Trim or shutters",value:"157",keyword_id:"Small Project Exterior Painting"},{name:"Other",value:"2229",keyword_id:"Interior Painting"}]},{name:"Commercial Interior Painting",value:"1502",keyword_id:"Commercial Interior Painting"},{name:"Commercial Exterior Painting",value:"151",keyword_id:"Commercial Exterior Painting"}]},{name:"Pavers",question:"What type of paver service do you need?",answers:[{name:"Installation",question:"What type of property is this?",answers:[{name:"Residential",question:"For which of these areas do you need installation?",answers:[{name:"Driveway",value:"527",keyword_id:"Driveway Pavers Installation"},{name:"Patio / Walkway",value:"528",keyword_id:"Paver Patio Installation"}]},{name:"Commercial",value:"1610",keyword_id:"Commercial Pavers Installation"}]},{name:"Repair",question:"What type of property is this?",answers:[{name:"Residential",value:"2325",keyword_id:"Paver Repair"},{name:"Commercial",value:"2958",keyword_id:"Commercial Paver Repair"}]},{name:"Sealing",question:"What type of property is this?",answers:[{name:"Residential",value:"2337",keyword_id:"Paver Sealing"},{name:"Commercial",value:"2959",keyword_id:"Commercial Paver Sealing"}]},{name:"Cleaning",question:"What type of property is this?",answers:[{name:"Residential",value:"4",keyword_id:"Paver Cleaning"},{name:"Commercial",value:"1594",keyword_id:"Commercial Paver Cleaning"}]}]},{name:"Plumbing",question:"What type of service do you need?",answers:[{name:"Replace",answers:[{name:"Water Heater",value:"178"},{name:"Drain",value:"818"},{name:"General Plumbing",value:"248"},{name:"Septic",value:"430"},{name:"Not sure",value:"248"}]},{name:"Repair",answers:[{name:"Water Heater",value:"179"},{name:"Drain",value:"816"},{name:"General Plumbing",value:"248"},{name:"Septic",value:"1013"},{name:"Not sure",value:"248"}]},{name:"Not sure",answers:[{name:"Water Heater",value:"179"},{name:"Drain",value:"816"},{name:"General Plumbing",value:"248"},{name:"Septic",value:"1013"},{name:"Not sure",value:"248"}]}]},{name:"Restoration",question:"What type of restoration do you need?",answers:[{name:"Fire Damage",question:"Is this an emergency?",answers:[{name:"Yes",value:"186",action:"popup_800",action_data:{phone:"8775767610"}},{name:"No/skip",value:"186",answers:[{name:"Home/Residence",value:"186"},{name:"Business",value:"186"}]}]},{name:"Water Damage",question:"Is this an emergency?",answers:[{name:"Yes",value:"198",action:"popup_800",action_data:{phone:"8775767610"}},{name:"No/skip",answers:[{name:"Home/Residence",value:"198"},{name:"Business",value:"198"}]}]}]},{name:"Roofing",question:"What type of location is this?",answers:[{name:"Residential",question:"What type of roofing service do you need?",answers:[{name:"Installation",question:"Please select a material type.",answers:[{name:"Asphalt",value:"201",keyword_id:"Asphalt Roof Installation"},{name:"Clay/Tile",value:"205",keyword_id:"Tile Roof Installation"},{name:"Slate",value:"204",keyword_id:"Slate Roof Installation"},{name:"Metal",value:"203",keyword_id:"Metal roof Installation"},{name:"Wood",value:"206",keyword_id:"Wood Roof Installation"},{name:"Flat / Single Ply",value:"202",keyword_id:"Flat Roof Installation"}]},{name:"Replacement",question:"Please select a material type.",answers:[{name:"Asphalt",value:"216",keyword_id:"Asphalt Roof Replacement"},{name:"Clay/Tile",value:"220",keyword_id:"Tile Roof Replacement"},{name:"Slate",value:"219",keyword_id:"Slate Roof Replacement"},{name:"Metal",value:"218",keyword_id:"Metal Roof Replacement"},{name:"Wood",value:"221",keyword_id:"Wood Roof Replacement"},{name:"Flat / Single Ply",value:"217",keyword_id:"Flat Roof Replacement"}]},{name:"Repair",question:"Please select a material type.",answers:[{name:"Asphalt",value:"209",keyword_id:"Asphalt Roof Repair"},{name:"Clay/Tile",value:"213",keyword_id:"Tile Roof Repair"},{name:"Slate",value:"212",keyword_id:"Slate Roof Repair"},{name:"Metal",value:"211",keyword_id:"Metal Roof Repair"},{name:"Wood",value:"214",keyword_id:"Wood Roof Repair"},{name:"Flat / Single Ply",value:"215",keyword_id:"Flat Roof Repair"}]}]},{name:"Commercial",question:"What type of roofing service do you need?",answers:[{name:"Installation / Replacement",question:"Please select a material type.",answers:[{name:"Asphalt",value:"199",keyword_id:"Commercial Asphalt Roof Installation"},{name:"Clay/Tile",value:"1567",keyword_id:"Commercial Tile Roof Installation"},{name:"Slate",value:"1560",keyword_id:"Commercial Slate Roof Installation"},{name:"Metal",value:"1492",keyword_id:"Commercial Metal roof Installation"},{name:"Wood",value:"1558",keyword_id:"Commercial Wood Roof Installation"},{name:"Flat / Single Ply",value:"1559",keyword_id:"Commercial Flat Roof Installation"}]},{name:"Repair",question:"Please select a material type.",answers:[{name:"Asphalt",value:"1561",keyword_id:"Commercial Asphalt Roof Repair"},{name:"Clay/Tile",value:"1566",keyword_id:"Commercial Tile Roof Repair"},{name:"Slate",
18value:"1565",keyword_id:"Commercial Slate Roof Repair"},{name:"Metal",value:"1564",keyword_id:"Commercial Metal Roof Repair"},{name:"Wood",value:"1562",keyword_id:"Commercial Wood Roof Repair"},{name:"Flat / Single Ply",value:"1563",keyword_id:"Flat Roof Repair"}]}]}]},{name:"Siding",question:"What type of siding service do you need?",answers:[{name:"Install new siding",question:"What type of siding do you want today?",answers:[{name:"Vinyl",value:"450",keyword_id:"Vinyl Siding Installation"},{name:"Wood",value:"784",keyword_id:"Wood Siding Installation"},{name:"Aluminum",value:"432",keyword_id:"Aluminum Siding Installation"},{name:"Fiber Cement",value:"440",keyword_id:"Cement Siding Installation"},{name:"Other / Not Sure",value:"450",keyword_id:"Siding Installation"}]},{name:"Replace existing siding",question:"What type of siding do you need replaced?",answers:[{name:"Vinyl",value:"10",keyword_id:"Vinyl Siding Replacement"},{name:"Wood",value:"442",keyword_id:"Wood Siding Replacement"},{name:"Aluminum",value:"434",keyword_id:"Aluminum Siding Replacement"},{name:"Fiber Cement",value:"785",keyword_id:"Cement Siding Replacement"},{name:"Other / Not Sure",value:"10",keyword_id:"Siding Replacement"}]},{name:"Repair siding",question:"What type of siding do you need repaired?",answers:[{name:"Vinyl",value:"782",keyword_id:"Vinyl Siding Repair"},{name:"Wood",value:"783",keyword_id:"Wood Siding Repair"},{name:"Aluminum",value:"433",keyword_id:"Aluminum Siding Repair"},{name:"Fiber Cement",value:"2253",keyword_id:"Fiber Cement Siding Repair"},{name:"Other / Not Sure",value:"782",keyword_id:"Siding Repair"}]}]},{name:"Solar",question:"What's your average monthly utility bill?",answers:[{name:"$0-$100",value:"60"},{name:"$101-$200",value:"60"},{name:"$201-$300",value:"60"},{name:"$301-$400",value:"60"}],followUpQuestion:{question:"Who is your electric provider?",type:"dropdown",note:"API list of local electric providers (utility providers)",value:"60"}},{name:"Stinging Insects",question:"What type of service do you need?",answers:[{name:"Wasps / Hornets / Yellow Jackets Control",question:"What type of location?",answers:[{name:"Residential",value:"74",keyword_id:"Stinging Insects Control"},{name:"Commercial",value:"2948",keyword_id:"Commercial Stinging Insects Control"}]},{name:"Carpenter Bees Control",question:"What type of location?",answers:[{name:"Residential",value:"2951",keyword_id:"Carpenter Bee Removal"},{name:"Commercial",value:"2950",keyword_id:"Commercial Carpenter Bee Removal"}]},{name:"Honey Bees Relocation",question:"What type of location?",answers:[{name:"Residential",value:"2952",keyword_id:"Honey Bee Relocation"},{name:"Commercial",value:"2953",keyword_id:"Commercial Honey Bee Relocation"}]}]},{name:"Swimming Pools",question:"What type of service do you need?",answers:[{name:"Swimming Pool Installation",question:"Which type of pool do you want installed?",answers:[{name:"Inground Pool",question:"Which type of inground pool are you interested in?",answers:[{name:"Fiberglass",value:"416",keyword_id:"Fiberglass Pool Installation"},{name:"Vinyl Lined",value:"943",keyword_id:"Vinyl Lined Pool Installation"},{name:"Concrete",value:"942",keyword_id:"Concrete Pool Installation"}]},{name:"Above Ground Pool",question:"Have you already bought the pool you want installed?",answers:[{name:"No",value:"410",keyword_id:"Above Ground Pool Installation"},{name:"Yes",value:"418",keyword_id:"Already Purchased Pool Installation"}]}]},{name:"Swimming Pool Repair",question:"Which type of pool do you need repaired?",answers:[{name:"Inground Pool",question:"Which type of pool do you have?",answers:[{name:"Fiberglass",value:"414",keyword_id:"Fiberglass Pool Repair"},{name:"Vinyl Lined",value:"415",keyword_id:"Vinyl Pool Repair"},{name:"Concrete",value:"412",keyword_id:"Concrete Pool Repair"}]},{name:"Above Ground Pool",value:"411",keyword_id:"Above Ground Pool Repair"}]},{name:"Swimming Pool Cleaning",value:"268",keyword_id:"Swimming Pool Cleaning"},{name:"Swimming Pool Opening / Closing",value:"1209",keyword_id:"Pool Opening or Closing"}]},{name:"Water Filtration",question:"What is the source of your home's water supply?",answers:[{name:"City Water",value:"182"},{name:"Well Water",value:"182"},{name:"Unsure",value:"182"}]},{name:"Windows",question:"What type of window service do you need?",answers:[{name:"Install or Replace Windows",value:"2",keyword_id:"Windows Installation"},{name:"Repair Windows",value:"116",keyword_id:"Window Repair"}]}]},document.dispatchEvent(new CustomEvent("wizardoCategoryData:ready",{}));const ModCategorySelectorLinear={_v2:null,steps:[],currentStepIndex:0,answers:{},_pendingApiId:null,isFinished:!1,init:function(e,t){this._v2=e,this.steps=t.steps||[],this.answers={},this._pendingApiId=null,this.isFinished=!1,this.currentStepIndex=0,this.steps.length?(this._resetUI(),this._showStep(this._findNextStepIndex(-1))):console.error("[LinearFunnel] No steps defined on selected item:",t.name)},advance:function(){var e=this._findNextStepIndex(this.currentStepIndex);null===e?this._fireComplete():(this.currentStepIndex=e,this._showStep(e))},goBack:function(){var e,t=this._findPrevStepIndex(this.currentStepIndex);null===t?(this.exitToRoot(),this._v2.clearAfterLevel(0),this._v2.createView(0,this._v2.categories.items,"Select a service category")):((e=this.steps[this.currentStepIndex])&&delete this.answers[e.id],this.currentStepIndex=t,this._showStep(t))},_showStep:function(e){const n=this.steps[e];if(n){this.currentStepIndex=e;
18var e=$("#views-slider"),t=(e.empty(),$("#current-question").text(n.question||""),this._renderSubQuestion(n),$("<div>").addClass("ctgryslctr-view").attr("data-level",0));const i=n.list_type||"list",a=$("<div>").addClass("ctgryslctr-options-container").toggleClass("tile-layout","tile"===i),r="boolean"==typeof n.radio_style_enabled?n.radio_style_enabled:this._v2.isRadioStyleEnabled,s=this.answers[n.id];n.answers.forEach(t=>{const o=this._buildOptionButton(t,i,r);n.multi_select?Array.isArray(s)&&s.includes(t.name)&&o.addClass("selected"):s===t.name&&o.addClass("selected"),o.on("click",e=>{e.preventDefault(),this._handleOptionClick(o,t,n,a)}),a.append(o)}),t.append(a),e.append(t),this._renderNextButton(n),this._updateBackButton(),this._updatePath(),this._v2.isDynamicSizeEnabled&&setTimeout(()=>{this._v2.autoResizeCurrentView()},0),this._v2.wizardoReRenderView()}},_buildOptionButton:function(e,t,o){var n=$("<a>").addClass("ctgryslctr-option-button").toggleClass("tile","tile"===t).attr("href","javascript:void(0);");return o?(n.addClass("radio-style"),"tile"===t&&e.icon?n.append($("<span>").addClass("ctgryslctr-radio-indicator"),$("<div>").addClass("ctgryslctr-option-icon").html(e.icon),$("<div>").addClass("ctgryslctr-option-text").text(e.name_public||e.name)):n.append($("<span>").addClass("ctgryslctr-radio-indicator"),$("<span>").addClass("ctgryslctr-option-text").text(e.name_public||e.name))):"tile"===t&&e.icon?n.append($("<div>").addClass("ctgryslctr-option-icon").html(e.icon),$("<div>").addClass("ctgryslctr-option-text").text(e.name_public||e.name)):n.text(e.name_public||e.name),n},_handleOptionClick:function(e,t,o,n){if(o.multi_select){e.toggleClass("selected");const i=[];n.find(".ctgryslctr-option-button.selected").each((e,t)=>{t=$(t).find(".ctgryslctr-option-text").text()||$(t).text();t&&i.push(t)}),this.answers[o.id]=i,$("#linear-next-btn").toggleClass("is-disabled",0===i.length),i.forEach(t=>{var e=o.answers.find(e=>e.name===t);e&&null!=e.value&&""!==e.value&&(this._pendingApiId=e.value)})}else n.find(".ctgryslctr-option-button").removeClass("selected"),e.addClass("selected"),this.answers[o.id]=t.name,null!=t.value&&""!==t.value&&(this._pendingApiId=t.value),null===this._findNextStepIndex(this.currentStepIndex)?this._fireComplete():this.advance()},_renderNextButton:function(t){var e;$("#linear-next-btn-wrapper").remove(),t.multi_select&&(e=this.answers[t.id],e=Array.isArray(e)&&0<e.length,e=$("<button>").attr("id","linear-next-btn").addClass("ctgryslctr-multiselect-next-button").toggleClass("is-disabled",!e).text("Use these selections").on("click",e=>{e.preventDefault();e=this.answers[t.id];!e||Array.isArray(e)&&0===e.length?ModCore.ui_noty("Please select at least one option","error"):null===this._findNextStepIndex(this.currentStepIndex)?this._fireComplete():this.advance()}),e=$("<div>").attr("id","linear-next-btn-wrapper").addClass("ctgryslctr-multiselect-next-wrapper").append(e),$("#views-container").after(e))},_shouldSkip:function(e){var t;return!!e.skip_if&&(e=e.skip_if,t=this.answers[e.step],void 0!==e.answer_not?t!==e.answer_not:void 0!==e.answer&&t===e.answer)},_findNextStepIndex:function(t){for(let e=t+1;e<this.steps.length;e++)if(!this._shouldSkip(this.steps[e]))return e;return null},_findPrevStepIndex:function(t){for(let e=t-1;0<=e;e--)if(!this._shouldSkip(this.steps[e]))return e;return null},_fireComplete:function(){this.isFinished=!0,$("#linear-next-btn-wrapper").remove();var e={api_id:this._pendingApiId||null,answers:Object.assign({},this.answers)};this._v2.isAutoSubmitOnLastItem&&(e.submit=!0),ModCore.event_trigger("dynamoWizardoCategorySelectorApiSelected",e)},_renderSubQuestion:function(e){$("#linear-sub-question").remove(),e.sub_question&&(e=$("<span>").attr("id","linear-sub-question").addClass("ctgryslctr-sub-question").text(e.sub_question),$("#current-question").append(e))},_updateBackButton:function(){var e=null===this._findPrevStepIndex(this.currentStepIndex);$("#back-button").toggleClass("visible",!e)},_updatePath:function(){const o=$("#path-links").empty();let n=0;this.steps.forEach((e,t)=>{t>=this.currentStepIndex||this._shouldSkip(e)||(e=this.answers[e.id])&&(e=Array.isArray(e)?e.join(", "):e,e=$("<a>").addClass("ctgryslctr-path-button").attr("href","javascript:void(0);").text(e).on("click",()=>{this._navigateTo(t)}),0<n&&o.append($("<span>").addClass("ctgryslctr-path-separator").text("→")),o.append(e),n++)})},_navigateTo:function(t){for(let e=t+1;e<this.steps.length;e++)delete this.answers[this.steps[e].id];this._pendingApiId=null;for(let e=0;e<=t;e++){const n=this.steps[e];var o=this.answers[n.id];
18o&&(Array.isArray(o)?o:[o]).forEach(t=>{var e=n.answers.find(e=>e.name===t);e&&null!=e.value&&""!==e.value&&(this._pendingApiId=e.value)})}this.isFinished=!1,this._showStep(t)},_resetUI:function(){$("#views-slider").empty(),$("#linear-next-btn-wrapper").remove(),$("#linear-sub-question").remove(),$("#current-question").text(""),$("#final-value").removeClass("visible"),$("#path-links").empty(),this._v2.updateBackButton()},exitToRoot:function(){this._v2.isLinearMode=!1,this.steps=[],this.answers={},this._pendingApiId=null,this.isFinished=!1,this.currentStepIndex=0,$("#linear-next-btn-wrapper").remove(),$("#linear-sub-question").remove()},getAnswers:function(){return Object.assign({},this.answers)},getAnswer:function(e){return this.answers[e]??null},getPendingApiId:function(){return this._pendingApiId},getCurrentVisualIndex:function(){let t=0;for(let e=0;e<this.currentStepIndex;e++)this._shouldSkip(this.steps[e])||t++;return t},getTotalVisualSteps:function(){return this.steps.filter(e=>!this._shouldSkip(e)).length}},ModCategorySelectorV2={selections:[],currentPath:[],selectionHistory:[],categories:CategoryData,isLinearMode:!1,multiselectValues:[],currentLevel:0,viewWidth:0,touchStartX:0,touchStartY:0,isScrolling:!1,isFilteredNavigation:!1,allowedCategories:[],isSingleCategory:!1,isEnabledCTALookingForCurrentTask:!0,isAutoSubmitOnLastItem:!0,isDynamicSizeEnabled:!0,calculatedViewHeight:0,isRadioStyleEnabled:!0,defaultSelections:{},defaultVisible:!1,currentTaskData:{},actionHandlers:{popup_800:function(e){var t,e=(e=void 0!==e?e:{})?.phone;ModCore.string_is_empty(e)||(t=(e=e.replace(/\D/g,"")).replace(/(\d{3})(\d{3})(\d{4})/,"$1-$2-$3"),$(".ctgryslctr-modal-phone",$("#emergency-modal")).html('<a href="tel:'+e+'">'+t+"</a>"),$("#emergency-modal").addClass("visible"))}},init:function(){this.defaultSelections||(this.defaultSelections={}),void 0===this.isVisible&&(this.isVisible=void 0===this.defaultVisible||this.defaultVisible);var e=0<this.allowedCategories.length?this.categories.items.filter(e=>this.allowedCategories.includes(e.name)):this.categories.items,t=1===e.length,o=(this.bindEvents(),e.find(e=>!0===e.selected)),n=this.defaultSelections[0]?e.find(e=>e.name===this.defaultSelections[0]):null;t?(t=e[0],this.handleSelection(t.name,0,()=>{})):o?(this.createView(0,e),this.handleSelection(o.name,0)):n?(this.createView(0,e),this.handleSelection(n.name,0)):this.createView(0,e),this.isEnabledCTALookingForCurrentTask&&this.currentTaskData&&!ModCore.string_is_empty(this.currentTaskData?.api_id)&&($(".jq_ctgryslctr_confirm_current").show(),$(".jq_ctgryslctr_confirm_current span:first").html(this.currentTaskData?.name),$(".jq_ctgryslctr_confirm_current > a").data("apiid",this.currentTaskData?.api_id),$(".jq_ctgryslctr_confirm_current > a").bind("click",function(e){e.preventDefault();e=$(this).data("apiid");ModCore.string_is_empty(e)||(ModCore.event_trigger("dynamoWizardoCategorySelectorUpdateOtherData",{clicked_looking_for_current:"1"}),ModCore.event_trigger("dynamoWizardoCategorySelectorApiSelected",{api_id:e,submit:!0}))})),this.updateBackButton(),this.viewWidth=$("#views-container").width(),$(window).on("resize",()=>{this.viewWidth=$("#views-container").width(),this.scrollToLevel(this.currentLevel)})},configureByType:function(e){void 0!==e&&"KeywordFunnel"===e&&(e=M
18odCategorySelectorV2.getSelectedOptionValue(),ModCore.string_is_empty(e)||(this.setAutoSubmit(!1),e={api_id:e,name:(e=this.getSelectedOptionData())?.name??null,keyword_id:e?.data?.keyword_id??null},ModCore.event_trigger("dynamoWizardoCategorySelectorApiSelected",e)))},bindEvents:function(){$("#multiselect-modal").on("click",e=>{e.target===e.currentTarget&&this.closeMultiselectModal()}),$("#back-button").off("click").on("click",e=>{e.preventDefault(),this.goBack(),ModCore.event_trigger("dynamoWizardoCategorySelectorBackClicked",{})}),$(".ctgryslctr-modal").click(e=>{e.target===e.currentTarget&&this.closeEmergencyModal()}),$(".ctgryslctr-modal-close").click(e=>{e.preventDefault(),this.closeEmergencyModal()})},createView:function(a,e,t="Select a service category",o=!1){var n=$("#views-slider");o||this.clearAfterLevel(a);const r=$("<div>").addClass("ctgryslctr-view").attr("data-level",a);var i=this.getLevelConfig(a);this.applyLevelContainerClass(r,i);let s="list";if(0===a)s=this.categories.list_type||"list";else{let t=this.categories.items,o=null;for(let e=0;e<a;e++){const u=this.selections[e];(o=t.find(e=>e.name===u))&&o.answers&&(t=o.answers)}s=o?.list_type||"list"}
18const d=$("<div>").addClass("ctgryslctr-options-container").toggleClass("tile-layout","tile"===s);let l=!1;const c=null!==i.radio_style_enabled?!0===i.radio_style_enabled:this.isRadioStyleEnabled;e.forEach(t=>{const o=$("<a>").addClass("ctgryslctr-option-button").toggleClass("tile","tile"===s).attr("href","javascript:void(0);");var e,n,i;c?(o.addClass("radio-style"),"tile"===s&&t.icon?(i=$("<span>").addClass("ctgryslctr-radio-indicator"),e=$("<div>").addClass("ctgryslctr-option-icon").html(t.icon),n=$("<div>").addClass("ctgryslctr-option-text").text(this.getDisplayName(t)),o.append(i,e,n)):(i=$("<span>").addClass("ctgryslctr-radio-indicator"),e=$("<span>").addClass("ctgryslctr-option-text").text(this.getDisplayName(t)),o.append(i,e))):"tile"===s&&t.icon?(n=$("<div>").addClass("ctgryslctr-option-icon").html(t.icon),i=$("<div>").addClass("ctgryslctr-option-text").text(this.getDisplayName(t)),o.append(n,i)):o.text(this.getDisplayName(t)),o.on("click",e=>{e.preventDefault(),r.find(".ctgryslctr-option-button").removeClass("selected"),o.addClass("selected"),this.handleSelection(t.name,a)}),this.selections[a]===t.name?(o.addClass("selected"),l=!0):l||(!0===t.selected||this.defaultSelections&&this.defaultSelections[a]===t.name)&&(o.addClass("selected"),this.selections[a]=t.name,this.currentPath[a]=t.name,this.selectionHistory[a]=t.name,l=!0),d.append(o)}),r.append(d),$("#current-question").text(t),o||0!==a||n.empty(),n.append(r),l&&this.updatePath(),this.wizardoReRenderView(),o||(this.scrollToLevel(a),this.currentLevel=a,this.updateBackButton(),this.isDynamicSizeEnabled&&setTimeout(()=>{this.autoResizeCurrentView()},0))},handleSelection:function(e,t,o){this.clearAfterLevel(t),this.selections[t]=e,this.currentPath[t]=e,this.selectionHistory=[...this.selections],this.updatePath();let n=this.categories.items,i=null;for(let e=0;e<=t;e++){const a=this.selections[e];e<t?(i=n.find(e=>e.name===a))&&i.answers&&(n=i.answers):i=n.find(e=>e.name===a)}if(i){if(i.value&&i.answers,i.action&&(e=i?.action_data,this.actionHandlers[i.action]?.(e)),"multiselect"===i.type&&i.options)return this.createMultiselect(i.options,t),void("function"==typeof o&&o());if(i.value)return this.showFinalValue(i.value),void("function"==typeof o&&o());if("linear"===i.mode&&Array.isArray(i.steps))return this.isLinearMode=!0,ModCategorySelectorLinear.init(this,i),void("function"==typeof o&&o());if(i.answers)return this.createView(t+1,i.answers,i.question||"Select an option"),void("function"==typeof o&&o())}"function"==typeof o&&o()},createMultiselect:function(e,t){const i=$(".ctgryslctr-multiselect-container");i.empty(),e.forEach((e,t)=>{var t="option-"+t,o=$("<div>").addClass("ctgryslctr-checkbox-wrapper"),n=$("<input>").addClass("ctgryslctr-checkbox").attr({type:"checkbox",id:t,value:e.value,"data-name":e.name}),t=$("<label>").addClass("ctgryslctr-checkbox-label").attr("for",t).text(e.name);o.append(n,t),i.append(o)}),$(".ctgryslctr-action-btn.select-all").off("click").on("click",e=>{e.preventDefault(),i.find('input[type="checkbox"]').prop("checked",!0)}),$(".ctgryslctr-action-btn.deselect-all").off("click").on("click",e=>{e.preventDefault(),i.find('input[type="checkbox"]').prop("checked",!1)}),$(".ctgryslctr-modal-submit").off("click").on("click",e=>{e.preventDefault(),this.handleMultiselectSubmit()}),$(".ctgryslctr-modal-cancel").off("click").on("click",e=>{e.preventDefault(),this.closeMultiselectModal()}),$("#multiselect-modal").addClass("visible")},handleMultiselectSubmit:function(){var e,t=$(".ctgryslctr-multiselect-container input:checked").map(function(){return{name:$(this).data("name"),value:$(this).val()}}).get();0<t.length?(e=t.map(e=>e.name).join(", "),t=t.map(e=>e.value),this.currentPath[this.currentPath.length-1]="Selected: "+e,this.showFinalValue(t),this.updatePath(),this.multiselectValues=t,this.closeMultiselectModal()):alert("Please select at least one option")},closeMultiselectModal:function(){$("#multiselect-modal").removeClass("visible")},clearAfterLevel:function(e){$("[data-level]").filter(function(){return $(this).data("level")>e}).remove(),this.selections=this.selections.slice(0,e+1),this.currentPath=this.currentPath.slice(0,e+1),this.selectionHistory=this.selectionHistory.slice(0,e+1),$("#final-value").removeClass("visible"),this.closeMultiselectModal(),this.updatePath()},scrollToLevel:function(e){this.isFilteredNavigation&&1<e?this.scrollToLevelSmooth(e):this.scrollToLevelDirect(e)},scrollToLevelDirect:function(e){var t=document.getElementById("views-container"),e=e*this.viewWidth;t.scrollLeft=e},scrollToLevelSmooth:function(e){var t=document.getElementById("views-container"),e=e*this.viewWidth;$(t).animate({scrollLeft:e},300)},updateBackButton:function(){var e=this.isSingleCategory?1:0;$("#back-button").toggleClass("visible",this.currentLevel>e)},updatePath:function(){const o=$("#path-links").empty();
18this.currentPath.filter(Boolean).forEach((e,t)=>{e=$("<a>").addClass("ctgryslctr-path-button").attr("href","javascript:void(0);").text(e).on("click",e=>{e.preventDefault(),this.navigateToStep(t)});o.append(e),t<this.currentPath.filter(Boolean).length-1&&o.append($("<span>").addClass("ctgryslctr-path-separator").text("→"))})},navigateToStep:function(e){e=this.selectionHistory.slice(0,e+1);this.selections=[],this.currentPath=[],this.currentLevel=0,e.forEach((e,t)=>{e&&this.handleSelection(e,t)})},showFinalValue:function(e){$("#final-value").find(".ctgryslctr-final-value-text").text("Selected Value: "+(Array.isArray(e)?e.join(", "):e));var t=this.getSelectedOptionData(),e={api_id:e,name:t?.name??null,keyword_id:t?.data?.keyword_id??null};this.isAutoSubmitOnLastItem&&(e.submit=!0),ModCore.event_trigger("dynamoWizardoCategorySelectorApiSelected",e)},goBack:function(){if(this.isLinearMode)ModCategorySelectorLinear.goBack(),ModCore.event_trigger("dynamoWizardoCategorySelectorBackClicked",{});else{if(this.currentLevel>(this.isSingleCategory?1:0)){this.currentLevel--,this.clearAfterLevel(this.currentLevel);let e=this.categories.items,o="Select a service category";for(let t=0;t<this.currentLevel;t++){var n=e.find(e=>e.name===this.selections[t]);n&&n.answers&&(e=n.answers,o=n.question||"Select an option")}this.scrollToLevel(this.currentLevel),$("#current-question").text(o),this.updateBackButton()}this.isDynamicSizeEnabled&&setTimeout(()=>{this.autoResizeCurrentView()},0)}},closeEmergencyModal:function(){$("#emergency-modal").removeClass("visible")},selectByPathByVisual:function(t){if(!Array.isArray(t)||0===t.length)return console.error("Path must be a non-empty array"),!1;this.selections=[],this.currentPath=[],this.selectionHistory=[];let o=!(this.currentLevel=0),n=this.categories.items;for(let e=0;e<t.length;e++){const a=t[e];var i=n.find(e=>e.name===a);if(!i){console.error(`Invalid path: "${a}" not found at level `+e),o=!1;break}n=i.answers||[]}return!!o&&(t.forEach((e,t)=>{setTimeout(()=>{this.handleSelection(e,t)},300*t)}),!0)},selectByPath:function(a){if(Array.isArray(a)&&0!==a.length){this.selections=[],this.currentPath=[],this.selectionHistory=[];let t=!(this.currentLevel=0),o=this.categories.items,i=[];for(let e=0;e<a.length;e++){const r=a[e];var n=o.find(e=>e.name===r);if(!n){console.error(`Invalid path: "${r}" not found at level `+e),t=!1;break}i.push(n.question||"Select an option"),o=n.answers||[]}if(t){a.forEach((e,t)=>{this.selections[t]=e,this.currentPath[t]=e}),this.selectionHistory=[...this.selections],this.currentLevel=a.length-1,$("#views-slider").empty();let n=this.categories.items;a.forEach((t,e)=>{var o=n.find(e=>e.name===t);this.createView(e,n,i[e],!0),o&&o.answers&&(n=o.answers)});var e=this.getFinalItem(a);return e&&e.value&&this.showFinalValue(e.value),this.scrollToLevel(this.currentLevel),this.updatePath(),this.updateBackButton(),!0}}else console.error("Path must be a non-empty array");return!1},getFinalItem:function(e){let t=this.categories.items,o=null;for(const n of e)(o=t.find(e=>e.name===n))&&o.answers&&(t=o.answers);return o},setCategoryData:function(e,t={}){var{skipCreateView:t=!1}=t;return this.validateCategoryData(e)?(this.categories=e,this.resetState(),t||this.createView(0,this.categories.items),!0):(console.error("Invalid category data structure"),!1)},validateCategoryData:function(e){return!(!e||"object"!=typeof e||!Array.isArray(e.items)||0===e.items.length)&&e.items.every(e=>e.name&&"string"==typeof e.name)},resetState:function(){this.selections=[],this.currentPath=[],this.selectionHistory=[],this.multiselectValues=[],this.currentLevel=0,$("#views-slider").empty(),$("#final-value").removeClass("visible"),$("#multiselect-container").removeClass("visible"),$("#current-question").text(""),this.updatePath(),this.updateBackButton()},getCategoryData:function(){return this.categories},updateCategoryPath:function(o,e){if(!Array.isArray(o)||0===o.length)return console.error("Path must be a non-empty array"),!1;let n=this.categories.items;this.categories;for(let t=0;t<o.length-1;t++){var i=n.find(e=>e.name===o[t]);if(!i||!i.answers)return console.error("Invalid path at: "+o[t]),!1;n=i.answers}var t=n.findIndex(e=>e.name===o[o.length-1]);return-1===t?(console.error("Category not found: "+o[o.length-1]),!1):(n[t]={...n[t],...e},this.resetState(),this.createView(0,this.categories.items),!0)},showWelcome:function(){$(".ctgryslctr-overlay").addClass("visible"),this.wizardoReRenderView()},hideWelcome:function(){$(".ctgryslctr-overlay").removeClass("visible"),this.wizardoReRenderView()},setAllowedCategories:function(e){this.allowedCategories=e,this.isSingleCategory=1===e.length,this.isFilteredNavigation=0<e.length},setCurrentTaskData:function(e){this.currentTaskData=e},wizardoReRenderView:function(){ModCore.event_trigger("dynamoWizardoFormFixHeight",{})},toggleDynamicViewSize:function(e){return(this.isDynamicSizeEnabled=e=void 0===e||e)?($(".ctgryslctr-views-container").css("overflow-y","hidden"),0<this.calculatedViewHeight&&(e=Math.max(this.calculatedViewHeight,300),$(".ctgryslctr-views-container").css("height",e+"px")),this.autoResizeCurrentView()):$(".ctgryslctr-views-container").css({height:"300px","overflow-y":"auto"}),this.wizardoReRenderView(),this.isDynamicSizeEnabled}
18,autoResizeCurrentView:function(){var e=$(`[data-level="${this.currentLevel}"]`);if(!e.length)return!1;const n=e.find(".ctgryslctr-options-container");return!!n.length&&(requestAnimationFrame(()=>{var e,t=n[0],o=n.find(".ctgryslctr-option-button");o.length&&(o=o.last()[0],e=window.getComputedStyle(o),e=parseFloat(e.marginBottom)||0,o=o.offsetTop+o.offsetHeight+e,e=window.getComputedStyle(t),o=o+((parseFloat(e.paddingTop)||0)+(parseFloat(e.paddingBottom)||0))+20,o=Math.max(o,100),this.calculatedViewHeight=o,this.isDynamicSizeEnabled&&$(".ctgryslctr-views-container").css("height",o+"px"),this.wizardoReRenderView())}),!0)},toggleRadioStyle:function(e){this.isRadioStyleEnabled=!0===e,0<$(".ctgryslctr-view").length&&this.updateRadioStyle()},updateRadioStyle:function(){var e=$(".ctgryslctr-option-button");this.isRadioStyleEnabled?e.each((e,t)=>{var o,n,t=$(t);0===t.find(".ctgryslctr-radio-indicator").length&&(t.addClass("radio-style"),t.hasClass("tile")?(n=t.find(".ctgryslctr-option-icon"),o=$("<span>").addClass("ctgryslctr-radio-indicator"),0<n.length?n.before(o):t.prepend(o)):(n=t.text(),t.empty().append('<span class="ctgryslctr-radio-indicator"></span>').append('<span class="ctgryslctr-option-text">'+n+"</span>")))}):(e.removeClass("radio-style"),e.each((e,t)=>{var o,t=$(t),n=t.find(".ctgryslctr-radio-indicator");0<n.length&&(n.remove(),t.hasClass("tile")||0<(n=t.find(".ctgryslctr-option-text")).length&&(o=n.text(),n.remove(),t.text(o)))})),this.isDynamicSizeEnabled&&setTimeout(()=>{this.autoResizeCurrentView()},0)},setDefaultSelection:function(e,o){this.defaultSelections||(this.defaultSelections={}),this.defaultSelections[e]=o;var e=$(`[data-level="${e}"]`);0<e.length&&((e=e.find(".ctgryslctr-option-button")).removeClass("selected"),e.each((e,t)=>{t=$(t);t.hasClass("tile")?t.find(".ctgryslctr-option-text").text()===o&&t.addClass("selected"):(t.hasClass("radio-style")?t.find(".ctgryslctr-option-text"):t).text()===o&&t.addClass("selected")}))},clearDefaultSelections:function(){this.defaultSelections={}},checkAndApplyDefaultSelection:function(e,t,o){var n=this.defaultSelections&&this.defaultSelections[e];(n&&n===t.name||!0===t.selected)&&(o.addClass("selected"),this.selections[e]=t.name,this.currentPath[e]=t.name,this.selectionHistory[e]=t.name,this.updatePath())}
18,setDefaultSelectionCurrent:function(n,i=!1){var e=$(`[data-level="${this.currentLevel}"]`);if(!e.length)return console.error("No view found for current level"),!1;e=e.find(".ctgryslctr-option-button");e.removeClass("selected");let a=!1;return e.each((e,t)=>{t=$(t);let o="";if((o=(t.hasClass("radio-style")||t.hasClass("tile")?t.find(".ctgryslctr-option-text"):t).text())===n)return t.addClass("selected"),this.selections[this.currentLevel]=n,this.currentPath[this.currentLevel]=n,this.selectionHistory[this.currentLevel]=n,this.updatePath(),a=!0,i&&this.handleSelection(n,this.currentLevel),!1}),a},setDefaultSelectionCurrentByIndex:function(e,t=!1){var o=$(`[data-level="${this.currentLevel}"]`);if(!o.length)return console.error("No view found for current level"),!1;o=o.find(".ctgryslctr-option-button");if(e<0||e>=o.length)return console.error(`Invalid index: ${e}. Valid range is 0-`+(o.length-1)),!1;o.removeClass("selected");o=o.eq(e);o.addClass("selected");let n="";return n=(o.hasClass("radio-style")||o.hasClass("tile")?o.find(".ctgryslctr-option-text"):o).text(),this.selections[this.currentLevel]=n,this.currentPath[this.currentLevel]=n,this.selectionHistory[this.currentLevel]=n,this.updatePath(),t&&this.handleSelection(n,this.currentLevel),!0},getSelectedOptionData:function(e){const a=void 0!==e?e:this.currentLevel;if(a!==this.currentLevel)return(e=this.selections[a])&&(t=this._findItemInCategoryData(e,a))?{name:e,value:t.value||null,index:-1,element:null,data:t}:null;{e=$(`[data-level="${this.currentLevel}"]`);if(!e.length)return console.error("No view found for current level"),null;var t=e.find(".ctgryslctr-option-button");let i=null;return t.each((t,o)=>{o=$(o);if(o.hasClass("selected")){let e="";e=(o.hasClass("radio-style")||o.hasClass("tile")?o.find(".ctgryslctr-option-text"):o).text();var n=this._findItemInCategoryData(e,a);return!(i={name:e,value:n&&n.value||null,index:t,element:o,data:n||null})}}),i}},_findItemInCategoryData:function(t,o){let n=this.categories.items;if(0<o)for(let e=0;e<o;e++){const a=this.selections[e];if(!a)return null;var i=n.find(e=>e.name===a);if(!i||!i.answers)return null;n=i.answers}return n.find(e=>e.name===t)},getSelectedOptionValue:function(e){e=this.getSelectedOptionData(e);return e?e.value:null},getSelectionPath:function(){return[...this.selections]},setAutoSubmit:function(e){return this.isAutoSubmitOnLastItem=!1!==e,this.isAutoSubmitOnLastItem},isAutoSubmitEnabled:function(){return this.isAutoSubmitOnLastItem},toggleAutoSubmit:function(){return this.isAutoSubmitOnLastItem=!this.isAutoSubmitOnLastItem,this.isAutoSubmitOnLastItem},showCategorySelector:function(e,t){e=void 0===e||e;var o=$(".ctgryslctr-container");return e?o.css({visibility:"visible",opacity:"1","pointer-events":"auto"}).removeClass("visually-hidden"):o.css({visibility:"hidden",opacity:"0","pointer-events":"none"}).addClass("visually-hidden"),this.isVisible=e,this.wizardoReRenderView(),"function"==typeof t&&t(),this.isVisible},hideCategorySelector:function(e){return this.showCategorySelector(!1,e)},setDefaultVisibility:function(e){this.defaultVisible=!0===e,this.showCategorySelector(this.defaultVisible)},handleSingleCategory:function(e){var t=this.isVisible,o=(this.showCategorySelector(!1),0<this.allowedCategories.length?this.categories.items.filter(e=>this.allowedCategories.includes(e.name)):this.categories.items);if(1!==o.length)return console.error("handleSingleCategory called but multiple categories exist"),this.showCategorySelector(t),"function"==typeof e&&e(!1),!1;this.createView(0,o);t=o[0];return this.handleSelection(t.name,0,()=>{this.showCategorySelector(!0,()=>{"function"==typeof e&&e(!0)})}),!0},getSelectedRootCategoryData:function(e){const t=e||this.selections[0];return t&&(e=this.categories.items,(0<this.allowedCategories.length?e.filter(e=>this.allowedCategories.includes(e.name)):e).find(e=>e.name===t))||null},toggleCategorySelector:function(){return this.showCategorySelector(!this.isVisible)},reinitialize:function(){this.resetState(),this.init()},getLevelConfig:function(t){if(0===t)return{list_type:this.categories?.list_type||"list",radio_style_enabled:this.categories?.radio_style_enabled??null,container_
18class:this.categories?.container_class??null};let o=this.categories.items,n=null;for(let e=0;e<t;e++){const i=this.selections[e];n=o.find(e=>e.name===i),o=n?.answers||[]}return{list_type:n?.list_type||"list",radio_style_enabled:n?.radio_style_enabled??null,container_class:n?.container_class??null}},applyLevelContainerClass:function(e,t){var o=(e.attr("data-level-container-class")||"").trim(),o=(o&&(e.removeClass(o),e.attr("data-level-container-class","")),t?.container_class);Array.isArray(o)&&o.length?(t=o.filter(e=>"string"==typeof e&&e.trim()).map(e=>e.trim())).length&&(e.addClass(t.join(" ")),e.attr("data-level-container-class",t.join(" "))):"string"==typeof o&&o.trim()&&(t=o.trim(),e.addClass(t),e.attr("data-level-container-class",t))},getDisplayName:function(e){return e&&"string"==typeof e.name_public&&""!==e.name_public.trim()?e.name_public:e?e.name:void 0}},ModPix2Quote={init:function(){this.bindEvents()},bindEvents:function(){$(document).ready(function(){var e;ModPix2Quote.init_dynamo_events(),$(".jq_pi2qubtn_link").on("click",function(e){e.preventDefault(),$("#jq_p2q_drzn_upldr").click()}
18),void 0!==window.Dropzone&&(e=ModCore.getEndpointUrl("p2qimageupload"),$("#jq_p2q_drzn_upldr").dropzone({url:e,maxFilesize:10,maxFiles:5,capture:"camera",acceptedFiles:".jpg,.jpeg,.png",clickable:!0,addRemoveLinks:!1,paramName:"file",createImageThumbnails:!1,thumbnailWidth:72,thumbnailHeight:72,dictRemoveFile:"Remove",dictCancelUpload:"Cancel",dictDefaultMessage:"[Click here to upload]",resizeWidth:"1024",resizeMimeType:"image/jpeg",resizeMethod:"contain",parallelUploads:1,init:function(){this.on("sending",function(e,t,o){var n=$("#jq_p2q_drzn_upldr").data("kv");o.append("kv",n),ModCore.modal_loading_show()}),this.on("addedfile",function(e){}),this.on("removedfile",function(e){ImageUpload.removeByFile(e)}),this.on("error",function(e,t){ModCore.event_trigger("dynamoPageNotificationShow",{status:"error",msg:t}),this.removeFile(e),ModCore.modal_loading_hide()}),this.on("success",function(e,t){var o;ModCore.modal_loading_hide(),t.status?(o=t?.data?.token,ModCore.event_trigger("dynamoModalPix2QuoteOpen",{token:o})):(ModCore.event_trigger("dynamoPageNotificationShow",{status:"error",msg:t.message}),this.removeFile(e))}),this.on("complete",function(e){})}}))})},init_dynamo_events:function(){$(document).on("dynamoModalPix2QuoteOpen",function(e,t){t=(t=void 0!==t?t:{})?.token;ModCore.string_is_empty(t)||ModCore.modal_open_url({url:"/p2q/?tkn="+t,title:"Please select",callback_open:function(){},callback_close:function(){}})})}};ModPix2Quote.init();var ModList=ModList||function(i){var n,t={},a={},r={},s={},s=(t={settings:{debug:!0,meta:{},init:function(){}},cache:{window:window,document:document},base_url:function(e){return e="undefined"===i.type(e)?"":e},log:function(e){t.settings.debug&&console.log(e)}},{ajaxUrl:t.base_url(""),send:function(e,t,o,n){i.ajax({type:e,url:s.ajaxUrl+t,dataType:"json",data:o,headers:{"X-Gc-Requested-With":"ajax-request"},success:n})},call:function(e,t,o){s.send("POST",e,t,o)},get:function(e,t,o){s.send("GET",e,t,o)},init:function(){return{}}}),r={init_listing_viewdetail_form_step:function(e){"viewbysubmit"===e&&i("form",i(".jq_listing_viewdetail_form_pop")).bind("submit",function(e){e.preventDefault();var e=i(this).serializeObjectDirect(),t=(e.surl=ModCore.url_current(),ModCore.event_trigger("dynamoListingViewDetailFormErrorClear",{}),ModCore.modal_loading_show(),ModCore.getEndpointUrl("listing_viewdetail_request_store"));s.call(t,e,function(e){var t,o;ModCore.modal_loading_hide(),ModCore.modal_open(i(".jq_listing_viewdetail_form_pop",".jq_listing_viewdetail_form")),1==e.status?(ModCore.modal_close(i(".jq_contact_form_pop",".jq_contact_form_step_other")),ModCore.event_trigger("dynamoPageNotificationShow",{status:"success",msg:"Loading the details. Please wait"}),void 0!==n&&a.step_fetch_viewdetail_html(n,function(e){1==e.status&&(e=i(e.html),0<i(".jq_listing_viewdetail_form").length&&i(".jq_listing_viewdetail_form").remove(),i("body").append(e),r.init_listing_viewdetail_form_step("viewbysubmit"),ModCore.modal_open(i(".jq_listing_viewdetail_form_pop",".jq_listing_viewdetail_form")))})):(t="We cannot process your request. Please try again later",i.type(e.message)&&!ModCore.string_is_empty(e.message)&&(t=e.message),o=["We cannot process your request. Please try again later"],i.type(e.errors)&&i.isArray(e.errors)&&(o=e.errors),ModCore.event_trigger("dynamoListingViewDetailFormErrorShow",o),ModCore.event_trigger("dynamoPageNotificationShow",{status:"error",msg:t}))})})},init_listing_select_detail_router:function(){i("form",i(".jq_listing_select_detail_step_router")).bind("submit",function(e){e.preventDefault();var e=i(this).serializeObjectDirect(),t=(ModCore.modal_loading_show(),ModCore.getEndpointUrl("listingselectdetailrouter"));s.call(t,e,function(e){var t;ModCore.modal_loading_hide(),1==e.status?(ModCore.modal_loading_show(),window.location=e.url):(ModCore.modal_open(i(".jq_listing_select_detail_form_pop",".jq_listing_select_detail_step_router")),t="We cannot process your request. Please try again later",i.type(e.message)&&!ModCore.string_is_empty(e.message)&&(t=e.message),ModCore.event_trigger("dynamoPageNotificationShow",{status:"error",msg:t}))})})},init_listing_claim:function(){var o=i(".jq_business_form_claim_pop");ModCore.init_modal_generic(o),0<i(".jq_file_upload_string",i(o)).length&&i(".jq_file_upload_string",i(o)).unbind("change").bind("change",function(){var e=this.files[0],t=i(this).data("destination");ModCore.fileToBase64(e,function(e){1==e.status&&(i(t,i(o)).val(e.data),i("#jq_business_file_notification_loaded",i(o)).html("Complete").show())})}),i("form",i(o)).bind("submit",function(e){e.preventDefault();e=i(this).serializeObjectDirect(),e={data:e,step:"business_"+e.bstep};ModCore.event_trigger("dynamoBusinessClaimFormErrorClear",{}),a.listing_send_data(e,function(e){var t;ModCore.modal_open(o),1==e.status?(i(".jq_business_form_step",i(o)).hide(),i(".jq_form_button_detail_holder",i(o)).hide(),i(".jq_business_form_step_thankyou",i(o)).show()):(t=["We cannot process your request. Please try again later"],i.type(e.errors)&&i.isArray(e.errors)&&(t=e.errors),ModCore.event_trigger("dynamoBusinessClaimFormErrorShow",t),t="Please check the errors",i.type(e.message)&&!ModCore.string_is_empty(e.message)&&(t=e.message),ModCore.event_trigger("dynamoPageNotificationShow",{status:"error",msg:t}))})})},init_listing_delete:function(){var o=i(".jq_business_form_delete_pop");ModCore.init_modal_generic(o),i("form",i(o)).bind("submit",function(e){e.preventDefault();e=i(this).serializeObjectDirect(),e={data:e,step:"business_"+e.bstep};ModCore.event_trigger("dynamoBusinessDeleteFormErrorClear",{}),a.listing_send_data(e,function(e){var t;ModCore.modal_open(o),1==e.status?(i(".jq_business_form_step",i(o)).hide(),i(".jq_form_button_detail_holder",i(o)).hide(),i(".jq_business_form_step_thankyou",i(o)).show()):(t=["We cannot process your request. Please try again later"],i.type(e.errors)&&i.isArray(e.errors)&&(t=e.errors),ModCore.event_trigger("dynamoBusinessDeleteFormErrorShow",t),t="Please check the errors",i.type(e.message)&&!ModCore.string_is_empty(e.message)&&(t=e.message),ModCore.event_trigger("dynamoPageNotificationShow",{status:"error",msg:t}))})})},bind_listing_add:function(){i(".jq_listing_add").unbind("click").bind("click",function(e){var t;
18e.preventDefault(),"1"==ModCore.dynamo_config_get_value(ModCore.dynamo_data_get(),"_isListingPage")?((t={id:""}).table=ModCore.dynamo_config_get_value(ModCore.dynamo_data_get(),"_listTable"),t.domain=ModCore.dynamo_config_get_value(ModCore.dynamo_data_get(),"_listDomain"),a.business_form_show("add",{})):((t={}).domain=ModCore.dynamo_config_get_value(ModCore.dynamo_data_get(),"_listDomain"),t.category=ModCore.dynamo_config_get_value(ModCore.dynamo_data_get(),"_ciCategory"),t.category_slug=ModCore.dynamo_config_get_value(ModCore.dynamo_data_get(),"_ciCategorySlug"),t.state=ModCore.dynamo_config_get_value(ModCore.dynamo_data_get(),"_ciState"),t.city=ModCore.dynamo_config_get_value(ModCore.dynamo_data_get(),"_ciCity"),t.other_location=ModCore.dynamo_config_get_value(ModCore.dynamo_data_get(),"_ciOtherLocation"),a.step_fetch_listing_select_detail_html(t,function(e){var t;1==e.status?(t=i(e.html),i(".jq_listing_select_detail_step_router").remove(),i("body").after(t),r.init_listing_select_detail_router(),ModCore.modal_open(i(".jq_listing_select_detail_form_pop",".jq_listing_select_detail_step_router"))):(t="We cannot process your request. Please try again later",i.type(e.message)&&!ModCore.string_is_empty(e.message)&&(t=e.message),ModCore.event_trigger("dynamoPageNotificationShow",{status:"error",msg:t}))}))})},bind_listing_goto:function(){i(".jq_listing_goto").unbind("click").bind("click",function(e){var t;e.preventDefault(),"1"==ModCore.dynamo_config_get_value(ModCore.dynamo_data_get(),"_isListingPage")?((t={id:""}).table=ModCore.dynamo_config_get_value(ModCore.dynamo_data_get(),"_listTable"),t.domain=ModCore.dynamo_config_get_value(ModCore.dynamo_data_get(),"_listDomain"),a.business_form_show("add",{})):((t={}).domain=ModCore.dynamo_config_get_value(ModCore.dynamo_data_get(),"_listDomain"),t.category=ModCore.dynamo_config_get_value(ModCore.dynamo_data_get(),"_ciCategory"),t.category_slug=ModCore.dynamo_config_get_value(ModCore.dynamo_data_get(),"_ciCategorySlug"),t.state=ModCore.dynamo_config_get_value(ModCore.dynamo_data_get(),"_ciState"),t.city=ModCore.dynamo_config_get_value(ModCore.dynamo_data_get(),"_ciCity"),t.other_location=ModCore.dynamo_config_get_value(ModCore.dynamo_data_get(),"_ciOtherLocation"),a.step_fetch_listing_select_detail_html(t,function(e){var t;1==e.status?(t=i(e.html),i(".jq_listing_select_detail_step_router").remove(),i("body").after(t),r.init_listing_select_detail_router(),ModCore.modal_open(i(".jq_listing_select_detail_form_pop",".jq_listing_select_detail_step_router"))):(t="We cannot process your request. Please try again later",i.type(e.message)&&!ModCore.string_is_empty(e.message)&&(t=e.message),ModCore.event_trigger("dynamoPageNotificationShow",{status:"error",msg:t}))}))})},bind_listing_claim:function(){i(".jq_listing_claim").unbind("click").bind("click",function(e){e.preventDefault();e={};e.id=i(this).data("id"),e.table=ModCore.dynamo_config_get_value(ModCore.dynamo_data_get(),"_listTable"),e.domain=ModCore.dynamo_config_get_value(ModCore.dynamo_data_get(),"_listDomain"),e.current_url=ModCore.dynamo_config_get_value(ModCore.dynamo_data_get(),"_cURL"),e.current_otherlocation=ModCore.dynamo_config_get_value(ModCore.dynamo_data_get(),"_ciOtherLocation"),e.current_dname=ModCore.dynamo_config_get_value(ModCore.dynamo_data_get(),"_ciDname"),a.step_fetch_listing_claim_html(e,function(e){var t;1==e.status?(t=i(e.html),i(".jq_business_form_claim").remove(),i("body").after(t),r.init_listing_claim(),ModCore.modal_open(i(".jq_business_form_claim_pop",".jq_business_form_claim"))):(t="We cannot process your request. Please try again later",i.type(e.message)&&!ModCore.string_is_empty(e.message)&&(t=e.message),ModCore.event_trigger("dynamoPageNotificationShow",{status:"error",msg:t}))})})},bind_listing_delete:function(){i(".jq_listing_delete").unbind("click").bind("click",function(e){e.preventDefault();e={};e.id=i(this).data("id"),e.table=ModCore.dynamo_config_get_value(ModCore.dynamo_data_get(),"_listTable"),e.domain=ModCore.dynamo_config_get_value(ModCore.dynamo_data_get(),"_listDomain"),e.current_url=ModCore.dynamo_config_get_value(M
18odCore.dynamo_data_get(),"_cURL"),e.current_otherlocation=ModCore.dynamo_config_get_value(ModCore.dynamo_data_get(),"_ciOtherLocation"),e.current_dname=ModCore.dynamo_config_get_value(ModCore.dynamo_data_get(),"_ciDname"),a.step_fetch_listing_delete_html(e,function(e){var t;1==e.status?(t=i(e.html),i(".jq_business_form_delete").remove(),i("body").after(t),r.init_listing_delete(),ModCore.modal_open(i(".jq_business_form_delete_pop",".jq_business_form_delete"))):(t="We cannot process your request. Please try again later",i.type(e.message)&&!ModCore.string_is_empty(e.message)&&(t=e.message),ModCore.event_trigger("dynamoPageNotificationShow",{status:"error",msg:t}))})})},bind_listing_view:function(){i(".jq_listing_view").unbind("click").bind("click",function(e){e.preventDefault();var e=i(this).data("type"),t={};switch(t.id=i(this).data("id"),t.dname=i(this).data("dname"),t.cat=i(this).data("cat"),t.category=i(this).data("category"),t.latitude=i(this).data("latitude"),t.longitude=i(this).data("longitude"),t.city=i(this).data("city"),t.state=i(this).data("state"),t.table=ModCore.dynamo_config_get_value(ModCore.dynamo_data_get(),"_listTable"),t.domain=ModCore.dynamo_config_get_value(ModCore.dynamo_data_get(),"_listDomain"),t.viewdetailtype=e,t.surl=ModCore.url_current(),n=t,e){case"vbs":case"viewbysubmit":a.step_fetch_viewdetail_html(t,function(e){1==e.status&&(e=i(e.html),0<i(".jq_listing_viewdetail_form").length&&i(".jq_listing_viewdetail_form").remove(),i("body").append(e),r.init_listing_viewdetail_form_step("viewbysubmit"),ModCore.modal_open(i(".jq_listing_viewdetail_form_pop",".jq_listing_viewdetail_form")))})}})},bind_listing_pagination:function(){i(".jq_listing_pagination_item").unbind("click").bind("click",function(e){e.preventDefault();e={};pagi_data=void 0!==window.pagi_data?window.pagi_data:{},e.page=i(this).data("pageid"),e.data_table=void 0!==window.pagi_data.data_table?window.pagi_data.data_table:"",e.dname=void 0!==window.pagi_data.dname?window.pagi_data.dname:"",e.city=void 0!==window.pagi_data.city?window.pagi_data.city:"",e.state=void 0!==window.pagi_data.state?window.pagi_data.state:"",e.country=void 0!==window.pagi_data.country?window.pagi_data.country:"",e.cat=void 0!==window.pagi_data.cat?window.pagi_data.cat:"",e.category=void 0!==window.pagi_data.category?window.pagi_data.category:"",e.latitude=void 0!==window.pagi_data.latitude?window.pagi_data.latitude:"",e.longitude=void 0!==window.pagi_data.longitude?window.pagi_data.longitude:"",ModCore.event_trigger("dynamoListingOnPaginate",{}),a.listing_get_items(e,function(e){void 0!==e&&(e.hasOwnProperty("status")||(e.status=!1,e.message="Data IO error. Please try again later"),1==e.status)&&(i(".jq_listings_load").html(e.html),i(".jq_listing_pagination_item").removeClass("btn-pagination-selected"),i('.jq_listing_pagination_item[data-pageid="'+e.pagination.current_page+'"]').addClass("btn-pagination-selected"),r.init_listing())})})},bindEvents:function(){},init_business_form:function(){var e=i(".jq_business_form");0<i(".jq_file_upload_string",i(e)).length&&i(".jq_file_upload_string",i(e)).unbind("change").bind("change",function(){var e=this.files[0],t=i(this).data("destination");ModCore.fileToBase64(e,function(e){1==e.status&&(i(t).val(e.data),i("#jq_business_file_notification_loaded").html("Complete"))})}),i("form",i(e)).unbind("submit").bind("submit",function(e){e.preventDefault();e=i(this).serializeObject(),e={data:e,step:"business_"+e.bstep};ModCore.event_trigger("dynamoBusinessFormErrorClear",{}),a.listing_send_data(e,function(e){var t;1==e.status?a.step_show("thankyou"):(t=["We cannot process your request. Please try again later"],i.type(e.errors)&&i.isArray(e.errors)&&(t=e.errors),ModCore.event_trigger("dynamoBusinessFormErrorShow",t),t="Please check the errors",i.type(e.message)&&!ModCore.string_is_empty(e.message)&&(t=e.message),ModCore.event_trigger("dynamoPageNotificationShow",{status:"error",msg:t}))})})},init_listing_inline_add_form:function(){var e=i(".jq_listing_inline_add_form");0<i(".jq_file_upload_string",i(e)).length&&i(".jq_file_upload_string",i(e)).unbind("change").bind("change",function(){var e=this.files[0],t=i(this).data("destination");ModCore.fileToBase64(e,function(e){1==e.status&&(i(t).val(e.data),i("#jq_listing_inline_add_file_notification_loaded").html("Photo Loaded"))})}),ModCore.init_update_current_url_field(),i("form",i(e)).unbind("submit").bind("submit",function(e){e.preventDefault();e=i(this).serializeObject(),e={data:e,step:"business_"+e.bstep};ModCore.event_trigger("dynamoListingInlineBusinessFormErrorClear",{}),a.listing_send_data(e,function(e){var t;1==e.status?a.listing_inline_add_step_show("thankyou"):(t=["We cannot process your request. Please try again later"],i.type(e.errors)&&i.isArray(e.errors)&&(t=e.errors),ModCore.event_trigger("dynamoListingInlineBusinessFormErrorShow",t),t="Please check the errors",i.type(e.message)&&!ModCore.string_is_empty(e.message)&&(t=e.message),ModCore.event_trigger("dynamoPageNotificationShow",{status:"error",msg:t}))})})},init_listing:function(){r.bind_listing_claim(),r.bind_listing_delete(),r.bind_listing_view(),r.bind_listing_add(),r.bind_listing_goto(),r.bind_listing_pagination(),r.init_listing_inline_add_form()},init:function(){r.bindEvents(),r.init_listing(),r.init_business_form(),r.init_listing_inline_add_form()}};return{init:(a={step_fetch_listing_select_detail_html:function(e,t){e=void 0!==e?e:{},ModCore.modal_loading_show(),t={};var o={},e=(o.domain=void 0!==e.domain?e.domain:"",o.category=void 0!==e.category?e.category:"",o.category_slug=void 0!==e.category_slug?e.category_slug:"",o.dname=void 0!==e.dname?e.dname:"",o.city=void 0!==e.city?e.city:"",o.city=void 0!==e.city?e.city:"",o.state=void 0!==e.state?e.state:"",o.other_location=void 0!==e.other_location?e.other_location:"",ModCore.getEndpointUrl("getlistingselectdetailhtml"));s.call(e,o,function(e){ModCore.modal_loading_hide(),t(e)})},step_fetch_listing_claim_html:function(e,t){e=void 0!==e?e:{},ModCore.modal_loading_show(),t={};var o={},e=(o.id=void 0!==e.id?e.id:"",o.domain=void 0!==e.domain?e.domain:"",o.table=void 0!==e.table?e.table:"",o.surl=void 0!==e.surl?e.surl:"",o.current_url=void 0!==e.current_url?e.current_url:"",o.current_otherlocation=void 0!==e.current_otherlocation?e.current_otherlocation:"",ModCore.getEndpointUrl("get_listing_claim_html"));s.call(e,o,function(e){ModCore.modal_loading_hide(),t(e)})},step_fetch_listing_delete_html:function(e,t){e=void 0!==e?e:{},ModCore.modal_loading_show(),t={};var o={},e=(o.id=void 0!==e.id?e.id:"",o.domain=void 0!==e.domain?e.domain:"",o.table=void 0!==e.table?e.table:"",o.surl=void 0!==e.surl?e.surl:"",o.current_url=void 0!==e.current_url?e.current_url:"",o.current_otherlocation=void 0!==e.current_otherlocation?e.current_otherlocation:"",ModCore.getEndpointUrl("get_listing_delete_html"));s.call(e,o,function(e){ModCore.modal_loading_hide(),t(e)})},step_fetch_viewdetail_html:function(e,t){ModCore.modal_loading_show(),t={};var o=ModCore.getEndpointUrl("get_listing_viewdetail_html");s.call(o,e,function(e){ModCore.modal_loading_hide(),t(e)})},step_show:function(e){ModCore.event_trigger("dynamoBusinessFormErrorClear",{}),i(".jq_business_form_step").hide(),i(".jq_business_form_step_"+e).show(),ModCore.event_trigger("dynamoBusinessFormStepChanged",{step:e})},listing_inline_add_step_show:function(e){ModCore.event_trigger("dynamoListingInlineBusinessFormErrorClear",{}),i(".jq_listing_inline_business_form_step").hide(),i(".jq_listing_inline_business_form_step_"+e).show(),ModCore.event_trigger("dynamoListingInlineBusinessFormStepChanged",{step:e})},business_form_init_error:function(e){e=void 0===e||ModCore.string_is_empty(e)?"Form loading error. Please try again later":e,ModCore.event_trigger("dynamoBusinessFormInitError",{error:e})},business_form_show:function(e,t){a.step_show("detail"),r.init_business_form(),ModCore.event_trigger("dynamoBusinessFormOnShow",{})},init:function(){r.init(),t.settings.init()},listing_send_data:function(e,t){precheck=!0,post_data=void 0!==e.data?e.data:{},step=void 0!==e.step?e.step:"business_add",precheck?(ModCore.modal_loading_show(),e=ModCore.getEndpointUrl(step),s.call(e,post_data,function(e){ModCore.modal_loading_hide(),t(e)})):t(!1)},listing_get_items:function(e,t){var o;(precheck=!0)?(ModCore.modal_loading_show(),e=e,o=ModCore.getEndpointUrl("show_listings"),s.call(o,e,function(e){ModCore.modal_loading_hide(),t(e)})):t(!1)},listing_get_data:function(e,t){var o;e.id=void 0!==e.id&&i.isNumeric(e.id)?e.id:"",e.table=void 0!==e.table?e.table:"",e.domain=void 0!==e.domain?e.domain:"",precheck=!1,(precheck=""!=e.id&&""!=e.table&&""!=e.domain?!0:precheck)?(ModCore.modal_loading_show(),e={id:e.id,table:e.table,domain:e.table},o=ModCore.getEndpointUrl("listing_get_data"),s.call(o,e,function(e){ModCore.modal_loading_hide(),t(e)})):t(!1)}}).init,entry_data_get:a.entry_data_get,entry_data_extend:a.entry_data_extend}}(window.jQuery),ModLocationFinder=(jQuery(document).ready(ModList.init),ModLocationFinder||function(i){var t={},o={},e={},a={},a=(t={settings:{debug:!0,meta:{},init:function(){}},cache:{window:window,document:document}
18,base_url:function(e){return e="undefined"===i.type(e)?"":e},log:function(e){t.settings.debug&&console.log(e)}},{ajaxUrl:t.base_url(""),send:function(e,t,o,n){i.ajax({type:e,url:a.ajaxUrl+t,dataType:"json",data:o,headers:{"X-Gc-Requested-With":"ajax-request"},success:n})},call:function(e,t,o){a.send("POST",e,t,o)},get:function(e,t,o){a.send("GET",e,t,o)},init:function(){return{}}}),e={init_form:function(){i("form",i(".jq_location_finder_form")).bind("submit",function(e){e.preventDefault();e=i(this).serializeObjectDirect();ModCore.modal_loading_show(),o.location_content_url(e,function(e){var t;!0===e.status?(ModCore.modal_loading_show(),window.location=e.url):(t="We cannot process your request. Please try again later",i.type(e.message)&&!ModCore.string_is_empty(e.message)&&(t=e.message),ModCore.event_trigger("dynamoPageNotificationShow",{status:"error",msg:t}))})})},bind_show_all:function(){i(".jq_lf_show_all").bind("click",function(e){e.preventDefault(),i('.jq_content_item[data-content="state"]').show(),i('.jq_content_item[data-content="city"]').show(),i('.jq_content_item[data-content="county"]').show(),i('.jq_content_item[data-content="locationother"]').show();e="";0<i('.jq_content_item[data-content="state"]:visible').length&&(e='.jq_content_item[data-content="state"]'),0<i('.jq_content_item[data-content="city"]:visible').length&&(e='.jq_content_item[data-content="city"]'),ModCore.event_trigger("dynamoPageScrollTo",{destination:e})})},bindEvents:function(){e.bind_show_all(),e.init_form()},init:function(){e.bindEvents()}};return{init:(o={location_content_url:function(e,t){e=void 0!==e?e:{},ModCore.modal_loading_show();var o={},e=(o.category=void 0!==e.category?e.category:"",o.category_slug=void 0!==e.category_slug?e.category_slug:"",o.zipcode=void 0!==e.zipcode?e.zipcode:"",o.other_location=void 0!==e.other_location?e.other_location:"",o.domain=void 0!==e.domain?e.domain:"",o.current=void 0!==e.current?e.current:"",ModCore.getEndpointUrl("locationfindergetresult"));a.call(e,o,function(e){ModCore.modal_loading_hide(),t(e)})},init:function(){e.init(),t.settings.init()}}).init}}(window.jQuery)),ModAddon=(jQuery(document).ready(ModLocationFinder.init),ModAddon||function(i){var t={},e={},a={},a=(t={settings:{debug:!0,meta:{},init:function(){}},cache:{window:window,document:document},base_url:function(e){return e="undefined"===i.type(e)?"":e},log:function(e){t.settings.debug&&console.log(e)}},{ajaxUrl:t.base_url(""),send:function(e,t,o,n){i.ajax({type:e,url:a.ajaxUrl+t,dataType:"json",data:o,headers:{"X-Gc-Requested-With":"ajax-request"},success:n})},call:function(e,t,o){a.send("POST",e,t,o)},get:function(e,t,o){a.send("GET",e,t,o)},init:function(){return{}}}),e={bindEvents:function(){},init_rycntrctr_form:function(){ModContact.lead_start_recaptcha(),i("form",".jq_rycntrctr_form").bind("submit",function(e){e.preventDefault();var t,e=i(this).serializeObject();i(this);(is_valid=i(this).validate().checkForm())&&(e=i.extend(e=e,{}),t=ModCore.dynamo_config_get_value(ModCore.dynamo_data_get(),"_cfGRToken"),ModCore.string_is_empty(t)||(e._cfGRToken=t),ModCore.modal_loading_show(),t=ModCore.getEndpointUrl("rycntrctrsubmit"),ModCore.event_trigger("dynamoContactFormErrorClear",{}),a.call(t,e,function(e){var t;ModCore.modal_loading_hide(),1==e.status?void 0!==e.url_redirect&&("function"==typeof window.openPromoModal?window.openPromoModal():ModCore.modal_loading_show(),setTimeout(function(){ModCore.url_redirect(e.url_redirect)},1200)):(t=["We cannot process your request. Please try again later"],i.type(e.errors)&&i.isArray(e.errors)&&(t=e.errors),t=[],0<(t=i.type(e.errors)&&i.isArray(e.errors)?e.errors:t).length&&ModCore.event_trigger("dynamoContactFormErrorShow",t),t="Please check the errors",i.type(e.message)&&!ModCore.string_is_empty(e.message)&&(t=e.message),ModCore.event_trigger("dynamoPageNotificationShow",{status:"error",msg:t}))}))})},init_thumbtack_plw:function(){var o,e,t="string"==typeof window.plwConfig&&void 0!==window.plwConfig&&JSON.parse(plwConfig);t&&t.categoryPk&&0!==i("#plw-container").length&&(e="https://www.thumbtack.com",(e=t&&t.baseUrl?t.baseUrl:e).replace(/\/$/,""),o={category_pk:t.categoryPk,utm_medium:"partnership",utm_source:t.utm_source||"cma-stonecanyonai",utm_campaign:t.utm_campaign||"ABC",iframe_id:t.iframeId||"thumbtack-pro-list-01",is_category_editable:t.is_category_editable?"true":"false",is_zipcode_editable:t.is_zipcode_editable?"true":"false",limit:t.limit||3},t.zip&&(o.zip_code=t.zip),t.extraParams&&i.each(t.extraParams,function(e,t){0===e.indexOf("utm_")&&(o[e]=t)}),e='<iframe src="'+(e+"/embed/pro-list?"+i.param(o))+'" id="'+o.iframe_id+'" sandbox="allow-scripts allow-same-origin allow-popups allow-popups-to-escape-sandbox" height="'+(t.height||"600px")+'" width="'+(t.width||"100%")+'" style="border:0;"></iframe>',i("#plw-container").html(e))},init_aiwebsite_form:function(){ModContact.lead_start_recaptcha(),i("form",".jq_aiwebsite_form").bind("submit",function(e){e.preventDefault();var t,e=i(this).serializeObject();i(this);
18(is_valid=i(this).validate().checkForm())&&(e=i.extend(e=e,{}),t=ModCore.dynamo_config_get_value(ModCore.dynamo_data_get(),"_cfGRToken"),ModCore.string_is_empty(t)||(e._cfGRToken=t),ModCore.modal_loading_show(),t=ModCore.getEndpointUrl("aiwebsitesubmit"),ModCore.event_trigger("dynamoContactFormErrorClear",{}),a.call(t,e,function(e){var t;ModCore.modal_loading_hide(),1==e.status?void 0!==e.url_redirect&&("function"==typeof window.openPromoModal?window.openPromoModal():ModCore.modal_loading_show(),setTimeout(function(){ModCore.url_redirect(e.url_redirect)},1200)):(t=["We cannot process your request. Please try again later"],i.type(e.errors)&&i.isArray(e.errors)&&(t=e.errors),t=[],0<(t=i.type(e.errors)&&i.isArray(e.errors)?e.errors:t).length&&ModCore.event_trigger("dynamoContactFormErrorShow",t),t="Please check the errors",i.type(e.message)&&!ModCore.string_is_empty(e.message)&&(t=e.message),ModCore.event_trigger("dynamoPageNotificationShow",{status:"error",msg:t}))}))})},init_contractor_financing_form:function(){0!==i("form",".jq_contractor_financing_form").length&&("function"==i.type(window.loadTrustedForm)&&loadTrustedForm(),i("form",".jq_contractor_financing_form").find("input, select, textarea").filter(":visible:first").focus(),i("form",".jq_contractor_financing_form").bind("submit",function(e){e.preventDefault();var t,e=i(this).serializeObject();i(this);(is_valid=i(this).validate().checkForm())&&(e=i.extend(e=e,{}),ModCore.modal_loading_show(),t=ModCore.getEndpointUrl("contractorfinancingsubmit"),ModCore.event_trigger("dynamoContactFormErrorClear",{}),a.call(t,e,function(e){if(ModCore.modal_loading_hide(),1==e.status)switch(e.action){default:case"message":var t=e.message;ModCore.event_trigger("dynamoPageNotificationShow",{status:"success",msg:t});break;case"redirect":void 0!==e.url_redirect?("function"==typeof window.openPromoModal?window.openPromoModal():ModCore.modal_loading_show(),setTimeout(function(){ModCore.url_redirect(e.url_redirect)},1200)):ModCore.event_trigger("dynamoPageNotificationShow",{status:"error",msg:t="We cannot process your request. Please try again later"});break;case"thankyou":i(".jq_step_contractor_financing_form",".jq_contractor_financing_form").hide(),i('.jq_step_contractor_financing_form[data-step="thank-you"]',".jq_contractor_financing_form").show()}else{var o=["We cannot process your request. Please try again later"],t=(0<(o=i.type(e.errors)&&i.isArray(e.errors)?e.errors:o).length&&ModCore.event_trigger("dynamoContactFormErrorShow",o),"Please check the errors");i.type(e.message)&&!ModCore.string_is_empty(e.message)&&(t=e.message),ModCore.event_trigger("dynamoPageNotificationShow",{status:"error",msg:t})}}))}))},init:function(){e.bindEvents(),e.init_rycntrctr_form(),e.init_aiwebsite_form(),e.init_contractor_financing_form(),e.init_thumbtack_plw()}};return{init:{init:function(){e.init(),t.settings.init()}}.init}}(window.jQuery));jQuery(document).ready(ModAddon.init);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.