1jQuery(document).ready(function($) { 2 3 var weFormsPayment = { 4 init: function(){ 5 6 $('body').on('wpuf:postform:success', this.submitPayment); 7 }, 8 9 data: {}, 10 previous_message: '', 11 stripe_token: '', 12 13 submitPayment: function( e, data ) { 14 15 weFormsPayment.data = data; 16 17 switch( data.payment_method ){ 18 19 case 'paypal' : 20 weFormsPayment.submitPaypal(data); 21 22 break; 23 24 case 'stripe' : 25 weFormsPayment.submitStripe(data); 26 break; 27 } 28 }, 29 30 stripeTokenUpdate: function(token) { 31 32 weFormsPayment.stripe_token = token.id; 33 34 var self = this; 35 36 $('.weforms-payment-message') 37 .html('<div><p class="wefp-message">' + weFormsPaymentText.loading + '</p> <div class="weforms-payment-loading"></div></div> '); 38 39 var post = { 40 action: 'weforms-stripe-payment', 41 token: token.id, 42 entry_id: weFormsPayment.data.entry_id, 43 form_id: weFormsPayment.data.form_id 44 }; 45 46 47 $.post(wpuf_frontend.ajaxurl, post, function(response){ 48 49 if (response.success == '1') { 50 51 weFormsPayment.payment_success(response.data); 52 53 if ( weFormsPayment.data.stripe_return ) { 54 window.location = weFormsPayment.data.stripe_return; 55 } else { 56 alert(response.data); 57 } 58 59 }else{ 60 weFormsPayment.payment_error(); 61 } 62 63 }).error(function(response){ 64 weFormsPayment.payment_error(); 65 alert(response); 66 }).always(function() { 67 $('.weforms-payment-message').remove(); 68 }); 69 70 }, 71 72 submitPaypal: function(data) { 73 74 75 setTimeout(function(){ 76 77 weFormsPayment.previous_message = $('.wpuf-success').text(); 78 79 var msg = `<div class="weforms-payment-message "> 80 <p class="wefp-message">`+ weFormsPayment.previous_message +`</p> 81 <div><div class="weforms-payment-loading"></div></div> 82 <p class="wefp-redirect-message">`+ weFormsPayment.data.paypal_message +`</p> 83 </div>`; 84 85 $('.wpuf-success').after(msg).text(); 86 $('.wpuf-success').remove(); 87 88 },100); 89 90 91 var post_data = { 92 business: data.business, 93 cmd: data.paypal_type, 94 upload: 1, 95 currency_code: data.currency_code, 96 return: data.paypal_return, 97 cancel_return: data.cancel_return, 98 notify_url: data.notify_url, 99 } 100 101 post_data = $.extend(false, post_data, data.products); 102 103 weFormsPayment.postToGateway('https://www.'+data.sandbox+'paypal.com/cgi-bin/webscr', post_data, 'get'); 104 }, 105 106 submitStripe: function(data){ 107 108 setTimeout(function(){ 109 $('.wpuf-success').after(msg); 110 111 weFormsPayment.previous_message = $('.wpuf-success').text(); 112 113 var msg = `<div class="weforms-payment-message"> 114 <p class="wefp-message">`+ weFormsPayment.previous_message +`</p> 115 <div><div class="weforms-payment-loading"></div></div> 116 <p class="wefp-redirect-message">`+ weFormsPayment.data.stripe_message +`</p> 117 </div>`; 118 119 $('.wpuf-success').after(msg).text(); 120 $('.wpuf-success').remove(); 121 122 },100); 123 124 var stripeConfig = { 125 locale: 'auto', 126 token: this.stripeTokenUpdate 127 }; 128 129 stripeConfig = $.extend(false, stripeConfig, data.config ); 130 131 var stripe = StripeCheckout.configure(stripeConfig); 132 133 stripe.open({ 134 closed : function(){ 135 if ( ! weFormsPayment.stripe_token ) { 136 weFormsPayment.payment_error(); 137 } 138 }, 139 opened : function(){ 140
141 $('.weforms-payment-message').html(' '); 142 } 143 }); 144 }, 145 146 147 postToGateway: function(path, params, method) { 148 method = method || "post"; 149 150 var form = document.createElement("form"); 151 form.setAttribute("method", method); 152 form.setAttribute("action", path); 153 154 for(var key in params) { 155 if(params.hasOwnProperty(key)) { 156 var hiddenField = document.createElement("input"); 157 hiddenField.setAttribute("type", "hidden"); 158 hiddenField.setAttribute("name", key); 159 hiddenField.setAttribute("value", params[key]); 160 161 form.appendChild(hiddenField); 162 } 163 } 164 165 document.body.appendChild(form); 166 167 form.submit(); 168 }, 169 170 payment_error: function(){ 171 $('.weforms-payment-message') 172 .after('<div class="wpuf-error">' + weFormsPaymentText.error + '</div>'); 173 $('.weforms-payment-message').remove(); 174 }, 175 176 payment_success: function( data ){ 177 $('.weforms-payment-message') 178 .after('<div class="wpuf-success">' + data + '</div>'); 179 $('.weforms-payment-message').remove(); 180 }, 181 } 182 183 184 weFormsPayment.init(); 185});
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.