1async function pms_stripe_maybe_load_gateway($){if(!($('#stripe-pk').length>0)){return!1} 2var stripe_pk=$('#stripe-pk').val() 3if(typeof stripe_pk=='undefined'||stripe_pk=='') 4stripe_pk=$('#stripe-pk').attr('conditional-value') 5if(typeof stripe_pk=='undefined') 6return!1 7if(typeof pms.stripe_connected_account=='undefined'||pms.stripe_connected_account==''){console.log('Before you can accept payments, you need to connect your Stripe Account by going to Dashboard -> Paid Member Subscriptions -> Settings -> Payments.') 8return!1} 9var elements=!1 10var elements_setup_intent=!1 11var update_elements_setup_intent=!1 12var stripe=!1 13var $payment_element='' 14var $elements_instance_slug='' 15var cardIsEmpty=!0 16var recreating_payment_element=!1 17var email_change_debounce_timer=null 18var subscription_plan_selector='input[name=subscription_plans]' 19var paygate_selector='input.pms_pay_gate' 20var stripe_appearance={} 21if(pms.pms_elements_appearance_api) 22stripe_appearance=pms.pms_elements_appearance_api 23var StripeData={stripeAccount:pms.stripe_connected_account} 24if(pms.stripe_locale) 25StripeData.locale=pms.stripe_locale 26stripe=Stripe(stripe_pk,StripeData) 27var stripe_payment_intent_options={mode:'payment',currency:pms.currency,amount:1099,paymentMethodCreation:'manual',appearance:stripe_appearance,} 28var stripe_setup_intent_options={mode:'setup',currency:pms.currency,paymentMethodCreation:'manual',appearance:stripe_appearance,} 29if(pms.off_session_payments&&pms.off_session_payments==1){stripe_payment_intent_options.setupFutureUsage='off_session' 30stripe_setup_intent_options.setupFutureUsage='off_session'} 31if(pms.pms_customer_session){stripe_payment_intent_options.customerSessionClientSecret=pms.pms_customer_session 32stripe_setup_intent_options.customerSessionClientSecret=pms.pms_customer_session} 33elements=stripe.elements(stripe_payment_intent_options) 34elements_setup_intent=stripe.elements(stripe_setup_intent_options) 35stripeConnectInit() 36if(pms.pms_mc_addon_active) 37await pms_stripe_validate_sdk_checkout_currency($($pms_checked_subscription));if(typeof pms_initialize_recaptcha_v3=='function'){window.pmsRecaptchaCallbackExecuted=!0 38jQuery('.pms-form').off('submit',pms_initialize_recaptcha_v3)} 39if(typeof wppbInitializeRecaptchaV3=='function'){window.wppbRecaptchaCallbackExecuted=!0} 40$(document).on('click',subscription_plan_selector,async function(event){if(pms.pms_mc_addon_active){await pms_stripe_validate_sdk_checkout_currency($(this))} 41stripeConnectInit()}) 42function pms_stripe_connect_setup_future_usage_for_input($input){let recurring=$input.data('recurring') 43if(recurring==0||recurring==1){let default_recurring=$('input[type="hidden"][name="pms_default_recurring"]').val() 44if(default_recurring==2) 45return'off_session' 46else if(default_recurring==3) 47return null 48else return $('.pms-subscription-plan-auto-renew input[name="pms_recurring"]').prop('checked')?'off_session':null}else if(recurring==2){return'off_session'}else if(recurring==3){return null} 49return undefined} 50$.pms_stripe_connect_setup_future_usage_for_input=pms_stripe_connect_setup_future_usage_for_input 51$(document).on('pms_recompute_payment_mode',function(){stripeConnectInit()}) 52$(document).on('click','.pms-subscription-plan-auto-renew input[name="pms_recurring"]',function(event){if($(this).prop('checked')){elements.update({setupFutureUsage:'off_session'})}else{elements.update({setupFutureUsage:null})}}) 53$(document).on('change','.pms-form .pms-user-email-field input[name="user_email"], .wppb-register-user input[name="email"], .pms-form .pms-billing-details input[name="pms_billing_email"]',function(event){if(recreating_payment_element){return} 54if($('input[type=hidden][name=pay_gate]').val()!='stripe_connect'&&$('input[type=radio][name=pay_gate]:checked').val()!='stripe_connect') 55return 56if($('input[type=hidden][name=pay_gate]').is(':disabled')||$('input[type=radio][name=pay_gate]:checked').is(':disabled')) 57return 58let element=$(this) 59let email=$(this).val() 60if(email_change_debounce_timer){clearTimeout(email_change_debounce_timer)} 61if(email.length>0){element.attr('disabled',!0) 62pms_stripe_show_spinner() 63email_change_debounce_timer=setTimeout(function(){recreating_payment_element=!0 64if($payment_element&&$payment_element!=''){$payment_element.destroy() 65$payment_element=''} 66setTimeout(function(){stripeConnectInit() 67element.attr('disabled',!1) 68recreating_payment_element=!1},300)},250)}}) 69$(document).on('pms_discount_success',stripeConnectInit) 70$(document).on('pms_discount_error',stripeConnectInit) 71$(document).on('pms_tax_applied',function(event,data){if(data.total>0){elements.update({amount:pms_stripe_convert_amount_to_cents(data.total)})}}) 72$(document).on('pms_tax_removed',function(event){if(typeof $pms_checked_subscription!='undefined'){let price=$pms_checked_subscription.data('price') 73if(price>0){elements.update({amount:pms_stripe_convert_amount_to_cents(price)})}}}) 74if($('input[name="pms_update_payment_method"]').length>0&&$('.pms-paygate-extra-fields-stripe_connect').length>0){$('.pms-paygate-extra-fields-stripe_connect').show()} 75var payment_buttons='input[name=pms_register], ';payment_buttons+='input[name=pms_new_subscription], ';payment_buttons+='input[name=pms_change_subscription], ';payment_buttons+='input[name=pms_upgrade_subscription], ';payment_buttons+='input[name=pms_renew_subscription], ';payment_buttons+='input[name=pms_confirm_retry_payment_subscription], ';payment_buttons+='.wppb-register-user input[name=register]';$(document).on('wppb_invisible_recaptcha_success',stripeConnectPaymentGatewayHandler) 76$(document).on('submit','.pms-form',async function(e){if(e.target&&(jQuery(e.target).attr('id')=='pms_recover_password_form'||jQuery(e.target).attr('id')=='pms_new_password_form'||jQuery(e.target).attr('id')=='pms_login')) 77return 78var target_button=$('input[type="submit"], button[type="submit"]',$(this)).not('#pms-apply-discount').not('input[name="pms_redirect_back"]') 79var form=$(this).closest('form') 80if(typeof form!='undefined'&&form&&form.length>0&&form.hasClass('pms-ec-register-form')){stripeConnectPaymentGatewayHandler(e,target_button)}else if(!e.originalEvent||!e.originalEvent.submitter||$(e.originalEvent.submitter).attr('name')!='pms_redirect_back'){if($(e.originalEvent.submitter).attr('name')=='pms_update_payment_method') 81stripeConnectUpdatePaymentMethod(e,target_button) 82else stripeConnectPaymentGatewayHandler(e,target_button)}}) 83$(document).on('submit','.wppb-register-user',function(e){if(!($('.wppb-recaptcha .wppb-recaptcha-element',$(e.currentTarget)).hasClass('wppb-invisible-rec
83aptcha'))){var target_button=$('input[type="submit"], button[type="submit"]',$(this)).not('#pms-apply-discount').not('input[name="pms_redirect_back"]') 84stripeConnectPaymentGatewayHandler(e,target_button)}}) 85async function stripeConnectPaymentGatewayHandler(e,target_button=!1){if($('input[type=hidden][name=pay_gate]').val()!='stripe_connect'&&$('input[type=radio][name=pay_gate]:checked').val()!='stripe_connect') 86return 87if($('input[type=hidden][name=pay_gate]').is(':disabled')||$('input[type=radio][name=pay_gate]:checked').is(':disabled')) 88return 89e.preventDefault() 90$.pms_form_remove_errors() 91var current_button=$(this) 92if(e.type=='wppb_invisible_recaptcha_success'||e.type=='wppb_v3_recaptcha_success'||e.type=='pms_v3_recaptcha_success'){current_button=target_button==!1?$('input[type="submit"]',$('.wppb-recaptcha-element').closest('form')):$(target_button)}else if(e.type=='submit'){if(target_button!=!1) 93current_button=$(target_button)} 94current_button.attr('disabled',!0) 95return pms_stripe_maybe_validate_recaptcha(current_button,e).then(async function(recaptcha_response){let target_elements=elements 96if($.pms_checkout_is_setup_intents()) 97target_elements=elements_setup_intent 98if($(document).triggerHandler('pms_filter_stripe_connect_setup_future_usage',[null,current_button.closest('form')])==='off_session') 99target_elements.update({setupFutureUsage:'off_session'}) 100const{error:submitError}=await target_elements.submit() 101if(submitError){let message='' 102if(submitError.message&&submitError.message!=''){message=submitError.message}else{message='An error occurred while processing your payment. Please try again.'} 103$.pms_stripe_add_credit_card_error(message) 104$.pms_form_scrollTo('#pms-paygates-wrapper',current_button) 105return!1} 106const{error,confirmationToken}=await stripe.createConfirmationToken({elements:target_elements,});if(error){let message='' 107if(error.message&&error.message!=''){message=error.message}else{message='An error occurred while processing your payment. Please try again.'} 108$.pms_stripe_add_credit_card_error(message) 109$.pms_form_scrollTo('#pms-paygates-wrapper',current_button) 110return!1} 111return pms_stripe_process_checkout(current_button,confirmationToken.id).then(async function(response){if(response.success==!1&&(typeof response.data!='undefined'||typeof response.wppb_errors!='undefined'||typeof response.pms_errors!='undefined')){pms_stripe_handle_validation_errors(response,current_button) 112return!1}else if(response.success==!1&&typeof response.type!='undefined'&&response.type=='use_stripe_sdk'){let intent 113if($.pms_checkout_is_setup_intents()){var{error,setupIntent}=await stripe.handleNextAction({clientSecret:response.client_secret});intent=setupIntent}else{var{error,paymentIntent}=await stripe.handleNextAction({clientSecret:response.client_secret});intent=paymentIntent} 114if(error&&error.payment_intent){intent=error.payment_intent}else if(error&&error.setup_intent){intent=error.setup_intent} 115const server_response=await pms_stripe_process_payment(intent,response,current_button) 116if(typeof server_response.redirect_url!='undefined'&&server_response.redirect_url){window.location.replace(server_response.redirect_url) 117return!0} 118return!1} 119if(typeof response.redirect_url!='undefined'&&response.redirect_url){window.location.replace(response.redirect_url) 120return!0} 121console.log('[PMS Stripe] Something unexpected happened. Response: '+response) 122return!1})})} 123async function pms_stripe_process_checkout(current_button,confirmationToken){var data=await $.pms_form_get_data(current_button,!0) 124if(confirmationToken){data.stripe_confirmation_token=confirmationToken} 125if(data==!1) 126return 127var form_data=new FormData() 128for(var key in data){if(Array.isArray(data[key])){data[key].forEach(function(value){form_data.append(key,value)})}else{form_data.append(key,data[key])}} 129return fetch(pms.ajax_url,{method:'post',credentials:'same-origin',body:form_data}).then(function(res){return res.json()}).catch(error=>{console.error('Something went wrong:',error) 130throw error})} 131async function pms_stripe_process_payment(payment_intent,user_data,target_button){nonce_data={} 132nonce_data.action='pms_update_nonce' 133const nonce=await fetch(pms.ajax_url,{method:'POST',credentials:'same-origin',headers:{'Content-Type':'application/x-www-form-urlencoded',},body:new URLSearchParams({action:'pms_update_nonce'})}).then(function(res){return res.json()}).catch(error=>{console.error('Something went wrong:',error) 134throw error}) 135var form_data=await $.pms_form_get_data(target_button) 136form_data.pmstkn_original=form_data.pmstkn 137form_data.pmstkn='' 138const data={...form_data,action:'pms_process_payment',user_id:user_data.user_id,payment_id:user_data.payment_id,subscription_id:user_data.subscription_id,subscription_plan_id:user_data.subscription_plan_id,payment_intent:payment_intent.id,current_page:window.location.href,pms_nonce:nonce};
138if(data.subscription_plans){const priceKey=`subscription_price_${data.subscription_plans}`;if(form_data[priceKey]){data[priceKey]=form_data[priceKey]}} 139var request_data=new FormData() 140for(var key in data){request_data.append(key,data[key])} 141return await fetch(pms.ajax_url,{method:'POST',credentials:'same-origin',body:request_data}).then(function(res){return res.json()}).catch(error=>{console.error('Something went wrong:',error) 142throw error})} 143function stripeConnectInitUpdatePaymentMethod(){var $client_secret_setup_intent=$('.pms-form input[name="pms_stripe_connect_setup_intent"]').val() 144if($client_secret_setup_intent&&$client_secret_setup_intent.length>0){update_elements_setup_intent=stripe.elements({clientSecret:$client_secret_setup_intent,appearance:stripe_appearance}) 145$update_element=update_elements_setup_intent.create("payment") 146$update_element.mount("#pms-stripe-payment-elements") 147$update_element.addEventListener('change',creditCardErrorsHandler) 148pms_stripe_hide_spinner()}} 149function stripeConnectUpdatePaymentMethod(e,target_button=!1){e.preventDefault() 150$.pms_form_remove_errors() 151var current_button=$(this) 152if(target_button!=!1) 153current_button=$(target_button) 154current_button.attr('disabled',!0) 155if(cardIsEmpty===!0){$.pms_form_add_validation_errors([{target:'credit_card',message:pms.invalid_card_details_error}],current_button) 156return} 157stripe.confirmSetup({elements:update_elements_setup_intent,confirmParams:{return_url:pms.stripe_return_url,payment_method_data:{billing_details:pms_stripe_get_billing_details()}},redirect:'if_required',}).then(function(result){let token 158if(result.error&&result.error.decline_code&&result.error.decline_code=='live_mode_test_card'){let errors=[{target:'credit_card',message:result.error.message}] 159$.pms_form_add_validation_errors(errors,current_button)}else if(result.error&&result.error.type&&result.error.type=='validation_error') 160$.pms_form_reset_submit_button(current_button) 161else{if(result.error&&result.error.setup_intent) 162token={id:result.error.setup_intent.id}else if(result.setupIntent) 163token={id:result.setupIntent.payment_method}else token='' 164stripeTokenHandler(token,$(current_button).closest('form'))}})} 165function stripeConnectInit(){var target_elements_instance=!1 166var target_elements_instance_slug='' 167if($('#pms-update-payment-method-form #pms-stripe-payment-elements').length>0){stripeConnectInitUpdatePaymentMethod();return!1}else if($.pms_checkout_is_setup_intents()){target_elements_instance=elements_setup_intent 168target_elements_instance_slug='setup_intents'}else{target_elements_instance=elements 169target_elements_instance_slug='payment_intents'} 170let selected_subscription=jQuery(subscription_plan_selector+'[type=radio]').length>0?jQuery(subscription_plan_selector+'[type=radio]:checked'):jQuery(subscription_plan_selector+'[type=hidden]') 171let primary_setup_future_usage=pms_stripe_connect_setup_future_usage_for_input(selected_subscription) 172if(typeof primary_setup_future_usage!=='undefined') 173elements.update({setupFutureUsage:primary_setup_future_usage});if(target_elements_instance!=!1){if($payment_element==''){if(typeof selected_subscription!='undefined'&&target_elements_instance_slug=='payment_intents'){let price=(selected_subscription.data('mc_price')!==undefined&&selected_subscription.data('mc_price')!==null)?parseFloat(selected_subscription.data('mc_price')):parseFloat(selected_subscription.data('price'));let sign_up_fee=parseFloat(selected_subscription.data('sign_up_fee'));if(!isNaN(sign_up_fee)&&sign_up_fee>0){price=price+sign_up_fee} 174if(price>0){target_elements_instance.update({amount:pms_stripe_convert_amount_to_cents(price)})}} 175let default_values=pms_stripe_get_default_values() 176$payment_element=target_elements_instance.create("payment",default_values) 177$payment_element.mount("#pms-stripe-payment-elements") 178$payment_element.addEventListener('change',creditCardErrorsHandler)}else{if(typeof selected_subscription!='undefined'&&target_elements_instance_slug=='payment_intents'){let price=(selected_subscription.data('mc_price')!==undefined&&selected_subscription.data('mc_price')!==null)?parseFloat(selected_subscription.data('mc_price')):parseFloat(selected_subscription.data('price'));let sign_up_fee=parseFloat(selected_subscription.data('sign_up_fee'));if(!isNaN(sign_up_fee)&&sign_up_fee>0){price=price+sign_up_fee} 179if(price>0){target_elements_instance.update({amount:pms_stripe_convert_amount_to_cents(price)})}} 180let default_values=pms_stripe_get_default_values() 181if($elements_instance_slug!=target_elements_instance_slug){$payment_element.destroy() 182$payment_element=target_elements_instance.create("payment",default_values) 183$payment_element.mount("#pms-stripe-payment-elements") 184$payment_element.addEventListener('change',creditCardErrorsHandler)}} 185$elements_instance_slug=target_elements_instance_slug 186pms_stripe_hide_spinner() 187if(typeof paymentSidebarPosition=='function'){setTimeout(paymentSidebarPosition,300)}}} 188async function stripeConnectUpdatePaymentIntent(){if(!$client_secret||!($client_secret.length>0)) 189return
190if($.pms_checkout_is_setup_intents()||$('#pms-update-payment-method-form').length>0) 191return 192if(updating_payment_intent) 193return 194updating_payment_intent=!0 195var submitButton=$('.pms-form .pms-form-submit, .pms-form input[type="submit"], .pms-form button[type="submit"], .wppb-register-user input[type="submit"], .wppb-register-user button[type="submit"]').not('#pms-apply-discount, .login-submit #wp-submit') 196var data=$.pms_form_get_data(submitButton) 197data.action='pms_update_payment_intent_connect' 198data.pms_nonce=$('#pms-stripe-ajax-update-payment-intent-nonce').val() 199data.intent_secret=$client_secret 200data.pmstkn_original=data.form_type=='pms'?$('.pms-form #pmstkn').val():'wppb_register' 201data.pmstkn='' 202return await $.post(pms.ajax_url,data,function(response){if(typeof response=='undefined'||response==''){updating_payment_intent=!1 203return!1} 204response=JSON.parse(response) 205if(response.status=='requires_payment_method'){updating_payment_intent=!1 206elements.fetchUpdates().then(function(elements_response){if(typeof paymentSidebarPosition=='function'){setTimeout(paymentSidebarPosition,300)} 207return!0})} 208updating_payment_intent=!1 209return!1})} 210function stripeConnectProcessPayment(result,user_data,form_data,target_button){nonce_data={} 211nonce_data.action='pms_update_nonce' 212$.post(pms.ajax_url,nonce_data,function(response){response=JSON.parse(response) 213data={} 214data.action='pms_process_payment' 215data.user_id=user_data.user_id 216data.payment_id=user_data.payment_id 217data.subscription_id=user_data.subscription_id 218data.subscription_plan_id=user_data.subscription_plan_id 219data.pms_current_subscription=form_data.pms_current_subscription 220data.current_page=window.location.href 221data.pms_nonce=response 222data.form_type=form_data.form_type?form_data.form_type:'' 223data.pmstkn_original=form_data.pmstkn?form_data.pmstkn:'' 224data.setup_intent=form_data.setup_intent?form_data.setup_intent:'' 225data.user_consent_logged_in=form_data.user_consent_logged_in?form_data.user_consent_logged_in:'' 226if(data.setup_intent=='') 227data.payment_intent=$client_secret_id 228else data.payment_intent=$client_secret_setup_id 229data.form_action=form_data.form_action?form_data.form_action:'' 230data.pay_gate=form_data.pay_gate?form_data.pay_gate:'' 231data.subscription_plans=form_data.subscription_plans?form_data.subscription_plans:'' 232if(data.subscription_plans) 233data['subscription_price_'+data.subscription_plans]=form_data['subscription_price_'+data.subscription_plans] 234data.form_name=form_data.form_name?form_data.form_name:'' 235if(form_data.pms_default_recurring) 236data.pms_default_recurring=form_data.pms_default_recurring 237if(form_data.pms_recurring) 238data.pms_recurring=form_data.pms_recurring 239if(form_data.discount_code) 240data.discount_code=form_data.discount_code 241if(form_data.group_name) 242data.group_name=form_data.group_name 243if(form_data.group_description) 244data.group_description=form_data.group_description 245if(form_data.pms_billing_address) 246data.pms_billing_address=form_data.pms_billing_address 247if(form_data.pms_billing_city) 248data.pms_billing_city=form_data.pms_billing_city 249if(form_data.pms_billing_country) 250data.pms_billing_country=form_data.pms_billing_country 251if(form_data.pms_billing_state) 252data.pms_billing_state=form_data.pms_billing_state 253if(form_data.pms_billing_zip) 254data.pms_billing_zip=form_data.pms_billing_zip 255if(form_data.pms_vat_number) 256data.pms_vat_number=form_data.pms_vat_number 257if(form_data.wppb_referer_url) 258data.wppb_referer_url=form_data.wppb_referer_url 259$.post(pms.ajax_url,data,function(response){response=JSON.parse(response) 260if(typeof response.redirect_url!='undefined'&&response.redirect_url) 261window.location.replace(response.redirect_url)})})} 262function stripeTokenHandler(token,$form=null){if($form===null) 263$form=$(payment_buttons).closest('form') 264$form.append($('<input type="hidden" name="stripe_token" />').val(token.id)) 265var button_name=$form.find('input[type="submit"], button[type="submit"]').not('#pms-apply-discount').not('input[name="pms_redirect_back"]').attr('name') 266var button_value=$form.find('input[type="submit"], button[type="submit"]').not('#pms-apply-discount').not('input[name="pms_redirect_back"]').val() 267$form.append($('<input type="hidden" />').val(button_value).attr('name',button_name)) 268$form.get(0).submit()} 269function pms_stripe_get_billing_details(){var data={} 270var email=$('.pms-form input[name="user_email"], .wppb-user-forms input[name="email"]').val() 271if(typeof email=='undefined'||email=='') 272data.email=$('.pms-form input[name="pms_billing_email"]').val() 273if(typeof email!='undefined'&&email!='') 274data.email=email.replace(/\s+/g,'') 275var name='' 276if($('.pms-billing-details input[name="pms_billing_first_name"]').length>0) 277name=name+$('.pms-billing-details input[name="pms_billing_first_name"]').val()+' ' 278else if($('.pms-form input[name="first_name"], .wppb-user-forms input[name="first_name"]').length>0) 279name=name+$('.pms-form input[name="first_name"], .wppb-user-forms input[name="first_name"]').val()+' ' 280if($('.pms-billing-details input[name="pms_billing_last_name"]').length>0) 281name=name+$('.pms-billing-details input[name="pms_billing_last_name"]').val() 282else if($('.pms-form input[name="last_name"], .wppb-user-forms input[name="last_name"]').length>0) 283name=name+$('.pms-form input[name="last_name"], .wppb-user-forms input[name="last_name"]').val() 284if(name.length>1) 285data.name=name 286if($('.pms-billing-details ').length>0){data.address={city:$('.pms-billing-details input[name="pms_billing_city"]').val(),country:$('.pms-billing-details input[name="pms_billing_country"]').val(),line1:$('.pms-billing-details input[name="pms_billing_address"]').val(),postal_code:$('.pms-billing-details input[name="pms_billing_zip"]').val(),state:$('.pms-billing-details input[name="pms_billing_state"]').val()}} 287return data}
288function creditCardErrorsHandler(event){if(event.complete==!0) 289cardIsEmpty=!1 290else cardIsEmpty=!0 291if(typeof paymentSidebarPosition=='function'){setTimeout(paymentSidebarPosition,300)}} 292function pms_stripe_handle_validation_errors(response,current_button){var form_type=$('.wppb-register-user .wppb-subscription-plans').length>0?'wppb':$('.pms-ec-register-form').length>0?'pms_email_confirmation':'pms' 293if(response.data&&(form_type=='pms'||form_type=='pms_email_confirmation')){$.pms_form_add_validation_errors(response.data,current_button)}else{if(response.pms_errors&&response.pms_errors.length>0) 294$.pms_form_add_validation_errors(response.pms_errors,current_button) 295if(typeof response.wppb_errors=='object') 296$.pms_form_add_wppb_validation_errors(response.wppb_errors,current_button)} 297jQuery(document).trigger('pms_checkout_validation_error',response,current_button)} 298async function pms_stripe_maybe_validate_recaptcha(current_button,event=null){if(typeof pms_initialize_recaptcha_v3=='function'){let form=current_button.closest('form') 299var recaptcha_field=jQuery('.pms-recaptcha',form) 300if(recaptcha_field.length>0){return await pms_initialize_recaptcha_v3(event,form)}} 301let wppb_form=current_button.closest('.wppb-register-user') 302if(wppb_form.length>0&&wppb_form[0].length>0&&typeof wppbInitializeRecaptchaV3=='function'){let wppb_recaptcha_field=jQuery('.wppb-recaptcha .wppb-recaptcha-element',wppb_form) 303if(wppb_recaptcha_field.length>0){return await wppbInitializeRecaptchaV3(event,wppb_form)}} 304return!0} 305function pms_stripe_convert_amount_to_cents(amount){let currency=pms.currency 306const zero_decimal_currencies=['BIF','CLP','DJF','GNF','JPY','KMF','KRW','MGA','PYG','RWF','UGX','VND','VUV','XAF','XOF','XPF'];if(!zero_decimal_currencies.includes(currency.toUpperCase())){amount=amount*100} 307return Math.round(amount)} 308async function pms_stripe_validate_sdk_checkout_currency(subscriptionPlan){pms_stripe_show_spinner() 309return $.ajax({url:pms.ajax_url,type:'POST',data:{action:'pms_validate_sdk_currency',pms_nonce:pms.pms_validate_currency_nonce,subscription_plan_id:subscriptionPlan.val(),pms_mc_currency:subscriptionPlan.data('mc_currency'),subscription_id:subscriptionPlan.closest('form').find('input[name="pms_current_subscription"]').val(),pay_gate:'stripe_connect'},dataType:'json',}).done(function(response){if(response&&response.success&&response.currency) 310elements.update({currency:response.currency.toLowerCase()}) 311pms_stripe_hide_spinner() 312return}).fail(function(){pms_stripe_hide_spinner()})} 313function pms_stripe_hide_spinner(){jQuery('#pms-stripe-payment-elements').show() 314jQuery('#pms-stripe-connect .pms-spinner__holder').hide()} 315function pms_stripe_show_spinner(){jQuery('#pms-stripe-payment-elements').hide() 316jQuery('#pms-stripe-connect .pms-spinner__holder').show()} 317function pms_stripe_get_default_values(){if(jQuery('body').hasClass('logged-in')&&pms.pms_customer_email){var user_email=pms.pms_customer_email}else{var user_email=$('.pms-form input[name="user_email"], .wppb-register-user input[name="email"]').val()} 318let name='' 319if(jQuery('body').hasClass('logged-in')&&pms.pms_customer_name){name=pms.pms_customer_name}else{if($('.pms-billing-details input[name="pms_billing_first_name"]').length>0) 320name=name+$('.pms-billing-details input[name="pms_billing_first_name"]').val()+' ' 321else if($('.pms-form input[name="first_name"], .wppb-user-forms input[name="first_name"]').length>0) 322name=name+$('.pms-form input[name="first_name"], .wppb-user-forms input[name="first_name"]').val()+' ' 323if($('.pms-billing-details input[name="pms_billing_last_name"]').length>0) 324name=name+$('.pms-billing-details input[name="pms_billing_last_name"]').val() 325else if($('.pms-form input[name="last_name"], .wppb-user-forms input[name="last_name"]').length>0) 326name=name+$('.pms-form input[name="last_name"], .wppb-user-forms input[name="last_name"]').val()} 327if(typeof user_email!='undefined'&&user_email.length>0){var default_values={defaultValues:{billingDetails:{email:user_email,name:name.length>0?name:null}}}}else{var default_values={}} 328return default_values}} 329jQuery(function(){try{pms_stripe_maybe_load_gateway(jQuery)}catch(err){console.error('[PMS Stripe] Error during init:',err)}});jQuery(document).on('elementor/popup/show',function(){if(jQuery('.pms-form #pms-stripe-connect',jQuery('.elementor-popup-modal')).length>0){pms_stripe_maybe_load_gateway(jQuery) 330document.addEventListener('click',function(ev){const btn=ev.target.closest('input[type="submit"], button[type="submit"]');if(!btn)return;const form=btn.form||btn.closest('form');if(!form)return;if(!form.classList.contains('pms-form'))return;ev.preventDefault();ev.stopImmediatePropagation();
330const submitEvent=new Event('submit',{bubbles:!0,cancelable:!0});form.dispatchEvent(submitEvent)},!0)}}) 331;
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.