PageSourceSearch

https://www.witnessesaudio.com/wp-content/cache/min/1/wp-content/p…/assets/js/wpec-paypal.js?ver=1790098428

js witnessesaudio.com collected 2026-10-03 22:50:07 UTC 5,505 bytes, 16 lines download raw bytes

1class WPECPayPalHandler{constructor(btnData,wpecHandler){this.btnData=btnData;this.wpecHandler=wpecHandler;if(this.btnData.btnStyle.layout==='horizontal'){this.btnData.btnStyle.tagline=!1}
2this.clientVars={};this.clientVars[this.btnData.env]=this.btnData.client_id;this.buttonArgs={env:this.btnData.env,client:this.clientVars,style:this.btnData.btnStyle,commit:!0,onInit:this.onInitCallback,onClick:this.onClickCallback,createOrder:this.createOrderCallback,onApprove:this.onApproveCallback,onError:this.onErrorCallback,};jQuery(document).trigger('wpec_before_render_button',[new Proxy(this,{get(target,prop,receiver){if(prop in target){return Reflect.get(target,prop,receiver)}
3if(prop in target.wpecHandler){const value=target.wpecHandler[prop];return typeof value==="function"?value.bind(target.wpecHandler):value}
4return undefined},})]);document.dispatchEvent(new CustomEvent('wpec_before_render_paypal_button',{detail:{handler:this,}}));try{paypal.Buttons(this.buttonArgs).render('#'+this.btnData.id)}catch(error){console.log(error)}}
5onInitCallback=(data,actions)=>{this.wpecHandler.actions=actions;document.addEventListener('wpec_validate_order',(e)=>{if(e.detail.isValid){this.wpecHandler.actions?.enable()}else{this.wpecHandler.actions?.disable()}})
6this.wpecHandler.validateOrder()}
7onClickCallback=()=>{this.wpecHandler.checkAndShowInputErrors()}
8createOrderCallback=async(data,actions)=>{this.wpecHandler.calcTotal();let itemTotalValueRounded=(this.wpecHandler.data.price*this.wpecHandler.data.quantity).toFixed(2);let itemTotalValueRoundedAsNumber=parseFloat(itemTotalValueRounded);let shipping_pref='NO_SHIPPING';if(this.wpecHandler.data.shipping!==""||this.wpecHandler.data.shipping_enable===!0){console.log("The physical product checkbox is enabled or there is shipping value has been configured. Setting the shipping preference to collect shipping.");shipping_pref='GET_FROM_FILE'}
9const order_data={intent:'CAPTURE',payment_source:{paypal:{experience_context:{payment_method_preference:'IMMEDIATE_PAYMENT_REQUIRED',shipping_preference:shipping_pref,user_action:'PAY_NOW',}}},purchase_units:[{amount:{value:this.wpecHandler.data.total,currency_code:this.wpecHandler.data.currency,breakdown:{item_total:{currency_code:this.wpecHandler.data.currency,value:itemTotalValueRoundedAsNumber}}},items:[{name:this.wpecHandler.data.name,quantity:this.wpecHandler.data.quantity,unit_amount:{value:this.wpecHandler.data.price,currency_code:this.wpecHandler.data.currency}}]}]};if(this.wpecHandler.data.tax){order_data.purchase_units[0].amount.breakdown.tax_total={currency_code:this.wpecHandler.data.currency,value:this.wpecHandler.PHP_round(this.wpecHandler.data.tax_amount*this.wpecHandler.data.quantity,this.wpecHandler.data.dec_num)};order_data.purchase_units[0].items[0].tax={currency_code:this.wpecHandler.data.currency,value:this.wpecHandler.data.tax_amount}}
10if(this.wpecHandler.data.shipping){order_data.purchase_units[0].amount.breakdown.shipping={currency_code:this.wpecHandler.data.currency,value:this.wpecHandler.getTotalShippingCost(),}}
11if(this.wpecHandler.data.discount){order_data.purchase_units[0].amount.breakdown.discount={currency_code:this.wpecHandler.data.currency,value:parseFloat(this.wpecHandler.data.discountAmount)}}
12let nonce=wpec_create_order_vars.nonce;let wpec_data_for_create=this.wpecHandler.data;let post_data='action=wpec_pp_create_order&data='+encodeURIComponent(JSON.stringify(order_data))+'&wpec_data='+encodeURIComponent(JSON.stringify(wpec_data_for_create))+'&_wpnonce='+nonce;try{const response=await fetch(ppecFrontVars.ajaxUrl,{method:"post",headers:{'Content-Type':'application/x-www-form-urlencoded'},body:post_data});const response_data=await response.json();if(response_data.order_id){console.log('Create-order API call to PayPal completed successfully.');return response_data.order_id}else{const error_message=response_data.err_msg
13console.error('Error occurred during create-order call to PayPal. ',error_message);throw new Error(error_message)}}catch(error){console.error(error.message);alert('Could not initiate PayPal Checkout...\n\n'+error.message)}}
14onApproveCallback=async(data,actions)=>{document.querySelector('div.wp-ppec-overlay[data-ppec-button-id="'+this.wpecHandler.data.id+'"]').style.display='flex';console.log('Setting up the AJAX request for capture-order call.');let pp_bn_data={};pp_bn_data.order_id=data.orderID;let wpec_data=this.wpecHandler.data;let nonce=wpec_on_approve_vars.nonce;let post_data='action=wpec_pp_capture_order&data='+encodeURIComponent(JSON.stringify(pp_bn_data))+'&wpec_data='+encodeURIComponent(JSON.stringify(wpec_data))+'&_wpnonce='+nonce;
14try{const response=await fetch(ppecFrontVars.ajaxUrl,{method:"post",headers:{'Content-Type':'application/x-www-form-urlencoded'},body:post_data});const response_data=await response.json();if(response_data.hasOwnProperty('success')&&!response_data.success){alert(response_data.err_msg);return}
15console.log('Capture-order API call to PayPal completed successfully.');this.wpecHandler.completePayment(response_data)}catch(error){console.error(error);alert('PayPal returned an error! Transaction could not be processed. Enable the debug logging feature to get more details...\n\n'+JSON.stringify(error))}}
16onErrorCallback=(err)=>{document.getElementById("place-order-"+this.wpecHandler.data.id).querySelector("button>svg").style.display='none';document.getElementById("place-order-"+this.wpecHandler.data.id).querySelector("button").removeAttribute("disabled");alert(err)}}

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.