var subscription={packageType:!1,packageSection:!1,subscriptionForm:!1,changeCountry:!1,changeEmailButton:!1,changeEmailInput:!1,changeEmailContainer:!1,errorMessage:!1,findAddressButton:!1,addressUpdate:!1,addressModal:!1,clodeModalButton:!1,billingForm:!1,billingFormCheckbox:!1,subscribePage:!1,subscriptionContainer:!1,promxoCode:!1,packageCode:!1,packageName:"",packageDescription:!1,wpAjaxActions:{},packageList:[],journalCode:"",promoCode:"",packCode:"",imageBtn:!1,billingPostcodeField:!1,deliveryPostcodeFeild:!1,packagesAjax:!1,billingAddressCountrySelect:!1,backToFirstStep:!1,iframeCallbackSet:!1,currencyIdentifier:!1,packageString:"",currencyCodes:{AUD:"$",NZD:"$",USD:"$",CAD:"$",EUR:"€",GBP:"£",JPY:"¥",ILS:"₪",INR:"₹",KRW:"₩",NGN:"₦",PHP:"₱",PLN:"zł",PYG:"₲",THB:"฿",UAH:"₴",VND:"₫"},alternateLabels:[{country:"default",fields:[{name:"delivery_city",label:"Town/City*"},{name:"delivery_county",label:"County"},{name:"billing_city",label:"Town/City*"},{name:"billing_county",label:"County"}]},{country:"AUS",fields:[{name:"delivery_city",label:"Suburb*"},{name:"delivery_county",label:"State*"},{name:"billing_city",label:"Suburb*"},{name:"billing_county",label:"State*"}]}],init:function(e,t){this.packageList=e.list,this.wpAjaxActions=t,this.journalCode=e.journalCode,this.promoCode=e.promoCode,this.packageCode=e.packCode,this.setupEvents(),this.changeLabels(),this.addSubscriptionOptions(),this.loadSubscribePage(),this.addPianoAccountButtonsMobileWrapper(),void 0!==tp.pianoId&&this.addPianoAccountButtons()},setupEvents:function(){var e=this;this.subscriptionForm=jQuery(".subscribe-form"),this.packageSection=jQuery(".subscribe-options"),this.packageType=jQuery(".subscribe-option__button a"),this.changeEmailButton=jQuery(".email--logged-in .change"),this.changeEmailInput=jQuery(".change-email-input"),this.changeEmailContainer=jQuery(".email-set-container"),this.passwordInput=jQuery('input[name="password"]'),this.confirmPasswordInput=jQuery('input[name="confirm-password"]'),this.accoridonLabel=jQuery(".accordion .accordion__label"),this.proceedButton=jQuery(".button--proceed"),this.errorMessage=jQuery(".error-message"),this.findAddressButton=jQuery(".find-address-button"),this.addressModal=jQuery(".address-modal"),this.clodeModalButton=jQuery(".close-modal"),this.modalSelectAddressButton=jQuery(".select-address"),this.billingForm=jQuery(".billing-form"),this.billingFormCheckbox=jQuery("#different_billing_address"),this.subscribePage=jQuery(".subscribe-page"),this.subscriptionContainer=jQuery(".subscription-options.radio-tile-group.radio-tile-group--boxed"),this.changeCountry=jQuery('[name="country"]'),this.imageBtn=jQuery(".subscribe-option__image__image"),this.deliveryPostcodeFeild=jQuery("#delivery_postcode"),this.billingPostcodeField=jQuery("#billing_postcode"),this.billingAddressCountrySelect=jQuery("#billing_country"),this.backToFirstStep=jQuery("#change_subscription"),this.deliveryPostcodeFeild.keypress(function(e){if(32===e.which)return!1}),this.billingPostcodeField.keypress(function(e){if(32===e.which)return!1}),this.imageBtn.on("click",function(e){e.preventDefault(),jQuery(this).parent().parent().find(".subscribe-option__button a").trigger("click")}),this.changeEmailButton.on("click",function(t){t.preventDefault(),e.changeEmailAddress()}),"undefined"!=typeof packageData&&(e.packagePostId=packageData.packagePostId,e.packageName=packageData.packageName,e.packageDescription=jQuery("

"+packageData.packageDescription+"

")),this.packageType.on("click",function(t){jQuery(this).find("span").removeClass("hide"),jQuery(".subscribe-option__button a").addClass("disabled"),jQuery(this).find("span").removeClass("hide"),jQuery(".subscribe-option__button a").addClass("disabled"),e.packagePostId=jQuery(this).parents(".subscribe-option").data("package-post-id"),e.packageName=jQuery(this).data("pkgname"),e.packageDescription=jQuery(this).parents(".subscribe-option").find(".subscribe-option__description").clone(),e.packageDescription.removeClass(),e.packageCode=jQuery(this).data("pkgcode"),jQuery(this).data("promocode")&&(e.promoCode=jQuery(this).data("promocode")),e.updatePromoOption(jQuery(e.changeCountry).val(),e.promoCode,e.packageCode,e.journalCode)}),this.accoridonLabel.on("click",function(t){t.preventDefault(),e.toggleAccordions(jQuery(this))}),this.proceedButton.on("click",function(t){t.preventDefault(),e.proceedToNextStep(jQuery(this))}),this.backToFirstStep.on("click",function(t){t.preventDefault(),e.jumptoStep(-1)}),this.findAddressButton.on("click",function(t){jQuery(this).addClass("loading"),jQuery(this).prop("disabled",!0),jQuery(this).find("span").removeClass("hide"),t.preventDefault(),e.showFindAddressModal(jQuery(this))}),this.clodeModalButton.on("click",function(t){t.preventDefault(),e.hideFindAddressModal()}),this.modalSelectAddressButton.on("click",function(t){t.preventDefault(),e.selectAddress()}),this.billingFormCheckbox.on("change",function(){e.toggleBillingAddress(jQuery(this))}),this.billingAddressCountrySelect.on("change",function(e){jQuery(".billing-form .find-address-button").removeClass("hidden"),"UK"!==jQuery(this).val()&&jQuery(".billing-form .find-address-button").addClass("hidden")}),this.changeCountry.on("change",function(t){t.preventDefault(),jQuery(".subscription-options").addClass("hide"),jQuery(".country-loader").removeClass("hide");var i=jQuery(this).val();jQuery("#delivery_country").val(i),jQuery("#billing_country").val(i),jQuery(".find-address-button").removeClass("hidden"),"UK"!==i&&jQuery(".find-address-button").addClass("hidden"),"AUS"!==i?(jQuery(".delivery_county--select").addClass("hidden"),jQuery(".delivery_county--select").removeClass("required"),jQuery(".delivery_county--text").removeClass("hidden"),jQuery(".billing_county--select").addClass("hidden"),jQuery(".billing_county--select").removeClass("required"),jQuery(".billing_county--text").removeClass("hidden")):(jQuery(".delivery_county--select").removeClass("hidden"),jQuery(".delivery_county--select").addClass("required"),jQuery(".delivery_county--text").addClass("hidden"),jQuery(".billing_county--select").removeClass("hidden"),jQuery(".billing_county--select").addClass("required"),jQuery(".billing_county--text").addClass("hidden")),e.updatePromoOption(jQuery(this).val(),e.promoCode,e.packageCode,e.journalCode),e.changeLabels()}),window.addEventListener("message",function(t){t.data.pianoInitialised&&e.addPianoAccountButtons()})},loadSubscribePage:function(){this.subscribePage.removeClass("not-loaded"),jQuery(".subscribe-option__text-wrapper-top").matchHeight(),jQuery(".subscribe-option__text-wrapper").matchHeight()},changeLabels:function(){for(var e=this.changeCountry.val(),t=[],i=0;i-1?e+" "+t:t},addSubscriptionOptions:function(){for(var e="",t="",i="£",s="GBP",r=[],a=0;a
"}}0===this.packageList.length?(e+='

Sorry, there are no available subscription options in your delivery country

',jQuery(".step-0 .button--proceed").hide()):jQuery(".step-0 .button--proceed").show(),this.subscriptionContainer.html(e),jQuery(".radio-option__button").filter('[name="package"]').click(function(){jQuery(".payment_direct_debit_price").html(i+jQuery(this).data("price")),updatePaypalPrice(jQuery(this).data("price"),s)})},checkIfInArray:function(e,t){for(var i=!1,s=t.length-1;s>=0;s--)t[s]==e&&(i=!0);return i},proceedToNextStep:function(e){this.errorMessage.hasClass("hidden")||this.hideErrorMessage();var t=parseInt(e.attr("data-current-step"));this.nextStep(t)},jumptoStep:function(e){this.nextStep(e)},nextStep:function(e){if(-1==e)this.showSpecificAccordion(".step-0");else if(0==e)!0===this.validateStepZero()&&(this.preventCountrySelection(),this.pianoInit());else if(1==e)this.validateStepOne();else if(2==e)this.validateStepTwo();else if(3==e&&this.validateStepZero()&&this.validateStepTwo()){this.getPostObject()}},getPostObject:function(){return jQuery("form").serializeArray()},showErrorMessage:function(e,t){t=t||"Please fix the errors highlighted below:",this.errorMessage.text(t),this.errorMessage.removeClass("hidden"),e.length&&(e.first().parent().hasClass("input-item")?subscription.errorMessage.insertBefore(e.first().parent()):subscription.errorMessage.insertBefore(e.first())),this.scrollToEl(this.errorMessage)},hideErrorMessage:function(){this.errorMessage.addClass("hidden")},changeEmailAddress:function(){this.changeEmailInput.hasClass("hidden")&&(this.changeEmailContainer.addClass("hidden"),this.changeEmailInput.removeClass("hidden"))},showSpecificAccordion:function(e){var t=this;jQuery(".subscribe-form__accordions__form .accordion").each(function(e,t){jQuery(this).find(".accordion__content").removeClass("open"),jQuery(this).find(".accordion__label").removeClass("selected")});var i=jQuery(e);i.find(".accordion__label").addClass("selected"),i.find(".accordion__content").addClass("open"),".step-3"==e&&(this.getPaymentForm("payment_direct_debit"),jQuery("input").filter('[name="pay_option"]:checked').click()),setTimeout(function(){t.scrollToEl(i.find(".accordion__label"))},300),".step-3"==e&&("UK"==jQuery(".country-select").val()?jQuery(".payment-process-location-info").hide():jQuery(".payment-process-location-info").show())},toggleAccordions:function(e){if(!e.hasClass("selected")){var t=jQuery(e).data("step");if(this.errorMessage.hasClass("hidden")||this.hideErrorMessage(),0==t&&this.restoreCountrySelection(),1==t){if(!this.validateStepZero(!0))return this.showSpecificAccordion(".step-0");this.pianoInit()}if(2==t){if(!this.validateStepZero(!0))return this.showSpecificAccordion(".step-0");if(!this.validateStepOne(!0))return this.showSpecificAccordion(".step-1")}if(3==t){if(!this.validateStepZero(!0))return this.showSpecificAccordion(".step-0");if(!this.validateStepOne(!0))return this.showSpecificAccordion(".step-1");if(!this.validateStepTwo(!0))return this.showSpecificAccordion(".step-2")}return this.showSpecificAccordion(".step-"+t)}},hideFindAddressModal:function(){this.addressModal.hasClass("show")&&(this.addressModal.removeClass("show"),this.addressUpdate=!1)},removewhiteSpace:function(e){return e.replace(/\s/g,"")},showFindAddressModal:function(e){this.addressUpdate=e.attr("data-form-select");var t=jQuery("#"+this.addressUpdate+"_postcode");if(jQuery("#postcodeEntered").text(t.val()),t.removeClass("error"),jQuery(".address-error").addClass("hide"),!t.val().length)return void t.addClass("error");var i={action:this.wpAjaxActions.getPostalAddress,postcode:this.removewhiteSpace(t.val())};jQuery.post(wp_ajaxurl,i,function(t){"success"==t.status&&(e.removeClass("loading"),e.prop("disabled",!1),e.find("span").addClass("hide"),0!==t.html.length?(jQuery("#address-modal-content").html(t.html),jQuery(".address-modal").addClass("show")):e.parent().find(".address-error").removeClass("hide"))})},selectAddress:function(){var e="",t=jQuery("input[name='modal-address-select']:checked");t.val()&&(e=t.val(),t.prop("checked",!1),this.populateAddress(e,this.addressUpdate))},populateAddress:function(e,t){"billing"==t?this.populateBillingAddress(e):this.populateDeliveryAddress(e),this.hideFindAddressModal()},toggleBillingAddress:function(e){e.is(":checked")?this.billingForm.hasClass("hidden")&&this.billingForm.removeClass("hidden"):this.billingForm.hasClass("hidden")||this.billingForm.addClass("hidden")},validateStepZero:function(e){var t=jQuery(".country-select"),i=jQuery(".radio-tile-group.subscription-options"),s=!0;if(t.hasClass("error")&&t.removeClass("error"),i.hasClass("error")&&i.removeClass("error"),0==t.val().length&&(s=!1,t.addClass("error")),jQuery(".radio-tile-group.subscription-options input[name='package']:checked").val()){var r=jQuery(".radio-tile-group.subscription-options input[name='package']:checked").parent().text();this.packageString=r}else s=!1,i.addClass("error"),this.showErrorMessage(i,"Please select an offer");return s&&!e&&this.showSpecificAccordion(".step-1"),s},validateEmail:function(e){return!!/^([a-zA-Z0-9_+\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/.test(e)},validateStepOne:function(e){var t=jQuery(".piano-user-details");if(t.length){if(t.children(".piano-user-details__error-message").remove(),tp.pianoId.isUserValid())return e||this.showSpecificAccordion(".step-2"),!0;var i=jQuery('

Please create an account before proceeding.

');t.prepend(i);var s=i.offset().top-20;return jQuery("html, body").animate({scrollTop:s+"px"},500),!1}},validateStepTwo:function(e){var t=this,i=!0,s=jQuery(""),r=!1,a=jQuery('input[name="email"]');if(jQuery(".step-2 .required").removeClass("error"),jQuery("#pass_match").hide(),jQuery(".step-2 .shipping-form .required").each(function(e,t){var a=jQuery(this);a.val()||(a.addClass("error"),i=!1,r||(r=!0,s=a))}),this.deliveryPostcodeFeild.val().length>=1||this.deliveryPostcodeFeild.addClass("error"),jQuery("#different_billing_address").is(":checked")&&(jQuery(".step-2 .billing-form .required").each(function(e,t){var a=jQuery(this);a.val()||(a.addClass("error"),i=!1,r||(r=!0,s=a))}),this.billingPostcodeField.val().length>=6&&this.billingPostcodeField.val().length<=8||this.billingPostcodeField.addClass("error")),a.is(":visible")&&0==a.val().length&&(this.validateEmail(a.val())||(a.addClass("error"),i=!1,r||(r=!0,s=input))),jQuery("#different_billing_address").is(":checked")){var n=jQuery(".step-2 .required-delivery");n.removeClass("error"),n.each(function(e,t){var a=jQuery(this);a.val()||(a.addClass("error"),i=!1,r||(r=!0,s=a))})}if(i){if(!e){var o=this.collectFormData().package,d="CC";d=""!=o.xforxFollowOnRate?this.getPaymentType(o.xForxIndicator):this.getPaymentType(o.paymentType),"DD"==d?(jQuery("#pay_less_direct_debit").attr("checked","checked"),jQuery(".credit-card-method").addClass("hidden"),jQuery(".direct-debit-method").removeClass("hidden")):(jQuery("#pay_more_credit_card").attr("checked","checked"),jQuery(".credit-card-method").removeClass("hidden"),jQuery(".direct-debit-method").addClass("hidden")),t.showSpecificAccordion(".step-3")}}else this.showErrorMessage(s);return i},getPaymentType:function(e){switch(e){case"":case" ":return"CC";case"D":case"1":return"DD";case"C":case"8":return"CC"}},populateBillingAddress:function(e){var t=JSON.parse(e);0!=t.line1.length&&jQuery("#billing_address_line_1").val(t.line1),0!=t.line2.length&&jQuery("#billing_address_line_2").val(t.line2),0!=t.city.length&&jQuery("#billing_city").val(t.city),0!=t.county.length&&jQuery("#billing_county").val(t.county)},populateDeliveryAddress:function(e){var t=JSON.parse(e);0!=t.line1.length&&jQuery("#delivery_address_line_1").val(t.line1),0!=t.line2.length&&jQuery("#delivery_address_line_2").val(t.line2),0!=t.city.length&&jQuery("#delivery_city").val(t.city),0!=t.county.length&&jQuery("#delivery_county").val(t.county)},scrollToEl:function(e){var t=e.offset().top,i=t-jQuery(window).height()/3;jQuery("html, body").animate({scrollTop:i},500)},isCheckedState:function(e){return jQuery(e).is(":checked")?"Y":"N"},collectFormData:function(e){var t=jQuery(".radio-option__button").filter('[name="package"]:checked').val();t=void 0!==t?this.packageList[parseInt(t)]:[];var i={title:jQuery("#delivery_title").val(),package:this.packageString,name:jQuery("#delivery_first_name").val(),surname:jQuery("#delivery_last_name").val(),countryNicename:jQuery("#delivery_country option:selected").text(),country:jQuery("#delivery_country").val(),postcode:jQuery("#delivery_postcode").val(),company:jQuery("#delivery_company").val(),address1:jQuery("#delivery_address_line_1").val(),address2:jQuery("#delivery_address_line_2").val(),city:jQuery("#delivery_city").val(),county:jQuery("#delivery_county").val(),countyNicename:jQuery(".delivery_county--select").children("option").filter(":selected").text(),telephone:jQuery("#delivery_tel").val(),mobile:jQuery("#delivery_mobile").val(),currency:this.currencyIdentifier};jQuery(".delivery_county--select").hasClass("hidden")?(i.county=jQuery("#delivery_county").val(),i.countyNicename=jQuery("#delivery_county").val()):(i.county=jQuery(".delivery_county--select").children("option").filter(":selected").val(),i.countyNicename=jQuery(".delivery_county--select").children("option").filter(":selected").text());var s={};return jQuery("#different_billing_address").is(":checked")?(s={title:jQuery("#billing_title").val(),package:this.packageString,name:jQuery("#billing_first_name").val(),surname:jQuery("#billing_last_name").val(),countryNicename:jQuery("#billing_country option:selected").text(),country:jQuery("#billing_country").val(),postcode:jQuery("#billing_postcode").val(),company:jQuery("#billing_company").val(),address1:jQuery("#billing_address_line_1").val(),address2:jQuery("#billing_address_line_2").val(),city:jQuery("#billing_city").val(),county:jQuery("#billing_county").val(),countyNicename:jQuery(".billing_county--select").children("option").filter(":selected").text(),telephone:jQuery("#billing_tel").val(),mobile:jQuery("#billing_mobile").val(),currency:this.currencyIdentifier},jQuery(".billing_county--select").hasClass("hidden")?(s.county=jQuery("#billing_county").val(),s.countyNicename=jQuery("#billing_county").val()):(s.county=jQuery(".billing_county--select").children("option").filter(":selected").val(),s.countyNicename=jQuery(".billing_county--select").children("option").filter(":selected").text())):s=i,{email:jQuery('input[name="email"]').val(),password:jQuery("#password").val(),confirmPassword:jQuery("#confirm-password").val(),useDeliveryAddress:jQuery("#different_billing_address").is(":checked"),packagePostId:this.packagePostId,package:t,billing:s,delivery:i}},directDebitFormError:function(e){e?(jQuery("#"+e+"-incorrect").removeClass("hidden"),jQuery("#"+e).addClass("error"),jQuery("#"+e).css("border-color","red")):(jQuery('[name="payment-debit"] input').removeClass("error"),jQuery('[name="payment-debit"] input').css("border-color","#979797"),jQuery(".direct-debit-form-error").addClass("hidden"))},SubmitDirectDebit:function(e){e.preventDefault();var t=!1;jQuery(".step-3-submit").attr("disabled","disabled");var i=jQuery("#pay_less_direct_debit_bank_sort_1_of_3").val(),s=jQuery("#pay_less_direct_debit_bank_sort_2_of_3").val(),r=jQuery("#pay_less_direct_debit_bank_sort_3_of_3").val(),a=jQuery("#pay_less_direct_debit_bank_number").val(),n=jQuery("#pay_less_direct_debit_account_holder").val().trim(),o=jQuery("#pay_less_direct_debit_accept_terms").is(":checked");if(this.directDebitFormError(),2!==i.length&&(this.directDebitFormError("pay_less_direct_debit_bank_sort_1_of_3"),this.directDebitFormError("sort-number"),t=!0),2!==s.length&&(this.directDebitFormError("pay_less_direct_debit_bank_sort_2_of_3"),this.directDebitFormError("sort-number"),t=!0),2!==r.length&&(this.directDebitFormError("pay_less_direct_debit_bank_sort_3_of_3"),this.directDebitFormError("sort-number"),t=!0),a.length<=7&&(this.directDebitFormError("pay_less_direct_debit_bank_number"),t=!0),n.length||(this.directDebitFormError("pay_less_direct_debit_account_holder"),t=!0),t){setTimeout(function(){jQuery(".step-3-submit").removeClass("button--loading-spinner"),jQuery(".step-3-submit").attr("disabled","")},250);var d=jQuery(".payment-tier__option__form input.error");return d.length&&d.first().is(":visible")&&this.scrollToEl(d.first()),t}this.directDebitFormError();var c=("00"+i).substr(-2,2),l=("00"+s).substr(-2,2),u=("00"+r).substr(-2,2),p={sortCode:[c,l,u].join(""),accountNum:a,accountName:n,termState:o};return subscription.paymentSubmitEvent({debit:p}),!1},paymentSubmitEvent:function(e){var t=this,i=this.collectFormData();e&&(e.paypal?i.paypal=e.paypal:e.debit?i.debit=e.debit:(i.creditBatchId=e,i.hdncardpayments=e)),i.uid=tp.pianoId.getUser().sub,i.email=tp.pianoId.getUser().email;var s={action:this.wpAjaxActions.payment,data:i};return jQuery.post(wp_ajaxurl,s,function(e){"success"==e.status?(jQuery("#confirmation_order_number").html(e.conversionId),jQuery("#confirmation_order_email").html(jQuery('input[name="email"]').val()),jQuery(".subscribe-form__intro").addClass("hidden"),jQuery(".subscribe-form__accordions").addClass("hidden"),jQuery(".subscribe-form__package-content").addClass("hidden"),jQuery(".subscribe-reviews").addClass("hidden"),subscribeThankYouSection.init(e.conversionId),mentionMe.processOrder(e.data,e.conversionId),t.trackECommerce(e.conversionId),e.evolok&&e.evolok.secureSession&&e.evolok.secureSession.sessionId&&Cookies.set("ev_ss",e.evolok.secureSession.sessionId)&&Cookies.set("SPEV_userStatus","loggedin")):alert("Payment failed. Please try again later.")}),!1},getPaymentForm:function(e){var t={action:this.wpAjaxActions.generateHash,data:this.collectFormData()};jQuery.post(wp_ajaxurl,t,function(e){"success"==e.status&&(jQuery("#iframeholder").html(''),jQuery("#payment_direct_debit").removeClass("loading"))})},updatePaymentOptions:function(e){var t=parseInt(e||0);switch(jQuery('[name="payment-debit"]').parent().removeClass("hidden"),jQuery('[name="payment-continuous"]').parent().removeClass("hidden"),t){case 1:jQuery('[name="payment-continuous"]').parent().addClass("hidden");break;default:jQuery('[name="payment-debit"]').parent().addClass("hidden")}},updatePromoContent:function(e){e&&(jQuery(".subscribe-content").removeClass("hidden"),jQuery(".subscribe-content-title").html(e.post_title),jQuery(".subscribe-content-content").html(e.fields.package_content.description),jQuery(".subscribe-content-image").attr("src",e.fields.package_content.image.url))},updatePromoOption:function(e,t,i,s){var r=this,a={action:this.wpAjaxActions.getPacakgeOptions,country:e,promoCode:t,packageCode:i,journalCode:s};"object"==typeof this.packagesAjax&&(this.packagesAjax.abort(),this.packagesAjax=!1),this.packagesAjax=jQuery.post(wp_ajaxurl,a,function(e){"success"==e.status&&(jQuery(".subscribe-option__button a").removeClass("disabled"),jQuery(".subscription-header-text").hide(),jQuery(".sticky-header__container").hide(),jQuery("body").addClass("subscribe__subscription-flow"),subscription.packageList=e.result.list,subscription.addSubscriptionOptions(),subscription.updatePromoContent(e.content),jQuery(".subscribe-options").removeClass("hidden"),jQuery(".subscribe-form").removeClass("hidden"),jQuery(".subscribe-options").addClass("hidden"),jQuery(".subscribe-options__extra-content").hide(),jQuery(".country-loader").hasClass("hide")||(jQuery(".country-loader").addClass("hide"),jQuery(".subscription-options").removeClass("hide")))}),this.packagesAjax.always(function(){r.packagesAjax=!1})},removeDecimalPlaces:function(e){return parseFloat(e)},preventCountrySelection:function(){var e=this,t=!1;1'),t.length&&i.length){var s=jQuery('');s.on("click",function(t){t.preventDefault(),e.pianoAccountButtonsMobileWrapper.removeClass("member-links-container--mobile--active")}),e.pianoAccountButtonsMobileWrapper.append(s),t.append(e.pianoAccountButtonsMobileWrapper),i.on("click",function(t){t.preventDefault(),e.pianoAccountButtonsMobileWrapper.toggleClass("member-links-container--mobile--active")})}},addPianoAccountButtons:function(){tp.pianoId.isUserValid()?this.addPianoAccountButtonsLoggedIn():this.addPianoAccountButtonsLoggedOut()},addPianoAccountButtonsLoggedIn:function(){var e=this,t=jQuery(".sticky-header__container,.primary-nav");if(t.length){t.children(".member-links-container--desktop").remove();var i=jQuery(''),s=jQuery(''),r=jQuery('Log out');r.on("click",function(t){t.preventDefault(),tp.pianoId.logout(),e.addPianoAccountButtons()}),i.append(s),i.append(r),t.append(i),e.pianoAccountButtonsMobileWrapper.length&&(e.pianoAccountButtonsMobileWrapper.children("a").remove(),e.pianoAccountButtonsMobileWrapper.append(s.clone(!0)),e.pianoAccountButtonsMobileWrapper.append(r.clone(!0)))}},addPianoAccountButtonsLoggedOut:function(){var e=jQuery(".sticky-header__container,.primary-nav");if(e.length){e.children(".member-links-container--desktop").remove();var t=jQuery(''),i=jQuery('Register'),s=jQuery('');i.on("click",function(e){e.preventDefault(),signInPopup.initialised||signInPopup.init(),signInPopup.open(!0,"register","Register an account",function(){subscription.showLoggedOutUser()}),pianoLoginFunctions.loggedIn=function(){signInPopup.close(),subscription.showLoggedInUser()}}),s.on("click",function(e){e.preventDefault(),signInPopup.initialised||signInPopup.init(),signInPopup.open(!0,"login","Log in to your account",function(){subscription.showLoggedOutUser()}),pianoLoginFunctions.loggedIn=function(){signInPopup.close(),subscription.showLoggedInUser()}}),t.append(i),t.append(s),e.append(t),this.pianoAccountButtonsMobileWrapper.length&&(this.pianoAccountButtonsMobileWrapper.children("a").remove(),this.pianoAccountButtonsMobileWrapper.append(i.clone(!0)),this.pianoAccountButtonsMobileWrapper.append(s.clone(!0)))}},pianoInit:function(){var e=this;pianoLoginFunctions.loggedIn=function(){e.showLoggedInUser()},pianoLoginFunctions.loggedOut=function(){e.showLoggedOutUser()},tp.pianoId.isUserValid()?e.showLoggedInUser():e.showLoggedOutUser(),e.iframeCallbackSet||(window.addEventListener("message",function(t){if(void 0!==t.data)try{var i=JSON.parse(t.data);if(void 0!==i.event&&void 0!==i.sender&&"resize"==i.event){var s=jQuery(".piano-user-details__register-form iframe");s.length&&s.attr("id")==i.sender&&e.scrollToEl(s)}}catch(e){}}),e.iframeCallbackSet=!0)},showLoggedInUser:function(){if(tp.pianoId.isUserValid()){var e=tp.pianoId.getUser(),t=jQuery(".piano-user-details");signInPopup.close(),t.empty(),t.html(jQuery("script.tmp-piano-logged-in").html());var i=jQuery(".piano-user-details__logged-in-details-value.name-value",t);void 0!==e.given_name&&void 0!==e.family_name?i.text(e.given_name+" "+e.family_name):i.parent().addClass("piano-user-details__logged-in-details--disabled");var s=jQuery("#delivery_first_name");s.length&&(void 0!==e.given_name?s.val(e.given_name):s.val(""));var r=jQuery("#delivery_last_name");r.length&&(void 0!==e.family_name?r.val(e.family_name):r.val("")),jQuery(".piano-user-details__logged-in-details-value.email-value .value",t).text(e.email),jQuery(".piano-user-details__logout-button").on("click",function(e){e.preventDefault(),tp.pianoId.logout()}),jQuery('[name="email"]').val(e.email),this.addPianoAccountButtonsLoggedIn()}},showLoggedOutUser:function(){if(!tp.pianoId.isUserValid()){var e=jQuery(".piano-user-details");e.empty(),e.append(jQuery("script.tmp-piano-logged-out").html()),signInPopup.reInit(),jQuery(".piano-user-details__already-have-account-button").on("click",function(e){e.preventDefault(),signInPopup.initialised||signInPopup.init(),signInPopup.open(!0,"login","Log in to your account",function(){subscription.showLoggedOutUser()}),pianoLoginFunctions.loggedIn=function(){signInPopup.close(),subscription.showLoggedInUser()}});var t={displayMode:"inline",containerSelector:".piano-user-details__register-form",screen:"register"};"undefined"!=typeof pianoDefaultCountry&&(t.stage=pianoDefaultCountry),tp.pianoId.show(t),pianoLoginFunctions.loggedIn=function(){signInPopup.gaTrack("subscription_registration"),initialNewsletterSignUp(function(){subscription.showLoggedInUser()})},this.addPianoAccountButtonsLoggedOut()}},trackECommerce:function(e){var t={id:this.promoCode+"-"+this.packageCode},i=jQuery(".subscription-options .radio-option input:checked"),s={id:e};i.length?(t.variant=i.data("readable"),t.price=parseFloat(i.data("price").replace(" ",""))):(t.variant="",t.price=0),"undefined"!=typeof dataLayer&&dataLayer.push({event:"purchase",product:t.id,variant:t.variant,price:t.price,ecommerce:{purchase:{actionField:s,products:[t]}}})}},subscribeThankYouSection={data:{},elements:{},init:function(e){e&&(this.data.orderNumber=e),this.getData(),this.getElements(),this.elementsFound()&&(this.populate(),this.addReturnToArticleLink(),this.removeSections(),this.show(),this.scrollToTop())},getData:function(){var e=subscription.collectFormData(),t=jQuery("#delivery_country").children("option:selected").html(),i="",s="";if(i=jQuery(".delivery_county--select").hasClass("hidden")?jQuery(".delivery_county--text").val():jQuery(".delivery_county--select").children("option").filter(":selected").text(),s=jQuery(".billing_county--select").hasClass("hidden")?jQuery(".billing_county--text").val():jQuery(".billing_county--select").children("option").filter(":selected").text(),this.data.packageCode=subscription.packageCode,this.data.packageName=subscription.packageName,this.data.packageDescription=subscription.packageDescription.clone(),this.data.offerDescription=jQuery(".subscription-options .radio-option input:checked").data("readable"),this.data.email=tp.pianoId.getUser().email,this.data.address=this.getAddressData(e,"delivery"), t&&(this.data.address[7]=t),i&&(this.data.address[5]=i),e.useDeliveryAddress){var r=jQuery("#billing_country").children("option:selected").html();this.data.address2=this.getAddressData(e,"billing"),r&&(this.data.address2[7]=r),s&&(this.data.address2[5]=s),this.data.useDeliveryAddress=!0}else this.data.useDeliveryAddress=!1},getAddressData:function(e,t){var i=[];return e[t].title&&(i[0]=e[t].title+" "),e[t].name&&(i[0]=i[0]+e[t].name+" "),e[t].surname&&(i[0]=i[0]+e[t].surname+" "),e[t].company&&(i[1]=e[t].company),e[t].address1&&(i[2]=e[t].address1),e[t].address2&&(i[3]=e[t].address2),e[t].city&&(i[4]=e[t].city),e[t].countyNicename&&(i[5]=e[t].countyNicename),e[t].postcode&&(i[6]=e[t].postcode),e[t].telephone&&(i[8]=e[t].telephone),e[t].mobile&&(i[9]=e[t].mobile),i},getElements:function(){this.elements.wrapper=jQuery(".subscribe-form__status"),this.elements.packageName=jQuery(".subscribe-thank-you-section__package-name"),this.elements.packageBannerImage=jQuery(".subscribe-thank-you-section__package-banner-image"),this.elements.packageDescription=jQuery(".subscribe-thank-you-section__package-description"),this.elements.offerDescription=jQuery(".subscribe-thank-you-section__offer-description"),this.elements.summaryPlan=jQuery(".subscribe-thank-you-section__summary-plan"),this.elements.summaryPaid=jQuery(".subscribe-thank-you-section__summary-paid"),this.elements.summaryAddressWrapper=jQuery(".subscribe-thank-you-section__summary-address-1-wrapper"),this.elements.summaryAddressHeading=jQuery(".subscribe-thank-you-section__summary-address-1-heading"),this.elements.summaryAddress=jQuery(".subscribe-thank-you-section__summary-address-1"),this.elements.summaryEmail=jQuery(".subscribe-thank-you-section__summary-email"),this.elements.summaryOrderNumber=jQuery(".subscribe-thank-you-section__summary-order-number"),this.elements.appSection=jQuery(".subscribe-thank-you-section__app-section")},elementsFound:function(){for(var e in this.elements)if(!this.elements[e].length)return!1;return!0},populate:function(){this.elements.packageName.html(this.data.packageName),this.elements.packageBannerImage.attr("src",this.elements.packageBannerImage.data("base-src")+this.elements.packageBannerImage.data("package-"+this.data.packageCode+"-src")),this.elements.packageBannerImage.attr("alt",this.data.packageName),this.elements.packageDescription.empty(),this.elements.packageDescription.append(this.data.packageDescription),this.elements.offerDescription.html(this.data.offerDescription),this.elements.summaryPlan.html(this.data.packageName),this.elements.summaryPaid.html(this.data.offerDescription),this.elements.summaryAddress.html(""),this.populateAddress(this.elements.summaryAddress,this.data.address),void 0!==this.elements.summaryAddress2Wrapper&&this.elements.summaryAddress2Wrapper.remove(),void 0!==this.data.address2?(this.elements.summaryAddress2Wrapper=jQuery(''),this.elements.summaryAddress2Heading=jQuery(''),this.elements.summaryAddress2=jQuery(''),this.populateAddress(this.elements.summaryAddress2,this.data.address2),this.elements.summaryAddress2Wrapper.append(this.elements.summaryAddress2Heading),this.elements.summaryAddress2Wrapper.append(this.elements.summaryAddress2),this.elements.summaryAddress2Wrapper.insertAfter(this.elements.summaryAddressWrapper),this.elements.summaryAddressHeading.html("Delivery address")):this.elements.summaryAddressHeading.html("Address"),this.data.useDeliveryAddress&&this.elements.appSection.hide(),this.elements.summaryEmail.html(this.data.email),this.elements.summaryOrderNumber.html(this.data.orderNumber)},populateAddress:function(e,t){for(var i=0;i")},addReturnToArticleLink:function(){var e=pageTrack.getRedirectData(),t=jQuery(".subscribe-thank-you-section__last-reading-heading"),i=jQuery(".subscribe-thank-you-section__last-reading-link");if(t.length&&i.length)if(this.data.useDeliveryAddress)t.addClass("subscribe-thank-you-section__sub-heading--disabled"),i.html("Return to the homepage");else if(e.show){var s=jQuery("

"+e.title+"

");t.html("You were last reading"),i.html("Return to the article"),i.attr("href",e.link),s.insertAfter(t)}},removeSections:function(){this.data.useDeliveryAddress&&(jQuery(".subscribe-thank-you-section__app-promo").remove(),jQuery(".subscribe-thank-you-section__archive-promo").remove())},show:function(){this.elements.wrapper.removeClass("hidden"),jQuery("body").removeClass("subscribe__subscription-flow"),jQuery("body").addClass("subscribe__thank-you-section")},scrollToTop:function(){window.scrollTo(0,0)}};!function(e){e(document).on("ready",function(){if(0!==e(".subscribe-page").length){e(".accordion.step-3 .step-3-submit").click(function(t){e(t.currentTarget).addClass("button--loading-spinner")});var t=".sort-code-auto-tab";e(".payment").on("keyup",t,function(i){var s=e(i.currentTarget),r=s.next(t),a=s.prev(t),n=["ArrowUp","ArrowDown","Tab","Shift","Alt","Enter","Super"],o=s.val().replace(/[^0-9]/,"");if(o=o.substr(0,2),s.val(o),"Backspace"===i.key&&0===s.val().length&&a.length>0)return void a.focus();s.val().length>=2&&r.length>0&&n.indexOf(i.key)<0&&r.focus()}),e(".payment").on("keyup",".account-number",function(t){var i=e(t.currentTarget),s=i.val().replace(/[^0-9]/,"");i.val(s)}),e(".step-2").on("keyup","#delivery_tel, #billing_tel, #delivery_mobile, #billing_mobile",function(t){var i=e(t.currentTarget),s=i.val().replace(/[^0-9]/,"");i.val(s)}),e("#delivery_tel, #billing_tel, #delivery_mobile, #billing_mobile").bind("cut copy paste",function(e){e.preventDefault()}),e("#pay_more_direct_debit_accept_terms").on("change",function(){this.checked?e("#payment_direct_debit").css("display","block"):e("#payment_direct_debit").css("display","none")})}})}(jQuery); var mentionMe={isEmpty:function(e){return!e||0===e.length},processOrder:function(e){var n=new Date,r=n.toISOString(),i=jQuery("#mentionMeUrl").val();if(this.isEmpty(i))console.log("No MentionMe URL Provided");else{var o="",t={order_number:e.orderNum,email:e.email,order_total:e.package.offerRate,order_currency:"GBP",situation:"subscriptionthankyou",firstname:e.billing.name,surname:e.billing.surname,phone_number:e.billing.telephone,order_date:r,customer_id:e.uid,address_line1:e.billing.address1,address_line2:e.billing.address2,address_city:e.billing.city,address_county:e.billing.county,address_postcode:e.billing.postcode,address_country:e.billing.country};for(var s in t)o=o+encodeURIComponent(s)+"="+encodeURIComponent(t[s])+"&";jQuery("#mentionMeCode").html('