$(function(){var n={init:function(){$(".catalog_request_form").length>0?this.initVehicleWizards(".catalog_request_form"):$(".marketing_modal").length>0&&this.initVehicleWizards(".marketing_modal");this.loadCustomerInfo();this.attachListeners();$(".catalog_request_form").length>0&&T5Global.SmartyStreetsAutocomplete.init($('form[data-form-type="RequestCatalog"]'));$(".marketing_modal .wizard").attr("data-state")=="summary"&&$('.marketing_modal .progress_container button[type="submit"]').removeClass("disabled")},attachListeners:function(){var n=this;$("body").on("change",'[data-rule-required="true"]',function(){$(this).hasClass("is_error")&&($(this).removeClass("is_error"),$(this).next(".is_error").remove(),$(this).attr("type")=="checkbox"&&$(this).closest("label").next(".is_error").remove(),$(this).attr("id")==="fc-zip"&&n.clearAutoFilledErrors($('form[data-form-type="RequestCatalog"]')))});$("body").on("vehicleFormWizardLoaded",function(n,t){if(t.options.vehicleType==="mustang")t.options.container.on("vehicleFormWizardFitmentSelected",function(n,t){if($(t).attr("data-fitment-group")=="Year"){var r,i=$(t).attr("data-id");r=i>=2015?"99608":i>=2010?"99600":i>=2005?"99601":i>=1994?"99602":"99603";$("#fc-sku").val(r)}})});$("body").on("click",".marketing_modal .progress_container button",function(t){t.preventDefault();t.stopPropagation();var r=$(this),i=$(this).closest("form");if($(this).attr("data-step")!=="1"||$(this).hasClass("disabled"))$(this).attr("data-step")==="2"?n.isValidPartialForm(i,"2")&&($(".modal_step_2").addClass("hidden"),$(".modal_step_3").removeClass("hidden"),$(this).text("Send my catalog").attr("data-step","3")):$(this).attr("data-step")==="4"?n.submitPromoForm():n.isValidPartialForm(i,"3")?($(this).addClass("is_loading"),$("body").trigger("GTM.form_submit",$(this)),n.submitCatalogRequest(i,$(this))):$(".marketing_modal").animate({scrollTop:0},"fast");else{if($('.marketing_modal[data-modal-type-known="False"]').length){$(".modal_step_1").addClass("hidden");$(".modal_step_4").removeClass("hidden");$(".marketing_modal_container h3").remove();$(".progress_container .progress_bar").remove();r.text("Send My Coupon").attr("data-step","4");return}$(".modal_step_1").addClass("hidden");$(".modal_step_2").removeClass("hidden");r.text("Next step (2/3)").attr("data-step","2");$(".marketing_modal .progress_container div").addClass("active")}});$('form[data-form-type="RequestCatalog"] .submit_container button[type="submit"]').on("click",function(t){t.preventDefault();t.stopPropagation();var r=$(this).closest("form"),i=r.find('button[type="submit"]');i.hasClass("disabled")||(n.isValid(r)?(i.addClass("disabled").addClass("is_loading"),$("body").trigger("GTM.form_submit",$(this)),n.submitCatalogRequest(r,i)):($("body").trigger("GTM.form_submit_fail",$(this)),window.T5Global.scrollToFirstError(),i.removeClass("disabled")))});$("body").on("click",".marketing_modal .progress_container .close_trigger, .modal_step_5 img",function(n){n.preventDefault();$(".marketing_modal .close_btn").trigger("click")});$("body").on("click",".marketing_modal .close_btn",function(n){if(n.preventDefault(),$(".overlay.marketing_modal").click(),$('.marketing_modal[data-modal-type-known="False"]').length){$(".toaster.catalog").remove();T5Global.setCookie("Modal_BannerDisplay",JSON.stringify({hasVisited:!0,showModal:!1,showToaster:!1}),864e5)}});$("body").on("change keyup","#fc-state",function(){if($(this).closest(".marketing_modal").length!==0){var n=$("#fc-state").find('option[value="'+$("#fc-state").val()+'"]').closest("optgroup").attr("data-group");$("#fc-country").val(n)}});$("body").on("change keyup","#fc-zip",function(){$(this).val($(this).val().trim().toUpperCase());var t=$(this).val(),i=$(this).closest("form").find("#fc-state"),u=$(this).closest("form").find("#fc-city"),r=$(this).closest("form").find("#fc-country");t.length>=5&&$.ajax({dataType:"json",type:"POST",url:"/ajax/CityStateLookup",data:{zipcode:t}}).done(function(t){var e=t?T5Global.cleanAJAXresponse(t):{},s;if(e!==undefined){var h=e.City,o=e.State,f=e.Country;(f=="US"||f=="CA")&&(f=="CA"?(r.val(f).attr("selected",!0).siblings("option").removeAttr("selected"),i.val(o).attr("selected",!0).siblings("option").removeAttr("selected").trigger("input"),$("#fc-state").prev("label").html("Province")):(r.val(f).attr("selected",!0).siblings("option").removeAttr("selected"),i.val(o).attr("selected",!0).siblings("option").removeAttr("selected"),$("#fc-state").prev("label").html("State")),s=h,u.val(s),n.clearAutoFilledErrors($('form[data-form-type="RequestCatalog"]')))}})});$("body").on("change","#fc-country",function(){if(!($(this).closest(".marketing_modal").length>0)){var n=$(this).closest("form"),t=n.find("#fc-country").val();$("#fc-state optgroup option").prop("disabled",!0);$('#fc-state optgroup[data-group="'+t+'"] option').removeAttr("disabled");$("#fc-state option:selected").attr("disabled")&&$("#fc-state option").eq(0).prop("selected",!0)}});$("body").on("marketingVFWComplete",function(){$(".marketing_modal .progress_container button").removeClass("disabled");n.checkModalAvailable(function(n){T5Global.isNullOrWhiteSpace(n)||$(n).hasClass("promo")||$(".marketing_modal").attr("data-modal-type-known","True")})})},submitPromoForm:function(){var r=this,t=$('.marketing_modal_container .promo_form [type="email"]'),n,i;if(!t.hasClass("is_error")&&!window.T5Global.regex.email.test(t.val())){r.renderError(t,"Please enter a valid email address.");return}$(".marketing_modal_container .progress_container button").addClass("disabled").addClass("is_loading");n=[];$(this.wizards).each(function(){var t=this.options.fitment[this.options.vehicleType];for(var i in t)t[i]&&t[i].fieldName&&n.push({name:t[i].fieldName,value:t[i].uid});this.options.vehicleType=="mustang"&&(n.push({name:"MustangEngineId",value:this.options.container.closest('[class*="about_your_"]').find(".engine").val()}),n.push({name:"MustangModelId",value:this.options.container.closest('[class*="about_your_"]').find(".submodel").val()}));this.options.vehicleType=="challenger"&&(n.push({name:"ChallengerEngineId",value:this.options.container.closest('[class*="about_your_"]').find(".engine").val()}),n.push({name:"ChallengerModelId",value:this.options.container.closest('[class*="about_your_"]').find(".submodel").val()}));this.options.vehicleType=="charger"&&(n.push({name:"ChargerEngineId",value:this.options.container.closest('[class*="about_your_"]').find(".engine").val()}),n.push({name:"ChargerModelId",value:this.options.container.closest('[class*="about_your_"]').find(".submodel").val()}));this.options.vehicleType=="camaro"&&(n.push({name:"CamaroEngineId",value:this.options.container.closest('[class*="about_your_"]').find(".engine").val()}),n.push({name:"CamaroModelId",value:this.options.container.closest('[class*="about_your_"]').find(".submodel").val()}));this.options.vehicleType=="mache"&&(n.push({name:"MacheEngineId",value:this.options.container.closest('[class*="about_your_"]').find(".engine").val()}),n.push({name:"MacheModelId",value:this.options.container.closest('[class*="about_your_"]').find(".submodel").val()}))});$(document).trigger("GTM.inquiry_form_submit",{InquiryTrackingGuid:$("#InquiryTrackingGuid").val()});i={InquiryType:$(".marketing_modal_container form").find("#InquiryType").val(),Site:$(".marketing_modal_container form").find("#Site").val(),Device:$(".marketing_modal_container form").find("#IsMobile").val()==="True"?1:0,IpAddress:$(".marketing_modal_container form").find("#IpAddress").val(),InquiryTrackingGuid:$("#InquiryTrackingGuid").val(),Email:t.val()};T5Global.inquiryWebSocketService.openWebSocket($("#InquiryWebSocketUrl").val(),i,this.onMessageCallback,this.onErrorCallback,this.onTimeoutCallback);T5Global.userTypedEmail.setIt(t.val())},checkModalAvailable:function(n){$(".marketing_modal").attr("data-modal-type-known").toLowerCase()=="true"&&n({});$.ajax({method:"GET",cache:!1,url:"/ajax/GetMarketingModal"}).done(function(t){n&&n(t)})},clearAutoFilledErrors:function(n){var u=$(n).find("#fc-zip").val(),t=$(n).find("#fc-city"),i=$(n).find("#fc-state"),r=$(n).find("#fc-country");u.length>=5&&window.T5Global.regex.zipCode.test(u)&&(t.hasClass("is_error")&&t.val().length>0&&(t.removeClass("is_error"),t.next(".is_error").remove()),i.hasClass("is_error")&&i.val().length>0&&(i.removeClass("is_error"),i.next(".is_error").remove()),r.hasClass("is_error")&&r.val().length>0&&(r.removeClass("is_error"),r.next(".is_error").remove()))},initVehicleWizards:function(n){var t=this;this.wizards=[];$(n+" .wizard").each(function(){t.wizards.push(new T5VehicleFormWizard({container:$(this),fitmentGroupOrder:{mustang:[{label:"Your Mustang Year?",group:"Generation",property:"VehicleGenerations",fieldName:"VehicleGenerationId"},{label:"Your Mustang Year?",group:"Year",property:"VehicleYears",fieldName:"MustangYear"},{label:"Your Mustang Color?",group:"Color",property:"VehicleColors",fieldName:"MustangColorId"},{label:"Your Mustang Submodel?",group:"Submodel",property:"VehicleModels",fieldName:"MustangModelId"}],challenger:[{label:"Your Challenger Year?",group:"Generation",property:"VehicleGenerations",fieldName:"VehicleGenerationId"},{label:"Your Challenger Year?",group:"Year",property:"VehicleYears",fieldName:"ChallengerYear"},{label:"Your Challenger Color?",group:"Color",property:"VehicleColors",fieldName:"ChallengerColorId"},{label:"Your Challenger Submodel?",group:"Submodel",property:"VehicleModels",fieldName:"ChallengerModelId"}],charger:[{label:"Your Charger Year?",group:"Generation",property:"VehicleGenerations",fieldName:"VehicleGenerationId"},{label:"Your Charger Year?",group:"Year",property:"VehicleYears",fieldName:"ChargerYear"},{label:"Your Charger Color?",group:"Color",property:"VehicleColors",fieldName:"ChargerColorId"},{label:"Your Charger Submodel?",group:"Submodel",property:"VehicleModels",fieldName:"ChargerModelId"}],camaro:[{label:"Your Camaro Year?",group:"Generation",property:"VehicleGenerations",fieldName:"VehicleGenerationId"},{label:"Your Camaro Year?",group:"Year",property:"VehicleYears",fieldName:"CamaroYear"},{label:"Your Camaro Color?",group:"Color",property:"VehicleColors",fieldName:"CamaroColorId"},{label:"Your Camaro Submodel?",group:"Submodel",property:"VehicleModels",fieldName:"CamaroModelId"}],mache:[{label:"Your Mach-E Year?",group:"Generation",property:"VehicleGenerations",fieldName:"VehicleGenerationId"},{label:"Your Mach-E Year?",group:"Year",property:"VehicleYears",fieldName:"MacheYear"},{label:"Your Mach-E Color?",group:"Color",property:"VehicleColors",fieldName:"MacheColorId"},{label:"Your Mach-E Submodel?",group:"Submodel",property:"VehicleModels",fieldName:"MacheModelId"}]},isMarketingModal:n===".marketing_modal"?!0:!1}))})},isValid:function(n){var i=this,t=!0;return $("span.is_error").remove(),$(".is_error").removeClass("is_error"),$(n).find('.user_info select[data-rule-required="true"]').each(function(){$(this).val()&&$(this).val()!="N/A"&&$(this).val().trim().length!=0||(t=!1,i.renderError($(this),$(this).attr("data-msg-required")))}),$(n).find('.user_info input[data-rule-required="true"]').each(function(){$(this).val().trim().length==0&&(t=!1,i.renderError($(this),$(this).attr("data-msg-required")))}),$(n).find("#fc-addr").length&&!$(n).find("#fc-addr").hasClass("is_error")&&(T5Global.isNullOrWhiteSpace($(n).find("#fc-addr").val())||!$(n).find("#fc-addr").val().trim().match(/[a-zA-Z]/))&&(t=!1,i.renderError($(n).find("#fc-addr"),"Please enter a house number and street name.")),!$(n).find("#fc-zip").length||$(n).find("#fc-zip").hasClass("is_error")||window.T5Global.regex.zipCode.test($(n).find("#fc-zip").val())||(t=!1,i.renderError($(n).find("#fc-zip"),$(n).find("#fc-zip").attr("data-msg-required"))),$(n).find("#fc-email").hasClass("is_error")||window.T5Global.regex.email.test($(n).find("#fc-email").val())||(t=!1,i.renderError($(n).find("#fc-email"),$(n).find("#fc-email").attr("data-msg-required"))),$(this.wizards).each(function(){t=this.isValid()?t:!1}),t},isValidPartialForm:function(n,t){var r=this,i=!0;return $("span.is_error").remove(),$(".is_error").removeClass("is_error"),$(n).find(".modal_step_"+t+' select[data-rule-required="true"]').each(function(){$(this).val()&&$(this).val()!="N/A"&&$(this).val().trim().length!=0||(i=!1,r.renderError($(this),$(this).attr("data-msg-required")))}),$(n).find(".modal_step_"+t+' input[data-rule-required="true"]').each(function(){$(this).val().trim().length==0&&(i=!1,r.renderError($(this),$(this).attr("data-msg-required")))}),t==="3"&&$(n).find("#fc-addr").length&&!$(n).find("#fc-addr").hasClass("is_error")&&(T5Global.isNullOrWhiteSpace($(n).find("#fc-addr").val())||!$(n).find("#fc-addr").val().trim().match(/[a-zA-Z]/))&&(i=!1,r.renderError($(n).find("#fc-addr"),"Please enter a house number and street name.")),t!=="3"||!$(n).find("#fc-zip").length||$(n).find("#fc-zip").hasClass("is_error")||window.T5Global.regex.zipCode.test($(n).find("#fc-zip").val())||(i=!1,r.renderError($(n).find("#fc-zip"),$(n).find("#fc-zip").attr("data-msg-required"))),t!=="2"||$(n).find("#fc-email").hasClass("is_error")||window.T5Global.regex.email.test($(n).find("#fc-email").val())||(i=!1,r.renderError($(n).find("#fc-email"),$(n).find("#fc-email").attr("data-msg-required"))),t==="3"&&$(n).find("#fc-smsmarketing").length&&$(n).find("#fc-smsmarketing").val().length>0&&!window.T5Global.regex.phoneNumber.test($(n).find("#fc-smsmarketing").val())&&(i=!1,r.renderError($(n).find("#fc-smsmarketing"),$(n).find("#fc-smsmarketing").attr("data-msg-required"))),i},loadCustomerInfo:function(){$.ajax({dataType:"json",url:"/ajax/GetCustomerInformation"}).done(function(n){var t=n?T5Global.cleanAJAXresponse(n):{};$("#fc-fname").val(t.FirstName);$("#fc-lname").val(t.LastName);$("#fc-email").val(t.Email);$("#fc-addr").val(t.Address1);$("#fc-apt").val(t.Address2);$("#fc-city").val(t.City);$("#fc-state").val(t.State);$("#fc-zip").val(t.Zip);$("#fc-country").val(t.Country==="Canada"?"CA":"US");$("body").trigger("customerInfoLoaded",[t])})},renderError:function(n,t){$(n).addClass("is_error");$('<span class="is_error text_left">'+t+"<\/span>").insertAfter($(n))},submitCatalogRequest:function(n){var t=null,i;$(this.wizards).each(function(){this.options.vehicleType.toLowerCase()==$('[data-form-type="RequestCatalog"] #VehicleType').val().toLowerCase()&&(t=this.options.fitment[this.options.vehicleType])});$(document).trigger("GTM.inquiry_form_submit",{InquiryTrackingGuid:$("#InquiryTrackingGuid").val()});i={InquiryType:"CatalogRequest",Site:n.find("#Site").val(),Device:n.find("#IsMobile").val()==="True"?1:0,IpAddress:n.find("#IpAddress").val(),InquiryTrackingGuid:$("#InquiryTrackingGuid").val(),Email:n.find("#fc-email").val(),HowDidYouHear:n.find("#fc-howdidyouhear").val(),SmsMarketing:n.find("#fc-smsmarketing").val(),FirstName:n.find("#fc-fname").val(),LastName:n.find("#fc-lname").val(),AddressLine1:n.find("#fc-addr").val(),AddressLine2:n.find("#fc-apt").val(),City:n.find("#fc-city").val(),State:n.find("#fc-state").val(),PostalCode:n.find("#fc-zip").val(),Country:n.find("#fc-country").val(),Fitment:t,VehicleType:t.VehicleType.label};T5Global.inquiryWebSocketService.openWebSocket($("#InquiryWebSocketUrl").val(),i,this.onMessageCallback,this.onErrorCallback,this.onTimeoutCallback);T5Global.userTypedEmail.setIt(n.find("#fc-email").val())},onMessageCallback:function(n){var r=$(this).closest("form"),i=$("#inquiry-submit-button"),t=JSON.parse(n.data),u;$('.marketing_modal[data-modal-type-known="True"]').length&&(t.Message==""||t.Message.indexOf("fc-return-error")>-1)?(r.find(".message").text("We're sorry, something went wrong. Please try again later.").addClass("error").removeClass("hidden"),i.removeClass("disabled")):t.Message.indexOf("error")>-1?(r.find(".message").html(t.Message).addClass("error").removeClass("hidden"),i.removeClass("disabled")):($(".marketing_modal").length>0&&($(".marketing_modal .modal_step_3").addClass("hidden"),$(".marketing_modal .modal_step_4").addClass("hidden"),$(".marketing_modal h3").addClass("hidden"),$(".marketing_modal .modal_step_5").removeClass("hidden"),$(".marketing_modal .progress_container").addClass("hidden"),$("body").trigger("ModalFormSuccess")),$('[data-form-type="RequestCatalog"] .message').not(".virtual_builds_container .message").addClass("success").html(t.Message).removeClass("hidden"),i.remove(),$("body").trigger("setToasterCookie"));$("#catalog-stripe-vehicle-type").val()&&(u=$("#catalog-stripe-vehicle-type").val(),document.cookie="AM_isFirstVisit_"+u+"=false")},onTimeoutCallback:function(){if($(".marketing_modal form .progress_container").children().remove(),$(".marketing_modal form .terms_link").remove(),$(".marketing_modal form .progress_container").append('<p class="message success">We are currently experiencing issues but your submission was received and will be processed. Thank you!<\/p>'),$(".marketing_modal").length>0&&$("body").trigger("ModalFormSuccess"),$("body").trigger("setToasterCookie"),$("#catalog-stripe-vehicle-type").val()){var n=$("#catalog-stripe-vehicle-type").val();document.cookie="AM_isFirstVisit_"+n+"=false"}},onErrorCallback:function(){var t=$(this).closest("form"),n;t.find(".message").text("We're sorry, something went wrong. Please try again later.").addClass("error").removeClass("hidden");n=$("#inquiry-submit-button");n.removeClass("disabled")}}.init()})