@@ -1,5 +1,5 @@ discard block |
||
1 | 1 | <?php |
2 | -if ( ! defined( 'ABSPATH' ) ) { |
|
2 | +if ( ! defined('ABSPATH')) { |
|
3 | 3 | exit; |
4 | 4 | } |
5 | 5 | |
@@ -15,21 +15,21 @@ discard block |
||
15 | 15 | public function __construct() { |
16 | 16 | parent::__construct(); |
17 | 17 | |
18 | - if ( class_exists( 'WC_Subscriptions_Order' ) ) { |
|
19 | - add_action( 'woocommerce_scheduled_subscription_payment_' . $this->id, array( $this, 'scheduled_subscription_payment' ), 10, 2 ); |
|
20 | - add_action( 'wcs_resubscribe_order_created', array( $this, 'delete_resubscribe_meta' ), 10 ); |
|
21 | - add_action( 'wcs_renewal_order_created', array( $this, 'delete_renewal_meta' ), 10 ); |
|
22 | - add_action( 'woocommerce_subscription_failing_payment_method_updated_stripe', array( $this, 'update_failing_payment_method' ), 10, 2 ); |
|
23 | - add_action( 'wc_stripe_cards_payment_fields', array( $this, 'display_update_subs_payment_checkout' ) ); |
|
24 | - add_action( 'wc_stripe_add_payment_method_' . $this->id . '_success', array( $this, 'handle_add_payment_method_success' ), 10, 2 ); |
|
18 | + if (class_exists('WC_Subscriptions_Order')) { |
|
19 | + add_action('woocommerce_scheduled_subscription_payment_' . $this->id, array($this, 'scheduled_subscription_payment'), 10, 2); |
|
20 | + add_action('wcs_resubscribe_order_created', array($this, 'delete_resubscribe_meta'), 10); |
|
21 | + add_action('wcs_renewal_order_created', array($this, 'delete_renewal_meta'), 10); |
|
22 | + add_action('woocommerce_subscription_failing_payment_method_updated_stripe', array($this, 'update_failing_payment_method'), 10, 2); |
|
23 | + add_action('wc_stripe_cards_payment_fields', array($this, 'display_update_subs_payment_checkout')); |
|
24 | + add_action('wc_stripe_add_payment_method_' . $this->id . '_success', array($this, 'handle_add_payment_method_success'), 10, 2); |
|
25 | 25 | |
26 | 26 | // display the credit card used for a subscription in the "My Subscriptions" table |
27 | - add_filter( 'woocommerce_my_subscriptions_payment_method', array( $this, 'maybe_render_subscription_payment_method' ), 10, 2 ); |
|
27 | + add_filter('woocommerce_my_subscriptions_payment_method', array($this, 'maybe_render_subscription_payment_method'), 10, 2); |
|
28 | 28 | |
29 | 29 | // allow store managers to manually set Stripe as the payment method on a subscription |
30 | - add_filter( 'woocommerce_subscription_payment_meta', array( $this, 'add_subscription_payment_meta' ), 10, 2 ); |
|
31 | - add_filter( 'woocommerce_subscription_validate_payment_meta', array( $this, 'validate_subscription_payment_meta' ), 10, 2 ); |
|
32 | - add_filter( 'wc_stripe_display_save_payment_method_checkbox', array( $this, 'maybe_hide_save_checkbox' ) ); |
|
30 | + add_filter('woocommerce_subscription_payment_meta', array($this, 'add_subscription_payment_meta'), 10, 2); |
|
31 | + add_filter('woocommerce_subscription_validate_payment_meta', array($this, 'validate_subscription_payment_meta'), 10, 2); |
|
32 | + add_filter('wc_stripe_display_save_payment_method_checkbox', array($this, 'maybe_hide_save_checkbox')); |
|
33 | 33 | } |
34 | 34 | } |
35 | 35 | |
@@ -49,8 +49,8 @@ discard block |
||
49 | 49 | * @since 4.0.0 |
50 | 50 | * @version 4.0.0 |
51 | 51 | */ |
52 | - public function maybe_hide_save_checkbox( $display_tokenization ) { |
|
53 | - if ( WC_Subscriptions_Cart::cart_contains_subscription() ) { |
|
52 | + public function maybe_hide_save_checkbox($display_tokenization) { |
|
53 | + if (WC_Subscriptions_Cart::cart_contains_subscription()) { |
|
54 | 54 | return false; |
55 | 55 | } |
56 | 56 | |
@@ -62,8 +62,8 @@ discard block |
||
62 | 62 | * @param int $order_id |
63 | 63 | * @return boolean |
64 | 64 | */ |
65 | - public function has_subscription( $order_id ) { |
|
66 | - return ( function_exists( 'wcs_order_contains_subscription' ) && ( wcs_order_contains_subscription( $order_id ) || wcs_is_subscription( $order_id ) || wcs_order_contains_renewal( $order_id ) ) ); |
|
65 | + public function has_subscription($order_id) { |
|
66 | + return (function_exists('wcs_order_contains_subscription') && (wcs_order_contains_subscription($order_id) || wcs_is_subscription($order_id) || wcs_order_contains_renewal($order_id))); |
|
67 | 67 | } |
68 | 68 | |
69 | 69 | /** |
@@ -73,7 +73,7 @@ discard block |
||
73 | 73 | * @return bool |
74 | 74 | */ |
75 | 75 | public function is_subs_change_payment() { |
76 | - return ( isset( $_GET['pay_for_order'] ) && isset( $_GET['change_payment_method'] ) ); |
|
76 | + return (isset($_GET['pay_for_order']) && isset($_GET['change_payment_method'])); |
|
77 | 77 | } |
78 | 78 | |
79 | 79 | /** |
@@ -84,8 +84,8 @@ discard block |
||
84 | 84 | */ |
85 | 85 | public function display_update_subs_payment_checkout() { |
86 | 86 | if ( |
87 | - apply_filters( 'wc_stripe_display_update_subs_payment_method_card_checkbox', true ) && |
|
88 | - wcs_user_has_subscription( get_current_user_id(), '', 'active' ) && |
|
87 | + apply_filters('wc_stripe_display_update_subs_payment_method_card_checkbox', true) && |
|
88 | + wcs_user_has_subscription(get_current_user_id(), '', 'active') && |
|
89 | 89 | is_add_payment_method_page() |
90 | 90 | ) { |
91 | 91 | printf( |
@@ -93,8 +93,8 @@ discard block |
||
93 | 93 | <input id="wc-%1$s-update-subs-payment-method-card" name="wc-%1$s-update-subs-payment-method-card" type="checkbox" value="true" style="width:auto;" /> |
94 | 94 | <label for="wc-%1$s-update-subs-payment-method-card" style="display:inline;">%2$s</label> |
95 | 95 | </p>', |
96 | - esc_attr( $this->id ), |
|
97 | - esc_html( apply_filters( 'wc_stripe_save_to_subs_text', __( 'Update the Payment Method used for all of my active subscriptions (optional).', 'woocommerce-gateway-stripe' ) ) ) |
|
96 | + esc_attr($this->id), |
|
97 | + esc_html(apply_filters('wc_stripe_save_to_subs_text', __('Update the Payment Method used for all of my active subscriptions (optional).', 'woocommerce-gateway-stripe'))) |
|
98 | 98 | ); |
99 | 99 | } |
100 | 100 | } |
@@ -106,16 +106,16 @@ discard block |
||
106 | 106 | * @param string $source_id |
107 | 107 | * @param object $source_object |
108 | 108 | */ |
109 | - public function handle_add_payment_method_success( $source_id, $source_object ) { |
|
110 | - if ( isset( $_POST['wc-' . $this->id . '-update-subs-payment-method-card'] ) ) { |
|
109 | + public function handle_add_payment_method_success($source_id, $source_object) { |
|
110 | + if (isset($_POST['wc-' . $this->id . '-update-subs-payment-method-card'])) { |
|
111 | 111 | $all_subs = wcs_get_users_subscriptions(); |
112 | 112 | |
113 | - if ( ! empty( $all_subs ) ) { |
|
114 | - foreach ( $all_subs as $sub ) { |
|
115 | - if ( 'active' === $sub->get_status() ) { |
|
116 | - update_post_meta( $sub->get_id(), '_stripe_source_id', $source_id ); |
|
117 | - update_post_meta( $sub->get_id(), '_payment_method', $this->id ); |
|
118 | - update_post_meta( $sub->get_id(), '_payment_method_title', $this->method_title ); |
|
113 | + if ( ! empty($all_subs)) { |
|
114 | + foreach ($all_subs as $sub) { |
|
115 | + if ('active' === $sub->get_status()) { |
|
116 | + update_post_meta($sub->get_id(), '_stripe_source_id', $source_id); |
|
117 | + update_post_meta($sub->get_id(), '_payment_method', $this->id); |
|
118 | + update_post_meta($sub->get_id(), '_payment_method_title', $this->method_title); |
|
119 | 119 | } |
120 | 120 | } |
121 | 121 | } |
@@ -129,34 +129,34 @@ discard block |
||
129 | 129 | * @since 4.1.11 Remove 3DS check as it is not needed. |
130 | 130 | * @param int $order_id |
131 | 131 | */ |
132 | - public function change_subs_payment_method( $order_id ) { |
|
132 | + public function change_subs_payment_method($order_id) { |
|
133 | 133 | try { |
134 | - $subscription = wc_get_order( $order_id ); |
|
135 | - $prepared_source = $this->prepare_source( get_current_user_id(), true ); |
|
134 | + $subscription = wc_get_order($order_id); |
|
135 | + $prepared_source = $this->prepare_source(get_current_user_id(), true); |
|
136 | 136 | $source_object = $prepared_source->source_object; |
137 | 137 | |
138 | 138 | // Check if we don't allow prepaid credit cards. |
139 | - if ( ! apply_filters( 'wc_stripe_allow_prepaid_card', true ) && $this->is_prepaid_card( $source_object ) ) { |
|
140 | - $localized_message = __( 'Sorry, we\'re not accepting prepaid cards at this time. Your credit card has not been charge. Please try with alternative payment method.', 'woocommerce-gateway-stripe' ); |
|
141 | - throw new WC_Stripe_Exception( print_r( $source_object, true ), $localized_message ); |
|
139 | + if ( ! apply_filters('wc_stripe_allow_prepaid_card', true) && $this->is_prepaid_card($source_object)) { |
|
140 | + $localized_message = __('Sorry, we\'re not accepting prepaid cards at this time. Your credit card has not been charge. Please try with alternative payment method.', 'woocommerce-gateway-stripe'); |
|
141 | + throw new WC_Stripe_Exception(print_r($source_object, true), $localized_message); |
|
142 | 142 | } |
143 | 143 | |
144 | - if ( empty( $prepared_source->source ) ) { |
|
145 | - $localized_message = __( 'Payment processing failed. Please retry.', 'woocommerce-gateway-stripe' ); |
|
146 | - throw new WC_Stripe_Exception( print_r( $prepared_source, true ), $localized_message ); |
|
144 | + if (empty($prepared_source->source)) { |
|
145 | + $localized_message = __('Payment processing failed. Please retry.', 'woocommerce-gateway-stripe'); |
|
146 | + throw new WC_Stripe_Exception(print_r($prepared_source, true), $localized_message); |
|
147 | 147 | } |
148 | 148 | |
149 | - $this->save_source_to_order( $subscription, $prepared_source ); |
|
149 | + $this->save_source_to_order($subscription, $prepared_source); |
|
150 | 150 | |
151 | - do_action( 'wc_stripe_change_subs_payment_method_success', $prepared_source->source, $prepared_source ); |
|
151 | + do_action('wc_stripe_change_subs_payment_method_success', $prepared_source->source, $prepared_source); |
|
152 | 152 | |
153 | 153 | return array( |
154 | 154 | 'result' => 'success', |
155 | - 'redirect' => $this->get_return_url( $subscription ), |
|
155 | + 'redirect' => $this->get_return_url($subscription), |
|
156 | 156 | ); |
157 | - } catch ( WC_Stripe_Exception $e ) { |
|
158 | - wc_add_notice( $e->getLocalizedMessage(), 'error' ); |
|
159 | - WC_Stripe_Logger::log( 'Error: ' . $e->getMessage() ); |
|
157 | + } catch (WC_Stripe_Exception $e) { |
|
158 | + wc_add_notice($e->getLocalizedMessage(), 'error'); |
|
159 | + WC_Stripe_Logger::log('Error: ' . $e->getMessage()); |
|
160 | 160 | } |
161 | 161 | } |
162 | 162 | |
@@ -165,16 +165,16 @@ discard block |
||
165 | 165 | * @param int $order_id |
166 | 166 | * @return array |
167 | 167 | */ |
168 | - public function process_payment( $order_id, $retry = true, $force_save_source = false, $previous_error = false ) { |
|
169 | - if ( $this->has_subscription( $order_id ) ) { |
|
170 | - if ( $this->is_subs_change_payment() ) { |
|
171 | - return $this->change_subs_payment_method( $order_id ); |
|
168 | + public function process_payment($order_id, $retry = true, $force_save_source = false, $previous_error = false) { |
|
169 | + if ($this->has_subscription($order_id)) { |
|
170 | + if ($this->is_subs_change_payment()) { |
|
171 | + return $this->change_subs_payment_method($order_id); |
|
172 | 172 | } |
173 | 173 | |
174 | 174 | // Regular payment with force customer enabled |
175 | - return parent::process_payment( $order_id, $retry, true, $previous_error ); |
|
175 | + return parent::process_payment($order_id, $retry, true, $previous_error); |
|
176 | 176 | } else { |
177 | - return parent::process_payment( $order_id, $retry, $force_save_source, $previous_error ); |
|
177 | + return parent::process_payment($order_id, $retry, $force_save_source, $previous_error); |
|
178 | 178 | } |
179 | 179 | } |
180 | 180 | |
@@ -184,8 +184,8 @@ discard block |
||
184 | 184 | * @param $amount_to_charge float The amount to charge. |
185 | 185 | * @param $renewal_order WC_Order A WC_Order object created to record the renewal payment. |
186 | 186 | */ |
187 | - public function scheduled_subscription_payment( $amount_to_charge, $renewal_order ) { |
|
188 | - $this->process_subscription_payment( $amount_to_charge, $renewal_order, true, false ); |
|
187 | + public function scheduled_subscription_payment($amount_to_charge, $renewal_order) { |
|
188 | + $this->process_subscription_payment($amount_to_charge, $renewal_order, true, false); |
|
189 | 189 | } |
190 | 190 | |
191 | 191 | /** |
@@ -199,86 +199,86 @@ discard block |
||
199 | 199 | * @param bool $retry Should we retry the process? |
200 | 200 | * @param object $previous_error |
201 | 201 | */ |
202 | - public function process_subscription_payment( $amount = 0.0, $renewal_order, $retry = true, $previous_error ) { |
|
202 | + public function process_subscription_payment($amount = 0.0, $renewal_order, $retry = true, $previous_error) { |
|
203 | 203 | try { |
204 | - if ( $amount * 100 < WC_Stripe_Helper::get_minimum_amount() ) { |
|
204 | + if ($amount * 100 < WC_Stripe_Helper::get_minimum_amount()) { |
|
205 | 205 | /* translators: minimum amount */ |
206 | - return new WP_Error( 'stripe_error', sprintf( __( 'Sorry, the minimum allowed order total is %1$s to use this payment method.', 'woocommerce-gateway-stripe' ), wc_price( WC_Stripe_Helper::get_minimum_amount() / 100 ) ) ); |
|
206 | + return new WP_Error('stripe_error', sprintf(__('Sorry, the minimum allowed order total is %1$s to use this payment method.', 'woocommerce-gateway-stripe'), wc_price(WC_Stripe_Helper::get_minimum_amount() / 100))); |
|
207 | 207 | } |
208 | 208 | |
209 | - $order_id = WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $renewal_order->id : $renewal_order->get_id(); |
|
209 | + $order_id = WC_Stripe_Helper::is_wc_lt('3.0') ? $renewal_order->id : $renewal_order->get_id(); |
|
210 | 210 | |
211 | 211 | // Get source from order |
212 | - $prepared_source = $this->prepare_order_source( $renewal_order ); |
|
212 | + $prepared_source = $this->prepare_order_source($renewal_order); |
|
213 | 213 | $source_object = $prepared_source->source_object; |
214 | 214 | |
215 | - if ( ! $prepared_source->customer ) { |
|
216 | - return new WP_Error( 'stripe_error', __( 'Customer not found', 'woocommerce-gateway-stripe' ) ); |
|
215 | + if ( ! $prepared_source->customer) { |
|
216 | + return new WP_Error('stripe_error', __('Customer not found', 'woocommerce-gateway-stripe')); |
|
217 | 217 | } |
218 | 218 | |
219 | - WC_Stripe_Logger::log( "Info: Begin processing subscription payment for order {$order_id} for the amount of {$amount}" ); |
|
219 | + WC_Stripe_Logger::log("Info: Begin processing subscription payment for order {$order_id} for the amount of {$amount}"); |
|
220 | 220 | |
221 | 221 | /* If we're doing a retry and source is chargeable, we need to pass |
222 | 222 | * a different idempotency key and retry for success. |
223 | 223 | */ |
224 | - if ( is_object( $source_object ) && empty( $source_object->error ) && $this->need_update_idempotency_key( $source_object, $previous_error ) ) { |
|
225 | - add_filter( 'wc_stripe_idempotency_key', array( $this, 'change_idempotency_key' ), 10, 2 ); |
|
224 | + if (is_object($source_object) && empty($source_object->error) && $this->need_update_idempotency_key($source_object, $previous_error)) { |
|
225 | + add_filter('wc_stripe_idempotency_key', array($this, 'change_idempotency_key'), 10, 2); |
|
226 | 226 | } |
227 | 227 | |
228 | - if ( ( $this->is_no_such_source_error( $previous_error ) || $this->is_no_linked_source_error( $previous_error ) ) && apply_filters( 'wc_stripe_use_default_customer_source', true ) ) { |
|
228 | + if (($this->is_no_such_source_error($previous_error) || $this->is_no_linked_source_error($previous_error)) && apply_filters('wc_stripe_use_default_customer_source', true)) { |
|
229 | 229 | // Passing empty source will charge customer default. |
230 | 230 | $prepared_source->source = ''; |
231 | 231 | } |
232 | 232 | |
233 | - $request = $this->generate_payment_request( $renewal_order, $prepared_source ); |
|
233 | + $request = $this->generate_payment_request($renewal_order, $prepared_source); |
|
234 | 234 | $request['capture'] = 'true'; |
235 | - $request['amount'] = WC_Stripe_Helper::get_stripe_amount( $amount, $request['currency'] ); |
|
236 | - $response = WC_Stripe_API::request( $request ); |
|
235 | + $request['amount'] = WC_Stripe_Helper::get_stripe_amount($amount, $request['currency']); |
|
236 | + $response = WC_Stripe_API::request($request); |
|
237 | 237 | |
238 | - if ( ! empty( $response->error ) ) { |
|
238 | + if ( ! empty($response->error)) { |
|
239 | 239 | // We want to retry. |
240 | - if ( $this->is_retryable_error( $response->error ) ) { |
|
241 | - if ( $retry ) { |
|
240 | + if ($this->is_retryable_error($response->error)) { |
|
241 | + if ($retry) { |
|
242 | 242 | // Don't do anymore retries after this. |
243 | - if ( 5 <= $this->retry_interval ) { |
|
244 | - return $this->process_subscription_payment( $amount, $renewal_order, false, $response->error ); |
|
243 | + if (5 <= $this->retry_interval) { |
|
244 | + return $this->process_subscription_payment($amount, $renewal_order, false, $response->error); |
|
245 | 245 | } |
246 | 246 | |
247 | - sleep( $this->retry_interval ); |
|
247 | + sleep($this->retry_interval); |
|
248 | 248 | |
249 | 249 | $this->retry_interval++; |
250 | 250 | |
251 | - return $this->process_subscription_payment( $amount, $renewal_order, true, $response->error ); |
|
251 | + return $this->process_subscription_payment($amount, $renewal_order, true, $response->error); |
|
252 | 252 | } else { |
253 | - $localized_message = __( 'Sorry, we are unable to process your payment at this time. Please retry later.', 'woocommerce-gateway-stripe' ); |
|
254 | - $renewal_order->add_order_note( $localized_message ); |
|
255 | - throw new WC_Stripe_Exception( print_r( $response, true ), $localized_message ); |
|
253 | + $localized_message = __('Sorry, we are unable to process your payment at this time. Please retry later.', 'woocommerce-gateway-stripe'); |
|
254 | + $renewal_order->add_order_note($localized_message); |
|
255 | + throw new WC_Stripe_Exception(print_r($response, true), $localized_message); |
|
256 | 256 | } |
257 | 257 | } |
258 | 258 | |
259 | 259 | $localized_messages = WC_Stripe_Helper::get_localized_messages(); |
260 | 260 | |
261 | - if ( 'card_error' === $response->error->type ) { |
|
262 | - $localized_message = isset( $localized_messages[ $response->error->code ] ) ? $localized_messages[ $response->error->code ] : $response->error->message; |
|
261 | + if ('card_error' === $response->error->type) { |
|
262 | + $localized_message = isset($localized_messages[$response->error->code]) ? $localized_messages[$response->error->code] : $response->error->message; |
|
263 | 263 | } else { |
264 | - $localized_message = isset( $localized_messages[ $response->error->type ] ) ? $localized_messages[ $response->error->type ] : $response->error->message; |
|
264 | + $localized_message = isset($localized_messages[$response->error->type]) ? $localized_messages[$response->error->type] : $response->error->message; |
|
265 | 265 | } |
266 | 266 | |
267 | - $renewal_order->add_order_note( $localized_message ); |
|
267 | + $renewal_order->add_order_note($localized_message); |
|
268 | 268 | |
269 | - throw new WC_Stripe_Exception( print_r( $response, true ), $localized_message ); |
|
269 | + throw new WC_Stripe_Exception(print_r($response, true), $localized_message); |
|
270 | 270 | } |
271 | 271 | |
272 | - do_action( 'wc_gateway_stripe_process_payment', $response, $renewal_order ); |
|
272 | + do_action('wc_gateway_stripe_process_payment', $response, $renewal_order); |
|
273 | 273 | |
274 | - $this->process_response( $response, $renewal_order ); |
|
275 | - } catch ( WC_Stripe_Exception $e ) { |
|
276 | - WC_Stripe_Logger::log( 'Error: ' . $e->getMessage() ); |
|
274 | + $this->process_response($response, $renewal_order); |
|
275 | + } catch (WC_Stripe_Exception $e) { |
|
276 | + WC_Stripe_Logger::log('Error: ' . $e->getMessage()); |
|
277 | 277 | |
278 | - do_action( 'wc_gateway_stripe_process_payment_error', $e, $renewal_order ); |
|
278 | + do_action('wc_gateway_stripe_process_payment_error', $e, $renewal_order); |
|
279 | 279 | |
280 | 280 | /* translators: error message */ |
281 | - $renewal_order->update_status( 'failed' ); |
|
281 | + $renewal_order->update_status('failed'); |
|
282 | 282 | } |
283 | 283 | } |
284 | 284 | |
@@ -288,24 +288,24 @@ discard block |
||
288 | 288 | * @since 3.1.0 |
289 | 289 | * @version 4.0.0 |
290 | 290 | */ |
291 | - public function save_source_to_order( $order, $source ) { |
|
292 | - parent::save_source_to_order( $order, $source ); |
|
291 | + public function save_source_to_order($order, $source) { |
|
292 | + parent::save_source_to_order($order, $source); |
|
293 | 293 | |
294 | - $order_id = WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $order->id : $order->get_id(); |
|
294 | + $order_id = WC_Stripe_Helper::is_wc_lt('3.0') ? $order->id : $order->get_id(); |
|
295 | 295 | |
296 | 296 | // Also store it on the subscriptions being purchased or paid for in the order |
297 | - if ( function_exists( 'wcs_order_contains_subscription' ) && wcs_order_contains_subscription( $order_id ) ) { |
|
298 | - $subscriptions = wcs_get_subscriptions_for_order( $order_id ); |
|
299 | - } elseif ( function_exists( 'wcs_order_contains_renewal' ) && wcs_order_contains_renewal( $order_id ) ) { |
|
300 | - $subscriptions = wcs_get_subscriptions_for_renewal_order( $order_id ); |
|
297 | + if (function_exists('wcs_order_contains_subscription') && wcs_order_contains_subscription($order_id)) { |
|
298 | + $subscriptions = wcs_get_subscriptions_for_order($order_id); |
|
299 | + } elseif (function_exists('wcs_order_contains_renewal') && wcs_order_contains_renewal($order_id)) { |
|
300 | + $subscriptions = wcs_get_subscriptions_for_renewal_order($order_id); |
|
301 | 301 | } else { |
302 | 302 | $subscriptions = array(); |
303 | 303 | } |
304 | 304 | |
305 | - foreach ( $subscriptions as $subscription ) { |
|
306 | - $subscription_id = WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $subscription->id : $subscription->get_id(); |
|
307 | - update_post_meta( $subscription_id, '_stripe_customer_id', $source->customer ); |
|
308 | - update_post_meta( $subscription_id, '_stripe_source_id', $source->source ); |
|
305 | + foreach ($subscriptions as $subscription) { |
|
306 | + $subscription_id = WC_Stripe_Helper::is_wc_lt('3.0') ? $subscription->id : $subscription->get_id(); |
|
307 | + update_post_meta($subscription_id, '_stripe_customer_id', $source->customer); |
|
308 | + update_post_meta($subscription_id, '_stripe_source_id', $source->source); |
|
309 | 309 | } |
310 | 310 | } |
311 | 311 | |
@@ -313,21 +313,21 @@ discard block |
||
313 | 313 | * Don't transfer Stripe customer/token meta to resubscribe orders. |
314 | 314 | * @param int $resubscribe_order The order created for the customer to resubscribe to the old expired/cancelled subscription |
315 | 315 | */ |
316 | - public function delete_resubscribe_meta( $resubscribe_order ) { |
|
317 | - delete_post_meta( ( WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $resubscribe_order->id : $resubscribe_order->get_id() ), '_stripe_customer_id' ); |
|
318 | - delete_post_meta( ( WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $resubscribe_order->id : $resubscribe_order->get_id() ), '_stripe_source_id' ); |
|
316 | + public function delete_resubscribe_meta($resubscribe_order) { |
|
317 | + delete_post_meta((WC_Stripe_Helper::is_wc_lt('3.0') ? $resubscribe_order->id : $resubscribe_order->get_id()), '_stripe_customer_id'); |
|
318 | + delete_post_meta((WC_Stripe_Helper::is_wc_lt('3.0') ? $resubscribe_order->id : $resubscribe_order->get_id()), '_stripe_source_id'); |
|
319 | 319 | // For BW compat will remove in future |
320 | - delete_post_meta( ( WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $resubscribe_order->id : $resubscribe_order->get_id() ), '_stripe_card_id' ); |
|
321 | - $this->delete_renewal_meta( $resubscribe_order ); |
|
320 | + delete_post_meta((WC_Stripe_Helper::is_wc_lt('3.0') ? $resubscribe_order->id : $resubscribe_order->get_id()), '_stripe_card_id'); |
|
321 | + $this->delete_renewal_meta($resubscribe_order); |
|
322 | 322 | } |
323 | 323 | |
324 | 324 | /** |
325 | 325 | * Don't transfer Stripe fee/ID meta to renewal orders. |
326 | 326 | * @param int $resubscribe_order The order created for the customer to resubscribe to the old expired/cancelled subscription |
327 | 327 | */ |
328 | - public function delete_renewal_meta( $renewal_order ) { |
|
329 | - WC_Stripe_Helper::delete_stripe_fee( $renewal_order ); |
|
330 | - WC_Stripe_Helper::delete_stripe_net( $renewal_order ); |
|
328 | + public function delete_renewal_meta($renewal_order) { |
|
329 | + WC_Stripe_Helper::delete_stripe_fee($renewal_order); |
|
330 | + WC_Stripe_Helper::delete_stripe_net($renewal_order); |
|
331 | 331 | |
332 | 332 | return $renewal_order; |
333 | 333 | } |
@@ -341,14 +341,14 @@ discard block |
||
341 | 341 | * @param WC_Order $renewal_order The order which recorded the successful payment (to make up for the failed automatic payment). |
342 | 342 | * @return void |
343 | 343 | */ |
344 | - public function update_failing_payment_method( $subscription, $renewal_order ) { |
|
345 | - if ( WC_Stripe_Helper::is_wc_lt( '3.0' ) ) { |
|
346 | - update_post_meta( $subscription->id, '_stripe_customer_id', $renewal_order->stripe_customer_id ); |
|
347 | - update_post_meta( $subscription->id, '_stripe_source_id', $renewal_order->stripe_source_id ); |
|
344 | + public function update_failing_payment_method($subscription, $renewal_order) { |
|
345 | + if (WC_Stripe_Helper::is_wc_lt('3.0')) { |
|
346 | + update_post_meta($subscription->id, '_stripe_customer_id', $renewal_order->stripe_customer_id); |
|
347 | + update_post_meta($subscription->id, '_stripe_source_id', $renewal_order->stripe_source_id); |
|
348 | 348 | |
349 | 349 | } else { |
350 | - update_post_meta( $subscription->get_id(), '_stripe_customer_id', $renewal_order->get_meta( '_stripe_customer_id', true ) ); |
|
351 | - update_post_meta( $subscription->get_id(), '_stripe_source_id', $renewal_order->get_meta( '_stripe_source_id', true ) ); |
|
350 | + update_post_meta($subscription->get_id(), '_stripe_customer_id', $renewal_order->get_meta('_stripe_customer_id', true)); |
|
351 | + update_post_meta($subscription->get_id(), '_stripe_source_id', $renewal_order->get_meta('_stripe_source_id', true)); |
|
352 | 352 | } |
353 | 353 | } |
354 | 354 | |
@@ -361,23 +361,23 @@ discard block |
||
361 | 361 | * @param WC_Subscription $subscription An instance of a subscription object |
362 | 362 | * @return array |
363 | 363 | */ |
364 | - public function add_subscription_payment_meta( $payment_meta, $subscription ) { |
|
365 | - $subscription_id = WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $subscription->id : $subscription->get_id(); |
|
366 | - $source_id = get_post_meta( $subscription_id, '_stripe_source_id', true ); |
|
364 | + public function add_subscription_payment_meta($payment_meta, $subscription) { |
|
365 | + $subscription_id = WC_Stripe_Helper::is_wc_lt('3.0') ? $subscription->id : $subscription->get_id(); |
|
366 | + $source_id = get_post_meta($subscription_id, '_stripe_source_id', true); |
|
367 | 367 | |
368 | 368 | // For BW compat will remove in future. |
369 | - if ( empty( $source_id ) ) { |
|
370 | - $source_id = get_post_meta( $subscription_id, '_stripe_card_id', true ); |
|
369 | + if (empty($source_id)) { |
|
370 | + $source_id = get_post_meta($subscription_id, '_stripe_card_id', true); |
|
371 | 371 | |
372 | 372 | // Take this opportunity to update the key name. |
373 | - update_post_meta( $subscription_id, '_stripe_source_id', $source_id ); |
|
374 | - delete_post_meta( $subscription_id, '_stripe_card_id', $source_id ); |
|
373 | + update_post_meta($subscription_id, '_stripe_source_id', $source_id); |
|
374 | + delete_post_meta($subscription_id, '_stripe_card_id', $source_id); |
|
375 | 375 | } |
376 | 376 | |
377 | - $payment_meta[ $this->id ] = array( |
|
377 | + $payment_meta[$this->id] = array( |
|
378 | 378 | 'post_meta' => array( |
379 | 379 | '_stripe_customer_id' => array( |
380 | - 'value' => get_post_meta( $subscription_id, '_stripe_customer_id', true ), |
|
380 | + 'value' => get_post_meta($subscription_id, '_stripe_customer_id', true), |
|
381 | 381 | 'label' => 'Stripe Customer ID', |
382 | 382 | ), |
383 | 383 | '_stripe_source_id' => array( |
@@ -400,22 +400,22 @@ discard block |
||
400 | 400 | * @param array $payment_meta associative array of meta data required for automatic payments |
401 | 401 | * @return array |
402 | 402 | */ |
403 | - public function validate_subscription_payment_meta( $payment_method_id, $payment_meta ) { |
|
404 | - if ( $this->id === $payment_method_id ) { |
|
403 | + public function validate_subscription_payment_meta($payment_method_id, $payment_meta) { |
|
404 | + if ($this->id === $payment_method_id) { |
|
405 | 405 | |
406 | - if ( ! isset( $payment_meta['post_meta']['_stripe_customer_id']['value'] ) || empty( $payment_meta['post_meta']['_stripe_customer_id']['value'] ) ) { |
|
407 | - throw new Exception( __( 'A "Stripe Customer ID" value is required.', 'woocommerce-gateway-stripe' ) ); |
|
408 | - } elseif ( 0 !== strpos( $payment_meta['post_meta']['_stripe_customer_id']['value'], 'cus_' ) ) { |
|
409 | - throw new Exception( __( 'Invalid customer ID. A valid "Stripe Customer ID" must begin with "cus_".', 'woocommerce-gateway-stripe' ) ); |
|
406 | + if ( ! isset($payment_meta['post_meta']['_stripe_customer_id']['value']) || empty($payment_meta['post_meta']['_stripe_customer_id']['value'])) { |
|
407 | + throw new Exception(__('A "Stripe Customer ID" value is required.', 'woocommerce-gateway-stripe')); |
|
408 | + } elseif (0 !== strpos($payment_meta['post_meta']['_stripe_customer_id']['value'], 'cus_')) { |
|
409 | + throw new Exception(__('Invalid customer ID. A valid "Stripe Customer ID" must begin with "cus_".', 'woocommerce-gateway-stripe')); |
|
410 | 410 | } |
411 | 411 | |
412 | 412 | if ( |
413 | - ( ! empty( $payment_meta['post_meta']['_stripe_source_id']['value'] ) |
|
414 | - && 0 !== strpos( $payment_meta['post_meta']['_stripe_source_id']['value'], 'card_' ) ) |
|
415 | - && ( ! empty( $payment_meta['post_meta']['_stripe_source_id']['value'] ) |
|
416 | - && 0 !== strpos( $payment_meta['post_meta']['_stripe_source_id']['value'], 'src_' ) ) ) { |
|
413 | + ( ! empty($payment_meta['post_meta']['_stripe_source_id']['value']) |
|
414 | + && 0 !== strpos($payment_meta['post_meta']['_stripe_source_id']['value'], 'card_')) |
|
415 | + && ( ! empty($payment_meta['post_meta']['_stripe_source_id']['value']) |
|
416 | + && 0 !== strpos($payment_meta['post_meta']['_stripe_source_id']['value'], 'src_')) ) { |
|
417 | 417 | |
418 | - throw new Exception( __( 'Invalid source ID. A valid source "Stripe Source ID" must begin with "src_" or "card_".', 'woocommerce-gateway-stripe' ) ); |
|
418 | + throw new Exception(__('Invalid source ID. A valid source "Stripe Source ID" must begin with "src_" or "card_".', 'woocommerce-gateway-stripe')); |
|
419 | 419 | } |
420 | 420 | } |
421 | 421 | } |
@@ -428,93 +428,93 @@ discard block |
||
428 | 428 | * @param WC_Subscription $subscription the subscription details |
429 | 429 | * @return string the subscription payment method |
430 | 430 | */ |
431 | - public function maybe_render_subscription_payment_method( $payment_method_to_display, $subscription ) { |
|
432 | - $customer_user = WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $subscription->customer_user : $subscription->get_customer_id(); |
|
431 | + public function maybe_render_subscription_payment_method($payment_method_to_display, $subscription) { |
|
432 | + $customer_user = WC_Stripe_Helper::is_wc_lt('3.0') ? $subscription->customer_user : $subscription->get_customer_id(); |
|
433 | 433 | |
434 | 434 | // bail for other payment methods |
435 | - if ( ( WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $subscription->payment_method : $subscription->get_payment_method() ) !== $this->id || ! $customer_user ) { |
|
435 | + if ((WC_Stripe_Helper::is_wc_lt('3.0') ? $subscription->payment_method : $subscription->get_payment_method()) !== $this->id || ! $customer_user) { |
|
436 | 436 | return $payment_method_to_display; |
437 | 437 | } |
438 | 438 | |
439 | - $stripe_source_id = get_post_meta( ( WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $subscription->id : $subscription->get_id() ), '_stripe_source_id', true ); |
|
439 | + $stripe_source_id = get_post_meta((WC_Stripe_Helper::is_wc_lt('3.0') ? $subscription->id : $subscription->get_id()), '_stripe_source_id', true); |
|
440 | 440 | |
441 | 441 | // For BW compat will remove in future. |
442 | - if ( empty( $stripe_source_id ) ) { |
|
443 | - $stripe_source_id = get_post_meta( ( WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $subscription->id : $subscription->get_id() ), '_stripe_card_id', true ); |
|
442 | + if (empty($stripe_source_id)) { |
|
443 | + $stripe_source_id = get_post_meta((WC_Stripe_Helper::is_wc_lt('3.0') ? $subscription->id : $subscription->get_id()), '_stripe_card_id', true); |
|
444 | 444 | |
445 | 445 | // Take this opportunity to update the key name. |
446 | - WC_Stripe_Helper::is_wc_lt( '3.0' ) ? update_post_meta( $subscription->id, '_stripe_source_id', $stripe_source_id ) : update_post_meta( $subscription->get_id(), '_stripe_source_id', $stripe_source_id ); |
|
446 | + WC_Stripe_Helper::is_wc_lt('3.0') ? update_post_meta($subscription->id, '_stripe_source_id', $stripe_source_id) : update_post_meta($subscription->get_id(), '_stripe_source_id', $stripe_source_id); |
|
447 | 447 | } |
448 | 448 | |
449 | 449 | $stripe_customer = new WC_Stripe_Customer(); |
450 | - $stripe_customer_id = get_post_meta( ( WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $subscription->id : $subscription->get_id() ), '_stripe_customer_id', true ); |
|
450 | + $stripe_customer_id = get_post_meta((WC_Stripe_Helper::is_wc_lt('3.0') ? $subscription->id : $subscription->get_id()), '_stripe_customer_id', true); |
|
451 | 451 | |
452 | 452 | // If we couldn't find a Stripe customer linked to the subscription, fallback to the user meta data. |
453 | - if ( ! $stripe_customer_id || ! is_string( $stripe_customer_id ) ) { |
|
453 | + if ( ! $stripe_customer_id || ! is_string($stripe_customer_id)) { |
|
454 | 454 | $user_id = $customer_user; |
455 | - $stripe_customer_id = get_user_meta( $user_id, '_stripe_customer_id', true ); |
|
456 | - $stripe_source_id = get_user_meta( $user_id, '_stripe_source_id', true ); |
|
455 | + $stripe_customer_id = get_user_meta($user_id, '_stripe_customer_id', true); |
|
456 | + $stripe_source_id = get_user_meta($user_id, '_stripe_source_id', true); |
|
457 | 457 | |
458 | 458 | // For BW compat will remove in future. |
459 | - if ( empty( $stripe_source_id ) ) { |
|
460 | - $stripe_source_id = get_user_meta( $user_id, '_stripe_card_id', true ); |
|
459 | + if (empty($stripe_source_id)) { |
|
460 | + $stripe_source_id = get_user_meta($user_id, '_stripe_card_id', true); |
|
461 | 461 | |
462 | 462 | // Take this opportunity to update the key name. |
463 | - update_user_meta( $user_id, '_stripe_source_id', $stripe_source_id ); |
|
463 | + update_user_meta($user_id, '_stripe_source_id', $stripe_source_id); |
|
464 | 464 | } |
465 | 465 | } |
466 | 466 | |
467 | 467 | // If we couldn't find a Stripe customer linked to the account, fallback to the order meta data. |
468 | - if ( ( ! $stripe_customer_id || ! is_string( $stripe_customer_id ) ) && false !== $subscription->order ) { |
|
469 | - $stripe_customer_id = get_post_meta( ( WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $subscription->order->id : $subscription->get_parent_id() ), '_stripe_customer_id', true ); |
|
470 | - $stripe_source_id = get_post_meta( ( WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $subscription->order->id : $subscription->get_parent_id() ), '_stripe_source_id', true ); |
|
468 | + if (( ! $stripe_customer_id || ! is_string($stripe_customer_id)) && false !== $subscription->order) { |
|
469 | + $stripe_customer_id = get_post_meta((WC_Stripe_Helper::is_wc_lt('3.0') ? $subscription->order->id : $subscription->get_parent_id()), '_stripe_customer_id', true); |
|
470 | + $stripe_source_id = get_post_meta((WC_Stripe_Helper::is_wc_lt('3.0') ? $subscription->order->id : $subscription->get_parent_id()), '_stripe_source_id', true); |
|
471 | 471 | |
472 | 472 | // For BW compat will remove in future. |
473 | - if ( empty( $stripe_source_id ) ) { |
|
474 | - $stripe_source_id = get_post_meta( ( WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $subscription->order->id : $subscription->get_parent_id() ), '_stripe_card_id', true ); |
|
473 | + if (empty($stripe_source_id)) { |
|
474 | + $stripe_source_id = get_post_meta((WC_Stripe_Helper::is_wc_lt('3.0') ? $subscription->order->id : $subscription->get_parent_id()), '_stripe_card_id', true); |
|
475 | 475 | |
476 | 476 | // Take this opportunity to update the key name. |
477 | - WC_Stripe_Helper::is_wc_lt( '3.0' ) ? update_post_meta( $subscription->order->id, '_stripe_source_id', $stripe_source_id ) : update_post_meta( $subscription->get_parent_id(), '_stripe_source_id', $stripe_source_id ); |
|
477 | + WC_Stripe_Helper::is_wc_lt('3.0') ? update_post_meta($subscription->order->id, '_stripe_source_id', $stripe_source_id) : update_post_meta($subscription->get_parent_id(), '_stripe_source_id', $stripe_source_id); |
|
478 | 478 | } |
479 | 479 | } |
480 | 480 | |
481 | - $stripe_customer->set_id( $stripe_customer_id ); |
|
481 | + $stripe_customer->set_id($stripe_customer_id); |
|
482 | 482 | $sources = $stripe_customer->get_sources(); |
483 | 483 | |
484 | - if ( $sources ) { |
|
484 | + if ($sources) { |
|
485 | 485 | $card = false; |
486 | 486 | $found_source = false; |
487 | 487 | |
488 | - foreach ( $sources as $source ) { |
|
489 | - if ( isset( $source->type ) && 'card' === $source->type ) { |
|
488 | + foreach ($sources as $source) { |
|
489 | + if (isset($source->type) && 'card' === $source->type) { |
|
490 | 490 | $card = $source->card; |
491 | - } elseif ( isset( $source->object ) && 'card' === $source->object ) { |
|
491 | + } elseif (isset($source->object) && 'card' === $source->object) { |
|
492 | 492 | $card = $source; |
493 | 493 | } |
494 | 494 | |
495 | - if ( $source->id === $stripe_source_id ) { |
|
495 | + if ($source->id === $stripe_source_id) { |
|
496 | 496 | $found_source = true; |
497 | 497 | |
498 | - if ( $card ) { |
|
498 | + if ($card) { |
|
499 | 499 | /* translators: 1) card brand 2) last 4 digits */ |
500 | - $payment_method_to_display = sprintf( __( 'Via %1$s card ending in %2$s', 'woocommerce-gateway-stripe' ), ( isset( $card->brand ) ? $card->brand : __( 'N/A', 'woocommerce-gateway-stripe' ) ), $card->last4 ); |
|
500 | + $payment_method_to_display = sprintf(__('Via %1$s card ending in %2$s', 'woocommerce-gateway-stripe'), (isset($card->brand) ? $card->brand : __('N/A', 'woocommerce-gateway-stripe')), $card->last4); |
|
501 | 501 | } else { |
502 | - $payment_method_to_display = __( 'N/A', 'woocommerce-gateway-stripe' ); |
|
502 | + $payment_method_to_display = __('N/A', 'woocommerce-gateway-stripe'); |
|
503 | 503 | } |
504 | 504 | break; |
505 | 505 | } |
506 | 506 | } |
507 | 507 | |
508 | - if ( ! $found_source ) { |
|
509 | - if ( isset( $sources[0]->type ) && 'card' === $sources[0]->type ) { |
|
508 | + if ( ! $found_source) { |
|
509 | + if (isset($sources[0]->type) && 'card' === $sources[0]->type) { |
|
510 | 510 | $card = $sources[0]->card; |
511 | 511 | } |
512 | 512 | |
513 | - if ( $card ) { |
|
513 | + if ($card) { |
|
514 | 514 | /* translators: 1) card brand 2) last 4 digits */ |
515 | - $payment_method_to_display = sprintf( __( 'Via %1$s card ending in %2$s', 'woocommerce-gateway-stripe' ), ( isset( $card->brand ) ? $card->brand : __( 'N/A', 'woocommerce-gateway-stripe' ) ), $card->last4 ); |
|
515 | + $payment_method_to_display = sprintf(__('Via %1$s card ending in %2$s', 'woocommerce-gateway-stripe'), (isset($card->brand) ? $card->brand : __('N/A', 'woocommerce-gateway-stripe')), $card->last4); |
|
516 | 516 | } else { |
517 | - $payment_method_to_display = __( 'N/A', 'woocommerce-gateway-stripe' ); |
|
517 | + $payment_method_to_display = __('N/A', 'woocommerce-gateway-stripe'); |
|
518 | 518 | } |
519 | 519 | } |
520 | 520 | } |
@@ -1,5 +1,5 @@ discard block |
||
1 | 1 | <?php |
2 | -if ( ! defined( 'ABSPATH' ) ) { |
|
2 | +if ( ! defined('ABSPATH')) { |
|
3 | 3 | exit; |
4 | 4 | } |
5 | 5 | |
@@ -15,21 +15,21 @@ discard block |
||
15 | 15 | public function __construct() { |
16 | 16 | parent::__construct(); |
17 | 17 | |
18 | - if ( class_exists( 'WC_Subscriptions_Order' ) ) { |
|
19 | - add_action( 'woocommerce_scheduled_subscription_payment_' . $this->id, array( $this, 'scheduled_subscription_payment' ), 10, 2 ); |
|
20 | - add_action( 'wcs_resubscribe_order_created', array( $this, 'delete_resubscribe_meta' ), 10 ); |
|
21 | - add_action( 'wcs_renewal_order_created', array( $this, 'delete_renewal_meta' ), 10 ); |
|
22 | - add_action( 'woocommerce_subscription_failing_payment_method_updated_stripe', array( $this, 'update_failing_payment_method' ), 10, 2 ); |
|
23 | - add_action( 'wc_stripe_sepa_payment_fields', array( $this, 'display_update_subs_payment_checkout' ) ); |
|
24 | - add_action( 'wc_stripe_add_payment_method_' . $this->id . '_success', array( $this, 'handle_add_payment_method_success' ), 10, 2 ); |
|
18 | + if (class_exists('WC_Subscriptions_Order')) { |
|
19 | + add_action('woocommerce_scheduled_subscription_payment_' . $this->id, array($this, 'scheduled_subscription_payment'), 10, 2); |
|
20 | + add_action('wcs_resubscribe_order_created', array($this, 'delete_resubscribe_meta'), 10); |
|
21 | + add_action('wcs_renewal_order_created', array($this, 'delete_renewal_meta'), 10); |
|
22 | + add_action('woocommerce_subscription_failing_payment_method_updated_stripe', array($this, 'update_failing_payment_method'), 10, 2); |
|
23 | + add_action('wc_stripe_sepa_payment_fields', array($this, 'display_update_subs_payment_checkout')); |
|
24 | + add_action('wc_stripe_add_payment_method_' . $this->id . '_success', array($this, 'handle_add_payment_method_success'), 10, 2); |
|
25 | 25 | |
26 | 26 | // Display the credit card used for a subscription in the "My Subscriptions" table. |
27 | - add_filter( 'woocommerce_my_subscriptions_payment_method', array( $this, 'maybe_render_subscription_payment_method' ), 10, 2 ); |
|
27 | + add_filter('woocommerce_my_subscriptions_payment_method', array($this, 'maybe_render_subscription_payment_method'), 10, 2); |
|
28 | 28 | |
29 | 29 | // Allow store managers to manually set Stripe as the payment method on a subscription. |
30 | - add_filter( 'woocommerce_subscription_payment_meta', array( $this, 'add_subscription_payment_meta' ), 10, 2 ); |
|
31 | - add_filter( 'woocommerce_subscription_validate_payment_meta', array( $this, 'validate_subscription_payment_meta' ), 10, 2 ); |
|
32 | - add_filter( 'wc_stripe_display_save_payment_method_checkbox', array( $this, 'maybe_hide_save_checkbox' ) ); |
|
30 | + add_filter('woocommerce_subscription_payment_meta', array($this, 'add_subscription_payment_meta'), 10, 2); |
|
31 | + add_filter('woocommerce_subscription_validate_payment_meta', array($this, 'validate_subscription_payment_meta'), 10, 2); |
|
32 | + add_filter('wc_stripe_display_save_payment_method_checkbox', array($this, 'maybe_hide_save_checkbox')); |
|
33 | 33 | } |
34 | 34 | } |
35 | 35 | |
@@ -49,8 +49,8 @@ discard block |
||
49 | 49 | * @since 4.0.0 |
50 | 50 | * @version 4.0.0 |
51 | 51 | */ |
52 | - public function maybe_hide_save_checkbox( $display_tokenization ) { |
|
53 | - if ( WC_Subscriptions_Cart::cart_contains_subscription() ) { |
|
52 | + public function maybe_hide_save_checkbox($display_tokenization) { |
|
53 | + if (WC_Subscriptions_Cart::cart_contains_subscription()) { |
|
54 | 54 | return false; |
55 | 55 | } |
56 | 56 | |
@@ -62,8 +62,8 @@ discard block |
||
62 | 62 | * @param int $order_id |
63 | 63 | * @return boolean |
64 | 64 | */ |
65 | - public function has_subscription( $order_id ) { |
|
66 | - return ( function_exists( 'wcs_order_contains_subscription' ) && ( wcs_order_contains_subscription( $order_id ) || wcs_is_subscription( $order_id ) || wcs_order_contains_renewal( $order_id ) ) ); |
|
65 | + public function has_subscription($order_id) { |
|
66 | + return (function_exists('wcs_order_contains_subscription') && (wcs_order_contains_subscription($order_id) || wcs_is_subscription($order_id) || wcs_order_contains_renewal($order_id))); |
|
67 | 67 | } |
68 | 68 | |
69 | 69 | /** |
@@ -73,7 +73,7 @@ discard block |
||
73 | 73 | * @return bool |
74 | 74 | */ |
75 | 75 | public function is_subs_change_payment() { |
76 | - return ( isset( $_GET['pay_for_order'] ) && isset( $_GET['change_payment_method'] ) ); |
|
76 | + return (isset($_GET['pay_for_order']) && isset($_GET['change_payment_method'])); |
|
77 | 77 | } |
78 | 78 | |
79 | 79 | /** |
@@ -84,8 +84,8 @@ discard block |
||
84 | 84 | */ |
85 | 85 | public function display_update_subs_payment_checkout() { |
86 | 86 | if ( |
87 | - apply_filters( 'wc_stripe_display_update_subs_payment_method_card_checkbox', true ) && |
|
88 | - wcs_user_has_subscription( get_current_user_id(), '', 'active' ) && |
|
87 | + apply_filters('wc_stripe_display_update_subs_payment_method_card_checkbox', true) && |
|
88 | + wcs_user_has_subscription(get_current_user_id(), '', 'active') && |
|
89 | 89 | is_add_payment_method_page() |
90 | 90 | ) { |
91 | 91 | printf( |
@@ -93,8 +93,8 @@ discard block |
||
93 | 93 | <input id="wc-%1$s-update-subs-payment-method-card" name="wc-%1$s-update-subs-payment-method-card" type="checkbox" value="true" style="width:auto;" /> |
94 | 94 | <label for="wc-%1$s-update-subs-payment-method-card" style="display:inline;">%2$s</label> |
95 | 95 | </p>', |
96 | - esc_attr( $this->id ), |
|
97 | - esc_html( apply_filters( 'wc_stripe_save_to_subs_text', __( 'Update the Payment Method used for all of my active subscriptions (optional).', 'woocommerce-gateway-stripe' ) ) ) |
|
96 | + esc_attr($this->id), |
|
97 | + esc_html(apply_filters('wc_stripe_save_to_subs_text', __('Update the Payment Method used for all of my active subscriptions (optional).', 'woocommerce-gateway-stripe'))) |
|
98 | 98 | ); |
99 | 99 | } |
100 | 100 | } |
@@ -106,16 +106,16 @@ discard block |
||
106 | 106 | * @param string $source_id |
107 | 107 | * @param object $source_object |
108 | 108 | */ |
109 | - public function handle_add_payment_method_success( $source_id, $source_object ) { |
|
110 | - if ( isset( $_POST['wc-' . $this->id . '-update-subs-payment-method-card'] ) ) { |
|
109 | + public function handle_add_payment_method_success($source_id, $source_object) { |
|
110 | + if (isset($_POST['wc-' . $this->id . '-update-subs-payment-method-card'])) { |
|
111 | 111 | $all_subs = wcs_get_users_subscriptions(); |
112 | 112 | |
113 | - if ( ! empty( $all_subs ) ) { |
|
114 | - foreach ( $all_subs as $sub ) { |
|
115 | - if ( 'active' === $sub->get_status() ) { |
|
116 | - update_post_meta( $sub->get_id(), '_stripe_source_id', $source_id ); |
|
117 | - update_post_meta( $sub->get_id(), '_payment_method', $this->id ); |
|
118 | - update_post_meta( $sub->get_id(), '_payment_method_title', $this->method_title ); |
|
113 | + if ( ! empty($all_subs)) { |
|
114 | + foreach ($all_subs as $sub) { |
|
115 | + if ('active' === $sub->get_status()) { |
|
116 | + update_post_meta($sub->get_id(), '_stripe_source_id', $source_id); |
|
117 | + update_post_meta($sub->get_id(), '_payment_method', $this->id); |
|
118 | + update_post_meta($sub->get_id(), '_payment_method_title', $this->method_title); |
|
119 | 119 | } |
120 | 120 | } |
121 | 121 | } |
@@ -128,24 +128,24 @@ discard block |
||
128 | 128 | * @since 3.1.0 |
129 | 129 | * @version 4.0.0 |
130 | 130 | */ |
131 | - public function save_source_to_order( $order, $source ) { |
|
132 | - parent::save_source_to_order( $order, $source ); |
|
131 | + public function save_source_to_order($order, $source) { |
|
132 | + parent::save_source_to_order($order, $source); |
|
133 | 133 | |
134 | - $order_id = WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $order->id : $order->get_id(); |
|
134 | + $order_id = WC_Stripe_Helper::is_wc_lt('3.0') ? $order->id : $order->get_id(); |
|
135 | 135 | |
136 | 136 | // Also store it on the subscriptions being purchased or paid for in the order. |
137 | - if ( function_exists( 'wcs_order_contains_subscription' ) && wcs_order_contains_subscription( $order_id ) ) { |
|
138 | - $subscriptions = wcs_get_subscriptions_for_order( $order_id ); |
|
139 | - } elseif ( function_exists( 'wcs_order_contains_renewal' ) && wcs_order_contains_renewal( $order_id ) ) { |
|
140 | - $subscriptions = wcs_get_subscriptions_for_renewal_order( $order_id ); |
|
137 | + if (function_exists('wcs_order_contains_subscription') && wcs_order_contains_subscription($order_id)) { |
|
138 | + $subscriptions = wcs_get_subscriptions_for_order($order_id); |
|
139 | + } elseif (function_exists('wcs_order_contains_renewal') && wcs_order_contains_renewal($order_id)) { |
|
140 | + $subscriptions = wcs_get_subscriptions_for_renewal_order($order_id); |
|
141 | 141 | } else { |
142 | 142 | $subscriptions = array(); |
143 | 143 | } |
144 | 144 | |
145 | - foreach ( $subscriptions as $subscription ) { |
|
146 | - $subscription_id = WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $subscription->id : $subscription->get_id(); |
|
147 | - update_post_meta( $subscription_id, '_stripe_customer_id', $source->customer ); |
|
148 | - update_post_meta( $subscription_id, '_stripe_source_id', $source->source ); |
|
145 | + foreach ($subscriptions as $subscription) { |
|
146 | + $subscription_id = WC_Stripe_Helper::is_wc_lt('3.0') ? $subscription->id : $subscription->get_id(); |
|
147 | + update_post_meta($subscription_id, '_stripe_customer_id', $source->customer); |
|
148 | + update_post_meta($subscription_id, '_stripe_source_id', $source->source); |
|
149 | 149 | } |
150 | 150 | } |
151 | 151 | |
@@ -154,16 +154,16 @@ discard block |
||
154 | 154 | * @param int $order_id |
155 | 155 | * @return array |
156 | 156 | */ |
157 | - public function process_payment( $order_id, $retry = true, $force_save_source = false, $previous_error = false ) { |
|
158 | - if ( $this->has_subscription( $order_id ) ) { |
|
159 | - if ( $this->is_subs_change_payment() ) { |
|
160 | - return $this->change_subs_payment_method( $order_id ); |
|
157 | + public function process_payment($order_id, $retry = true, $force_save_source = false, $previous_error = false) { |
|
158 | + if ($this->has_subscription($order_id)) { |
|
159 | + if ($this->is_subs_change_payment()) { |
|
160 | + return $this->change_subs_payment_method($order_id); |
|
161 | 161 | } |
162 | 162 | |
163 | 163 | // Regular payment with force customer enabled |
164 | - return parent::process_payment( $order_id, $retry, true, $previous_error ); |
|
164 | + return parent::process_payment($order_id, $retry, true, $previous_error); |
|
165 | 165 | } else { |
166 | - return parent::process_payment( $order_id, $retry, $force_save_source, $previous_error ); |
|
166 | + return parent::process_payment($order_id, $retry, $force_save_source, $previous_error); |
|
167 | 167 | } |
168 | 168 | } |
169 | 169 | |
@@ -173,27 +173,27 @@ discard block |
||
173 | 173 | * @since 4.0.4 |
174 | 174 | * @param int $order_id |
175 | 175 | */ |
176 | - public function change_subs_payment_method( $order_id ) { |
|
176 | + public function change_subs_payment_method($order_id) { |
|
177 | 177 | try { |
178 | - $subscription = wc_get_order( $order_id ); |
|
179 | - $prepared_source = $this->prepare_source( get_current_user_id(), true ); |
|
178 | + $subscription = wc_get_order($order_id); |
|
179 | + $prepared_source = $this->prepare_source(get_current_user_id(), true); |
|
180 | 180 | |
181 | - if ( empty( $prepared_source->source ) ) { |
|
182 | - $localized_message = __( 'Payment processing failed. Please retry.', 'woocommerce-gateway-stripe' ); |
|
183 | - throw new WC_Stripe_Exception( print_r( $prepared_source, true ), $localized_message ); |
|
181 | + if (empty($prepared_source->source)) { |
|
182 | + $localized_message = __('Payment processing failed. Please retry.', 'woocommerce-gateway-stripe'); |
|
183 | + throw new WC_Stripe_Exception(print_r($prepared_source, true), $localized_message); |
|
184 | 184 | } |
185 | 185 | |
186 | - $this->save_source_to_order( $subscription, $prepared_source ); |
|
186 | + $this->save_source_to_order($subscription, $prepared_source); |
|
187 | 187 | |
188 | - do_action( 'wc_stripe_change_subs_payment_method_success', $prepared_source->source, $prepared_source ); |
|
188 | + do_action('wc_stripe_change_subs_payment_method_success', $prepared_source->source, $prepared_source); |
|
189 | 189 | |
190 | 190 | return array( |
191 | 191 | 'result' => 'success', |
192 | - 'redirect' => $this->get_return_url( $subscription ), |
|
192 | + 'redirect' => $this->get_return_url($subscription), |
|
193 | 193 | ); |
194 | - } catch ( WC_Stripe_Exception $e ) { |
|
195 | - wc_add_notice( $e->getLocalizedMessage(), 'error' ); |
|
196 | - WC_Stripe_Logger::log( 'Error: ' . $e->getMessage() ); |
|
194 | + } catch (WC_Stripe_Exception $e) { |
|
195 | + wc_add_notice($e->getLocalizedMessage(), 'error'); |
|
196 | + WC_Stripe_Logger::log('Error: ' . $e->getMessage()); |
|
197 | 197 | } |
198 | 198 | } |
199 | 199 | |
@@ -203,8 +203,8 @@ discard block |
||
203 | 203 | * @param $amount_to_charge float The amount to charge. |
204 | 204 | * @param $renewal_order WC_Order A WC_Order object created to record the renewal payment. |
205 | 205 | */ |
206 | - public function scheduled_subscription_payment( $amount_to_charge, $renewal_order ) { |
|
207 | - $this->process_subscription_payment( $amount_to_charge, $renewal_order, true, false ); |
|
206 | + public function scheduled_subscription_payment($amount_to_charge, $renewal_order) { |
|
207 | + $this->process_subscription_payment($amount_to_charge, $renewal_order, true, false); |
|
208 | 208 | } |
209 | 209 | |
210 | 210 | /** |
@@ -218,86 +218,86 @@ discard block |
||
218 | 218 | * @param bool $retry Should we retry the process? |
219 | 219 | * @param object $previous_error |
220 | 220 | */ |
221 | - public function process_subscription_payment( $amount = 0.0, $renewal_order, $retry = true, $previous_error ) { |
|
221 | + public function process_subscription_payment($amount = 0.0, $renewal_order, $retry = true, $previous_error) { |
|
222 | 222 | try { |
223 | - if ( $amount * 100 < WC_Stripe_Helper::get_minimum_amount() ) { |
|
223 | + if ($amount * 100 < WC_Stripe_Helper::get_minimum_amount()) { |
|
224 | 224 | /* translators: minimum amount */ |
225 | - return new WP_Error( 'stripe_error', sprintf( __( 'Sorry, the minimum allowed order total is %1$s to use this payment method.', 'woocommerce-gateway-stripe' ), wc_price( WC_Stripe_Helper::get_minimum_amount() / 100 ) ) ); |
|
225 | + return new WP_Error('stripe_error', sprintf(__('Sorry, the minimum allowed order total is %1$s to use this payment method.', 'woocommerce-gateway-stripe'), wc_price(WC_Stripe_Helper::get_minimum_amount() / 100))); |
|
226 | 226 | } |
227 | 227 | |
228 | - $order_id = WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $renewal_order->id : $renewal_order->get_id(); |
|
228 | + $order_id = WC_Stripe_Helper::is_wc_lt('3.0') ? $renewal_order->id : $renewal_order->get_id(); |
|
229 | 229 | |
230 | 230 | // Get source from order |
231 | - $prepared_source = $this->prepare_order_source( $renewal_order ); |
|
231 | + $prepared_source = $this->prepare_order_source($renewal_order); |
|
232 | 232 | $source_object = $prepared_source->source_object; |
233 | 233 | |
234 | - if ( ! $prepared_source->customer ) { |
|
235 | - return new WP_Error( 'stripe_error', __( 'Customer not found', 'woocommerce-gateway-stripe' ) ); |
|
234 | + if ( ! $prepared_source->customer) { |
|
235 | + return new WP_Error('stripe_error', __('Customer not found', 'woocommerce-gateway-stripe')); |
|
236 | 236 | } |
237 | 237 | |
238 | - WC_Stripe_Logger::log( "Info: Begin processing subscription payment for order {$order_id} for the amount of {$amount}" ); |
|
238 | + WC_Stripe_Logger::log("Info: Begin processing subscription payment for order {$order_id} for the amount of {$amount}"); |
|
239 | 239 | |
240 | 240 | /* If we're doing a retry and source is chargeable, we need to pass |
241 | 241 | * a different idempotency key and retry for success. |
242 | 242 | */ |
243 | - if ( is_object( $source_object ) && empty( $source_object->error ) && $this->need_update_idempotency_key( $source_object, $previous_error ) ) { |
|
244 | - add_filter( 'wc_stripe_idempotency_key', array( $this, 'change_idempotency_key' ), 10, 2 ); |
|
243 | + if (is_object($source_object) && empty($source_object->error) && $this->need_update_idempotency_key($source_object, $previous_error)) { |
|
244 | + add_filter('wc_stripe_idempotency_key', array($this, 'change_idempotency_key'), 10, 2); |
|
245 | 245 | } |
246 | 246 | |
247 | - if ( ( $this->is_no_such_source_error( $previous_error ) || $this->is_no_linked_source_error( $previous_error ) ) && apply_filters( 'wc_stripe_use_default_customer_source', true ) ) { |
|
247 | + if (($this->is_no_such_source_error($previous_error) || $this->is_no_linked_source_error($previous_error)) && apply_filters('wc_stripe_use_default_customer_source', true)) { |
|
248 | 248 | // Passing empty source will charge customer default. |
249 | 249 | $prepared_source->source = ''; |
250 | 250 | } |
251 | 251 | |
252 | - $request = $this->generate_payment_request( $renewal_order, $prepared_source ); |
|
252 | + $request = $this->generate_payment_request($renewal_order, $prepared_source); |
|
253 | 253 | $request['capture'] = 'true'; |
254 | - $request['amount'] = WC_Stripe_Helper::get_stripe_amount( $amount, $request['currency'] ); |
|
255 | - $response = WC_Stripe_API::request( $request ); |
|
254 | + $request['amount'] = WC_Stripe_Helper::get_stripe_amount($amount, $request['currency']); |
|
255 | + $response = WC_Stripe_API::request($request); |
|
256 | 256 | |
257 | - if ( ! empty( $response->error ) ) { |
|
257 | + if ( ! empty($response->error)) { |
|
258 | 258 | // We want to retry. |
259 | - if ( $this->is_retryable_error( $response->error ) ) { |
|
260 | - if ( $retry ) { |
|
259 | + if ($this->is_retryable_error($response->error)) { |
|
260 | + if ($retry) { |
|
261 | 261 | // Don't do anymore retries after this. |
262 | - if ( 5 <= $this->retry_interval ) { |
|
263 | - return $this->process_subscription_payment( $amount, $renewal_order, false, $response->error ); |
|
262 | + if (5 <= $this->retry_interval) { |
|
263 | + return $this->process_subscription_payment($amount, $renewal_order, false, $response->error); |
|
264 | 264 | } |
265 | 265 | |
266 | - sleep( $this->retry_interval ); |
|
266 | + sleep($this->retry_interval); |
|
267 | 267 | |
268 | 268 | $this->retry_interval++; |
269 | 269 | |
270 | - return $this->process_subscription_payment( $amount, $renewal_order, true, $response->error ); |
|
270 | + return $this->process_subscription_payment($amount, $renewal_order, true, $response->error); |
|
271 | 271 | } else { |
272 | - $localized_message = __( 'Sorry, we are unable to process your payment at this time. Please retry later.', 'woocommerce-gateway-stripe' ); |
|
273 | - $renewal_order->add_order_note( $localized_message ); |
|
274 | - throw new WC_Stripe_Exception( print_r( $response, true ), $localized_message ); |
|
272 | + $localized_message = __('Sorry, we are unable to process your payment at this time. Please retry later.', 'woocommerce-gateway-stripe'); |
|
273 | + $renewal_order->add_order_note($localized_message); |
|
274 | + throw new WC_Stripe_Exception(print_r($response, true), $localized_message); |
|
275 | 275 | } |
276 | 276 | } |
277 | 277 | |
278 | 278 | $localized_messages = WC_Stripe_Helper::get_localized_messages(); |
279 | 279 | |
280 | - if ( 'card_error' === $response->error->type ) { |
|
281 | - $localized_message = isset( $localized_messages[ $response->error->code ] ) ? $localized_messages[ $response->error->code ] : $response->error->message; |
|
280 | + if ('card_error' === $response->error->type) { |
|
281 | + $localized_message = isset($localized_messages[$response->error->code]) ? $localized_messages[$response->error->code] : $response->error->message; |
|
282 | 282 | } else { |
283 | - $localized_message = isset( $localized_messages[ $response->error->type ] ) ? $localized_messages[ $response->error->type ] : $response->error->message; |
|
283 | + $localized_message = isset($localized_messages[$response->error->type]) ? $localized_messages[$response->error->type] : $response->error->message; |
|
284 | 284 | } |
285 | 285 | |
286 | - $renewal_order->add_order_note( $localized_message ); |
|
286 | + $renewal_order->add_order_note($localized_message); |
|
287 | 287 | |
288 | - throw new WC_Stripe_Exception( print_r( $response, true ), $localized_message ); |
|
288 | + throw new WC_Stripe_Exception(print_r($response, true), $localized_message); |
|
289 | 289 | } |
290 | 290 | |
291 | - do_action( 'wc_gateway_stripe_process_payment', $response, $renewal_order ); |
|
291 | + do_action('wc_gateway_stripe_process_payment', $response, $renewal_order); |
|
292 | 292 | |
293 | - $this->process_response( $response, $renewal_order ); |
|
294 | - } catch ( WC_Stripe_Exception $e ) { |
|
295 | - WC_Stripe_Logger::log( 'Error: ' . $e->getMessage() ); |
|
293 | + $this->process_response($response, $renewal_order); |
|
294 | + } catch (WC_Stripe_Exception $e) { |
|
295 | + WC_Stripe_Logger::log('Error: ' . $e->getMessage()); |
|
296 | 296 | |
297 | - do_action( 'wc_gateway_stripe_process_payment_error', $e, $renewal_order ); |
|
297 | + do_action('wc_gateway_stripe_process_payment_error', $e, $renewal_order); |
|
298 | 298 | |
299 | 299 | /* translators: error message */ |
300 | - $renewal_order->update_status( 'failed' ); |
|
300 | + $renewal_order->update_status('failed'); |
|
301 | 301 | } |
302 | 302 | } |
303 | 303 | |
@@ -305,21 +305,21 @@ discard block |
||
305 | 305 | * Don't transfer Stripe customer/token meta to resubscribe orders. |
306 | 306 | * @param int $resubscribe_order The order created for the customer to resubscribe to the old expired/cancelled subscription |
307 | 307 | */ |
308 | - public function delete_resubscribe_meta( $resubscribe_order ) { |
|
309 | - delete_post_meta( ( WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $resubscribe_order->id : $resubscribe_order->get_id() ), '_stripe_customer_id' ); |
|
310 | - delete_post_meta( ( WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $resubscribe_order->id : $resubscribe_order->get_id() ), '_stripe_source_id' ); |
|
308 | + public function delete_resubscribe_meta($resubscribe_order) { |
|
309 | + delete_post_meta((WC_Stripe_Helper::is_wc_lt('3.0') ? $resubscribe_order->id : $resubscribe_order->get_id()), '_stripe_customer_id'); |
|
310 | + delete_post_meta((WC_Stripe_Helper::is_wc_lt('3.0') ? $resubscribe_order->id : $resubscribe_order->get_id()), '_stripe_source_id'); |
|
311 | 311 | // For BW compat will remove in future |
312 | - delete_post_meta( ( WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $resubscribe_order->id : $resubscribe_order->get_id() ), '_stripe_card_id' ); |
|
313 | - $this->delete_renewal_meta( $resubscribe_order ); |
|
312 | + delete_post_meta((WC_Stripe_Helper::is_wc_lt('3.0') ? $resubscribe_order->id : $resubscribe_order->get_id()), '_stripe_card_id'); |
|
313 | + $this->delete_renewal_meta($resubscribe_order); |
|
314 | 314 | } |
315 | 315 | |
316 | 316 | /** |
317 | 317 | * Don't transfer Stripe fee/ID meta to renewal orders. |
318 | 318 | * @param int $resubscribe_order The order created for the customer to resubscribe to the old expired/cancelled subscription |
319 | 319 | */ |
320 | - public function delete_renewal_meta( $renewal_order ) { |
|
321 | - WC_Stripe_Helper::delete_stripe_fee( $renewal_order ); |
|
322 | - WC_Stripe_Helper::delete_stripe_net( $renewal_order ); |
|
320 | + public function delete_renewal_meta($renewal_order) { |
|
321 | + WC_Stripe_Helper::delete_stripe_fee($renewal_order); |
|
322 | + WC_Stripe_Helper::delete_stripe_net($renewal_order); |
|
323 | 323 | |
324 | 324 | return $renewal_order; |
325 | 325 | } |
@@ -333,14 +333,14 @@ discard block |
||
333 | 333 | * @param WC_Order $renewal_order The order which recorded the successful payment (to make up for the failed automatic payment). |
334 | 334 | * @return void |
335 | 335 | */ |
336 | - public function update_failing_payment_method( $subscription, $renewal_order ) { |
|
337 | - if ( WC_Stripe_Helper::is_wc_lt( '3.0' ) ) { |
|
338 | - update_post_meta( $subscription->id, '_stripe_customer_id', $renewal_order->stripe_customer_id ); |
|
339 | - update_post_meta( $subscription->id, '_stripe_source_id', $renewal_order->stripe_source_id ); |
|
336 | + public function update_failing_payment_method($subscription, $renewal_order) { |
|
337 | + if (WC_Stripe_Helper::is_wc_lt('3.0')) { |
|
338 | + update_post_meta($subscription->id, '_stripe_customer_id', $renewal_order->stripe_customer_id); |
|
339 | + update_post_meta($subscription->id, '_stripe_source_id', $renewal_order->stripe_source_id); |
|
340 | 340 | |
341 | 341 | } else { |
342 | - update_post_meta( $subscription->get_id(), '_stripe_customer_id', $renewal_order->get_meta( '_stripe_customer_id', true ) ); |
|
343 | - update_post_meta( $subscription->get_id(), '_stripe_source_id', $renewal_order->get_meta( '_stripe_source_id', true ) ); |
|
342 | + update_post_meta($subscription->get_id(), '_stripe_customer_id', $renewal_order->get_meta('_stripe_customer_id', true)); |
|
343 | + update_post_meta($subscription->get_id(), '_stripe_source_id', $renewal_order->get_meta('_stripe_source_id', true)); |
|
344 | 344 | } |
345 | 345 | } |
346 | 346 | |
@@ -353,21 +353,21 @@ discard block |
||
353 | 353 | * @param WC_Subscription $subscription An instance of a subscription object |
354 | 354 | * @return array |
355 | 355 | */ |
356 | - public function add_subscription_payment_meta( $payment_meta, $subscription ) { |
|
357 | - $source_id = get_post_meta( ( WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $subscription->id : $subscription->get_id() ), '_stripe_source_id', true ); |
|
356 | + public function add_subscription_payment_meta($payment_meta, $subscription) { |
|
357 | + $source_id = get_post_meta((WC_Stripe_Helper::is_wc_lt('3.0') ? $subscription->id : $subscription->get_id()), '_stripe_source_id', true); |
|
358 | 358 | |
359 | 359 | // For BW compat will remove in future. |
360 | - if ( empty( $source_id ) ) { |
|
361 | - $source_id = get_post_meta( ( WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $subscription->id : $subscription->get_id() ), '_stripe_card_id', true ); |
|
360 | + if (empty($source_id)) { |
|
361 | + $source_id = get_post_meta((WC_Stripe_Helper::is_wc_lt('3.0') ? $subscription->id : $subscription->get_id()), '_stripe_card_id', true); |
|
362 | 362 | |
363 | 363 | // Take this opportunity to update the key name. |
364 | - WC_Stripe_Helper::is_wc_lt( '3.0' ) ? update_post_meta( $subscription->id, '_stripe_source_id', $source_id ) : update_post_meta( $subscription->get_id(), '_stripe_source_id', $source_id ); |
|
364 | + WC_Stripe_Helper::is_wc_lt('3.0') ? update_post_meta($subscription->id, '_stripe_source_id', $source_id) : update_post_meta($subscription->get_id(), '_stripe_source_id', $source_id); |
|
365 | 365 | } |
366 | 366 | |
367 | - $payment_meta[ $this->id ] = array( |
|
367 | + $payment_meta[$this->id] = array( |
|
368 | 368 | 'post_meta' => array( |
369 | 369 | '_stripe_customer_id' => array( |
370 | - 'value' => get_post_meta( ( WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $subscription->id : $subscription->get_id() ), '_stripe_customer_id', true ), |
|
370 | + 'value' => get_post_meta((WC_Stripe_Helper::is_wc_lt('3.0') ? $subscription->id : $subscription->get_id()), '_stripe_customer_id', true), |
|
371 | 371 | 'label' => 'Stripe Customer ID', |
372 | 372 | ), |
373 | 373 | '_stripe_source_id' => array( |
@@ -388,22 +388,22 @@ discard block |
||
388 | 388 | * @param array $payment_meta associative array of meta data required for automatic payments |
389 | 389 | * @return array |
390 | 390 | */ |
391 | - public function validate_subscription_payment_meta( $payment_method_id, $payment_meta ) { |
|
392 | - if ( $this->id === $payment_method_id ) { |
|
391 | + public function validate_subscription_payment_meta($payment_method_id, $payment_meta) { |
|
392 | + if ($this->id === $payment_method_id) { |
|
393 | 393 | |
394 | - if ( ! isset( $payment_meta['post_meta']['_stripe_customer_id']['value'] ) || empty( $payment_meta['post_meta']['_stripe_customer_id']['value'] ) ) { |
|
395 | - throw new Exception( __( 'A "Stripe Customer ID" value is required.', 'woocommerce-gateway-stripe' ) ); |
|
396 | - } elseif ( 0 !== strpos( $payment_meta['post_meta']['_stripe_customer_id']['value'], 'cus_' ) ) { |
|
397 | - throw new Exception( __( 'Invalid customer ID. A valid "Stripe Customer ID" must begin with "cus_".', 'woocommerce-gateway-stripe' ) ); |
|
394 | + if ( ! isset($payment_meta['post_meta']['_stripe_customer_id']['value']) || empty($payment_meta['post_meta']['_stripe_customer_id']['value'])) { |
|
395 | + throw new Exception(__('A "Stripe Customer ID" value is required.', 'woocommerce-gateway-stripe')); |
|
396 | + } elseif (0 !== strpos($payment_meta['post_meta']['_stripe_customer_id']['value'], 'cus_')) { |
|
397 | + throw new Exception(__('Invalid customer ID. A valid "Stripe Customer ID" must begin with "cus_".', 'woocommerce-gateway-stripe')); |
|
398 | 398 | } |
399 | 399 | |
400 | 400 | if ( |
401 | - ( ! empty( $payment_meta['post_meta']['_stripe_source_id']['value'] ) |
|
402 | - && 0 !== strpos( $payment_meta['post_meta']['_stripe_source_id']['value'], 'card_' ) ) |
|
403 | - && ( ! empty( $payment_meta['post_meta']['_stripe_source_id']['value'] ) |
|
404 | - && 0 !== strpos( $payment_meta['post_meta']['_stripe_source_id']['value'], 'src_' ) ) ) { |
|
401 | + ( ! empty($payment_meta['post_meta']['_stripe_source_id']['value']) |
|
402 | + && 0 !== strpos($payment_meta['post_meta']['_stripe_source_id']['value'], 'card_')) |
|
403 | + && ( ! empty($payment_meta['post_meta']['_stripe_source_id']['value']) |
|
404 | + && 0 !== strpos($payment_meta['post_meta']['_stripe_source_id']['value'], 'src_')) ) { |
|
405 | 405 | |
406 | - throw new Exception( __( 'Invalid source ID. A valid source "Stripe Source ID" must begin with "src_" or "card_".', 'woocommerce-gateway-stripe' ) ); |
|
406 | + throw new Exception(__('Invalid source ID. A valid source "Stripe Source ID" must begin with "src_" or "card_".', 'woocommerce-gateway-stripe')); |
|
407 | 407 | } |
408 | 408 | } |
409 | 409 | } |
@@ -416,67 +416,67 @@ discard block |
||
416 | 416 | * @param WC_Subscription $subscription the subscription details |
417 | 417 | * @return string the subscription payment method |
418 | 418 | */ |
419 | - public function maybe_render_subscription_payment_method( $payment_method_to_display, $subscription ) { |
|
420 | - $customer_user = WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $subscription->customer_user : $subscription->get_customer_id(); |
|
419 | + public function maybe_render_subscription_payment_method($payment_method_to_display, $subscription) { |
|
420 | + $customer_user = WC_Stripe_Helper::is_wc_lt('3.0') ? $subscription->customer_user : $subscription->get_customer_id(); |
|
421 | 421 | |
422 | 422 | // bail for other payment methods |
423 | - if ( ( WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $subscription->payment_method : $subscription->get_payment_method() ) !== $this->id || ! $customer_user ) { |
|
423 | + if ((WC_Stripe_Helper::is_wc_lt('3.0') ? $subscription->payment_method : $subscription->get_payment_method()) !== $this->id || ! $customer_user) { |
|
424 | 424 | return $payment_method_to_display; |
425 | 425 | } |
426 | 426 | |
427 | - $stripe_source_id = get_post_meta( ( WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $subscription->id : $subscription->get_id() ), '_stripe_source_id', true ); |
|
427 | + $stripe_source_id = get_post_meta((WC_Stripe_Helper::is_wc_lt('3.0') ? $subscription->id : $subscription->get_id()), '_stripe_source_id', true); |
|
428 | 428 | |
429 | 429 | // For BW compat will remove in future. |
430 | - if ( empty( $stripe_source_id ) ) { |
|
431 | - $stripe_source_id = get_post_meta( ( WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $subscription->id : $subscription->get_id() ), '_stripe_card_id', true ); |
|
430 | + if (empty($stripe_source_id)) { |
|
431 | + $stripe_source_id = get_post_meta((WC_Stripe_Helper::is_wc_lt('3.0') ? $subscription->id : $subscription->get_id()), '_stripe_card_id', true); |
|
432 | 432 | |
433 | 433 | // Take this opportunity to update the key name. |
434 | - WC_Stripe_Helper::is_wc_lt( '3.0' ) ? update_post_meta( $subscription->id, '_stripe_source_id', $stripe_source_id ) : update_post_meta( $subscription->get_id(), '_stripe_source_id', $stripe_source_id ); |
|
434 | + WC_Stripe_Helper::is_wc_lt('3.0') ? update_post_meta($subscription->id, '_stripe_source_id', $stripe_source_id) : update_post_meta($subscription->get_id(), '_stripe_source_id', $stripe_source_id); |
|
435 | 435 | } |
436 | 436 | |
437 | 437 | $stripe_customer = new WC_Stripe_Customer(); |
438 | - $stripe_customer_id = get_post_meta( ( WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $subscription->id : $subscription->get_id() ), '_stripe_customer_id', true ); |
|
438 | + $stripe_customer_id = get_post_meta((WC_Stripe_Helper::is_wc_lt('3.0') ? $subscription->id : $subscription->get_id()), '_stripe_customer_id', true); |
|
439 | 439 | |
440 | 440 | // If we couldn't find a Stripe customer linked to the subscription, fallback to the user meta data. |
441 | - if ( ! $stripe_customer_id || ! is_string( $stripe_customer_id ) ) { |
|
441 | + if ( ! $stripe_customer_id || ! is_string($stripe_customer_id)) { |
|
442 | 442 | $user_id = $customer_user; |
443 | - $stripe_customer_id = get_user_meta( $user_id, '_stripe_customer_id', true ); |
|
444 | - $stripe_source_id = get_user_meta( $user_id, '_stripe_source_id', true ); |
|
443 | + $stripe_customer_id = get_user_meta($user_id, '_stripe_customer_id', true); |
|
444 | + $stripe_source_id = get_user_meta($user_id, '_stripe_source_id', true); |
|
445 | 445 | |
446 | 446 | // For BW compat will remove in future. |
447 | - if ( empty( $stripe_source_id ) ) { |
|
448 | - $stripe_source_id = get_user_meta( $user_id, '_stripe_card_id', true ); |
|
447 | + if (empty($stripe_source_id)) { |
|
448 | + $stripe_source_id = get_user_meta($user_id, '_stripe_card_id', true); |
|
449 | 449 | |
450 | 450 | // Take this opportunity to update the key name. |
451 | - update_user_meta( $user_id, '_stripe_source_id', $stripe_source_id ); |
|
451 | + update_user_meta($user_id, '_stripe_source_id', $stripe_source_id); |
|
452 | 452 | } |
453 | 453 | } |
454 | 454 | |
455 | 455 | // If we couldn't find a Stripe customer linked to the account, fallback to the order meta data. |
456 | - if ( ( ! $stripe_customer_id || ! is_string( $stripe_customer_id ) ) && false !== $subscription->order ) { |
|
457 | - $stripe_customer_id = get_post_meta( ( WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $subscription->order->id : $subscription->get_parent_id() ), '_stripe_customer_id', true ); |
|
458 | - $stripe_source_id = get_post_meta( ( WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $subscription->order->id : $subscription->get_parent_id() ), '_stripe_source_id', true ); |
|
456 | + if (( ! $stripe_customer_id || ! is_string($stripe_customer_id)) && false !== $subscription->order) { |
|
457 | + $stripe_customer_id = get_post_meta((WC_Stripe_Helper::is_wc_lt('3.0') ? $subscription->order->id : $subscription->get_parent_id()), '_stripe_customer_id', true); |
|
458 | + $stripe_source_id = get_post_meta((WC_Stripe_Helper::is_wc_lt('3.0') ? $subscription->order->id : $subscription->get_parent_id()), '_stripe_source_id', true); |
|
459 | 459 | |
460 | 460 | // For BW compat will remove in future. |
461 | - if ( empty( $stripe_source_id ) ) { |
|
462 | - $stripe_source_id = get_post_meta( ( WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $subscription->order->id : $subscription->get_parent_id() ), '_stripe_card_id', true ); |
|
461 | + if (empty($stripe_source_id)) { |
|
462 | + $stripe_source_id = get_post_meta((WC_Stripe_Helper::is_wc_lt('3.0') ? $subscription->order->id : $subscription->get_parent_id()), '_stripe_card_id', true); |
|
463 | 463 | |
464 | 464 | // Take this opportunity to update the key name. |
465 | - WC_Stripe_Helper::is_wc_lt( '3.0' ) ? update_post_meta( $subscription->order->id, '_stripe_source_id', $stripe_source_id ) : update_post_meta( $subscription->get_parent_id(), '_stripe_source_id', $stripe_source_id ); |
|
465 | + WC_Stripe_Helper::is_wc_lt('3.0') ? update_post_meta($subscription->order->id, '_stripe_source_id', $stripe_source_id) : update_post_meta($subscription->get_parent_id(), '_stripe_source_id', $stripe_source_id); |
|
466 | 466 | } |
467 | 467 | } |
468 | 468 | |
469 | - $stripe_customer->set_id( $stripe_customer_id ); |
|
469 | + $stripe_customer->set_id($stripe_customer_id); |
|
470 | 470 | $sources = $stripe_customer->get_sources(); |
471 | 471 | |
472 | - if ( $sources ) { |
|
473 | - foreach ( $sources as $source ) { |
|
474 | - if ( $source->id === $stripe_source_id ) { |
|
475 | - if ( $source->sepa_debit ) { |
|
472 | + if ($sources) { |
|
473 | + foreach ($sources as $source) { |
|
474 | + if ($source->id === $stripe_source_id) { |
|
475 | + if ($source->sepa_debit) { |
|
476 | 476 | /* translators: 1) last 4 digits of SEPA Direct Debit */ |
477 | - $payment_method_to_display = sprintf( __( 'Via SEPA Direct Debit ending in %1$s', 'woocommerce-gateway-stripe' ), $source->sepa_debit->last4 ); |
|
477 | + $payment_method_to_display = sprintf(__('Via SEPA Direct Debit ending in %1$s', 'woocommerce-gateway-stripe'), $source->sepa_debit->last4); |
|
478 | 478 | } else { |
479 | - $payment_method_to_display = __( 'N/A', 'woocommerce-gateway-stripe' ); |
|
479 | + $payment_method_to_display = __('N/A', 'woocommerce-gateway-stripe'); |
|
480 | 480 | } |
481 | 481 | break; |
482 | 482 | } |
@@ -1,5 +1,5 @@ discard block |
||
1 | 1 | <?php |
2 | -if ( ! defined( 'ABSPATH' ) ) { |
|
2 | +if ( ! defined('ABSPATH')) { |
|
3 | 3 | exit; |
4 | 4 | } |
5 | 5 | |
@@ -19,7 +19,7 @@ discard block |
||
19 | 19 | */ |
20 | 20 | public function display_admin_settings_webhook_description() { |
21 | 21 | /* translators: 1) webhook url */ |
22 | - return sprintf( __( 'You must add the following webhook endpoint <strong style="background-color:#ddd;"> %s </strong> to your <a href="https://dashboard.stripe.com/account/webhooks" target="_blank">Stripe account settings</a>. This will enable you to receive notifications on the charge statuses.', 'woocommerce-gateway-stripe' ), WC_Stripe_Helper::get_webhook_url() ); |
|
22 | + return sprintf(__('You must add the following webhook endpoint <strong style="background-color:#ddd;"> %s </strong> to your <a href="https://dashboard.stripe.com/account/webhooks" target="_blank">Stripe account settings</a>. This will enable you to receive notifications on the charge statuses.', 'woocommerce-gateway-stripe'), WC_Stripe_Helper::get_webhook_url()); |
|
23 | 23 | } |
24 | 24 | |
25 | 25 | /** |
@@ -33,8 +33,8 @@ discard block |
||
33 | 33 | <input id="wc-%1$s-new-payment-method" name="wc-%1$s-new-payment-method" type="checkbox" value="true" style="width:auto;" /> |
34 | 34 | <label for="wc-%1$s-new-payment-method" style="display:inline;">%2$s</label> |
35 | 35 | </p>', |
36 | - esc_attr( $this->id ), |
|
37 | - esc_html( apply_filters( 'wc_stripe_save_to_account_text', __( 'Save payment information to my account for future purchases.', 'woocommerce-gateway-stripe' ) ) ) |
|
36 | + esc_attr($this->id), |
|
37 | + esc_html(apply_filters('wc_stripe_save_to_account_text', __('Save payment information to my account for future purchases.', 'woocommerce-gateway-stripe'))) |
|
38 | 38 | ); |
39 | 39 | } |
40 | 40 | |
@@ -45,7 +45,7 @@ discard block |
||
45 | 45 | * @since 4.0.5 |
46 | 46 | * @param array $error |
47 | 47 | */ |
48 | - public function is_retryable_error( $error ) { |
|
48 | + public function is_retryable_error($error) { |
|
49 | 49 | return ( |
50 | 50 | 'invalid_request_error' === $error->type || |
51 | 51 | 'idempotency_error' === $error->type || |
@@ -62,11 +62,11 @@ discard block |
||
62 | 62 | * @since 4.1.0 |
63 | 63 | * @param array $error |
64 | 64 | */ |
65 | - public function is_same_idempotency_error( $error ) { |
|
65 | + public function is_same_idempotency_error($error) { |
|
66 | 66 | return ( |
67 | 67 | $error && |
68 | 68 | 'idempotency_error' === $error->type && |
69 | - preg_match( '/Keys for idempotent requests can only be used with the same parameters they were first used with./i', $error->message ) |
|
69 | + preg_match('/Keys for idempotent requests can only be used with the same parameters they were first used with./i', $error->message) |
|
70 | 70 | ); |
71 | 71 | } |
72 | 72 | |
@@ -77,11 +77,11 @@ discard block |
||
77 | 77 | * @since 4.1.0 |
78 | 78 | * @param array $error |
79 | 79 | */ |
80 | - public function is_source_already_consumed_error( $error ) { |
|
80 | + public function is_source_already_consumed_error($error) { |
|
81 | 81 | return ( |
82 | 82 | $error && |
83 | 83 | 'invalid_request_error' === $error->type && |
84 | - preg_match( '/The reusable source you provided is consumed because it was previously charged without being attached to a customer or was detached from a customer. To charge a reusable source multiple time you must attach it to a customer first./i', $error->message ) |
|
84 | + preg_match('/The reusable source you provided is consumed because it was previously charged without being attached to a customer or was detached from a customer. To charge a reusable source multiple time you must attach it to a customer first./i', $error->message) |
|
85 | 85 | ); |
86 | 86 | } |
87 | 87 | |
@@ -92,11 +92,11 @@ discard block |
||
92 | 92 | * @since 4.1.0 |
93 | 93 | * @param array $error |
94 | 94 | */ |
95 | - public function is_no_such_customer_error( $error ) { |
|
95 | + public function is_no_such_customer_error($error) { |
|
96 | 96 | return ( |
97 | 97 | $error && |
98 | 98 | 'invalid_request_error' === $error->type && |
99 | - preg_match( '/No such customer/i', $error->message ) |
|
99 | + preg_match('/No such customer/i', $error->message) |
|
100 | 100 | ); |
101 | 101 | } |
102 | 102 | |
@@ -107,11 +107,11 @@ discard block |
||
107 | 107 | * @since 4.1.0 |
108 | 108 | * @param array $error |
109 | 109 | */ |
110 | - public function is_no_such_token_error( $error ) { |
|
110 | + public function is_no_such_token_error($error) { |
|
111 | 111 | return ( |
112 | 112 | $error && |
113 | 113 | 'invalid_request_error' === $error->type && |
114 | - preg_match( '/No such token/i', $error->message ) |
|
114 | + preg_match('/No such token/i', $error->message) |
|
115 | 115 | ); |
116 | 116 | } |
117 | 117 | |
@@ -122,11 +122,11 @@ discard block |
||
122 | 122 | * @since 4.1.0 |
123 | 123 | * @param array $error |
124 | 124 | */ |
125 | - public function is_no_such_source_error( $error ) { |
|
125 | + public function is_no_such_source_error($error) { |
|
126 | 126 | return ( |
127 | 127 | $error && |
128 | 128 | 'invalid_request_error' === $error->type && |
129 | - preg_match( '/No such source/i', $error->message ) |
|
129 | + preg_match('/No such source/i', $error->message) |
|
130 | 130 | ); |
131 | 131 | } |
132 | 132 | |
@@ -137,11 +137,11 @@ discard block |
||
137 | 137 | * @since 4.1.0 |
138 | 138 | * @param array $error |
139 | 139 | */ |
140 | - public function is_no_linked_source_error( $error ) { |
|
140 | + public function is_no_linked_source_error($error) { |
|
141 | 141 | return ( |
142 | 142 | $error && |
143 | 143 | 'invalid_request_error' === $error->type && |
144 | - preg_match( '/does not have a linked source with ID/i', $error->message ) |
|
144 | + preg_match('/does not have a linked source with ID/i', $error->message) |
|
145 | 145 | ); |
146 | 146 | } |
147 | 147 | |
@@ -154,13 +154,13 @@ discard block |
||
154 | 154 | * @param object $error |
155 | 155 | * @return bool |
156 | 156 | */ |
157 | - public function need_update_idempotency_key( $source_object, $error ) { |
|
157 | + public function need_update_idempotency_key($source_object, $error) { |
|
158 | 158 | return ( |
159 | 159 | $error && |
160 | 160 | 1 < $this->retry_interval && |
161 | - ! empty( $source_object ) && |
|
161 | + ! empty($source_object) && |
|
162 | 162 | 'chargeable' === $source_object->status && |
163 | - self::is_same_idempotency_error( $error ) |
|
163 | + self::is_same_idempotency_error($error) |
|
164 | 164 | ); |
165 | 165 | } |
166 | 166 | |
@@ -170,8 +170,8 @@ discard block |
||
170 | 170 | * @since 4.1.3 |
171 | 171 | */ |
172 | 172 | public function is_available() { |
173 | - if ( 'yes' === $this->enabled ) { |
|
174 | - if ( ! $this->secret_key || ! $this->publishable_key ) { |
|
173 | + if ('yes' === $this->enabled) { |
|
174 | + if ( ! $this->secret_key || ! $this->publishable_key) { |
|
175 | 175 | return false; |
176 | 176 | } |
177 | 177 | return true; |
@@ -188,12 +188,12 @@ discard block |
||
188 | 188 | * @param int $order_id |
189 | 189 | * @return bool |
190 | 190 | */ |
191 | - public function maybe_process_pre_orders( $order_id ) { |
|
191 | + public function maybe_process_pre_orders($order_id) { |
|
192 | 192 | return ( |
193 | 193 | WC_Stripe_Helper::is_pre_orders_exists() && |
194 | - $this->pre_orders->is_pre_order( $order_id ) && |
|
195 | - WC_Pre_Orders_Order::order_requires_payment_tokenization( $order_id ) && |
|
196 | - ! is_wc_endpoint_url( 'order-pay' ) |
|
194 | + $this->pre_orders->is_pre_order($order_id) && |
|
195 | + WC_Pre_Orders_Order::order_requires_payment_tokenization($order_id) && |
|
196 | + ! is_wc_endpoint_url('order-pay') |
|
197 | 197 | ); |
198 | 198 | } |
199 | 199 | |
@@ -203,8 +203,8 @@ discard block |
||
203 | 203 | * @since 1.0.0 |
204 | 204 | * @version 4.0.0 |
205 | 205 | */ |
206 | - public function add_admin_notice( $slug, $class, $message, $dismissible = false ) { |
|
207 | - $this->notices[ $slug ] = array( |
|
206 | + public function add_admin_notice($slug, $class, $message, $dismissible = false) { |
|
207 | + $this->notices[$slug] = array( |
|
208 | 208 | 'class' => $class, |
209 | 209 | 'message' => $message, |
210 | 210 | 'dismissible' => $dismissible, |
@@ -220,7 +220,7 @@ discard block |
||
220 | 220 | * @return array |
221 | 221 | */ |
222 | 222 | public function payment_icons() { |
223 | - return apply_filters( 'wc_stripe_payment_icons', array( |
|
223 | + return apply_filters('wc_stripe_payment_icons', array( |
|
224 | 224 | 'visa' => '<img src="' . WC_STRIPE_PLUGIN_URL . '/assets/images/visa.svg" class="stripe-visa-icon stripe-icon" alt="Visa" />', |
225 | 225 | 'amex' => '<img src="' . WC_STRIPE_PLUGIN_URL . '/assets/images/amex.svg" class="stripe-amex-icon stripe-icon" alt="American Express" />', |
226 | 226 | 'mastercard' => '<img src="' . WC_STRIPE_PLUGIN_URL . '/assets/images/mastercard.svg" class="stripe-mastercard-icon stripe-icon" alt="Mastercard" />', |
@@ -237,7 +237,7 @@ discard block |
||
237 | 237 | 'multibanco' => '<img src="' . WC_STRIPE_PLUGIN_URL . '/assets/images/multibanco.svg" class="stripe-multibanco-icon stripe-icon" alt="Multibanco" />', |
238 | 238 | 'sofort' => '<img src="' . WC_STRIPE_PLUGIN_URL . '/assets/images/sofort.svg" class="stripe-sofort-icon stripe-icon" alt="SOFORT" />', |
239 | 239 | 'sepa' => '<img src="' . WC_STRIPE_PLUGIN_URL . '/assets/images/sepa.svg" class="stripe-sepa-icon stripe-icon" alt="SEPA" />', |
240 | - ) ); |
|
240 | + )); |
|
241 | 241 | } |
242 | 242 | |
243 | 243 | /** |
@@ -248,10 +248,10 @@ discard block |
||
248 | 248 | * @version 4.0.0 |
249 | 249 | * @param object $order |
250 | 250 | */ |
251 | - public function validate_minimum_order_amount( $order ) { |
|
252 | - if ( $order->get_total() * 100 < WC_Stripe_Helper::get_minimum_amount() ) { |
|
251 | + public function validate_minimum_order_amount($order) { |
|
252 | + if ($order->get_total() * 100 < WC_Stripe_Helper::get_minimum_amount()) { |
|
253 | 253 | /* translators: 1) dollar amount */ |
254 | - throw new WC_Stripe_Exception( 'Did not meet minimum amount', sprintf( __( 'Sorry, the minimum allowed order total is %1$s to use this payment method.', 'woocommerce-gateway-stripe' ), wc_price( WC_Stripe_Helper::get_minimum_amount() / 100 ) ) ); |
|
254 | + throw new WC_Stripe_Exception('Did not meet minimum amount', sprintf(__('Sorry, the minimum allowed order total is %1$s to use this payment method.', 'woocommerce-gateway-stripe'), wc_price(WC_Stripe_Helper::get_minimum_amount() / 100))); |
|
255 | 255 | } |
256 | 256 | } |
257 | 257 | |
@@ -261,14 +261,14 @@ discard block |
||
261 | 261 | * @since 4.0.0 |
262 | 262 | * @version 4.0.0 |
263 | 263 | */ |
264 | - public function get_transaction_url( $order ) { |
|
265 | - if ( $this->testmode ) { |
|
264 | + public function get_transaction_url($order) { |
|
265 | + if ($this->testmode) { |
|
266 | 266 | $this->view_transaction_url = 'https://dashboard.stripe.com/test/payments/%s'; |
267 | 267 | } else { |
268 | 268 | $this->view_transaction_url = 'https://dashboard.stripe.com/payments/%s'; |
269 | 269 | } |
270 | 270 | |
271 | - return parent::get_transaction_url( $order ); |
|
271 | + return parent::get_transaction_url($order); |
|
272 | 272 | } |
273 | 273 | |
274 | 274 | /** |
@@ -277,15 +277,15 @@ discard block |
||
277 | 277 | * @since 4.0.0 |
278 | 278 | * @version 4.0.0 |
279 | 279 | */ |
280 | - public function get_stripe_customer_id( $order ) { |
|
281 | - $customer = get_user_meta( WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $order->customer_user : $order->get_customer_id(), '_stripe_customer_id', true ); |
|
280 | + public function get_stripe_customer_id($order) { |
|
281 | + $customer = get_user_meta(WC_Stripe_Helper::is_wc_lt('3.0') ? $order->customer_user : $order->get_customer_id(), '_stripe_customer_id', true); |
|
282 | 282 | |
283 | - if ( empty( $customer ) ) { |
|
283 | + if (empty($customer)) { |
|
284 | 284 | // Try to get it via the order. |
285 | - if ( WC_Stripe_Helper::is_wc_lt( '3.0' ) ) { |
|
286 | - return get_post_meta( $order->id, '_stripe_customer_id', true ); |
|
285 | + if (WC_Stripe_Helper::is_wc_lt('3.0')) { |
|
286 | + return get_post_meta($order->id, '_stripe_customer_id', true); |
|
287 | 287 | } else { |
288 | - return $order->get_meta( '_stripe_customer_id', true ); |
|
288 | + return $order->get_meta('_stripe_customer_id', true); |
|
289 | 289 | } |
290 | 290 | } else { |
291 | 291 | return $customer; |
@@ -302,23 +302,23 @@ discard block |
||
302 | 302 | * @param object $order |
303 | 303 | * @param int $id Stripe session id. |
304 | 304 | */ |
305 | - public function get_stripe_return_url( $order = null, $id = null ) { |
|
306 | - if ( is_object( $order ) ) { |
|
307 | - if ( empty( $id ) ) { |
|
305 | + public function get_stripe_return_url($order = null, $id = null) { |
|
306 | + if (is_object($order)) { |
|
307 | + if (empty($id)) { |
|
308 | 308 | $id = uniqid(); |
309 | 309 | } |
310 | 310 | |
311 | - $order_id = WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $order->id : $order->get_id(); |
|
311 | + $order_id = WC_Stripe_Helper::is_wc_lt('3.0') ? $order->id : $order->get_id(); |
|
312 | 312 | |
313 | 313 | $args = array( |
314 | 314 | 'utm_nooverride' => '1', |
315 | 315 | 'order_id' => $order_id, |
316 | 316 | ); |
317 | 317 | |
318 | - return esc_url_raw( add_query_arg( $args, $this->get_return_url( $order ) ) ); |
|
318 | + return esc_url_raw(add_query_arg($args, $this->get_return_url($order))); |
|
319 | 319 | } |
320 | 320 | |
321 | - return esc_url_raw( add_query_arg( array( 'utm_nooverride' => '1' ), $this->get_return_url() ) ); |
|
321 | + return esc_url_raw(add_query_arg(array('utm_nooverride' => '1'), $this->get_return_url())); |
|
322 | 322 | } |
323 | 323 | |
324 | 324 | /** |
@@ -326,8 +326,8 @@ discard block |
||
326 | 326 | * @param int $order_id |
327 | 327 | * @return boolean |
328 | 328 | */ |
329 | - public function has_subscription( $order_id ) { |
|
330 | - return ( function_exists( 'wcs_order_contains_subscription' ) && ( wcs_order_contains_subscription( $order_id ) || wcs_is_subscription( $order_id ) || wcs_order_contains_renewal( $order_id ) ) ); |
|
329 | + public function has_subscription($order_id) { |
|
330 | + return (function_exists('wcs_order_contains_subscription') && (wcs_order_contains_subscription($order_id) || wcs_is_subscription($order_id) || wcs_order_contains_renewal($order_id))); |
|
331 | 331 | } |
332 | 332 | |
333 | 333 | /** |
@@ -339,34 +339,33 @@ discard block |
||
339 | 339 | * @param object $prepared_source |
340 | 340 | * @return array() |
341 | 341 | */ |
342 | - public function generate_payment_request( $order, $prepared_source ) { |
|
343 | - $settings = get_option( 'woocommerce_stripe_settings', array() ); |
|
344 | - $statement_descriptor = ! empty( $settings['statement_descriptor'] ) ? str_replace( "'", '', $settings['statement_descriptor'] ) : ''; |
|
345 | - $capture = ! empty( $settings['capture'] ) && 'yes' === $settings['capture'] ? true : false; |
|
342 | + public function generate_payment_request($order, $prepared_source) { |
|
343 | + $settings = get_option('woocommerce_stripe_settings', array()); |
|
344 | + $statement_descriptor = ! empty($settings['statement_descriptor']) ? str_replace("'", '', $settings['statement_descriptor']) : ''; |
|
345 | + $capture = ! empty($settings['capture']) && 'yes' === $settings['capture'] ? true : false; |
|
346 | 346 | $post_data = array(); |
347 | - $post_data['currency'] = strtolower( WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $order->get_order_currency() : $order->get_currency() ); |
|
348 | - $post_data['amount'] = WC_Stripe_Helper::get_stripe_amount( $order->get_total(), $post_data['currency'] ); |
|
347 | + $post_data['currency'] = strtolower(WC_Stripe_Helper::is_wc_lt('3.0') ? $order->get_order_currency() : $order->get_currency()); |
|
348 | + $post_data['amount'] = WC_Stripe_Helper::get_stripe_amount($order->get_total(), $post_data['currency']); |
|
349 | 349 | /* translators: 1) blog name 2) order number */ |
350 | - $post_data['description'] = sprintf( __( '%1$s - Order %2$s', 'woocommerce-gateway-stripe' ), wp_specialchars_decode( get_bloginfo( 'name' ), ENT_QUOTES ), $order->get_order_number() ); |
|
351 | - $billing_email = WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $order->billing_email : $order->get_billing_email(); |
|
352 | - $billing_first_name = WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $order->billing_first_name : $order->get_billing_first_name(); |
|
353 | - $billing_last_name = WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $order->billing_last_name : $order->get_billing_last_name(); |
|
350 | + $post_data['description'] = sprintf(__('%1$s - Order %2$s', 'woocommerce-gateway-stripe'), wp_specialchars_decode(get_bloginfo('name'), ENT_QUOTES), $order->get_order_number()); |
|
351 | + $billing_email = WC_Stripe_Helper::is_wc_lt('3.0') ? $order->billing_email : $order->get_billing_email(); |
|
352 | + $billing_first_name = WC_Stripe_Helper::is_wc_lt('3.0') ? $order->billing_first_name : $order->get_billing_first_name(); |
|
353 | + $billing_last_name = WC_Stripe_Helper::is_wc_lt('3.0') ? $order->billing_last_name : $order->get_billing_last_name(); |
|
354 | 354 | |
355 | - if ( ! empty( $billing_email ) && apply_filters( 'wc_stripe_send_stripe_receipt', false ) ) { |
|
355 | + if ( ! empty($billing_email) && apply_filters('wc_stripe_send_stripe_receipt', false)) { |
|
356 | 356 | $post_data['receipt_email'] = $billing_email; |
357 | 357 | } |
358 | 358 | |
359 | - switch ( WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $order->payment_method : $order->get_payment_method() ) { |
|
360 | - case 'stripe': |
|
361 | - if ( ! empty( $statement_descriptor ) ) { |
|
362 | - $post_data['statement_descriptor'] = WC_Stripe_Helper::clean_statement_descriptor( $statement_descriptor ); |
|
359 | + switch (WC_Stripe_Helper::is_wc_lt('3.0') ? $order->payment_method : $order->get_payment_method()) { |
|
360 | + case 'stripe' : if ( ! empty($statement_descriptor)) { |
|
361 | + $post_data['statement_descriptor'] = WC_Stripe_Helper::clean_statement_descriptor($statement_descriptor); |
|
363 | 362 | } |
364 | 363 | |
365 | 364 | $post_data['capture'] = $capture ? 'true' : 'false'; |
366 | 365 | break; |
367 | 366 | case 'stripe_sepa': |
368 | - if ( ! empty( $statement_descriptor ) ) { |
|
369 | - $post_data['statement_descriptor'] = WC_Stripe_Helper::clean_statement_descriptor( $statement_descriptor ); |
|
367 | + if ( ! empty($statement_descriptor)) { |
|
368 | + $post_data['statement_descriptor'] = WC_Stripe_Helper::clean_statement_descriptor($statement_descriptor); |
|
370 | 369 | } |
371 | 370 | break; |
372 | 371 | } |
@@ -374,25 +373,25 @@ discard block |
||
374 | 373 | $post_data['expand[]'] = 'balance_transaction'; |
375 | 374 | |
376 | 375 | $metadata = array( |
377 | - __( 'customer_name', 'woocommerce-gateway-stripe' ) => sanitize_text_field( $billing_first_name ) . ' ' . sanitize_text_field( $billing_last_name ), |
|
378 | - __( 'customer_email', 'woocommerce-gateway-stripe' ) => sanitize_email( $billing_email ), |
|
376 | + __('customer_name', 'woocommerce-gateway-stripe') => sanitize_text_field($billing_first_name) . ' ' . sanitize_text_field($billing_last_name), |
|
377 | + __('customer_email', 'woocommerce-gateway-stripe') => sanitize_email($billing_email), |
|
379 | 378 | 'order_id' => $order->get_order_number(), |
380 | 379 | ); |
381 | 380 | |
382 | - if ( $this->has_subscription( WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $order->id : $order->get_id() ) ) { |
|
381 | + if ($this->has_subscription(WC_Stripe_Helper::is_wc_lt('3.0') ? $order->id : $order->get_id())) { |
|
383 | 382 | $metadata += array( |
384 | 383 | 'payment_type' => 'recurring', |
385 | - 'site_url' => esc_url( get_site_url() ), |
|
384 | + 'site_url' => esc_url(get_site_url()), |
|
386 | 385 | ); |
387 | 386 | } |
388 | 387 | |
389 | - $post_data['metadata'] = apply_filters( 'wc_stripe_payment_metadata', $metadata, $order, $prepared_source ); |
|
388 | + $post_data['metadata'] = apply_filters('wc_stripe_payment_metadata', $metadata, $order, $prepared_source); |
|
390 | 389 | |
391 | - if ( $prepared_source->customer ) { |
|
390 | + if ($prepared_source->customer) { |
|
392 | 391 | $post_data['customer'] = $prepared_source->customer; |
393 | 392 | } |
394 | 393 | |
395 | - if ( $prepared_source->source ) { |
|
394 | + if ($prepared_source->source) { |
|
396 | 395 | $post_data['source'] = $prepared_source->source; |
397 | 396 | } |
398 | 397 | |
@@ -404,83 +403,83 @@ discard block |
||
404 | 403 | * @param WC_Order $order |
405 | 404 | * @param object $source |
406 | 405 | */ |
407 | - return apply_filters( 'wc_stripe_generate_payment_request', $post_data, $order, $prepared_source ); |
|
406 | + return apply_filters('wc_stripe_generate_payment_request', $post_data, $order, $prepared_source); |
|
408 | 407 | } |
409 | 408 | |
410 | 409 | /** |
411 | 410 | * Store extra meta data for an order from a Stripe Response. |
412 | 411 | */ |
413 | - public function process_response( $response, $order ) { |
|
414 | - WC_Stripe_Logger::log( 'Processing response: ' . print_r( $response, true ) ); |
|
412 | + public function process_response($response, $order) { |
|
413 | + WC_Stripe_Logger::log('Processing response: ' . print_r($response, true)); |
|
415 | 414 | |
416 | - $order_id = WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $order->id : $order->get_id(); |
|
415 | + $order_id = WC_Stripe_Helper::is_wc_lt('3.0') ? $order->id : $order->get_id(); |
|
417 | 416 | |
418 | - $captured = ( isset( $response->captured ) && $response->captured ) ? 'yes' : 'no'; |
|
417 | + $captured = (isset($response->captured) && $response->captured) ? 'yes' : 'no'; |
|
419 | 418 | |
420 | 419 | // Store charge data. |
421 | - WC_Stripe_Helper::is_wc_lt( '3.0' ) ? update_post_meta( $order_id, '_stripe_charge_captured', $captured ) : $order->update_meta_data( '_stripe_charge_captured', $captured ); |
|
420 | + WC_Stripe_Helper::is_wc_lt('3.0') ? update_post_meta($order_id, '_stripe_charge_captured', $captured) : $order->update_meta_data('_stripe_charge_captured', $captured); |
|
422 | 421 | |
423 | 422 | // Store other data such as fees. |
424 | - if ( isset( $response->balance_transaction ) && isset( $response->balance_transaction->fee ) ) { |
|
423 | + if (isset($response->balance_transaction) && isset($response->balance_transaction->fee)) { |
|
425 | 424 | // Fees and Net needs to both come from Stripe to be accurate as the returned |
426 | 425 | // values are in the local currency of the Stripe account, not from WC. |
427 | - $fee = ! empty( $response->balance_transaction->fee ) ? WC_Stripe_Helper::format_balance_fee( $response->balance_transaction, 'fee' ) : 0; |
|
428 | - $net = ! empty( $response->balance_transaction->net ) ? WC_Stripe_Helper::format_balance_fee( $response->balance_transaction, 'net' ) : 0; |
|
429 | - WC_Stripe_Helper::update_stripe_fee( $order, $fee ); |
|
430 | - WC_Stripe_Helper::update_stripe_net( $order, $net ); |
|
426 | + $fee = ! empty($response->balance_transaction->fee) ? WC_Stripe_Helper::format_balance_fee($response->balance_transaction, 'fee') : 0; |
|
427 | + $net = ! empty($response->balance_transaction->net) ? WC_Stripe_Helper::format_balance_fee($response->balance_transaction, 'net') : 0; |
|
428 | + WC_Stripe_Helper::update_stripe_fee($order, $fee); |
|
429 | + WC_Stripe_Helper::update_stripe_net($order, $net); |
|
431 | 430 | |
432 | 431 | // Store currency stripe. |
433 | - $currency = ! empty( $response->balance_transaction->currency ) ? strtoupper( $response->balance_transaction->currency ) : null; |
|
434 | - WC_Stripe_Helper::update_stripe_currency( $order, $currency ); |
|
432 | + $currency = ! empty($response->balance_transaction->currency) ? strtoupper($response->balance_transaction->currency) : null; |
|
433 | + WC_Stripe_Helper::update_stripe_currency($order, $currency); |
|
435 | 434 | } |
436 | 435 | |
437 | - if ( 'yes' === $captured ) { |
|
436 | + if ('yes' === $captured) { |
|
438 | 437 | /** |
439 | 438 | * Charge can be captured but in a pending state. Payment methods |
440 | 439 | * that are asynchronous may take couple days to clear. Webhook will |
441 | 440 | * take care of the status changes. |
442 | 441 | */ |
443 | - if ( 'pending' === $response->status ) { |
|
444 | - $order_stock_reduced = WC_Stripe_Helper::is_wc_lt( '3.0' ) ? get_post_meta( $order_id, '_order_stock_reduced', true ) : $order->get_meta( '_order_stock_reduced', true ); |
|
442 | + if ('pending' === $response->status) { |
|
443 | + $order_stock_reduced = WC_Stripe_Helper::is_wc_lt('3.0') ? get_post_meta($order_id, '_order_stock_reduced', true) : $order->get_meta('_order_stock_reduced', true); |
|
445 | 444 | |
446 | - if ( ! $order_stock_reduced ) { |
|
447 | - WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $order->reduce_order_stock() : wc_reduce_stock_levels( $order_id ); |
|
445 | + if ( ! $order_stock_reduced) { |
|
446 | + WC_Stripe_Helper::is_wc_lt('3.0') ? $order->reduce_order_stock() : wc_reduce_stock_levels($order_id); |
|
448 | 447 | } |
449 | 448 | |
450 | - WC_Stripe_Helper::is_wc_lt( '3.0' ) ? update_post_meta( $order_id, '_transaction_id', $response->id ) : $order->set_transaction_id( $response->id ); |
|
449 | + WC_Stripe_Helper::is_wc_lt('3.0') ? update_post_meta($order_id, '_transaction_id', $response->id) : $order->set_transaction_id($response->id); |
|
451 | 450 | /* translators: transaction id */ |
452 | - $order->update_status( 'on-hold', sprintf( __( 'Stripe charge awaiting payment: %s.', 'woocommerce-gateway-stripe' ), $response->id ) ); |
|
451 | + $order->update_status('on-hold', sprintf(__('Stripe charge awaiting payment: %s.', 'woocommerce-gateway-stripe'), $response->id)); |
|
453 | 452 | } |
454 | 453 | |
455 | - if ( 'succeeded' === $response->status ) { |
|
456 | - $order->payment_complete( $response->id ); |
|
454 | + if ('succeeded' === $response->status) { |
|
455 | + $order->payment_complete($response->id); |
|
457 | 456 | |
458 | 457 | /* translators: transaction id */ |
459 | - $message = sprintf( __( 'Stripe charge complete (Charge ID: %s)', 'woocommerce-gateway-stripe' ), $response->id ); |
|
460 | - $order->add_order_note( $message ); |
|
458 | + $message = sprintf(__('Stripe charge complete (Charge ID: %s)', 'woocommerce-gateway-stripe'), $response->id); |
|
459 | + $order->add_order_note($message); |
|
461 | 460 | } |
462 | 461 | |
463 | - if ( 'failed' === $response->status ) { |
|
464 | - $localized_message = __( 'Payment processing failed. Please retry.', 'woocommerce-gateway-stripe' ); |
|
465 | - $order->add_order_note( $localized_message ); |
|
466 | - throw new WC_Stripe_Exception( print_r( $response, true ), $localized_message ); |
|
462 | + if ('failed' === $response->status) { |
|
463 | + $localized_message = __('Payment processing failed. Please retry.', 'woocommerce-gateway-stripe'); |
|
464 | + $order->add_order_note($localized_message); |
|
465 | + throw new WC_Stripe_Exception(print_r($response, true), $localized_message); |
|
467 | 466 | } |
468 | 467 | } else { |
469 | - WC_Stripe_Helper::is_wc_lt( '3.0' ) ? update_post_meta( $order_id, '_transaction_id', $response->id ) : $order->set_transaction_id( $response->id ); |
|
468 | + WC_Stripe_Helper::is_wc_lt('3.0') ? update_post_meta($order_id, '_transaction_id', $response->id) : $order->set_transaction_id($response->id); |
|
470 | 469 | |
471 | - if ( $order->has_status( array( 'pending', 'failed' ) ) ) { |
|
472 | - WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $order->reduce_order_stock() : wc_reduce_stock_levels( $order_id ); |
|
470 | + if ($order->has_status(array('pending', 'failed'))) { |
|
471 | + WC_Stripe_Helper::is_wc_lt('3.0') ? $order->reduce_order_stock() : wc_reduce_stock_levels($order_id); |
|
473 | 472 | } |
474 | 473 | |
475 | 474 | /* translators: transaction id */ |
476 | - $order->update_status( 'on-hold', sprintf( __( 'Stripe charge authorized (Charge ID: %s). Process order to take payment, or cancel to remove the pre-authorization.', 'woocommerce-gateway-stripe' ), $response->id ) ); |
|
475 | + $order->update_status('on-hold', sprintf(__('Stripe charge authorized (Charge ID: %s). Process order to take payment, or cancel to remove the pre-authorization.', 'woocommerce-gateway-stripe'), $response->id)); |
|
477 | 476 | } |
478 | 477 | |
479 | - if ( is_callable( array( $order, 'save' ) ) ) { |
|
478 | + if (is_callable(array($order, 'save'))) { |
|
480 | 479 | $order->save(); |
481 | 480 | } |
482 | 481 | |
483 | - do_action( 'wc_gateway_stripe_process_response', $response, $order ); |
|
482 | + do_action('wc_gateway_stripe_process_response', $response, $order); |
|
484 | 483 | |
485 | 484 | return $response; |
486 | 485 | } |
@@ -493,10 +492,10 @@ discard block |
||
493 | 492 | * @param int $order_id |
494 | 493 | * @return null |
495 | 494 | */ |
496 | - public function send_failed_order_email( $order_id ) { |
|
495 | + public function send_failed_order_email($order_id) { |
|
497 | 496 | $emails = WC()->mailer()->get_emails(); |
498 | - if ( ! empty( $emails ) && ! empty( $order_id ) ) { |
|
499 | - $emails['WC_Email_Failed_Order']->trigger( $order_id ); |
|
497 | + if ( ! empty($emails) && ! empty($order_id)) { |
|
498 | + $emails['WC_Email_Failed_Order']->trigger($order_id); |
|
500 | 499 | } |
501 | 500 | } |
502 | 501 | |
@@ -508,36 +507,36 @@ discard block |
||
508 | 507 | * @param object $order |
509 | 508 | * @return object $details |
510 | 509 | */ |
511 | - public function get_owner_details( $order ) { |
|
512 | - $billing_first_name = WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $order->billing_first_name : $order->get_billing_first_name(); |
|
513 | - $billing_last_name = WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $order->billing_last_name : $order->get_billing_last_name(); |
|
510 | + public function get_owner_details($order) { |
|
511 | + $billing_first_name = WC_Stripe_Helper::is_wc_lt('3.0') ? $order->billing_first_name : $order->get_billing_first_name(); |
|
512 | + $billing_last_name = WC_Stripe_Helper::is_wc_lt('3.0') ? $order->billing_last_name : $order->get_billing_last_name(); |
|
514 | 513 | |
515 | 514 | $details = array(); |
516 | 515 | |
517 | 516 | $name = $billing_first_name . ' ' . $billing_last_name; |
518 | - $email = WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $order->billing_email : $order->get_billing_email(); |
|
519 | - $phone = WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $order->billing_phone : $order->get_billing_phone(); |
|
517 | + $email = WC_Stripe_Helper::is_wc_lt('3.0') ? $order->billing_email : $order->get_billing_email(); |
|
518 | + $phone = WC_Stripe_Helper::is_wc_lt('3.0') ? $order->billing_phone : $order->get_billing_phone(); |
|
520 | 519 | |
521 | - if ( ! empty( $phone ) ) { |
|
520 | + if ( ! empty($phone)) { |
|
522 | 521 | $details['phone'] = $phone; |
523 | 522 | } |
524 | 523 | |
525 | - if ( ! empty( $name ) ) { |
|
524 | + if ( ! empty($name)) { |
|
526 | 525 | $details['name'] = $name; |
527 | 526 | } |
528 | 527 | |
529 | - if ( ! empty( $email ) ) { |
|
528 | + if ( ! empty($email)) { |
|
530 | 529 | $details['email'] = $email; |
531 | 530 | } |
532 | 531 | |
533 | - $details['address']['line1'] = WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $order->billing_address_1 : $order->get_billing_address_1(); |
|
534 | - $details['address']['line2'] = WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $order->billing_address_2 : $order->get_billing_address_2(); |
|
535 | - $details['address']['state'] = WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $order->billing_state : $order->get_billing_state(); |
|
536 | - $details['address']['city'] = WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $order->billing_city : $order->get_billing_city(); |
|
537 | - $details['address']['postal_code'] = WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $order->billing_postcode : $order->get_billing_postcode(); |
|
538 | - $details['address']['country'] = WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $order->billing_country : $order->get_billing_country(); |
|
532 | + $details['address']['line1'] = WC_Stripe_Helper::is_wc_lt('3.0') ? $order->billing_address_1 : $order->get_billing_address_1(); |
|
533 | + $details['address']['line2'] = WC_Stripe_Helper::is_wc_lt('3.0') ? $order->billing_address_2 : $order->get_billing_address_2(); |
|
534 | + $details['address']['state'] = WC_Stripe_Helper::is_wc_lt('3.0') ? $order->billing_state : $order->get_billing_state(); |
|
535 | + $details['address']['city'] = WC_Stripe_Helper::is_wc_lt('3.0') ? $order->billing_city : $order->get_billing_city(); |
|
536 | + $details['address']['postal_code'] = WC_Stripe_Helper::is_wc_lt('3.0') ? $order->billing_postcode : $order->get_billing_postcode(); |
|
537 | + $details['address']['country'] = WC_Stripe_Helper::is_wc_lt('3.0') ? $order->billing_country : $order->get_billing_country(); |
|
539 | 538 | |
540 | - return (object) apply_filters( 'wc_stripe_owner_details', $details, $order ); |
|
539 | + return (object) apply_filters('wc_stripe_owner_details', $details, $order); |
|
541 | 540 | } |
542 | 541 | |
543 | 542 | /** |
@@ -546,15 +545,15 @@ discard block |
||
546 | 545 | * @since 4.0.3 |
547 | 546 | * @param string $source_id The source ID to get source object for. |
548 | 547 | */ |
549 | - public function get_source_object( $source_id = '' ) { |
|
550 | - if ( empty( $source_id ) ) { |
|
548 | + public function get_source_object($source_id = '') { |
|
549 | + if (empty($source_id)) { |
|
551 | 550 | return ''; |
552 | 551 | } |
553 | 552 | |
554 | - $source_object = WC_Stripe_API::retrieve( 'sources/' . $source_id ); |
|
553 | + $source_object = WC_Stripe_API::retrieve('sources/' . $source_id); |
|
555 | 554 | |
556 | - if ( ! empty( $source_object->error ) ) { |
|
557 | - throw new WC_Stripe_Exception( print_r( $source_object, true ), $source_object->error->message ); |
|
555 | + if ( ! empty($source_object->error)) { |
|
556 | + throw new WC_Stripe_Exception(print_r($source_object, true), $source_object->error->message); |
|
558 | 557 | } |
559 | 558 | |
560 | 559 | return $source_object; |
@@ -568,12 +567,12 @@ discard block |
||
568 | 567 | * @param object $source_object |
569 | 568 | * @return bool |
570 | 569 | */ |
571 | - public function is_3ds_required( $source_object ) { |
|
572 | - return apply_filters( 'wc_stripe_require_3ds', ( |
|
573 | - $source_object && ! empty( $source_object->card ) ) && |
|
574 | - ( 'card' === $source_object->type && 'required' === $source_object->card->three_d_secure || |
|
575 | - ( $this->three_d_secure && 'recommended' === $source_object->card->three_d_secure ) |
|
576 | - ), $source_object, $this->three_d_secure ); |
|
570 | + public function is_3ds_required($source_object) { |
|
571 | + return apply_filters('wc_stripe_require_3ds', ( |
|
572 | + $source_object && ! empty($source_object->card) ) && |
|
573 | + ('card' === $source_object->type && 'required' === $source_object->card->three_d_secure || |
|
574 | + ($this->three_d_secure && 'recommended' === $source_object->card->three_d_secure) |
|
575 | + ), $source_object, $this->three_d_secure); |
|
577 | 576 | } |
578 | 577 | |
579 | 578 | /** |
@@ -583,8 +582,8 @@ discard block |
||
583 | 582 | * @param object $source_object |
584 | 583 | * @return bool |
585 | 584 | */ |
586 | - public function is_3ds_card( $source_object ) { |
|
587 | - return ( $source_object && 'three_d_secure' === $source_object->type ); |
|
585 | + public function is_3ds_card($source_object) { |
|
586 | + return ($source_object && 'three_d_secure' === $source_object->type); |
|
588 | 587 | } |
589 | 588 | |
590 | 589 | /** |
@@ -594,8 +593,8 @@ discard block |
||
594 | 593 | * @param object $source_object |
595 | 594 | * @return bool |
596 | 595 | */ |
597 | - public function is_prepaid_card( $source_object ) { |
|
598 | - return ( $source_object && 'token' === $source_object->object && 'prepaid' === $source_object->card->funding ); |
|
596 | + public function is_prepaid_card($source_object) { |
|
597 | + return ($source_object && 'token' === $source_object->object && 'prepaid' === $source_object->card->funding); |
|
599 | 598 | } |
600 | 599 | |
601 | 600 | /** |
@@ -605,8 +604,8 @@ discard block |
||
605 | 604 | * @param string $source_id |
606 | 605 | * @return bool |
607 | 606 | */ |
608 | - public function is_type_legacy_card( $source_id ) { |
|
609 | - return ( preg_match( '/^card_/', $source_id ) ); |
|
607 | + public function is_type_legacy_card($source_id) { |
|
608 | + return (preg_match('/^card_/', $source_id)); |
|
610 | 609 | } |
611 | 610 | |
612 | 611 | /** |
@@ -616,9 +615,9 @@ discard block |
||
616 | 615 | * @return bool |
617 | 616 | */ |
618 | 617 | public function is_using_saved_payment_method() { |
619 | - $payment_method = isset( $_POST['payment_method'] ) ? wc_clean( $_POST['payment_method'] ) : 'stripe'; |
|
618 | + $payment_method = isset($_POST['payment_method']) ? wc_clean($_POST['payment_method']) : 'stripe'; |
|
620 | 619 | |
621 | - return ( isset( $_POST[ 'wc-' . $payment_method . '-payment-token' ] ) && 'new' !== $_POST[ 'wc-' . $payment_method . '-payment-token' ] ); |
|
620 | + return (isset($_POST['wc-' . $payment_method . '-payment-token']) && 'new' !== $_POST['wc-' . $payment_method . '-payment-token']); |
|
622 | 621 | } |
623 | 622 | |
624 | 623 | /** |
@@ -631,22 +630,22 @@ discard block |
||
631 | 630 | * @param string $return_url |
632 | 631 | * @return mixed |
633 | 632 | */ |
634 | - public function create_3ds_source( $order, $source_object, $return_url = '' ) { |
|
635 | - $currency = WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $order->get_order_currency() : $order->get_currency(); |
|
636 | - $order_id = WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $order->id : $order->get_id(); |
|
637 | - $return_url = empty( $return_url ) ? $this->get_stripe_return_url( $order ) : $return_url; |
|
633 | + public function create_3ds_source($order, $source_object, $return_url = '') { |
|
634 | + $currency = WC_Stripe_Helper::is_wc_lt('3.0') ? $order->get_order_currency() : $order->get_currency(); |
|
635 | + $order_id = WC_Stripe_Helper::is_wc_lt('3.0') ? $order->id : $order->get_id(); |
|
636 | + $return_url = empty($return_url) ? $this->get_stripe_return_url($order) : $return_url; |
|
638 | 637 | |
639 | 638 | $post_data = array(); |
640 | - $post_data['amount'] = WC_Stripe_Helper::get_stripe_amount( $order->get_total(), $currency ); |
|
641 | - $post_data['currency'] = strtolower( $currency ); |
|
639 | + $post_data['amount'] = WC_Stripe_Helper::get_stripe_amount($order->get_total(), $currency); |
|
640 | + $post_data['currency'] = strtolower($currency); |
|
642 | 641 | $post_data['type'] = 'three_d_secure'; |
643 | - $post_data['owner'] = $this->get_owner_details( $order ); |
|
644 | - $post_data['three_d_secure'] = array( 'card' => $source_object->id ); |
|
645 | - $post_data['redirect'] = array( 'return_url' => $return_url ); |
|
642 | + $post_data['owner'] = $this->get_owner_details($order); |
|
643 | + $post_data['three_d_secure'] = array('card' => $source_object->id); |
|
644 | + $post_data['redirect'] = array('return_url' => $return_url); |
|
646 | 645 | |
647 | - WC_Stripe_Logger::log( 'Info: Begin creating 3DS source...' ); |
|
646 | + WC_Stripe_Logger::log('Info: Begin creating 3DS source...'); |
|
648 | 647 | |
649 | - return WC_Stripe_API::request( apply_filters( 'wc_stripe_3ds_source', $post_data, $order ), 'sources' ); |
|
648 | + return WC_Stripe_API::request(apply_filters('wc_stripe_3ds_source', $post_data, $order), 'sources'); |
|
650 | 649 | } |
651 | 650 | |
652 | 651 | /** |
@@ -662,61 +661,61 @@ discard block |
||
662 | 661 | * @throws Exception When card was not added or for and invalid card. |
663 | 662 | * @return object |
664 | 663 | */ |
665 | - public function prepare_source( $user_id, $force_save_source = false ) { |
|
666 | - $customer = new WC_Stripe_Customer( $user_id ); |
|
664 | + public function prepare_source($user_id, $force_save_source = false) { |
|
665 | + $customer = new WC_Stripe_Customer($user_id); |
|
667 | 666 | $set_customer = true; |
668 | - $force_save_source = apply_filters( 'wc_stripe_force_save_source', $force_save_source, $customer ); |
|
667 | + $force_save_source = apply_filters('wc_stripe_force_save_source', $force_save_source, $customer); |
|
669 | 668 | $source_object = ''; |
670 | 669 | $source_id = ''; |
671 | 670 | $wc_token_id = false; |
672 | - $payment_method = isset( $_POST['payment_method'] ) ? wc_clean( $_POST['payment_method'] ) : 'stripe'; |
|
671 | + $payment_method = isset($_POST['payment_method']) ? wc_clean($_POST['payment_method']) : 'stripe'; |
|
673 | 672 | $is_token = false; |
674 | 673 | |
675 | 674 | // New CC info was entered and we have a new source to process. |
676 | - if ( ! empty( $_POST['stripe_source'] ) ) { |
|
677 | - $source_object = self::get_source_object( wc_clean( $_POST['stripe_source'] ) ); |
|
675 | + if ( ! empty($_POST['stripe_source'])) { |
|
676 | + $source_object = self::get_source_object(wc_clean($_POST['stripe_source'])); |
|
678 | 677 | $source_id = $source_object->id; |
679 | 678 | |
680 | 679 | // This checks to see if customer opted to save the payment method to file. |
681 | - $maybe_saved_card = isset( $_POST[ 'wc-' . $payment_method . '-new-payment-method' ] ) && ! empty( $_POST[ 'wc-' . $payment_method . '-new-payment-method' ] ); |
|
680 | + $maybe_saved_card = isset($_POST['wc-' . $payment_method . '-new-payment-method']) && ! empty($_POST['wc-' . $payment_method . '-new-payment-method']); |
|
682 | 681 | |
683 | 682 | /** |
684 | 683 | * This is true if the user wants to store the card to their account. |
685 | 684 | * Criteria to save to file is they are logged in, they opted to save or product requirements and the source is |
686 | 685 | * actually reusable. Either that or force_save_source is true. |
687 | 686 | */ |
688 | - if ( ( $user_id && $this->saved_cards && $maybe_saved_card && 'reusable' === $source_object->usage ) || $force_save_source ) { |
|
689 | - $response = $customer->add_source( $source_object->id ); |
|
687 | + if (($user_id && $this->saved_cards && $maybe_saved_card && 'reusable' === $source_object->usage) || $force_save_source) { |
|
688 | + $response = $customer->add_source($source_object->id); |
|
690 | 689 | |
691 | - if ( ! empty( $response->error ) ) { |
|
692 | - throw new WC_Stripe_Exception( print_r( $response, true ), $response->error->message ); |
|
690 | + if ( ! empty($response->error)) { |
|
691 | + throw new WC_Stripe_Exception(print_r($response, true), $response->error->message); |
|
693 | 692 | } |
694 | 693 | } |
695 | - } elseif ( $this->is_using_saved_payment_method() ) { |
|
694 | + } elseif ($this->is_using_saved_payment_method()) { |
|
696 | 695 | // Use an existing token, and then process the payment. |
697 | - $wc_token_id = wc_clean( $_POST[ 'wc-' . $payment_method . '-payment-token' ] ); |
|
698 | - $wc_token = WC_Payment_Tokens::get( $wc_token_id ); |
|
696 | + $wc_token_id = wc_clean($_POST['wc-' . $payment_method . '-payment-token']); |
|
697 | + $wc_token = WC_Payment_Tokens::get($wc_token_id); |
|
699 | 698 | |
700 | - if ( ! $wc_token || $wc_token->get_user_id() !== get_current_user_id() ) { |
|
701 | - WC()->session->set( 'refresh_totals', true ); |
|
702 | - throw new WC_Stripe_Exception( 'Invalid payment method', __( 'Invalid payment method. Please input a new card number.', 'woocommerce-gateway-stripe' ) ); |
|
699 | + if ( ! $wc_token || $wc_token->get_user_id() !== get_current_user_id()) { |
|
700 | + WC()->session->set('refresh_totals', true); |
|
701 | + throw new WC_Stripe_Exception('Invalid payment method', __('Invalid payment method. Please input a new card number.', 'woocommerce-gateway-stripe')); |
|
703 | 702 | } |
704 | 703 | |
705 | 704 | $source_id = $wc_token->get_token(); |
706 | 705 | |
707 | - if ( $this->is_type_legacy_card( $source_id ) ) { |
|
706 | + if ($this->is_type_legacy_card($source_id)) { |
|
708 | 707 | $is_token = true; |
709 | 708 | } |
710 | - } elseif ( isset( $_POST['stripe_token'] ) && 'new' !== $_POST['stripe_token'] ) { |
|
711 | - $stripe_token = wc_clean( $_POST['stripe_token'] ); |
|
712 | - $maybe_saved_card = isset( $_POST[ 'wc-' . $payment_method . '-new-payment-method' ] ) && ! empty( $_POST[ 'wc-' . $payment_method . '-new-payment-method' ] ); |
|
709 | + } elseif (isset($_POST['stripe_token']) && 'new' !== $_POST['stripe_token']) { |
|
710 | + $stripe_token = wc_clean($_POST['stripe_token']); |
|
711 | + $maybe_saved_card = isset($_POST['wc-' . $payment_method . '-new-payment-method']) && ! empty($_POST['wc-' . $payment_method . '-new-payment-method']); |
|
713 | 712 | |
714 | 713 | // This is true if the user wants to store the card to their account. |
715 | - if ( ( $user_id && $this->saved_cards && $maybe_saved_card ) || $force_save_source ) { |
|
716 | - $response = $customer->add_source( $stripe_token ); |
|
714 | + if (($user_id && $this->saved_cards && $maybe_saved_card) || $force_save_source) { |
|
715 | + $response = $customer->add_source($stripe_token); |
|
717 | 716 | |
718 | - if ( ! empty( $response->error ) ) { |
|
719 | - throw new WC_Stripe_Exception( print_r( $response, true ), $response->error->message ); |
|
717 | + if ( ! empty($response->error)) { |
|
718 | + throw new WC_Stripe_Exception(print_r($response, true), $response->error->message); |
|
720 | 719 | } |
721 | 720 | } else { |
722 | 721 | $set_customer = false; |
@@ -725,14 +724,14 @@ discard block |
||
725 | 724 | } |
726 | 725 | } |
727 | 726 | |
728 | - if ( ! $set_customer ) { |
|
727 | + if ( ! $set_customer) { |
|
729 | 728 | $customer_id = false; |
730 | 729 | } else { |
731 | 730 | $customer_id = $customer->get_id() ? $customer->get_id() : false; |
732 | 731 | } |
733 | 732 | |
734 | - if ( empty( $source_object ) && ! $is_token ) { |
|
735 | - $source_object = self::get_source_object( $source_id ); |
|
733 | + if (empty($source_object) && ! $is_token) { |
|
734 | + $source_object = self::get_source_object($source_id); |
|
736 | 735 | } |
737 | 736 | |
738 | 737 | return (object) array( |
@@ -756,39 +755,39 @@ discard block |
||
756 | 755 | * @param object $order |
757 | 756 | * @return object |
758 | 757 | */ |
759 | - public function prepare_order_source( $order = null ) { |
|
758 | + public function prepare_order_source($order = null) { |
|
760 | 759 | $stripe_customer = new WC_Stripe_Customer(); |
761 | 760 | $stripe_source = false; |
762 | 761 | $token_id = false; |
763 | 762 | $source_object = false; |
764 | 763 | |
765 | - if ( $order ) { |
|
766 | - $order_id = WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $order->id : $order->get_id(); |
|
764 | + if ($order) { |
|
765 | + $order_id = WC_Stripe_Helper::is_wc_lt('3.0') ? $order->id : $order->get_id(); |
|
767 | 766 | |
768 | - $stripe_customer_id = get_post_meta( $order_id, '_stripe_customer_id', true ); |
|
767 | + $stripe_customer_id = get_post_meta($order_id, '_stripe_customer_id', true); |
|
769 | 768 | |
770 | - if ( $stripe_customer_id ) { |
|
771 | - $stripe_customer->set_id( $stripe_customer_id ); |
|
769 | + if ($stripe_customer_id) { |
|
770 | + $stripe_customer->set_id($stripe_customer_id); |
|
772 | 771 | } |
773 | 772 | |
774 | - $source_id = WC_Stripe_Helper::is_wc_lt( '3.0' ) ? get_post_meta( $order_id, '_stripe_source_id', true ) : $order->get_meta( '_stripe_source_id', true ); |
|
773 | + $source_id = WC_Stripe_Helper::is_wc_lt('3.0') ? get_post_meta($order_id, '_stripe_source_id', true) : $order->get_meta('_stripe_source_id', true); |
|
775 | 774 | |
776 | 775 | // Since 4.0.0, we changed card to source so we need to account for that. |
777 | - if ( empty( $source_id ) ) { |
|
778 | - $source_id = WC_Stripe_Helper::is_wc_lt( '3.0' ) ? get_post_meta( $order_id, '_stripe_card_id', true ) : $order->get_meta( '_stripe_card_id', true ); |
|
776 | + if (empty($source_id)) { |
|
777 | + $source_id = WC_Stripe_Helper::is_wc_lt('3.0') ? get_post_meta($order_id, '_stripe_card_id', true) : $order->get_meta('_stripe_card_id', true); |
|
779 | 778 | |
780 | 779 | // Take this opportunity to update the key name. |
781 | - WC_Stripe_Helper::is_wc_lt( '3.0' ) ? update_post_meta( $order_id, '_stripe_source_id', $source_id ) : $order->update_meta_data( '_stripe_source_id', $source_id ); |
|
780 | + WC_Stripe_Helper::is_wc_lt('3.0') ? update_post_meta($order_id, '_stripe_source_id', $source_id) : $order->update_meta_data('_stripe_source_id', $source_id); |
|
782 | 781 | |
783 | - if ( is_callable( array( $order, 'save' ) ) ) { |
|
782 | + if (is_callable(array($order, 'save'))) { |
|
784 | 783 | $order->save(); |
785 | 784 | } |
786 | 785 | } |
787 | 786 | |
788 | - if ( $source_id ) { |
|
787 | + if ($source_id) { |
|
789 | 788 | $stripe_source = $source_id; |
790 | - $source_object = WC_Stripe_API::retrieve( 'sources/' . $source_id ); |
|
791 | - } elseif ( apply_filters( 'wc_stripe_use_default_customer_source', true ) ) { |
|
789 | + $source_object = WC_Stripe_API::retrieve('sources/' . $source_id); |
|
790 | + } elseif (apply_filters('wc_stripe_use_default_customer_source', true)) { |
|
792 | 791 | /* |
793 | 792 | * We can attempt to charge the customer's default source |
794 | 793 | * by sending empty source id. |
@@ -813,27 +812,27 @@ discard block |
||
813 | 812 | * @param WC_Order $order For to which the source applies. |
814 | 813 | * @param stdClass $source Source information. |
815 | 814 | */ |
816 | - public function save_source_to_order( $order, $source ) { |
|
817 | - $order_id = WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $order->id : $order->get_id(); |
|
815 | + public function save_source_to_order($order, $source) { |
|
816 | + $order_id = WC_Stripe_Helper::is_wc_lt('3.0') ? $order->id : $order->get_id(); |
|
818 | 817 | |
819 | 818 | // Store source in the order. |
820 | - if ( $source->customer ) { |
|
821 | - if ( WC_Stripe_Helper::is_wc_lt( '3.0' ) ) { |
|
822 | - update_post_meta( $order_id, '_stripe_customer_id', $source->customer ); |
|
819 | + if ($source->customer) { |
|
820 | + if (WC_Stripe_Helper::is_wc_lt('3.0')) { |
|
821 | + update_post_meta($order_id, '_stripe_customer_id', $source->customer); |
|
823 | 822 | } else { |
824 | - $order->update_meta_data( '_stripe_customer_id', $source->customer ); |
|
823 | + $order->update_meta_data('_stripe_customer_id', $source->customer); |
|
825 | 824 | } |
826 | 825 | } |
827 | 826 | |
828 | - if ( $source->source ) { |
|
829 | - if ( WC_Stripe_Helper::is_wc_lt( '3.0' ) ) { |
|
830 | - update_post_meta( $order_id, '_stripe_source_id', $source->source ); |
|
827 | + if ($source->source) { |
|
828 | + if (WC_Stripe_Helper::is_wc_lt('3.0')) { |
|
829 | + update_post_meta($order_id, '_stripe_source_id', $source->source); |
|
831 | 830 | } else { |
832 | - $order->update_meta_data( '_stripe_source_id', $source->source ); |
|
831 | + $order->update_meta_data('_stripe_source_id', $source->source); |
|
833 | 832 | } |
834 | 833 | } |
835 | 834 | |
836 | - if ( is_callable( array( $order, 'save' ) ) ) { |
|
835 | + if (is_callable(array($order, 'save'))) { |
|
837 | 836 | $order->save(); |
838 | 837 | } |
839 | 838 | } |
@@ -847,38 +846,38 @@ discard block |
||
847 | 846 | * @param object $order The order object |
848 | 847 | * @param int $balance_transaction_id |
849 | 848 | */ |
850 | - public function update_fees( $order, $balance_transaction_id ) { |
|
851 | - $order_id = WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $order->id : $order->get_id(); |
|
849 | + public function update_fees($order, $balance_transaction_id) { |
|
850 | + $order_id = WC_Stripe_Helper::is_wc_lt('3.0') ? $order->id : $order->get_id(); |
|
852 | 851 | |
853 | - $balance_transaction = WC_Stripe_API::retrieve( 'balance/history/' . $balance_transaction_id ); |
|
852 | + $balance_transaction = WC_Stripe_API::retrieve('balance/history/' . $balance_transaction_id); |
|
854 | 853 | |
855 | - if ( empty( $balance_transaction->error ) ) { |
|
856 | - if ( isset( $balance_transaction ) && isset( $balance_transaction->fee ) ) { |
|
854 | + if (empty($balance_transaction->error)) { |
|
855 | + if (isset($balance_transaction) && isset($balance_transaction->fee)) { |
|
857 | 856 | // Fees and Net needs to both come from Stripe to be accurate as the returned |
858 | 857 | // values are in the local currency of the Stripe account, not from WC. |
859 | - $fee_refund = ! empty( $balance_transaction->fee ) ? WC_Stripe_Helper::format_balance_fee( $balance_transaction, 'fee' ) : 0; |
|
860 | - $net_refund = ! empty( $balance_transaction->net ) ? WC_Stripe_Helper::format_balance_fee( $balance_transaction, 'net' ) : 0; |
|
858 | + $fee_refund = ! empty($balance_transaction->fee) ? WC_Stripe_Helper::format_balance_fee($balance_transaction, 'fee') : 0; |
|
859 | + $net_refund = ! empty($balance_transaction->net) ? WC_Stripe_Helper::format_balance_fee($balance_transaction, 'net') : 0; |
|
861 | 860 | |
862 | 861 | // Current data fee & net. |
863 | - $fee_current = WC_Stripe_Helper::get_stripe_fee( $order ); |
|
864 | - $net_current = WC_Stripe_Helper::get_stripe_net( $order ); |
|
862 | + $fee_current = WC_Stripe_Helper::get_stripe_fee($order); |
|
863 | + $net_current = WC_Stripe_Helper::get_stripe_net($order); |
|
865 | 864 | |
866 | 865 | // Calculation. |
867 | 866 | $fee = (float) $fee_current + (float) $fee_refund; |
868 | 867 | $net = (float) $net_current + (float) $net_refund; |
869 | 868 | |
870 | - WC_Stripe_Helper::update_stripe_fee( $order, $fee ); |
|
871 | - WC_Stripe_Helper::update_stripe_net( $order, $net ); |
|
869 | + WC_Stripe_Helper::update_stripe_fee($order, $fee); |
|
870 | + WC_Stripe_Helper::update_stripe_net($order, $net); |
|
872 | 871 | |
873 | - $currency = ! empty( $balance_transaction->currency ) ? strtoupper( $balance_transaction->currency ) : null; |
|
874 | - WC_Stripe_Helper::update_stripe_currency( $order, $currency ); |
|
872 | + $currency = ! empty($balance_transaction->currency) ? strtoupper($balance_transaction->currency) : null; |
|
873 | + WC_Stripe_Helper::update_stripe_currency($order, $currency); |
|
875 | 874 | |
876 | - if ( is_callable( array( $order, 'save' ) ) ) { |
|
875 | + if (is_callable(array($order, 'save'))) { |
|
877 | 876 | $order->save(); |
878 | 877 | } |
879 | 878 | } |
880 | 879 | } else { |
881 | - WC_Stripe_Logger::log( "Unable to update fees/net meta for order: {$order_id}" ); |
|
880 | + WC_Stripe_Logger::log("Unable to update fees/net meta for order: {$order_id}"); |
|
882 | 881 | } |
883 | 882 | } |
884 | 883 | |
@@ -891,33 +890,33 @@ discard block |
||
891 | 890 | * @param float $amount |
892 | 891 | * @return bool |
893 | 892 | */ |
894 | - public function process_refund( $order_id, $amount = null, $reason = '' ) { |
|
895 | - $order = wc_get_order( $order_id ); |
|
893 | + public function process_refund($order_id, $amount = null, $reason = '') { |
|
894 | + $order = wc_get_order($order_id); |
|
896 | 895 | |
897 | - if ( ! $order || ! $order->get_transaction_id() ) { |
|
896 | + if ( ! $order || ! $order->get_transaction_id()) { |
|
898 | 897 | return false; |
899 | 898 | } |
900 | 899 | |
901 | 900 | $request = array(); |
902 | 901 | |
903 | - if ( WC_Stripe_Helper::is_wc_lt( '3.0' ) ) { |
|
904 | - $order_currency = get_post_meta( $order_id, '_order_currency', true ); |
|
905 | - $captured = get_post_meta( $order_id, '_stripe_charge_captured', true ); |
|
902 | + if (WC_Stripe_Helper::is_wc_lt('3.0')) { |
|
903 | + $order_currency = get_post_meta($order_id, '_order_currency', true); |
|
904 | + $captured = get_post_meta($order_id, '_stripe_charge_captured', true); |
|
906 | 905 | } else { |
907 | 906 | $order_currency = $order->get_currency(); |
908 | - $captured = $order->get_meta( '_stripe_charge_captured', true ); |
|
907 | + $captured = $order->get_meta('_stripe_charge_captured', true); |
|
909 | 908 | } |
910 | 909 | |
911 | - if ( ! is_null( $amount ) ) { |
|
912 | - $request['amount'] = WC_Stripe_Helper::get_stripe_amount( $amount, $order_currency ); |
|
910 | + if ( ! is_null($amount)) { |
|
911 | + $request['amount'] = WC_Stripe_Helper::get_stripe_amount($amount, $order_currency); |
|
913 | 912 | } |
914 | 913 | |
915 | 914 | // If order is only authorized, don't pass amount. |
916 | - if ( 'yes' !== $captured ) { |
|
917 | - unset( $request['amount'] ); |
|
915 | + if ('yes' !== $captured) { |
|
916 | + unset($request['amount']); |
|
918 | 917 | } |
919 | 918 | |
920 | - if ( $reason ) { |
|
919 | + if ($reason) { |
|
921 | 920 | $request['metadata'] = array( |
922 | 921 | 'reason' => $reason, |
923 | 922 | ); |
@@ -925,35 +924,35 @@ discard block |
||
925 | 924 | |
926 | 925 | $request['charge'] = $order->get_transaction_id(); |
927 | 926 | |
928 | - WC_Stripe_Logger::log( "Info: Beginning refund for order {$order->get_transaction_id()} for the amount of {$amount}" ); |
|
927 | + WC_Stripe_Logger::log("Info: Beginning refund for order {$order->get_transaction_id()} for the amount of {$amount}"); |
|
929 | 928 | |
930 | - $request = apply_filters( 'wc_stripe_refund_request', $request, $order ); |
|
929 | + $request = apply_filters('wc_stripe_refund_request', $request, $order); |
|
931 | 930 | |
932 | - $response = WC_Stripe_API::request( $request, 'refunds' ); |
|
931 | + $response = WC_Stripe_API::request($request, 'refunds'); |
|
933 | 932 | |
934 | - if ( ! empty( $response->error ) ) { |
|
935 | - WC_Stripe_Logger::log( 'Error: ' . $response->error->message ); |
|
933 | + if ( ! empty($response->error)) { |
|
934 | + WC_Stripe_Logger::log('Error: ' . $response->error->message); |
|
936 | 935 | |
937 | 936 | return $response; |
938 | 937 | |
939 | - } elseif ( ! empty( $response->id ) ) { |
|
940 | - WC_Stripe_Helper::is_wc_lt( '3.0' ) ? update_post_meta( $order_id, '_stripe_refund_id', $response->id ) : $order->update_meta_data( '_stripe_refund_id', $response->id ); |
|
938 | + } elseif ( ! empty($response->id)) { |
|
939 | + WC_Stripe_Helper::is_wc_lt('3.0') ? update_post_meta($order_id, '_stripe_refund_id', $response->id) : $order->update_meta_data('_stripe_refund_id', $response->id); |
|
941 | 940 | |
942 | - $amount = wc_price( $response->amount / 100 ); |
|
941 | + $amount = wc_price($response->amount / 100); |
|
943 | 942 | |
944 | - if ( in_array( strtolower( WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $order->get_order_currency() : $order->get_currency() ), WC_Stripe_Helper::no_decimal_currencies() ) ) { |
|
945 | - $amount = wc_price( $response->amount ); |
|
943 | + if (in_array(strtolower(WC_Stripe_Helper::is_wc_lt('3.0') ? $order->get_order_currency() : $order->get_currency()), WC_Stripe_Helper::no_decimal_currencies())) { |
|
944 | + $amount = wc_price($response->amount); |
|
946 | 945 | } |
947 | 946 | |
948 | - if ( isset( $response->balance_transaction ) ) { |
|
949 | - $this->update_fees( $order, $response->balance_transaction ); |
|
947 | + if (isset($response->balance_transaction)) { |
|
948 | + $this->update_fees($order, $response->balance_transaction); |
|
950 | 949 | } |
951 | 950 | |
952 | 951 | /* translators: 1) dollar amount 2) transaction id 3) refund message */ |
953 | - $refund_message = ( isset( $captured ) && 'yes' === $captured ) ? sprintf( __( 'Refunded %1$s - Refund ID: %2$s - Reason: %3$s', 'woocommerce-gateway-stripe' ), $amount, $response->id, $reason ) : __( 'Pre-Authorization Released', 'woocommerce-gateway-stripe' ); |
|
952 | + $refund_message = (isset($captured) && 'yes' === $captured) ? sprintf(__('Refunded %1$s - Refund ID: %2$s - Reason: %3$s', 'woocommerce-gateway-stripe'), $amount, $response->id, $reason) : __('Pre-Authorization Released', 'woocommerce-gateway-stripe'); |
|
954 | 953 | |
955 | - $order->add_order_note( $refund_message ); |
|
956 | - WC_Stripe_Logger::log( 'Success: ' . html_entity_decode( wp_strip_all_tags( $refund_message ) ) ); |
|
954 | + $order->add_order_note($refund_message); |
|
955 | + WC_Stripe_Logger::log('Success: ' . html_entity_decode(wp_strip_all_tags($refund_message))); |
|
957 | 956 | |
958 | 957 | return true; |
959 | 958 | } |
@@ -968,46 +967,46 @@ discard block |
||
968 | 967 | */ |
969 | 968 | public function add_payment_method() { |
970 | 969 | $error = false; |
971 | - $error_msg = __( 'There was a problem adding the payment method.', 'woocommerce-gateway-stripe' ); |
|
970 | + $error_msg = __('There was a problem adding the payment method.', 'woocommerce-gateway-stripe'); |
|
972 | 971 | $source_id = ''; |
973 | 972 | |
974 | - if ( empty( $_POST['stripe_source'] ) && empty( $_POST['stripe_token'] ) || ! is_user_logged_in() ) { |
|
973 | + if (empty($_POST['stripe_source']) && empty($_POST['stripe_token']) || ! is_user_logged_in()) { |
|
975 | 974 | $error = true; |
976 | 975 | } |
977 | 976 | |
978 | - $stripe_customer = new WC_Stripe_Customer( get_current_user_id() ); |
|
977 | + $stripe_customer = new WC_Stripe_Customer(get_current_user_id()); |
|
979 | 978 | |
980 | - $source = ! empty( $_POST['stripe_source'] ) ? wc_clean( $_POST['stripe_source'] ) : ''; |
|
979 | + $source = ! empty($_POST['stripe_source']) ? wc_clean($_POST['stripe_source']) : ''; |
|
981 | 980 | |
982 | - $source_object = WC_Stripe_API::retrieve( 'sources/' . $source ); |
|
981 | + $source_object = WC_Stripe_API::retrieve('sources/' . $source); |
|
983 | 982 | |
984 | - if ( isset( $source_object ) ) { |
|
985 | - if ( ! empty( $source_object->error ) ) { |
|
983 | + if (isset($source_object)) { |
|
984 | + if ( ! empty($source_object->error)) { |
|
986 | 985 | $error = true; |
987 | 986 | } |
988 | 987 | |
989 | 988 | $source_id = $source_object->id; |
990 | - } elseif ( isset( $_POST['stripe_token'] ) ) { |
|
991 | - $source_id = wc_clean( $_POST['stripe_token'] ); |
|
989 | + } elseif (isset($_POST['stripe_token'])) { |
|
990 | + $source_id = wc_clean($_POST['stripe_token']); |
|
992 | 991 | } |
993 | 992 | |
994 | - $response = $stripe_customer->add_source( $source_id ); |
|
993 | + $response = $stripe_customer->add_source($source_id); |
|
995 | 994 | |
996 | - if ( ! $response || is_wp_error( $response ) || ! empty( $response->error ) ) { |
|
995 | + if ( ! $response || is_wp_error($response) || ! empty($response->error)) { |
|
997 | 996 | $error = true; |
998 | 997 | } |
999 | 998 | |
1000 | - if ( $error ) { |
|
1001 | - wc_add_notice( $error_msg, 'error' ); |
|
1002 | - WC_Stripe_Logger::log( 'Add payment method Error: ' . $error_msg ); |
|
999 | + if ($error) { |
|
1000 | + wc_add_notice($error_msg, 'error'); |
|
1001 | + WC_Stripe_Logger::log('Add payment method Error: ' . $error_msg); |
|
1003 | 1002 | return; |
1004 | 1003 | } |
1005 | 1004 | |
1006 | - do_action( 'wc_stripe_add_payment_method_' . $_POST['payment_method'] . '_success', $source_id, $source_object ); |
|
1005 | + do_action('wc_stripe_add_payment_method_' . $_POST['payment_method'] . '_success', $source_id, $source_object); |
|
1007 | 1006 | |
1008 | 1007 | return array( |
1009 | 1008 | 'result' => 'success', |
1010 | - 'redirect' => wc_get_endpoint_url( 'payment-methods' ), |
|
1009 | + 'redirect' => wc_get_endpoint_url('payment-methods'), |
|
1011 | 1010 | ); |
1012 | 1011 | } |
1013 | 1012 | |
@@ -1024,10 +1023,10 @@ discard block |
||
1024 | 1023 | * Stripe expects Norwegian to only be passed NO. |
1025 | 1024 | * But WP has different dialects. |
1026 | 1025 | */ |
1027 | - if ( 'NO' === substr( $locale, 3, 2 ) ) { |
|
1026 | + if ('NO' === substr($locale, 3, 2)) { |
|
1028 | 1027 | $locale = 'no'; |
1029 | 1028 | } else { |
1030 | - $locale = substr( get_locale(), 0, 2 ); |
|
1029 | + $locale = substr(get_locale(), 0, 2); |
|
1031 | 1030 | } |
1032 | 1031 | |
1033 | 1032 | return $locale; |
@@ -1041,9 +1040,9 @@ discard block |
||
1041 | 1040 | * @param string $idempotency_key |
1042 | 1041 | * @param array $request |
1043 | 1042 | */ |
1044 | - public function change_idempotency_key( $idempotency_key, $request ) { |
|
1045 | - $customer = ! empty( $request['customer'] ) ? $request['customer'] : ''; |
|
1046 | - $source = ! empty( $request['source'] ) ? $request['source'] : $customer; |
|
1043 | + public function change_idempotency_key($idempotency_key, $request) { |
|
1044 | + $customer = ! empty($request['customer']) ? $request['customer'] : ''; |
|
1045 | + $source = ! empty($request['source']) ? $request['source'] : $customer; |
|
1047 | 1046 | $count = $this->retry_interval; |
1048 | 1047 | |
1049 | 1048 | return $request['metadata']['order_id'] . '-' . $count . '-' . $source; |
@@ -1057,8 +1056,8 @@ discard block |
||
1057 | 1056 | * @since 4.0.6 |
1058 | 1057 | * @param array $headers |
1059 | 1058 | */ |
1060 | - public function is_original_request( $headers ) { |
|
1061 | - if ( $headers['original-request'] === $headers['request-id'] ) { |
|
1059 | + public function is_original_request($headers) { |
|
1060 | + if ($headers['original-request'] === $headers['request-id']) { |
|
1062 | 1061 | return true; |
1063 | 1062 | } |
1064 | 1063 |
@@ -1,5 +1,5 @@ discard block |
||
1 | 1 | <?php |
2 | -if ( ! defined( 'ABSPATH' ) ) { |
|
2 | +if ( ! defined('ABSPATH')) { |
|
3 | 3 | exit; |
4 | 4 | } |
5 | 5 | |
@@ -113,9 +113,9 @@ discard block |
||
113 | 113 | public function __construct() { |
114 | 114 | $this->retry_interval = 1; |
115 | 115 | $this->id = 'stripe'; |
116 | - $this->method_title = __( 'Stripe', 'woocommerce-gateway-stripe' ); |
|
116 | + $this->method_title = __('Stripe', 'woocommerce-gateway-stripe'); |
|
117 | 117 | /* translators: 1) link to Stripe register page 2) link to Stripe api keys page */ |
118 | - $this->method_description = sprintf( __( 'Stripe works by adding payment fields on the checkout and then sending the details to Stripe for verification. <a href="%1$s" target="_blank">Sign up</a> for a Stripe account, and <a href="%2$s" target="_blank">get your Stripe account keys</a>.', 'woocommerce-gateway-stripe' ), 'https://dashboard.stripe.com/register', 'https://dashboard.stripe.com/account/apikeys' ); |
|
118 | + $this->method_description = sprintf(__('Stripe works by adding payment fields on the checkout and then sending the details to Stripe for verification. <a href="%1$s" target="_blank">Sign up</a> for a Stripe account, and <a href="%2$s" target="_blank">get your Stripe account keys</a>.', 'woocommerce-gateway-stripe'), 'https://dashboard.stripe.com/register', 'https://dashboard.stripe.com/account/apikeys'); |
|
119 | 119 | $this->has_fields = true; |
120 | 120 | $this->supports = array( |
121 | 121 | 'products', |
@@ -142,42 +142,42 @@ discard block |
||
142 | 142 | $this->init_settings(); |
143 | 143 | |
144 | 144 | // Get setting values. |
145 | - $this->title = $this->get_option( 'title' ); |
|
146 | - $this->description = $this->get_option( 'description' ); |
|
147 | - $this->enabled = $this->get_option( 'enabled' ); |
|
148 | - $this->testmode = 'yes' === $this->get_option( 'testmode' ); |
|
149 | - $this->inline_cc_form = 'yes' === $this->get_option( 'inline_cc_form' ); |
|
150 | - $this->capture = 'yes' === $this->get_option( 'capture', 'yes' ); |
|
151 | - $this->statement_descriptor = WC_Stripe_Helper::clean_statement_descriptor( $this->get_option( 'statement_descriptor' ) ); |
|
152 | - $this->three_d_secure = 'yes' === $this->get_option( 'three_d_secure' ); |
|
153 | - $this->stripe_checkout = 'yes' === $this->get_option( 'stripe_checkout' ); |
|
154 | - $this->stripe_checkout_image = $this->get_option( 'stripe_checkout_image', '' ); |
|
155 | - $this->stripe_checkout_description = $this->get_option( 'stripe_checkout_description' ); |
|
156 | - $this->saved_cards = 'yes' === $this->get_option( 'saved_cards' ); |
|
157 | - $this->secret_key = $this->testmode ? $this->get_option( 'test_secret_key' ) : $this->get_option( 'secret_key' ); |
|
158 | - $this->publishable_key = $this->testmode ? $this->get_option( 'test_publishable_key' ) : $this->get_option( 'publishable_key' ); |
|
159 | - $this->payment_request = 'yes' === $this->get_option( 'payment_request', 'yes' ); |
|
160 | - |
|
161 | - if ( $this->stripe_checkout ) { |
|
162 | - $this->order_button_text = __( 'Continue to payment', 'woocommerce-gateway-stripe' ); |
|
145 | + $this->title = $this->get_option('title'); |
|
146 | + $this->description = $this->get_option('description'); |
|
147 | + $this->enabled = $this->get_option('enabled'); |
|
148 | + $this->testmode = 'yes' === $this->get_option('testmode'); |
|
149 | + $this->inline_cc_form = 'yes' === $this->get_option('inline_cc_form'); |
|
150 | + $this->capture = 'yes' === $this->get_option('capture', 'yes'); |
|
151 | + $this->statement_descriptor = WC_Stripe_Helper::clean_statement_descriptor($this->get_option('statement_descriptor')); |
|
152 | + $this->three_d_secure = 'yes' === $this->get_option('three_d_secure'); |
|
153 | + $this->stripe_checkout = 'yes' === $this->get_option('stripe_checkout'); |
|
154 | + $this->stripe_checkout_image = $this->get_option('stripe_checkout_image', ''); |
|
155 | + $this->stripe_checkout_description = $this->get_option('stripe_checkout_description'); |
|
156 | + $this->saved_cards = 'yes' === $this->get_option('saved_cards'); |
|
157 | + $this->secret_key = $this->testmode ? $this->get_option('test_secret_key') : $this->get_option('secret_key'); |
|
158 | + $this->publishable_key = $this->testmode ? $this->get_option('test_publishable_key') : $this->get_option('publishable_key'); |
|
159 | + $this->payment_request = 'yes' === $this->get_option('payment_request', 'yes'); |
|
160 | + |
|
161 | + if ($this->stripe_checkout) { |
|
162 | + $this->order_button_text = __('Continue to payment', 'woocommerce-gateway-stripe'); |
|
163 | 163 | } |
164 | 164 | |
165 | - WC_Stripe_API::set_secret_key( $this->secret_key ); |
|
165 | + WC_Stripe_API::set_secret_key($this->secret_key); |
|
166 | 166 | |
167 | 167 | // Hooks. |
168 | - add_action( 'wp_enqueue_scripts', array( $this, 'payment_scripts' ) ); |
|
169 | - add_action( 'admin_enqueue_scripts', array( $this, 'admin_scripts' ) ); |
|
170 | - add_action( 'woocommerce_update_options_payment_gateways_' . $this->id, array( $this, 'process_admin_options' ) ); |
|
171 | - add_action( 'woocommerce_admin_order_totals_after_total', array( $this, 'display_order_fee' ) ); |
|
172 | - add_action( 'woocommerce_admin_order_totals_after_total', array( $this, 'display_order_payout' ), 20 ); |
|
173 | - add_action( 'woocommerce_customer_save_address', array( $this, 'show_update_card_notice' ), 10, 2 ); |
|
174 | - add_action( 'woocommerce_receipt_stripe', array( $this, 'stripe_checkout_receipt_page' ) ); |
|
175 | - add_action( 'woocommerce_api_' . strtolower( get_class( $this ) ), array( $this, 'stripe_checkout_return_handler' ) ); |
|
176 | - |
|
177 | - if ( WC_Stripe_Helper::is_pre_orders_exists() ) { |
|
168 | + add_action('wp_enqueue_scripts', array($this, 'payment_scripts')); |
|
169 | + add_action('admin_enqueue_scripts', array($this, 'admin_scripts')); |
|
170 | + add_action('woocommerce_update_options_payment_gateways_' . $this->id, array($this, 'process_admin_options')); |
|
171 | + add_action('woocommerce_admin_order_totals_after_total', array($this, 'display_order_fee')); |
|
172 | + add_action('woocommerce_admin_order_totals_after_total', array($this, 'display_order_payout'), 20); |
|
173 | + add_action('woocommerce_customer_save_address', array($this, 'show_update_card_notice'), 10, 2); |
|
174 | + add_action('woocommerce_receipt_stripe', array($this, 'stripe_checkout_receipt_page')); |
|
175 | + add_action('woocommerce_api_' . strtolower(get_class($this)), array($this, 'stripe_checkout_return_handler')); |
|
176 | + |
|
177 | + if (WC_Stripe_Helper::is_pre_orders_exists()) { |
|
178 | 178 | $this->pre_orders = new WC_Stripe_Pre_Orders_Compat(); |
179 | 179 | |
180 | - add_action( 'wc_pre_orders_process_pre_order_completion_payment_' . $this->id, array( $this->pre_orders, 'process_pre_order_release_payment' ) ); |
|
180 | + add_action('wc_pre_orders_process_pre_order_completion_payment_' . $this->id, array($this->pre_orders, 'process_pre_order_release_payment')); |
|
181 | 181 | } |
182 | 182 | } |
183 | 183 | |
@@ -188,7 +188,7 @@ discard block |
||
188 | 188 | * @return bool |
189 | 189 | */ |
190 | 190 | public function are_keys_set() { |
191 | - if ( empty( $this->secret_key ) || empty( $this->publishable_key ) ) { |
|
191 | + if (empty($this->secret_key) || empty($this->publishable_key)) { |
|
192 | 192 | return false; |
193 | 193 | } |
194 | 194 | |
@@ -201,7 +201,7 @@ discard block |
||
201 | 201 | * @since 4.0.2 |
202 | 202 | */ |
203 | 203 | public function is_available() { |
204 | - if ( is_add_payment_method_page() && ! $this->saved_cards ) { |
|
204 | + if (is_add_payment_method_page() && ! $this->saved_cards) { |
|
205 | 205 | return false; |
206 | 206 | } |
207 | 207 | |
@@ -215,13 +215,13 @@ discard block |
||
215 | 215 | * @param int $user_id |
216 | 216 | * @param array $load_address |
217 | 217 | */ |
218 | - public function show_update_card_notice( $user_id, $load_address ) { |
|
219 | - if ( ! $this->saved_cards || ! WC_Stripe_Payment_Tokens::customer_has_saved_methods( $user_id ) || 'billing' !== $load_address ) { |
|
218 | + public function show_update_card_notice($user_id, $load_address) { |
|
219 | + if ( ! $this->saved_cards || ! WC_Stripe_Payment_Tokens::customer_has_saved_methods($user_id) || 'billing' !== $load_address) { |
|
220 | 220 | return; |
221 | 221 | } |
222 | 222 | |
223 | 223 | /* translators: 1) Opening anchor tag 2) closing anchor tag */ |
224 | - wc_add_notice( sprintf( __( 'If your billing address has been changed for saved payment methods, be sure to remove any %1$ssaved payment methods%2$s on file and re-add them.', 'woocommerce-gateway-stripe' ), '<a href="' . esc_url( wc_get_endpoint_url( 'payment-methods' ) ) . '" class="wc-stripe-update-card-notice" style="text-decoration:underline;">', '</a>' ), 'notice' ); |
|
224 | + wc_add_notice(sprintf(__('If your billing address has been changed for saved payment methods, be sure to remove any %1$ssaved payment methods%2$s on file and re-add them.', 'woocommerce-gateway-stripe'), '<a href="' . esc_url(wc_get_endpoint_url('payment-methods')) . '" class="wc-stripe-update-card-notice" style="text-decoration:underline;">', '</a>'), 'notice'); |
|
225 | 225 | } |
226 | 226 | |
227 | 227 | /** |
@@ -240,20 +240,20 @@ discard block |
||
240 | 240 | $icons_str .= $icons['amex']; |
241 | 241 | $icons_str .= $icons['mastercard']; |
242 | 242 | |
243 | - if ( 'USD' === get_woocommerce_currency() ) { |
|
243 | + if ('USD' === get_woocommerce_currency()) { |
|
244 | 244 | $icons_str .= $icons['discover']; |
245 | 245 | $icons_str .= $icons['jcb']; |
246 | 246 | $icons_str .= $icons['diners']; |
247 | 247 | } |
248 | 248 | |
249 | - return apply_filters( 'woocommerce_gateway_icon', $icons_str, $this->id ); |
|
249 | + return apply_filters('woocommerce_gateway_icon', $icons_str, $this->id); |
|
250 | 250 | } |
251 | 251 | |
252 | 252 | /** |
253 | 253 | * Initialise Gateway Settings Form Fields |
254 | 254 | */ |
255 | 255 | public function init_form_fields() { |
256 | - $this->form_fields = require( dirname( __FILE__ ) . '/admin/stripe-settings.php' ); |
|
256 | + $this->form_fields = require(dirname(__FILE__) . '/admin/stripe-settings.php'); |
|
257 | 257 | } |
258 | 258 | |
259 | 259 | /** |
@@ -261,34 +261,34 @@ discard block |
||
261 | 261 | */ |
262 | 262 | public function payment_fields() { |
263 | 263 | $user = wp_get_current_user(); |
264 | - $display_tokenization = $this->supports( 'tokenization' ) && is_checkout() && $this->saved_cards; |
|
264 | + $display_tokenization = $this->supports('tokenization') && is_checkout() && $this->saved_cards; |
|
265 | 265 | $total = WC()->cart->total; |
266 | 266 | $user_email = ''; |
267 | 267 | $description = $this->get_description(); |
268 | - $description = ! empty( $description ) ? $description : ''; |
|
268 | + $description = ! empty($description) ? $description : ''; |
|
269 | 269 | $firstname = ''; |
270 | 270 | $lastname = ''; |
271 | 271 | |
272 | 272 | // If paying from order, we need to get total from order not cart. |
273 | - if ( isset( $_GET['pay_for_order'] ) && ! empty( $_GET['key'] ) ) { |
|
274 | - $order = wc_get_order( wc_get_order_id_by_order_key( wc_clean( $_GET['key'] ) ) ); |
|
273 | + if (isset($_GET['pay_for_order']) && ! empty($_GET['key'])) { |
|
274 | + $order = wc_get_order(wc_get_order_id_by_order_key(wc_clean($_GET['key']))); |
|
275 | 275 | $total = $order->get_total(); |
276 | - $user_email = WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $order->billing_email : $order->get_billing_email(); |
|
276 | + $user_email = WC_Stripe_Helper::is_wc_lt('3.0') ? $order->billing_email : $order->get_billing_email(); |
|
277 | 277 | } else { |
278 | - if ( $user->ID ) { |
|
279 | - $user_email = get_user_meta( $user->ID, 'billing_email', true ); |
|
278 | + if ($user->ID) { |
|
279 | + $user_email = get_user_meta($user->ID, 'billing_email', true); |
|
280 | 280 | $user_email = $user_email ? $user_email : $user->user_email; |
281 | 281 | } |
282 | 282 | } |
283 | 283 | |
284 | - if ( is_add_payment_method_page() ) { |
|
285 | - $pay_button_text = __( 'Add Card', 'woocommerce-gateway-stripe' ); |
|
284 | + if (is_add_payment_method_page()) { |
|
285 | + $pay_button_text = __('Add Card', 'woocommerce-gateway-stripe'); |
|
286 | 286 | $total = ''; |
287 | 287 | $firstname = $user->user_firstname; |
288 | 288 | $lastname = $user->user_lastname; |
289 | 289 | |
290 | - } elseif ( function_exists( 'wcs_order_contains_subscription' ) && isset( $_GET['change_payment_method'] ) ) { |
|
291 | - $pay_button_text = __( 'Change Payment Method', 'woocommerce-gateway-stripe' ); |
|
290 | + } elseif (function_exists('wcs_order_contains_subscription') && isset($_GET['change_payment_method'])) { |
|
291 | + $pay_button_text = __('Change Payment Method', 'woocommerce-gateway-stripe'); |
|
292 | 292 | $total = ''; |
293 | 293 | } else { |
294 | 294 | $pay_button_text = ''; |
@@ -298,49 +298,49 @@ discard block |
||
298 | 298 | |
299 | 299 | echo '<div |
300 | 300 | id="stripe-payment-data" |
301 | - data-panel-label="' . esc_attr( $pay_button_text ) . '" |
|
302 | - data-description="' . esc_attr( wp_strip_all_tags( $this->stripe_checkout_description ) ) . '" |
|
303 | - data-email="' . esc_attr( $user_email ) . '" |
|
304 | - data-verify-zip="' . esc_attr( apply_filters( 'wc_stripe_checkout_verify_zip', false ) ? 'true' : 'false' ) . '" |
|
305 | - data-billing-address="' . esc_attr( apply_filters( 'wc_stripe_checkout_require_billing_address', false ) ? 'true' : 'false' ) . '" |
|
306 | - data-shipping-address="' . esc_attr( apply_filters( 'wc_stripe_checkout_require_shipping_address', false ) ? 'true' : 'false' ) . '" |
|
307 | - data-amount="' . esc_attr( WC_Stripe_Helper::get_stripe_amount( $total ) ) . '" |
|
308 | - data-name="' . esc_attr( $this->statement_descriptor ) . '" |
|
309 | - data-full-name="' . esc_attr( $firstname . ' ' . $lastname ) . '" |
|
310 | - data-currency="' . esc_attr( strtolower( get_woocommerce_currency() ) ) . '" |
|
311 | - data-image="' . esc_attr( $this->stripe_checkout_image ) . '" |
|
312 | - data-locale="' . esc_attr( apply_filters( 'wc_stripe_checkout_locale', $this->get_locale() ) ) . '" |
|
313 | - data-three-d-secure="' . esc_attr( $this->three_d_secure ? 'true' : 'false' ) . '" |
|
314 | - data-allow-remember-me="' . esc_attr( apply_filters( 'wc_stripe_allow_remember_me', true ) ? 'true' : 'false' ) . '">'; |
|
315 | - |
|
316 | - if ( $this->testmode ) { |
|
301 | + data-panel-label="' . esc_attr($pay_button_text) . '" |
|
302 | + data-description="' . esc_attr(wp_strip_all_tags($this->stripe_checkout_description)) . '" |
|
303 | + data-email="' . esc_attr($user_email) . '" |
|
304 | + data-verify-zip="' . esc_attr(apply_filters('wc_stripe_checkout_verify_zip', false) ? 'true' : 'false') . '" |
|
305 | + data-billing-address="' . esc_attr(apply_filters('wc_stripe_checkout_require_billing_address', false) ? 'true' : 'false') . '" |
|
306 | + data-shipping-address="' . esc_attr(apply_filters('wc_stripe_checkout_require_shipping_address', false) ? 'true' : 'false') . '" |
|
307 | + data-amount="' . esc_attr(WC_Stripe_Helper::get_stripe_amount($total)) . '" |
|
308 | + data-name="' . esc_attr($this->statement_descriptor) . '" |
|
309 | + data-full-name="' . esc_attr($firstname . ' ' . $lastname) . '" |
|
310 | + data-currency="' . esc_attr(strtolower(get_woocommerce_currency())) . '" |
|
311 | + data-image="' . esc_attr($this->stripe_checkout_image) . '" |
|
312 | + data-locale="' . esc_attr(apply_filters('wc_stripe_checkout_locale', $this->get_locale())) . '" |
|
313 | + data-three-d-secure="' . esc_attr($this->three_d_secure ? 'true' : 'false') . '" |
|
314 | + data-allow-remember-me="' . esc_attr(apply_filters('wc_stripe_allow_remember_me', true) ? 'true' : 'false') . '">'; |
|
315 | + |
|
316 | + if ($this->testmode) { |
|
317 | 317 | /* translators: link to Stripe testing page */ |
318 | - $description .= ' ' . sprintf( __( 'TEST MODE ENABLED. In test mode, you can use the card number 4242424242424242 with any CVC and a valid expiration date or check the <a href="%s" target="_blank">Testing Stripe documentation</a> for more card numbers.', 'woocommerce-gateway-stripe' ), 'https://stripe.com/docs/testing' ); |
|
318 | + $description .= ' ' . sprintf(__('TEST MODE ENABLED. In test mode, you can use the card number 4242424242424242 with any CVC and a valid expiration date or check the <a href="%s" target="_blank">Testing Stripe documentation</a> for more card numbers.', 'woocommerce-gateway-stripe'), 'https://stripe.com/docs/testing'); |
|
319 | 319 | } |
320 | 320 | |
321 | - $description = trim( $description ); |
|
321 | + $description = trim($description); |
|
322 | 322 | |
323 | - echo apply_filters( 'wc_stripe_description', wpautop( wp_kses_post( $description ) ), $this->id ); |
|
323 | + echo apply_filters('wc_stripe_description', wpautop(wp_kses_post($description)), $this->id); |
|
324 | 324 | |
325 | - if ( $display_tokenization ) { |
|
325 | + if ($display_tokenization) { |
|
326 | 326 | $this->tokenization_script(); |
327 | 327 | $this->saved_payment_methods(); |
328 | 328 | } |
329 | 329 | |
330 | - if ( ! $this->stripe_checkout ) { |
|
330 | + if ( ! $this->stripe_checkout) { |
|
331 | 331 | $this->elements_form(); |
332 | 332 | } |
333 | 333 | |
334 | - if ( apply_filters( 'wc_stripe_display_save_payment_method_checkbox', $display_tokenization ) && ! is_add_payment_method_page() && ! isset( $_GET['change_payment_method'] ) ) { |
|
334 | + if (apply_filters('wc_stripe_display_save_payment_method_checkbox', $display_tokenization) && ! is_add_payment_method_page() && ! isset($_GET['change_payment_method'])) { |
|
335 | 335 | |
336 | - if ( ! $this->stripe_checkout ) { |
|
336 | + if ( ! $this->stripe_checkout) { |
|
337 | 337 | $this->save_payment_method_checkbox(); |
338 | - } elseif ( $this->stripe_checkout && isset( $_GET['pay_for_order'] ) && ! empty( $_GET['key'] ) ) { |
|
338 | + } elseif ($this->stripe_checkout && isset($_GET['pay_for_order']) && ! empty($_GET['key'])) { |
|
339 | 339 | $this->save_payment_method_checkbox(); |
340 | 340 | } |
341 | 341 | } |
342 | 342 | |
343 | - do_action( 'wc_stripe_cards_payment_fields', $this->id ); |
|
343 | + do_action('wc_stripe_cards_payment_fields', $this->id); |
|
344 | 344 | |
345 | 345 | echo '</div>'; |
346 | 346 | |
@@ -355,12 +355,12 @@ discard block |
||
355 | 355 | */ |
356 | 356 | public function elements_form() { |
357 | 357 | ?> |
358 | - <fieldset id="wc-<?php echo esc_attr( $this->id ); ?>-cc-form" class="wc-credit-card-form wc-payment-form" style="background:transparent;"> |
|
359 | - <?php do_action( 'woocommerce_credit_card_form_start', $this->id ); ?> |
|
358 | + <fieldset id="wc-<?php echo esc_attr($this->id); ?>-cc-form" class="wc-credit-card-form wc-payment-form" style="background:transparent;"> |
|
359 | + <?php do_action('woocommerce_credit_card_form_start', $this->id); ?> |
|
360 | 360 | |
361 | - <?php if ( $this->inline_cc_form ) { ?> |
|
361 | + <?php if ($this->inline_cc_form) { ?> |
|
362 | 362 | <label for="card-element"> |
363 | - <?php esc_html_e( 'Credit or debit card', 'woocommerce-gateway-stripe' ); ?> |
|
363 | + <?php esc_html_e('Credit or debit card', 'woocommerce-gateway-stripe'); ?> |
|
364 | 364 | </label> |
365 | 365 | |
366 | 366 | <div id="stripe-card-element" class="wc-stripe-elements-field"> |
@@ -368,7 +368,7 @@ discard block |
||
368 | 368 | </div> |
369 | 369 | <?php } else { ?> |
370 | 370 | <div class="form-row form-row-wide"> |
371 | - <label for="stripe-card-element"><?php esc_html_e( 'Card Number', 'woocommerce-gateway-stripe' ); ?> <span class="required">*</span></label> |
|
371 | + <label for="stripe-card-element"><?php esc_html_e('Card Number', 'woocommerce-gateway-stripe'); ?> <span class="required">*</span></label> |
|
372 | 372 | <div class="stripe-card-group"> |
373 | 373 | <div id="stripe-card-element" class="wc-stripe-elements-field"> |
374 | 374 | <!-- a Stripe Element will be inserted here. --> |
@@ -379,7 +379,7 @@ discard block |
||
379 | 379 | </div> |
380 | 380 | |
381 | 381 | <div class="form-row form-row-first"> |
382 | - <label for="stripe-exp-element"><?php esc_html_e( 'Expiry Date', 'woocommerce-gateway-stripe' ); ?> <span class="required">*</span></label> |
|
382 | + <label for="stripe-exp-element"><?php esc_html_e('Expiry Date', 'woocommerce-gateway-stripe'); ?> <span class="required">*</span></label> |
|
383 | 383 | |
384 | 384 | <div id="stripe-exp-element" class="wc-stripe-elements-field"> |
385 | 385 | <!-- a Stripe Element will be inserted here. --> |
@@ -387,7 +387,7 @@ discard block |
||
387 | 387 | </div> |
388 | 388 | |
389 | 389 | <div class="form-row form-row-last"> |
390 | - <label for="stripe-cvc-element"><?php esc_html_e( 'Card Code (CVC)', 'woocommerce-gateway-stripe' ); ?> <span class="required">*</span></label> |
|
390 | + <label for="stripe-cvc-element"><?php esc_html_e('Card Code (CVC)', 'woocommerce-gateway-stripe'); ?> <span class="required">*</span></label> |
|
391 | 391 | <div id="stripe-cvc-element" class="wc-stripe-elements-field"> |
392 | 392 | <!-- a Stripe Element will be inserted here. --> |
393 | 393 | </div> |
@@ -398,7 +398,7 @@ discard block |
||
398 | 398 | <!-- Used to display form errors --> |
399 | 399 | <div class="stripe-source-errors" role="alert"></div> |
400 | 400 | <br /> |
401 | - <?php do_action( 'woocommerce_credit_card_form_end', $this->id ); ?> |
|
401 | + <?php do_action('woocommerce_credit_card_form_end', $this->id); ?> |
|
402 | 402 | <div class="clear"></div> |
403 | 403 | </fieldset> |
404 | 404 | <?php |
@@ -411,13 +411,13 @@ discard block |
||
411 | 411 | * @version 3.1.0 |
412 | 412 | */ |
413 | 413 | public function admin_scripts() { |
414 | - if ( 'woocommerce_page_wc-settings' !== get_current_screen()->id ) { |
|
414 | + if ('woocommerce_page_wc-settings' !== get_current_screen()->id) { |
|
415 | 415 | return; |
416 | 416 | } |
417 | 417 | |
418 | - $suffix = defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG ? '' : '.min'; |
|
418 | + $suffix = defined('SCRIPT_DEBUG') && SCRIPT_DEBUG ? '' : '.min'; |
|
419 | 419 | |
420 | - wp_enqueue_script( 'woocommerce_stripe_admin', plugins_url( 'assets/js/stripe-admin' . $suffix . '.js', WC_STRIPE_MAIN_FILE ), array(), WC_STRIPE_VERSION, true ); |
|
420 | + wp_enqueue_script('woocommerce_stripe_admin', plugins_url('assets/js/stripe-admin' . $suffix . '.js', WC_STRIPE_MAIN_FILE), array(), WC_STRIPE_VERSION, true); |
|
421 | 421 | } |
422 | 422 | |
423 | 423 | /** |
@@ -429,92 +429,92 @@ discard block |
||
429 | 429 | * @version 4.0.0 |
430 | 430 | */ |
431 | 431 | public function payment_scripts() { |
432 | - if ( ! is_cart() && ! is_checkout() && ! isset( $_GET['pay_for_order'] ) && ! is_add_payment_method_page() && ! isset( $_GET['change_payment_method'] ) ) { |
|
432 | + if ( ! is_cart() && ! is_checkout() && ! isset($_GET['pay_for_order']) && ! is_add_payment_method_page() && ! isset($_GET['change_payment_method'])) { |
|
433 | 433 | return; |
434 | 434 | } |
435 | 435 | |
436 | 436 | // If Stripe is not enabled bail. |
437 | - if ( 'no' === $this->enabled ) { |
|
437 | + if ('no' === $this->enabled) { |
|
438 | 438 | return; |
439 | 439 | } |
440 | 440 | |
441 | 441 | // If keys are not set bail. |
442 | - if ( ! $this->are_keys_set() ) { |
|
443 | - WC_Stripe_Logger::log( 'Keys are not set correctly.' ); |
|
442 | + if ( ! $this->are_keys_set()) { |
|
443 | + WC_Stripe_Logger::log('Keys are not set correctly.'); |
|
444 | 444 | return; |
445 | 445 | } |
446 | 446 | |
447 | 447 | // If no SSL bail. |
448 | - if ( ! $this->testmode && ! is_ssl() ) { |
|
449 | - WC_Stripe_Logger::log( 'Stripe live mode requires SSL.' ); |
|
448 | + if ( ! $this->testmode && ! is_ssl()) { |
|
449 | + WC_Stripe_Logger::log('Stripe live mode requires SSL.'); |
|
450 | 450 | } |
451 | 451 | |
452 | - $suffix = defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG ? '' : '.min'; |
|
452 | + $suffix = defined('SCRIPT_DEBUG') && SCRIPT_DEBUG ? '' : '.min'; |
|
453 | 453 | |
454 | - wp_register_style( 'stripe_styles', plugins_url( 'assets/css/stripe-styles.css', WC_STRIPE_MAIN_FILE ), array(), WC_STRIPE_VERSION ); |
|
455 | - wp_enqueue_style( 'stripe_styles' ); |
|
454 | + wp_register_style('stripe_styles', plugins_url('assets/css/stripe-styles.css', WC_STRIPE_MAIN_FILE), array(), WC_STRIPE_VERSION); |
|
455 | + wp_enqueue_style('stripe_styles'); |
|
456 | 456 | |
457 | - wp_register_script( 'stripe_checkout', 'https://checkout.stripe.com/checkout.js', '', WC_STRIPE_VERSION, true ); |
|
458 | - wp_register_script( 'stripe', 'https://js.stripe.com/v3/', '', '3.0', true ); |
|
459 | - wp_register_script( 'woocommerce_stripe', plugins_url( 'assets/js/stripe' . $suffix . '.js', WC_STRIPE_MAIN_FILE ), array( 'jquery-payment', 'stripe' ), WC_STRIPE_VERSION, true ); |
|
457 | + wp_register_script('stripe_checkout', 'https://checkout.stripe.com/checkout.js', '', WC_STRIPE_VERSION, true); |
|
458 | + wp_register_script('stripe', 'https://js.stripe.com/v3/', '', '3.0', true); |
|
459 | + wp_register_script('woocommerce_stripe', plugins_url('assets/js/stripe' . $suffix . '.js', WC_STRIPE_MAIN_FILE), array('jquery-payment', 'stripe'), WC_STRIPE_VERSION, true); |
|
460 | 460 | |
461 | 461 | $stripe_params = array( |
462 | 462 | 'key' => $this->publishable_key, |
463 | - 'i18n_terms' => __( 'Please accept the terms and conditions first', 'woocommerce-gateway-stripe' ), |
|
464 | - 'i18n_required_fields' => __( 'Please fill in required checkout fields first', 'woocommerce-gateway-stripe' ), |
|
463 | + 'i18n_terms' => __('Please accept the terms and conditions first', 'woocommerce-gateway-stripe'), |
|
464 | + 'i18n_required_fields' => __('Please fill in required checkout fields first', 'woocommerce-gateway-stripe'), |
|
465 | 465 | ); |
466 | 466 | |
467 | 467 | // If we're on the pay page we need to pass stripe.js the address of the order. |
468 | - if ( isset( $_GET['pay_for_order'] ) && 'true' === $_GET['pay_for_order'] ) { |
|
469 | - $order_id = wc_get_order_id_by_order_key( urldecode( $_GET['key'] ) ); |
|
470 | - $order = wc_get_order( $order_id ); |
|
471 | - |
|
472 | - if ( is_a( $order, 'WC_Order' ) ) { |
|
473 | - $stripe_params['billing_first_name'] = WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $order->billing_first_name : $order->get_billing_first_name(); |
|
474 | - $stripe_params['billing_last_name'] = WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $order->billing_last_name : $order->get_billing_last_name(); |
|
475 | - $stripe_params['billing_address_1'] = WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $order->billing_address_1 : $order->get_billing_address_1(); |
|
476 | - $stripe_params['billing_address_2'] = WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $order->billing_address_2 : $order->get_billing_address_2(); |
|
477 | - $stripe_params['billing_state'] = WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $order->billing_state : $order->get_billing_state(); |
|
478 | - $stripe_params['billing_city'] = WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $order->billing_city : $order->get_billing_city(); |
|
479 | - $stripe_params['billing_postcode'] = WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $order->billing_postcode : $order->get_billing_postcode(); |
|
480 | - $stripe_params['billing_country'] = WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $order->billing_country : $order->get_billing_country(); |
|
468 | + if (isset($_GET['pay_for_order']) && 'true' === $_GET['pay_for_order']) { |
|
469 | + $order_id = wc_get_order_id_by_order_key(urldecode($_GET['key'])); |
|
470 | + $order = wc_get_order($order_id); |
|
471 | + |
|
472 | + if (is_a($order, 'WC_Order')) { |
|
473 | + $stripe_params['billing_first_name'] = WC_Stripe_Helper::is_wc_lt('3.0') ? $order->billing_first_name : $order->get_billing_first_name(); |
|
474 | + $stripe_params['billing_last_name'] = WC_Stripe_Helper::is_wc_lt('3.0') ? $order->billing_last_name : $order->get_billing_last_name(); |
|
475 | + $stripe_params['billing_address_1'] = WC_Stripe_Helper::is_wc_lt('3.0') ? $order->billing_address_1 : $order->get_billing_address_1(); |
|
476 | + $stripe_params['billing_address_2'] = WC_Stripe_Helper::is_wc_lt('3.0') ? $order->billing_address_2 : $order->get_billing_address_2(); |
|
477 | + $stripe_params['billing_state'] = WC_Stripe_Helper::is_wc_lt('3.0') ? $order->billing_state : $order->get_billing_state(); |
|
478 | + $stripe_params['billing_city'] = WC_Stripe_Helper::is_wc_lt('3.0') ? $order->billing_city : $order->get_billing_city(); |
|
479 | + $stripe_params['billing_postcode'] = WC_Stripe_Helper::is_wc_lt('3.0') ? $order->billing_postcode : $order->get_billing_postcode(); |
|
480 | + $stripe_params['billing_country'] = WC_Stripe_Helper::is_wc_lt('3.0') ? $order->billing_country : $order->get_billing_country(); |
|
481 | 481 | } |
482 | 482 | } |
483 | 483 | |
484 | - $stripe_params['no_prepaid_card_msg'] = __( 'Sorry, we\'re not accepting prepaid cards at this time. Your credit card has not been charge. Please try with alternative payment method.', 'woocommerce-gateway-stripe' ); |
|
485 | - $stripe_params['no_sepa_owner_msg'] = __( 'Please enter your IBAN account name.', 'woocommerce-gateway-stripe' ); |
|
486 | - $stripe_params['no_sepa_iban_msg'] = __( 'Please enter your IBAN account number.', 'woocommerce-gateway-stripe' ); |
|
487 | - $stripe_params['sepa_mandate_notification'] = apply_filters( 'wc_stripe_sepa_mandate_notification', 'email' ); |
|
488 | - $stripe_params['allow_prepaid_card'] = apply_filters( 'wc_stripe_allow_prepaid_card', true ) ? 'yes' : 'no'; |
|
484 | + $stripe_params['no_prepaid_card_msg'] = __('Sorry, we\'re not accepting prepaid cards at this time. Your credit card has not been charge. Please try with alternative payment method.', 'woocommerce-gateway-stripe'); |
|
485 | + $stripe_params['no_sepa_owner_msg'] = __('Please enter your IBAN account name.', 'woocommerce-gateway-stripe'); |
|
486 | + $stripe_params['no_sepa_iban_msg'] = __('Please enter your IBAN account number.', 'woocommerce-gateway-stripe'); |
|
487 | + $stripe_params['sepa_mandate_notification'] = apply_filters('wc_stripe_sepa_mandate_notification', 'email'); |
|
488 | + $stripe_params['allow_prepaid_card'] = apply_filters('wc_stripe_allow_prepaid_card', true) ? 'yes' : 'no'; |
|
489 | 489 | $stripe_params['inline_cc_form'] = $this->inline_cc_form ? 'yes' : 'no'; |
490 | - $stripe_params['stripe_checkout_require_billing_address'] = apply_filters( 'wc_stripe_checkout_require_billing_address', false ) ? 'yes' : 'no'; |
|
491 | - $stripe_params['is_checkout'] = ( is_checkout() && empty( $_GET['pay_for_order'] ) ) ? 'yes' : 'no'; |
|
490 | + $stripe_params['stripe_checkout_require_billing_address'] = apply_filters('wc_stripe_checkout_require_billing_address', false) ? 'yes' : 'no'; |
|
491 | + $stripe_params['is_checkout'] = (is_checkout() && empty($_GET['pay_for_order'])) ? 'yes' : 'no'; |
|
492 | 492 | $stripe_params['return_url'] = $this->get_stripe_return_url(); |
493 | - $stripe_params['ajaxurl'] = WC_AJAX::get_endpoint( '%%endpoint%%' ); |
|
494 | - $stripe_params['stripe_nonce'] = wp_create_nonce( '_wc_stripe_nonce' ); |
|
493 | + $stripe_params['ajaxurl'] = WC_AJAX::get_endpoint('%%endpoint%%'); |
|
494 | + $stripe_params['stripe_nonce'] = wp_create_nonce('_wc_stripe_nonce'); |
|
495 | 495 | $stripe_params['statement_descriptor'] = $this->statement_descriptor; |
496 | - $stripe_params['elements_options'] = apply_filters( 'wc_stripe_elements_options', array() ); |
|
497 | - $stripe_params['sepa_elements_options'] = apply_filters( 'wc_stripe_sepa_elements_options', array( 'supportedCountries' => array( 'SEPA' ), 'placeholderCountry' => WC()->countries->get_base_country(), 'style' => array( 'base' => array( 'fontSize' => '15px' ) ) ) ); |
|
498 | - $stripe_params['invalid_owner_name'] = __( 'Billing First Name and Last Name are required.', 'woocommerce-gateway-stripe' ); |
|
496 | + $stripe_params['elements_options'] = apply_filters('wc_stripe_elements_options', array()); |
|
497 | + $stripe_params['sepa_elements_options'] = apply_filters('wc_stripe_sepa_elements_options', array('supportedCountries' => array('SEPA'), 'placeholderCountry' => WC()->countries->get_base_country(), 'style' => array('base' => array('fontSize' => '15px')))); |
|
498 | + $stripe_params['invalid_owner_name'] = __('Billing First Name and Last Name are required.', 'woocommerce-gateway-stripe'); |
|
499 | 499 | $stripe_params['is_stripe_checkout'] = $this->stripe_checkout ? 'yes' : 'no'; |
500 | - $stripe_params['is_change_payment_page'] = isset( $_GET['change_payment_method'] ) ? 'yes' : 'no'; |
|
501 | - $stripe_params['is_add_payment_page'] = is_wc_endpoint_url( 'add-payment-method' ) ? 'yes' : 'no'; |
|
502 | - $stripe_params['is_pay_for_order_page'] = is_wc_endpoint_url( 'order-pay' ) ? 'yes' : 'no'; |
|
503 | - $stripe_params['elements_styling'] = apply_filters( 'wc_stripe_elements_styling', false ); |
|
504 | - $stripe_params['elements_classes'] = apply_filters( 'wc_stripe_elements_classes', false ); |
|
500 | + $stripe_params['is_change_payment_page'] = isset($_GET['change_payment_method']) ? 'yes' : 'no'; |
|
501 | + $stripe_params['is_add_payment_page'] = is_wc_endpoint_url('add-payment-method') ? 'yes' : 'no'; |
|
502 | + $stripe_params['is_pay_for_order_page'] = is_wc_endpoint_url('order-pay') ? 'yes' : 'no'; |
|
503 | + $stripe_params['elements_styling'] = apply_filters('wc_stripe_elements_styling', false); |
|
504 | + $stripe_params['elements_classes'] = apply_filters('wc_stripe_elements_classes', false); |
|
505 | 505 | |
506 | 506 | // merge localized messages to be use in JS |
507 | - $stripe_params = array_merge( $stripe_params, WC_Stripe_Helper::get_localized_messages() ); |
|
507 | + $stripe_params = array_merge($stripe_params, WC_Stripe_Helper::get_localized_messages()); |
|
508 | 508 | |
509 | - wp_localize_script( 'woocommerce_stripe', 'wc_stripe_params', apply_filters( 'wc_stripe_params', $stripe_params ) ); |
|
510 | - wp_localize_script( 'woocommerce_stripe_checkout', 'wc_stripe_params', apply_filters( 'wc_stripe_params', $stripe_params ) ); |
|
509 | + wp_localize_script('woocommerce_stripe', 'wc_stripe_params', apply_filters('wc_stripe_params', $stripe_params)); |
|
510 | + wp_localize_script('woocommerce_stripe_checkout', 'wc_stripe_params', apply_filters('wc_stripe_params', $stripe_params)); |
|
511 | 511 | |
512 | - if ( $this->stripe_checkout ) { |
|
513 | - wp_enqueue_script( 'stripe_checkout' ); |
|
512 | + if ($this->stripe_checkout) { |
|
513 | + wp_enqueue_script('stripe_checkout'); |
|
514 | 514 | } |
515 | 515 | |
516 | 516 | $this->tokenization_script(); |
517 | - wp_enqueue_script( 'woocommerce_stripe' ); |
|
517 | + wp_enqueue_script('woocommerce_stripe'); |
|
518 | 518 | } |
519 | 519 | |
520 | 520 | /** |
@@ -522,70 +522,70 @@ discard block |
||
522 | 522 | * |
523 | 523 | * @since 4.1.0 |
524 | 524 | */ |
525 | - public function stripe_checkout_receipt_page( $order_id ) { |
|
526 | - if ( ! $this->stripe_checkout ) { |
|
525 | + public function stripe_checkout_receipt_page($order_id) { |
|
526 | + if ( ! $this->stripe_checkout) { |
|
527 | 527 | return; |
528 | 528 | } |
529 | 529 | |
530 | 530 | $user = wp_get_current_user(); |
531 | 531 | $total = WC()->cart->total; |
532 | 532 | $user_email = ''; |
533 | - $display_tokenization = $this->supports( 'tokenization' ) && $this->saved_cards; |
|
533 | + $display_tokenization = $this->supports('tokenization') && $this->saved_cards; |
|
534 | 534 | |
535 | 535 | // If paying from order, we need to get total from order not cart. |
536 | - if ( ! empty( $_GET['key'] ) ) { |
|
537 | - $order = wc_get_order( wc_get_order_id_by_order_key( wc_clean( $_GET['key'] ) ) ); |
|
536 | + if ( ! empty($_GET['key'])) { |
|
537 | + $order = wc_get_order(wc_get_order_id_by_order_key(wc_clean($_GET['key']))); |
|
538 | 538 | $total = $order->get_total(); |
539 | - $user_email = WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $order->billing_email : $order->get_billing_email(); |
|
539 | + $user_email = WC_Stripe_Helper::is_wc_lt('3.0') ? $order->billing_email : $order->get_billing_email(); |
|
540 | 540 | } else { |
541 | - if ( $user->ID ) { |
|
542 | - $user_email = get_user_meta( $user->ID, 'billing_email', true ); |
|
541 | + if ($user->ID) { |
|
542 | + $user_email = get_user_meta($user->ID, 'billing_email', true); |
|
543 | 543 | $user_email = $user_email ? $user_email : $user->user_email; |
544 | 544 | } |
545 | 545 | } |
546 | 546 | |
547 | 547 | ob_start(); |
548 | 548 | |
549 | - do_action( 'wc_stripe_checkout_receipt_page_before_form' ); |
|
549 | + do_action('wc_stripe_checkout_receipt_page_before_form'); |
|
550 | 550 | |
551 | - echo '<form method="post" class="woocommerce-checkout" action="' . WC()->api_request_url( get_class( $this ) ) . '">'; |
|
551 | + echo '<form method="post" class="woocommerce-checkout" action="' . WC()->api_request_url(get_class($this)) . '">'; |
|
552 | 552 | echo '<div |
553 | 553 | id="stripe-payment-data" |
554 | - data-panel-label="' . esc_attr( apply_filters( 'wc_stripe_checkout_label', '' ) ) . '" |
|
555 | - data-description="' . esc_attr( wp_strip_all_tags( $this->stripe_checkout_description ) ) . '" |
|
556 | - data-email="' . esc_attr( $user_email ) . '" |
|
557 | - data-verify-zip="' . esc_attr( apply_filters( 'wc_stripe_checkout_verify_zip', false ) ? 'true' : 'false' ) . '" |
|
558 | - data-billing-address="' . esc_attr( apply_filters( 'wc_stripe_checkout_require_billing_address', false ) ? 'true' : 'false' ) . '" |
|
559 | - data-shipping-address="' . esc_attr( apply_filters( 'wc_stripe_checkout_require_shipping_address', false ) ? 'true' : 'false' ) . '" |
|
560 | - data-amount="' . esc_attr( WC_Stripe_Helper::get_stripe_amount( $total ) ) . '" |
|
561 | - data-name="' . esc_attr( $this->statement_descriptor ) . '" |
|
562 | - data-currency="' . esc_attr( strtolower( get_woocommerce_currency() ) ) . '" |
|
563 | - data-image="' . esc_attr( $this->stripe_checkout_image ) . '" |
|
564 | - data-locale="' . esc_attr( apply_filters( 'wc_stripe_checkout_locale', $this->get_locale() ) ) . '" |
|
565 | - data-three-d-secure="' . esc_attr( $this->three_d_secure ? 'true' : 'false' ) . '" |
|
566 | - data-allow-remember-me="' . esc_attr( apply_filters( 'wc_stripe_allow_remember_me', true ) ? 'true' : 'false' ) . '">'; |
|
567 | - echo '<input type="hidden" name="order_id" value="' . esc_attr( $order_id ) . '" />'; |
|
554 | + data-panel-label="' . esc_attr(apply_filters('wc_stripe_checkout_label', '')) . '" |
|
555 | + data-description="' . esc_attr(wp_strip_all_tags($this->stripe_checkout_description)) . '" |
|
556 | + data-email="' . esc_attr($user_email) . '" |
|
557 | + data-verify-zip="' . esc_attr(apply_filters('wc_stripe_checkout_verify_zip', false) ? 'true' : 'false') . '" |
|
558 | + data-billing-address="' . esc_attr(apply_filters('wc_stripe_checkout_require_billing_address', false) ? 'true' : 'false') . '" |
|
559 | + data-shipping-address="' . esc_attr(apply_filters('wc_stripe_checkout_require_shipping_address', false) ? 'true' : 'false') . '" |
|
560 | + data-amount="' . esc_attr(WC_Stripe_Helper::get_stripe_amount($total)) . '" |
|
561 | + data-name="' . esc_attr($this->statement_descriptor) . '" |
|
562 | + data-currency="' . esc_attr(strtolower(get_woocommerce_currency())) . '" |
|
563 | + data-image="' . esc_attr($this->stripe_checkout_image) . '" |
|
564 | + data-locale="' . esc_attr(apply_filters('wc_stripe_checkout_locale', $this->get_locale())) . '" |
|
565 | + data-three-d-secure="' . esc_attr($this->three_d_secure ? 'true' : 'false') . '" |
|
566 | + data-allow-remember-me="' . esc_attr(apply_filters('wc_stripe_allow_remember_me', true) ? 'true' : 'false') . '">'; |
|
567 | + echo '<input type="hidden" name="order_id" value="' . esc_attr($order_id) . '" />'; |
|
568 | 568 | echo '<input type="hidden" name="stripe_checkout_order" value="yes" />'; |
569 | 569 | |
570 | 570 | if ( |
571 | - apply_filters( 'wc_stripe_display_save_payment_method_checkbox', $display_tokenization ) && |
|
572 | - ( ! function_exists( 'wcs_order_contains_subscription' ) || ( function_exists( 'wcs_order_contains_subscription' ) && ! WC_Subscriptions_Cart::cart_contains_subscription() ) ) && |
|
573 | - ( ! WC_Stripe_Helper::is_pre_orders_exists() || ( WC_Stripe_Helper::is_pre_orders_exists() && ! $this->pre_orders->is_pre_order( $order_id ) ) ) |
|
571 | + apply_filters('wc_stripe_display_save_payment_method_checkbox', $display_tokenization) && |
|
572 | + ( ! function_exists('wcs_order_contains_subscription') || (function_exists('wcs_order_contains_subscription') && ! WC_Subscriptions_Cart::cart_contains_subscription())) && |
|
573 | + ( ! WC_Stripe_Helper::is_pre_orders_exists() || (WC_Stripe_Helper::is_pre_orders_exists() && ! $this->pre_orders->is_pre_order($order_id))) |
|
574 | 574 | ) { |
575 | 575 | $this->save_payment_method_checkbox(); |
576 | 576 | } |
577 | 577 | |
578 | - wp_nonce_field( 'stripe-checkout-process', 'stripe_checkout_process_nonce' ); |
|
578 | + wp_nonce_field('stripe-checkout-process', 'stripe_checkout_process_nonce'); |
|
579 | 579 | |
580 | - do_action( 'wc_stripe_checkout_receipt_page_before_form_submit' ); |
|
580 | + do_action('wc_stripe_checkout_receipt_page_before_form_submit'); |
|
581 | 581 | |
582 | - echo '<button type="submit" class="wc-stripe-checkout-button">' . __( 'Place Order', 'woocommerce-gateway-stripe' ) . '</button>'; |
|
582 | + echo '<button type="submit" class="wc-stripe-checkout-button">' . __('Place Order', 'woocommerce-gateway-stripe') . '</button>'; |
|
583 | 583 | |
584 | - do_action( 'wc_stripe_checkout_receipt_page_after_form_submit' ); |
|
584 | + do_action('wc_stripe_checkout_receipt_page_after_form_submit'); |
|
585 | 585 | |
586 | 586 | echo '</form>'; |
587 | 587 | |
588 | - do_action( 'wc_stripe_checkout_receipt_page_after_form' ); |
|
588 | + do_action('wc_stripe_checkout_receipt_page_after_form'); |
|
589 | 589 | |
590 | 590 | echo '</div>'; |
591 | 591 | |
@@ -598,32 +598,32 @@ discard block |
||
598 | 598 | * @since 4.1.0 |
599 | 599 | */ |
600 | 600 | public function stripe_checkout_return_handler() { |
601 | - if ( ! $this->stripe_checkout ) { |
|
601 | + if ( ! $this->stripe_checkout) { |
|
602 | 602 | return; |
603 | 603 | } |
604 | 604 | |
605 | - if ( ! wp_verify_nonce( $_POST['stripe_checkout_process_nonce'], 'stripe-checkout-process' ) ) { |
|
605 | + if ( ! wp_verify_nonce($_POST['stripe_checkout_process_nonce'], 'stripe-checkout-process')) { |
|
606 | 606 | return; |
607 | 607 | } |
608 | 608 | |
609 | - $order_id = wc_clean( $_POST['order_id'] ); |
|
610 | - $order = wc_get_order( $order_id ); |
|
609 | + $order_id = wc_clean($_POST['order_id']); |
|
610 | + $order = wc_get_order($order_id); |
|
611 | 611 | |
612 | - do_action( 'wc_stripe_checkout_return_handler', $order ); |
|
612 | + do_action('wc_stripe_checkout_return_handler', $order); |
|
613 | 613 | |
614 | - if ( WC_Stripe_Helper::is_pre_orders_exists() && $this->pre_orders->is_pre_order( $order_id ) && WC_Pre_Orders_Order::order_requires_payment_tokenization( $order_id ) ) { |
|
615 | - $result = $this->pre_orders->process_pre_order( $order_id ); |
|
614 | + if (WC_Stripe_Helper::is_pre_orders_exists() && $this->pre_orders->is_pre_order($order_id) && WC_Pre_Orders_Order::order_requires_payment_tokenization($order_id)) { |
|
615 | + $result = $this->pre_orders->process_pre_order($order_id); |
|
616 | 616 | } else { |
617 | - $result = $this->process_payment( $order_id ); |
|
617 | + $result = $this->process_payment($order_id); |
|
618 | 618 | } |
619 | 619 | |
620 | - if ( 'success' === $result['result'] ) { |
|
621 | - wp_redirect( $result['redirect'] ); |
|
620 | + if ('success' === $result['result']) { |
|
621 | + wp_redirect($result['redirect']); |
|
622 | 622 | exit; |
623 | 623 | } |
624 | 624 | |
625 | 625 | // Redirects back to pay order page. |
626 | - wp_safe_redirect( $order->get_checkout_payment_url( true ) ); |
|
626 | + wp_safe_redirect($order->get_checkout_payment_url(true)); |
|
627 | 627 | exit; |
628 | 628 | } |
629 | 629 | |
@@ -634,13 +634,13 @@ discard block |
||
634 | 634 | * @return bool |
635 | 635 | */ |
636 | 636 | public function maybe_redirect_stripe_checkout() { |
637 | - $is_payment_request = ( isset( $_POST ) && isset( $_POST['payment_request_type'] ) ); |
|
637 | + $is_payment_request = (isset($_POST) && isset($_POST['payment_request_type'])); |
|
638 | 638 | |
639 | 639 | return ( |
640 | 640 | $this->stripe_checkout && |
641 | - ! isset( $_POST['stripe_checkout_order'] ) && |
|
641 | + ! isset($_POST['stripe_checkout_order']) && |
|
642 | 642 | ! $this->is_using_saved_payment_method() && |
643 | - ! is_wc_endpoint_url( 'order-pay' ) && |
|
643 | + ! is_wc_endpoint_url('order-pay') && |
|
644 | 644 | ! $is_payment_request |
645 | 645 | ); |
646 | 646 | } |
@@ -659,53 +659,53 @@ discard block |
||
659 | 659 | * |
660 | 660 | * @return array|void |
661 | 661 | */ |
662 | - public function process_payment( $order_id, $retry = true, $force_save_source = false, $previous_error = false ) { |
|
662 | + public function process_payment($order_id, $retry = true, $force_save_source = false, $previous_error = false) { |
|
663 | 663 | try { |
664 | - $order = wc_get_order( $order_id ); |
|
664 | + $order = wc_get_order($order_id); |
|
665 | 665 | |
666 | - if ( $this->maybe_redirect_stripe_checkout() ) { |
|
667 | - WC_Stripe_Logger::log( sprintf( 'Redirecting to Stripe Checkout page for order %s', $order_id ) ); |
|
666 | + if ($this->maybe_redirect_stripe_checkout()) { |
|
667 | + WC_Stripe_Logger::log(sprintf('Redirecting to Stripe Checkout page for order %s', $order_id)); |
|
668 | 668 | |
669 | 669 | return array( |
670 | 670 | 'result' => 'success', |
671 | - 'redirect' => $order->get_checkout_payment_url( true ), |
|
671 | + 'redirect' => $order->get_checkout_payment_url(true), |
|
672 | 672 | ); |
673 | 673 | } |
674 | 674 | |
675 | - if ( $this->maybe_process_pre_orders( $order_id ) ) { |
|
676 | - return $this->pre_orders->process_pre_order( $order_id ); |
|
675 | + if ($this->maybe_process_pre_orders($order_id)) { |
|
676 | + return $this->pre_orders->process_pre_order($order_id); |
|
677 | 677 | } |
678 | 678 | |
679 | 679 | // This comes from the create account checkbox in the checkout page. |
680 | - $create_account = ! empty( $_POST['createaccount'] ) ? true : false; |
|
680 | + $create_account = ! empty($_POST['createaccount']) ? true : false; |
|
681 | 681 | |
682 | - if ( $create_account ) { |
|
683 | - $new_customer_id = WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $order->customer_user : $order->get_customer_id(); |
|
684 | - $new_stripe_customer = new WC_Stripe_Customer( $new_customer_id ); |
|
682 | + if ($create_account) { |
|
683 | + $new_customer_id = WC_Stripe_Helper::is_wc_lt('3.0') ? $order->customer_user : $order->get_customer_id(); |
|
684 | + $new_stripe_customer = new WC_Stripe_Customer($new_customer_id); |
|
685 | 685 | $new_stripe_customer->create_customer(); |
686 | 686 | } |
687 | 687 | |
688 | - $prepared_source = $this->prepare_source( get_current_user_id(), $force_save_source ); |
|
688 | + $prepared_source = $this->prepare_source(get_current_user_id(), $force_save_source); |
|
689 | 689 | |
690 | 690 | // Check if we don't allow prepaid credit cards. |
691 | - if ( ! apply_filters( 'wc_stripe_allow_prepaid_card', true ) && $this->is_prepaid_card( $prepared_source->source_object ) ) { |
|
692 | - $localized_message = __( 'Sorry, we\'re not accepting prepaid cards at this time. Your credit card has not been charge. Please try with alternative payment method.', 'woocommerce-gateway-stripe' ); |
|
693 | - throw new WC_Stripe_Exception( print_r( $prepared_source->source_object, true ), $localized_message ); |
|
691 | + if ( ! apply_filters('wc_stripe_allow_prepaid_card', true) && $this->is_prepaid_card($prepared_source->source_object)) { |
|
692 | + $localized_message = __('Sorry, we\'re not accepting prepaid cards at this time. Your credit card has not been charge. Please try with alternative payment method.', 'woocommerce-gateway-stripe'); |
|
693 | + throw new WC_Stripe_Exception(print_r($prepared_source->source_object, true), $localized_message); |
|
694 | 694 | } |
695 | 695 | |
696 | - if ( empty( $prepared_source->source ) ) { |
|
697 | - $localized_message = __( 'Payment processing failed. Please retry.', 'woocommerce-gateway-stripe' ); |
|
698 | - throw new WC_Stripe_Exception( print_r( $prepared_source, true ), $localized_message ); |
|
696 | + if (empty($prepared_source->source)) { |
|
697 | + $localized_message = __('Payment processing failed. Please retry.', 'woocommerce-gateway-stripe'); |
|
698 | + throw new WC_Stripe_Exception(print_r($prepared_source, true), $localized_message); |
|
699 | 699 | } |
700 | 700 | |
701 | - $this->save_source_to_order( $order, $prepared_source ); |
|
701 | + $this->save_source_to_order($order, $prepared_source); |
|
702 | 702 | |
703 | 703 | // Result from Stripe API request. |
704 | 704 | $response = null; |
705 | 705 | |
706 | - if ( $order->get_total() > 0 ) { |
|
706 | + if ($order->get_total() > 0) { |
|
707 | 707 | // This will throw exception if not valid. |
708 | - $this->validate_minimum_order_amount( $order ); |
|
708 | + $this->validate_minimum_order_amount($order); |
|
709 | 709 | |
710 | 710 | /* |
711 | 711 | * Check if card 3DS is required or optional with 3DS setting. |
@@ -714,22 +714,22 @@ discard block |
||
714 | 714 | * Note that if we need to save source, the original source must be first |
715 | 715 | * attached to a customer in Stripe before it can be charged. |
716 | 716 | */ |
717 | - if ( $this->is_3ds_required( $prepared_source->source_object ) ) { |
|
718 | - $response = $this->create_3ds_source( $order, $prepared_source->source_object ); |
|
717 | + if ($this->is_3ds_required($prepared_source->source_object)) { |
|
718 | + $response = $this->create_3ds_source($order, $prepared_source->source_object); |
|
719 | 719 | |
720 | - if ( ! empty( $response->error ) ) { |
|
720 | + if ( ! empty($response->error)) { |
|
721 | 721 | $localized_message = $response->error->message; |
722 | 722 | |
723 | - $order->add_order_note( $localized_message ); |
|
723 | + $order->add_order_note($localized_message); |
|
724 | 724 | |
725 | - throw new WC_Stripe_Exception( print_r( $response, true ), $localized_message ); |
|
725 | + throw new WC_Stripe_Exception(print_r($response, true), $localized_message); |
|
726 | 726 | } |
727 | 727 | |
728 | 728 | // Update order meta with 3DS source. |
729 | - if ( WC_Stripe_Helper::is_wc_lt( '3.0' ) ) { |
|
730 | - update_post_meta( $order_id, '_stripe_source_id', $response->id ); |
|
729 | + if (WC_Stripe_Helper::is_wc_lt('3.0')) { |
|
730 | + update_post_meta($order_id, '_stripe_source_id', $response->id); |
|
731 | 731 | } else { |
732 | - $order->update_meta_data( '_stripe_source_id', $response->id ); |
|
732 | + $order->update_meta_data('_stripe_source_id', $response->id); |
|
733 | 733 | $order->save(); |
734 | 734 | } |
735 | 735 | |
@@ -737,91 +737,91 @@ discard block |
||
737 | 737 | * Make sure after creating 3DS object it is in pending status |
738 | 738 | * before redirecting. |
739 | 739 | */ |
740 | - if ( 'pending' === $response->redirect->status ) { |
|
741 | - WC_Stripe_Logger::log( 'Info: Redirecting to 3DS...' ); |
|
740 | + if ('pending' === $response->redirect->status) { |
|
741 | + WC_Stripe_Logger::log('Info: Redirecting to 3DS...'); |
|
742 | 742 | |
743 | 743 | return array( |
744 | 744 | 'result' => 'success', |
745 | - 'redirect' => esc_url_raw( $response->redirect->url ), |
|
745 | + 'redirect' => esc_url_raw($response->redirect->url), |
|
746 | 746 | ); |
747 | - } elseif ( 'not_required' === $response->redirect->status && 'chargeable' === $response->status ) { |
|
747 | + } elseif ('not_required' === $response->redirect->status && 'chargeable' === $response->status) { |
|
748 | 748 | // Override the original source object with 3DS. |
749 | 749 | $prepared_source->source_object = $response; |
750 | 750 | $prepared_source->source = $response->id; |
751 | 751 | } |
752 | 752 | } |
753 | 753 | |
754 | - WC_Stripe_Logger::log( "Info: Begin processing payment for order $order_id for the amount of {$order->get_total()}" ); |
|
754 | + WC_Stripe_Logger::log("Info: Begin processing payment for order $order_id for the amount of {$order->get_total()}"); |
|
755 | 755 | |
756 | 756 | /* If we're doing a retry and source is chargeable, we need to pass |
757 | 757 | * a different idempotency key and retry for success. |
758 | 758 | */ |
759 | - if ( $this->need_update_idempotency_key( $prepared_source->source_object, $previous_error ) ) { |
|
760 | - add_filter( 'wc_stripe_idempotency_key', array( $this, 'change_idempotency_key' ), 10, 2 ); |
|
759 | + if ($this->need_update_idempotency_key($prepared_source->source_object, $previous_error)) { |
|
760 | + add_filter('wc_stripe_idempotency_key', array($this, 'change_idempotency_key'), 10, 2); |
|
761 | 761 | } |
762 | 762 | |
763 | 763 | // Make the request. |
764 | - $response = WC_Stripe_API::request( $this->generate_payment_request( $order, $prepared_source ) ); |
|
764 | + $response = WC_Stripe_API::request($this->generate_payment_request($order, $prepared_source)); |
|
765 | 765 | |
766 | - if ( ! empty( $response->error ) ) { |
|
766 | + if ( ! empty($response->error)) { |
|
767 | 767 | // Customer param wrong? The user may have been deleted on stripe's end. Remove customer_id. Can be retried without. |
768 | - if ( $this->is_no_such_customer_error( $response->error ) ) { |
|
769 | - if ( WC_Stripe_Helper::is_wc_lt( '3.0' ) ) { |
|
770 | - delete_user_meta( $order->customer_user, '_stripe_customer_id' ); |
|
771 | - delete_post_meta( $order_id, '_stripe_customer_id' ); |
|
768 | + if ($this->is_no_such_customer_error($response->error)) { |
|
769 | + if (WC_Stripe_Helper::is_wc_lt('3.0')) { |
|
770 | + delete_user_meta($order->customer_user, '_stripe_customer_id'); |
|
771 | + delete_post_meta($order_id, '_stripe_customer_id'); |
|
772 | 772 | } else { |
773 | - delete_user_meta( $order->get_customer_id(), '_stripe_customer_id' ); |
|
774 | - $order->delete_meta_data( '_stripe_customer_id' ); |
|
773 | + delete_user_meta($order->get_customer_id(), '_stripe_customer_id'); |
|
774 | + $order->delete_meta_data('_stripe_customer_id'); |
|
775 | 775 | $order->save(); |
776 | 776 | } |
777 | 777 | } |
778 | 778 | |
779 | - if ( $this->is_no_such_token_error( $response->error ) && $prepared_source->token_id ) { |
|
779 | + if ($this->is_no_such_token_error($response->error) && $prepared_source->token_id) { |
|
780 | 780 | // Source param wrong? The CARD may have been deleted on stripe's end. Remove token and show message. |
781 | - $wc_token = WC_Payment_Tokens::get( $prepared_source->token_id ); |
|
781 | + $wc_token = WC_Payment_Tokens::get($prepared_source->token_id); |
|
782 | 782 | $wc_token->delete(); |
783 | - $localized_message = __( 'This card is no longer available and has been removed.', 'woocommerce-gateway-stripe' ); |
|
784 | - $order->add_order_note( $localized_message ); |
|
785 | - throw new WC_Stripe_Exception( print_r( $response, true ), $localized_message ); |
|
783 | + $localized_message = __('This card is no longer available and has been removed.', 'woocommerce-gateway-stripe'); |
|
784 | + $order->add_order_note($localized_message); |
|
785 | + throw new WC_Stripe_Exception(print_r($response, true), $localized_message); |
|
786 | 786 | } |
787 | 787 | |
788 | 788 | // We want to retry. |
789 | - if ( $this->is_retryable_error( $response->error ) ) { |
|
790 | - if ( $retry ) { |
|
789 | + if ($this->is_retryable_error($response->error)) { |
|
790 | + if ($retry) { |
|
791 | 791 | // Don't do anymore retries after this. |
792 | - if ( 5 <= $this->retry_interval ) { |
|
793 | - return $this->process_payment( $order_id, false, $force_save_source, $response->error ); |
|
792 | + if (5 <= $this->retry_interval) { |
|
793 | + return $this->process_payment($order_id, false, $force_save_source, $response->error); |
|
794 | 794 | } |
795 | 795 | |
796 | - sleep( $this->retry_interval ); |
|
796 | + sleep($this->retry_interval); |
|
797 | 797 | |
798 | 798 | $this->retry_interval++; |
799 | 799 | |
800 | - return $this->process_payment( $order_id, true, $force_save_source, $response->error ); |
|
800 | + return $this->process_payment($order_id, true, $force_save_source, $response->error); |
|
801 | 801 | } else { |
802 | - $localized_message = __( 'Sorry, we are unable to process your payment at this time. Please retry later.', 'woocommerce-gateway-stripe' ); |
|
803 | - $order->add_order_note( $localized_message ); |
|
804 | - throw new WC_Stripe_Exception( print_r( $response, true ), $localized_message ); |
|
802 | + $localized_message = __('Sorry, we are unable to process your payment at this time. Please retry later.', 'woocommerce-gateway-stripe'); |
|
803 | + $order->add_order_note($localized_message); |
|
804 | + throw new WC_Stripe_Exception(print_r($response, true), $localized_message); |
|
805 | 805 | } |
806 | 806 | } |
807 | 807 | |
808 | 808 | $localized_messages = WC_Stripe_Helper::get_localized_messages(); |
809 | 809 | |
810 | - if ( 'card_error' === $response->error->type ) { |
|
811 | - $localized_message = isset( $localized_messages[ $response->error->code ] ) ? $localized_messages[ $response->error->code ] : $response->error->message; |
|
810 | + if ('card_error' === $response->error->type) { |
|
811 | + $localized_message = isset($localized_messages[$response->error->code]) ? $localized_messages[$response->error->code] : $response->error->message; |
|
812 | 812 | } else { |
813 | - $localized_message = isset( $localized_messages[ $response->error->type ] ) ? $localized_messages[ $response->error->type ] : $response->error->message; |
|
813 | + $localized_message = isset($localized_messages[$response->error->type]) ? $localized_messages[$response->error->type] : $response->error->message; |
|
814 | 814 | } |
815 | 815 | |
816 | - $order->add_order_note( $localized_message ); |
|
816 | + $order->add_order_note($localized_message); |
|
817 | 817 | |
818 | - throw new WC_Stripe_Exception( print_r( $response, true ), $localized_message ); |
|
818 | + throw new WC_Stripe_Exception(print_r($response, true), $localized_message); |
|
819 | 819 | } |
820 | 820 | |
821 | - do_action( 'wc_gateway_stripe_process_payment', $response, $order ); |
|
821 | + do_action('wc_gateway_stripe_process_payment', $response, $order); |
|
822 | 822 | |
823 | 823 | // Process valid response. |
824 | - $this->process_response( $response, $order ); |
|
824 | + $this->process_response($response, $order); |
|
825 | 825 | } else { |
826 | 826 | $order->payment_complete(); |
827 | 827 | } |
@@ -832,17 +832,17 @@ discard block |
||
832 | 832 | // Return thank you page redirect. |
833 | 833 | return array( |
834 | 834 | 'result' => 'success', |
835 | - 'redirect' => $this->get_return_url( $order ), |
|
835 | + 'redirect' => $this->get_return_url($order), |
|
836 | 836 | ); |
837 | 837 | |
838 | - } catch ( WC_Stripe_Exception $e ) { |
|
839 | - wc_add_notice( $e->getLocalizedMessage(), 'error' ); |
|
840 | - WC_Stripe_Logger::log( 'Error: ' . $e->getMessage() ); |
|
838 | + } catch (WC_Stripe_Exception $e) { |
|
839 | + wc_add_notice($e->getLocalizedMessage(), 'error'); |
|
840 | + WC_Stripe_Logger::log('Error: ' . $e->getMessage()); |
|
841 | 841 | |
842 | - do_action( 'wc_gateway_stripe_process_payment_error', $e, $order ); |
|
842 | + do_action('wc_gateway_stripe_process_payment_error', $e, $order); |
|
843 | 843 | |
844 | 844 | /* translators: error message */ |
845 | - $order->update_status( 'failed' ); |
|
845 | + $order->update_status('failed'); |
|
846 | 846 | |
847 | 847 | return array( |
848 | 848 | 'result' => 'fail', |
@@ -858,17 +858,17 @@ discard block |
||
858 | 858 | * |
859 | 859 | * @param int $order_id |
860 | 860 | */ |
861 | - public function display_order_fee( $order_id ) { |
|
862 | - if ( apply_filters( 'wc_stripe_hide_display_order_fee', false, $order_id ) ) { |
|
861 | + public function display_order_fee($order_id) { |
|
862 | + if (apply_filters('wc_stripe_hide_display_order_fee', false, $order_id)) { |
|
863 | 863 | return; |
864 | 864 | } |
865 | 865 | |
866 | - $order = wc_get_order( $order_id ); |
|
866 | + $order = wc_get_order($order_id); |
|
867 | 867 | |
868 | - $fee = WC_Stripe_Helper::get_stripe_fee( $order ); |
|
869 | - $currency = WC_Stripe_Helper::get_stripe_currency( $order ); |
|
868 | + $fee = WC_Stripe_Helper::get_stripe_fee($order); |
|
869 | + $currency = WC_Stripe_Helper::get_stripe_currency($order); |
|
870 | 870 | |
871 | - if ( ! $fee || ! $currency ) { |
|
871 | + if ( ! $fee || ! $currency) { |
|
872 | 872 | return; |
873 | 873 | } |
874 | 874 | |
@@ -876,12 +876,12 @@ discard block |
||
876 | 876 | |
877 | 877 | <tr> |
878 | 878 | <td class="label stripe-fee"> |
879 | - <?php echo wc_help_tip( __( 'This represents the fee Stripe collects for the transaction.', 'woocommerce-gateway-stripe' ) ); ?> |
|
880 | - <?php esc_html_e( 'Stripe Fee:', 'woocommerce-gateway-stripe' ); ?> |
|
879 | + <?php echo wc_help_tip(__('This represents the fee Stripe collects for the transaction.', 'woocommerce-gateway-stripe')); ?> |
|
880 | + <?php esc_html_e('Stripe Fee:', 'woocommerce-gateway-stripe'); ?> |
|
881 | 881 | </td> |
882 | 882 | <td width="1%"></td> |
883 | 883 | <td class="total"> |
884 | - - <?php echo wc_price( $fee, array( 'currency' => $currency ) ); ?> |
|
884 | + - <?php echo wc_price($fee, array('currency' => $currency)); ?> |
|
885 | 885 | </td> |
886 | 886 | </tr> |
887 | 887 | |
@@ -895,17 +895,17 @@ discard block |
||
895 | 895 | * |
896 | 896 | * @param int $order_id |
897 | 897 | */ |
898 | - public function display_order_payout( $order_id ) { |
|
899 | - if ( apply_filters( 'wc_stripe_hide_display_order_payout', false, $order_id ) ) { |
|
898 | + public function display_order_payout($order_id) { |
|
899 | + if (apply_filters('wc_stripe_hide_display_order_payout', false, $order_id)) { |
|
900 | 900 | return; |
901 | 901 | } |
902 | 902 | |
903 | - $order = wc_get_order( $order_id ); |
|
903 | + $order = wc_get_order($order_id); |
|
904 | 904 | |
905 | - $net = WC_Stripe_Helper::get_stripe_net( $order ); |
|
906 | - $currency = WC_Stripe_Helper::get_stripe_currency( $order ); |
|
905 | + $net = WC_Stripe_Helper::get_stripe_net($order); |
|
906 | + $currency = WC_Stripe_Helper::get_stripe_currency($order); |
|
907 | 907 | |
908 | - if ( ! $net || ! $currency ) { |
|
908 | + if ( ! $net || ! $currency) { |
|
909 | 909 | return; |
910 | 910 | } |
911 | 911 | |
@@ -913,12 +913,12 @@ discard block |
||
913 | 913 | |
914 | 914 | <tr> |
915 | 915 | <td class="label stripe-payout"> |
916 | - <?php echo wc_help_tip( __( 'This represents the net total that will be credited to your Stripe bank account. This may be in the currency that is set in your Stripe account.', 'woocommerce-gateway-stripe' ) ); ?> |
|
917 | - <?php esc_html_e( 'Stripe Payout:', 'woocommerce-gateway-stripe' ); ?> |
|
916 | + <?php echo wc_help_tip(__('This represents the net total that will be credited to your Stripe bank account. This may be in the currency that is set in your Stripe account.', 'woocommerce-gateway-stripe')); ?> |
|
917 | + <?php esc_html_e('Stripe Payout:', 'woocommerce-gateway-stripe'); ?> |
|
918 | 918 | </td> |
919 | 919 | <td width="1%"></td> |
920 | 920 | <td class="total"> |
921 | - <?php echo wc_price( $net, array( 'currency' => $currency ) ); ?> |
|
921 | + <?php echo wc_price($net, array('currency' => $currency)); ?> |
|
922 | 922 | </td> |
923 | 923 | </tr> |
924 | 924 |
@@ -1,5 +1,5 @@ discard block |
||
1 | 1 | <?php |
2 | -if ( ! defined( 'ABSPATH' ) ) { |
|
2 | +if ( ! defined('ABSPATH')) { |
|
3 | 3 | exit; |
4 | 4 | } |
5 | 5 | |
@@ -72,9 +72,9 @@ discard block |
||
72 | 72 | public function __construct() { |
73 | 73 | $this->retry_interval = 1; |
74 | 74 | $this->id = 'stripe_sepa'; |
75 | - $this->method_title = __( 'Stripe SEPA Direct Debit', 'woocommerce-gateway-stripe' ); |
|
75 | + $this->method_title = __('Stripe SEPA Direct Debit', 'woocommerce-gateway-stripe'); |
|
76 | 76 | /* translators: link */ |
77 | - $this->method_description = sprintf( __( 'All other general Stripe settings can be adjusted <a href="%s">here</a>.', 'woocommerce-gateway-stripe' ), admin_url( 'admin.php?page=wc-settings&tab=checkout§ion=stripe' ) ); |
|
77 | + $this->method_description = sprintf(__('All other general Stripe settings can be adjusted <a href="%s">here</a>.', 'woocommerce-gateway-stripe'), admin_url('admin.php?page=wc-settings&tab=checkout§ion=stripe')); |
|
78 | 78 | $this->has_fields = true; |
79 | 79 | $this->supports = array( |
80 | 80 | 'products', |
@@ -100,28 +100,28 @@ discard block |
||
100 | 100 | // Load the settings. |
101 | 101 | $this->init_settings(); |
102 | 102 | |
103 | - $main_settings = get_option( 'woocommerce_stripe_settings' ); |
|
104 | - $this->title = $this->get_option( 'title' ); |
|
105 | - $this->description = $this->get_option( 'description' ); |
|
106 | - $this->enabled = $this->get_option( 'enabled' ); |
|
107 | - $this->testmode = ( ! empty( $main_settings['testmode'] ) && 'yes' === $main_settings['testmode'] ) ? true : false; |
|
108 | - $this->saved_cards = ( ! empty( $main_settings['saved_cards'] ) && 'yes' === $main_settings['saved_cards'] ) ? true : false; |
|
109 | - $this->publishable_key = ! empty( $main_settings['publishable_key'] ) ? $main_settings['publishable_key'] : ''; |
|
110 | - $this->secret_key = ! empty( $main_settings['secret_key'] ) ? $main_settings['secret_key'] : ''; |
|
111 | - $this->statement_descriptor = ! empty( $main_settings['statement_descriptor'] ) ? $main_settings['statement_descriptor'] : ''; |
|
112 | - |
|
113 | - if ( $this->testmode ) { |
|
114 | - $this->publishable_key = ! empty( $main_settings['test_publishable_key'] ) ? $main_settings['test_publishable_key'] : ''; |
|
115 | - $this->secret_key = ! empty( $main_settings['test_secret_key'] ) ? $main_settings['test_secret_key'] : ''; |
|
103 | + $main_settings = get_option('woocommerce_stripe_settings'); |
|
104 | + $this->title = $this->get_option('title'); |
|
105 | + $this->description = $this->get_option('description'); |
|
106 | + $this->enabled = $this->get_option('enabled'); |
|
107 | + $this->testmode = ( ! empty($main_settings['testmode']) && 'yes' === $main_settings['testmode']) ? true : false; |
|
108 | + $this->saved_cards = ( ! empty($main_settings['saved_cards']) && 'yes' === $main_settings['saved_cards']) ? true : false; |
|
109 | + $this->publishable_key = ! empty($main_settings['publishable_key']) ? $main_settings['publishable_key'] : ''; |
|
110 | + $this->secret_key = ! empty($main_settings['secret_key']) ? $main_settings['secret_key'] : ''; |
|
111 | + $this->statement_descriptor = ! empty($main_settings['statement_descriptor']) ? $main_settings['statement_descriptor'] : ''; |
|
112 | + |
|
113 | + if ($this->testmode) { |
|
114 | + $this->publishable_key = ! empty($main_settings['test_publishable_key']) ? $main_settings['test_publishable_key'] : ''; |
|
115 | + $this->secret_key = ! empty($main_settings['test_secret_key']) ? $main_settings['test_secret_key'] : ''; |
|
116 | 116 | } |
117 | 117 | |
118 | - add_action( 'woocommerce_update_options_payment_gateways_' . $this->id, array( $this, 'process_admin_options' ) ); |
|
119 | - add_action( 'wp_enqueue_scripts', array( $this, 'payment_scripts' ) ); |
|
118 | + add_action('woocommerce_update_options_payment_gateways_' . $this->id, array($this, 'process_admin_options')); |
|
119 | + add_action('wp_enqueue_scripts', array($this, 'payment_scripts')); |
|
120 | 120 | |
121 | - if ( WC_Stripe_Helper::is_pre_orders_exists() ) { |
|
121 | + if (WC_Stripe_Helper::is_pre_orders_exists()) { |
|
122 | 122 | $this->pre_orders = new WC_Stripe_Pre_Orders_Compat(); |
123 | 123 | |
124 | - add_action( 'wc_pre_orders_process_pre_order_completion_payment_' . $this->id, array( $this->pre_orders, 'process_pre_order_release_payment' ) ); |
|
124 | + add_action('wc_pre_orders_process_pre_order_completion_payment_' . $this->id, array($this->pre_orders, 'process_pre_order_release_payment')); |
|
125 | 125 | } |
126 | 126 | } |
127 | 127 | |
@@ -133,9 +133,9 @@ discard block |
||
133 | 133 | * @return array |
134 | 134 | */ |
135 | 135 | public function get_supported_currency() { |
136 | - return apply_filters( 'wc_stripe_sepa_supported_currencies', array( |
|
136 | + return apply_filters('wc_stripe_sepa_supported_currencies', array( |
|
137 | 137 | 'EUR', |
138 | - ) ); |
|
138 | + )); |
|
139 | 139 | } |
140 | 140 | |
141 | 141 | /** |
@@ -146,11 +146,11 @@ discard block |
||
146 | 146 | * @return bool |
147 | 147 | */ |
148 | 148 | public function is_available() { |
149 | - if ( ! in_array( get_woocommerce_currency(), $this->get_supported_currency() ) ) { |
|
149 | + if ( ! in_array(get_woocommerce_currency(), $this->get_supported_currency())) { |
|
150 | 150 | return false; |
151 | 151 | } |
152 | 152 | |
153 | - if ( is_add_payment_method_page() && ! $this->saved_cards ) { |
|
153 | + if (is_add_payment_method_page() && ! $this->saved_cards) { |
|
154 | 154 | return false; |
155 | 155 | } |
156 | 156 | |
@@ -171,7 +171,7 @@ discard block |
||
171 | 171 | |
172 | 172 | $icons_str .= $icons['sepa']; |
173 | 173 | |
174 | - return apply_filters( 'woocommerce_gateway_icon', $icons_str, $this->id ); |
|
174 | + return apply_filters('woocommerce_gateway_icon', $icons_str, $this->id); |
|
175 | 175 | } |
176 | 176 | |
177 | 177 | /** |
@@ -182,19 +182,19 @@ discard block |
||
182 | 182 | * @access public |
183 | 183 | */ |
184 | 184 | public function payment_scripts() { |
185 | - if ( ! is_cart() && ! is_checkout() && ! isset( $_GET['pay_for_order'] ) && ! is_add_payment_method_page() ) { |
|
185 | + if ( ! is_cart() && ! is_checkout() && ! isset($_GET['pay_for_order']) && ! is_add_payment_method_page()) { |
|
186 | 186 | return; |
187 | 187 | } |
188 | 188 | |
189 | - wp_enqueue_style( 'stripe_styles' ); |
|
190 | - wp_enqueue_script( 'woocommerce_stripe' ); |
|
189 | + wp_enqueue_style('stripe_styles'); |
|
190 | + wp_enqueue_script('woocommerce_stripe'); |
|
191 | 191 | } |
192 | 192 | |
193 | 193 | /** |
194 | 194 | * Initialize Gateway Settings Form Fields. |
195 | 195 | */ |
196 | 196 | public function init_form_fields() { |
197 | - $this->form_fields = require( WC_STRIPE_PLUGIN_PATH . '/includes/admin/stripe-sepa-settings.php' ); |
|
197 | + $this->form_fields = require(WC_STRIPE_PLUGIN_PATH . '/includes/admin/stripe-sepa-settings.php'); |
|
198 | 198 | } |
199 | 199 | |
200 | 200 | /** |
@@ -206,7 +206,7 @@ discard block |
||
206 | 206 | */ |
207 | 207 | public function mandate_display() { |
208 | 208 | /* translators: statement descriptor */ |
209 | - printf( __( 'By providing your IBAN and confirming this payment, you are authorizing %s and Stripe, our payment service provider, to send instructions to your bank to debit your account and your bank to debit your account in accordance with those instructions. You are entitled to a refund from your bank under the terms and conditions of your agreement with your bank. A refund must be claimed within 8 weeks starting from the date on which your account was debited.', 'woocommerce-gateway-stripe' ), WC_Stripe_Helper::clean_statement_descriptor( $this->statement_descriptor ) ); |
|
209 | + printf(__('By providing your IBAN and confirming this payment, you are authorizing %s and Stripe, our payment service provider, to send instructions to your bank to debit your account and your bank to debit your account in accordance with those instructions. You are entitled to a refund from your bank under the terms and conditions of your agreement with your bank. A refund must be claimed within 8 weeks starting from the date on which your account was debited.', 'woocommerce-gateway-stripe'), WC_Stripe_Helper::clean_statement_descriptor($this->statement_descriptor)); |
|
210 | 210 | } |
211 | 211 | |
212 | 212 | /** |
@@ -217,12 +217,12 @@ discard block |
||
217 | 217 | */ |
218 | 218 | public function form() { |
219 | 219 | ?> |
220 | - <fieldset id="wc-<?php echo esc_attr( $this->id ); ?>-form" class="wc-payment-form"> |
|
221 | - <?php do_action( 'woocommerce_credit_card_form_start', $this->id ); ?> |
|
220 | + <fieldset id="wc-<?php echo esc_attr($this->id); ?>-form" class="wc-payment-form"> |
|
221 | + <?php do_action('woocommerce_credit_card_form_start', $this->id); ?> |
|
222 | 222 | <p class="wc-stripe-sepa-mandate" style="margin-bottom:40px;"><?php $this->mandate_display(); ?></p> |
223 | 223 | <p class="form-row form-row-wide"> |
224 | 224 | <label for="stripe-iban-element"> |
225 | - <?php esc_html_e( 'IBAN.', 'woocommerce-gateway-stripe' ); ?> <span class="required">*</span> |
|
225 | + <?php esc_html_e('IBAN.', 'woocommerce-gateway-stripe'); ?> <span class="required">*</span> |
|
226 | 226 | </label> |
227 | 227 | <div id="stripe-iban-element" class="wc-stripe-iban-element-field"> |
228 | 228 | <!-- A Stripe Element will be inserted here. --> |
@@ -232,7 +232,7 @@ discard block |
||
232 | 232 | <!-- Used to display form errors --> |
233 | 233 | <div class="stripe-source-errors" role="alert"></div> |
234 | 234 | <br /> |
235 | - <?php do_action( 'woocommerce_credit_card_form_end', $this->id ); ?> |
|
235 | + <?php do_action('woocommerce_credit_card_form_end', $this->id); ?> |
|
236 | 236 | <div class="clear"></div> |
237 | 237 | </fieldset> |
238 | 238 | <?php |
@@ -243,45 +243,45 @@ discard block |
||
243 | 243 | */ |
244 | 244 | public function payment_fields() { |
245 | 245 | $total = WC()->cart->total; |
246 | - $display_tokenization = $this->supports( 'tokenization' ) && is_checkout() && $this->saved_cards; |
|
246 | + $display_tokenization = $this->supports('tokenization') && is_checkout() && $this->saved_cards; |
|
247 | 247 | $description = $this->get_description(); |
248 | - $description = ! empty( $description ) ? $description : ''; |
|
248 | + $description = ! empty($description) ? $description : ''; |
|
249 | 249 | |
250 | 250 | // If paying from order, we need to get total from order not cart. |
251 | - if ( isset( $_GET['pay_for_order'] ) && ! empty( $_GET['key'] ) ) { |
|
252 | - $order = wc_get_order( wc_get_order_id_by_order_key( wc_clean( $_GET['key'] ) ) ); |
|
251 | + if (isset($_GET['pay_for_order']) && ! empty($_GET['key'])) { |
|
252 | + $order = wc_get_order(wc_get_order_id_by_order_key(wc_clean($_GET['key']))); |
|
253 | 253 | $total = $order->get_total(); |
254 | 254 | } |
255 | 255 | |
256 | - if ( is_add_payment_method_page() ) { |
|
256 | + if (is_add_payment_method_page()) { |
|
257 | 257 | $total = ''; |
258 | 258 | } |
259 | 259 | |
260 | 260 | echo '<div |
261 | 261 | id="stripe-sepa_debit-payment-data" |
262 | - data-amount="' . esc_attr( WC_Stripe_Helper::get_stripe_amount( $total ) ) . '" |
|
263 | - data-currency="' . esc_attr( strtolower( get_woocommerce_currency() ) ) . '">'; |
|
262 | + data-amount="' . esc_attr(WC_Stripe_Helper::get_stripe_amount($total)) . '" |
|
263 | + data-currency="' . esc_attr(strtolower(get_woocommerce_currency())) . '">'; |
|
264 | 264 | |
265 | - if ( $this->testmode ) { |
|
266 | - $description .= ' ' . __( 'TEST MODE ENABLED. In test mode, you can use IBAN number DE89370400440532013000.', 'woocommerce-gateway-stripe' ); |
|
265 | + if ($this->testmode) { |
|
266 | + $description .= ' ' . __('TEST MODE ENABLED. In test mode, you can use IBAN number DE89370400440532013000.', 'woocommerce-gateway-stripe'); |
|
267 | 267 | } |
268 | 268 | |
269 | - $description = trim( $description ); |
|
269 | + $description = trim($description); |
|
270 | 270 | |
271 | - echo apply_filters( 'wc_stripe_description', wpautop( wp_kses_post( $description ) ), $this->id ); |
|
271 | + echo apply_filters('wc_stripe_description', wpautop(wp_kses_post($description)), $this->id); |
|
272 | 272 | |
273 | - if ( $display_tokenization ) { |
|
273 | + if ($display_tokenization) { |
|
274 | 274 | $this->tokenization_script(); |
275 | 275 | $this->saved_payment_methods(); |
276 | 276 | } |
277 | 277 | |
278 | 278 | $this->form(); |
279 | 279 | |
280 | - if ( apply_filters( 'wc_stripe_display_save_payment_method_checkbox', $display_tokenization ) && ! is_add_payment_method_page() && ! isset( $_GET['change_payment_method'] ) ) { |
|
280 | + if (apply_filters('wc_stripe_display_save_payment_method_checkbox', $display_tokenization) && ! is_add_payment_method_page() && ! isset($_GET['change_payment_method'])) { |
|
281 | 281 | $this->save_payment_method_checkbox(); |
282 | 282 | } |
283 | 283 | |
284 | - do_action( 'wc_stripe_sepa_payment_fields', $this->id ); |
|
284 | + do_action('wc_stripe_sepa_payment_fields', $this->id); |
|
285 | 285 | |
286 | 286 | echo '</div>'; |
287 | 287 | } |
@@ -297,99 +297,99 @@ discard block |
||
297 | 297 | * |
298 | 298 | * @return array|void |
299 | 299 | */ |
300 | - public function process_payment( $order_id, $retry = true, $force_save_source = false ) { |
|
300 | + public function process_payment($order_id, $retry = true, $force_save_source = false) { |
|
301 | 301 | try { |
302 | - $order = wc_get_order( $order_id ); |
|
302 | + $order = wc_get_order($order_id); |
|
303 | 303 | |
304 | - if ( $this->maybe_process_pre_orders( $order_id ) ) { |
|
305 | - return $this->pre_orders->process_pre_order( $order_id ); |
|
304 | + if ($this->maybe_process_pre_orders($order_id)) { |
|
305 | + return $this->pre_orders->process_pre_order($order_id); |
|
306 | 306 | } |
307 | 307 | |
308 | 308 | // This comes from the create account checkbox in the checkout page. |
309 | - $create_account = ! empty( $_POST['createaccount'] ) ? true : false; |
|
309 | + $create_account = ! empty($_POST['createaccount']) ? true : false; |
|
310 | 310 | |
311 | - if ( $create_account ) { |
|
312 | - $new_customer_id = WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $order->customer_user : $order->get_customer_id(); |
|
313 | - $new_stripe_customer = new WC_Stripe_Customer( $new_customer_id ); |
|
311 | + if ($create_account) { |
|
312 | + $new_customer_id = WC_Stripe_Helper::is_wc_lt('3.0') ? $order->customer_user : $order->get_customer_id(); |
|
313 | + $new_stripe_customer = new WC_Stripe_Customer($new_customer_id); |
|
314 | 314 | $new_stripe_customer->create_customer(); |
315 | 315 | } |
316 | 316 | |
317 | - $prepared_source = $this->prepare_source( get_current_user_id(), $force_save_source ); |
|
317 | + $prepared_source = $this->prepare_source(get_current_user_id(), $force_save_source); |
|
318 | 318 | |
319 | - $this->save_source_to_order( $order, $prepared_source ); |
|
319 | + $this->save_source_to_order($order, $prepared_source); |
|
320 | 320 | |
321 | 321 | // Result from Stripe API request. |
322 | 322 | $response = null; |
323 | 323 | |
324 | - if ( $order->get_total() > 0 ) { |
|
324 | + if ($order->get_total() > 0) { |
|
325 | 325 | // This will throw exception if not valid. |
326 | - $this->validate_minimum_order_amount( $order ); |
|
326 | + $this->validate_minimum_order_amount($order); |
|
327 | 327 | |
328 | - WC_Stripe_Logger::log( "Info: Begin processing payment for order $order_id for the amount of {$order->get_total()}" ); |
|
328 | + WC_Stripe_Logger::log("Info: Begin processing payment for order $order_id for the amount of {$order->get_total()}"); |
|
329 | 329 | |
330 | 330 | // Make the request. |
331 | - $response = WC_Stripe_API::request( $this->generate_payment_request( $order, $prepared_source ) ); |
|
331 | + $response = WC_Stripe_API::request($this->generate_payment_request($order, $prepared_source)); |
|
332 | 332 | |
333 | - if ( ! empty( $response->error ) ) { |
|
333 | + if ( ! empty($response->error)) { |
|
334 | 334 | // Customer param wrong? The user may have been deleted on stripe's end. Remove customer_id. Can be retried without. |
335 | - if ( $this->is_no_such_customer_error( $response->error ) ) { |
|
336 | - if ( WC_Stripe_Helper::is_wc_lt( '3.0' ) ) { |
|
337 | - delete_user_meta( $order->customer_user, '_stripe_customer_id' ); |
|
338 | - delete_post_meta( $order_id, '_stripe_customer_id' ); |
|
335 | + if ($this->is_no_such_customer_error($response->error)) { |
|
336 | + if (WC_Stripe_Helper::is_wc_lt('3.0')) { |
|
337 | + delete_user_meta($order->customer_user, '_stripe_customer_id'); |
|
338 | + delete_post_meta($order_id, '_stripe_customer_id'); |
|
339 | 339 | } else { |
340 | - delete_user_meta( $order->get_customer_id(), '_stripe_customer_id' ); |
|
341 | - $order->delete_meta_data( '_stripe_customer_id' ); |
|
340 | + delete_user_meta($order->get_customer_id(), '_stripe_customer_id'); |
|
341 | + $order->delete_meta_data('_stripe_customer_id'); |
|
342 | 342 | $order->save(); |
343 | 343 | } |
344 | 344 | } |
345 | 345 | |
346 | - if ( $this->is_no_such_token_error( $response->error ) && $prepared_source->token_id ) { |
|
346 | + if ($this->is_no_such_token_error($response->error) && $prepared_source->token_id) { |
|
347 | 347 | // Source param wrong? The CARD may have been deleted on stripe's end. Remove token and show message. |
348 | - $wc_token = WC_Payment_Tokens::get( $prepared_source->token_id ); |
|
348 | + $wc_token = WC_Payment_Tokens::get($prepared_source->token_id); |
|
349 | 349 | $wc_token->delete(); |
350 | - $localized_message = __( 'This card is no longer available and has been removed.', 'woocommerce-gateway-stripe' ); |
|
351 | - $order->add_order_note( $localized_message ); |
|
352 | - throw new WC_Stripe_Exception( print_r( $response, true ), $localized_message ); |
|
350 | + $localized_message = __('This card is no longer available and has been removed.', 'woocommerce-gateway-stripe'); |
|
351 | + $order->add_order_note($localized_message); |
|
352 | + throw new WC_Stripe_Exception(print_r($response, true), $localized_message); |
|
353 | 353 | } |
354 | 354 | |
355 | 355 | // We want to retry. |
356 | - if ( $this->is_retryable_error( $response->error ) ) { |
|
357 | - if ( $retry ) { |
|
356 | + if ($this->is_retryable_error($response->error)) { |
|
357 | + if ($retry) { |
|
358 | 358 | // Don't do anymore retries after this. |
359 | - if ( 5 <= $this->retry_interval ) { |
|
359 | + if (5 <= $this->retry_interval) { |
|
360 | 360 | |
361 | - return $this->process_payment( $order_id, false, $force_save_source ); |
|
361 | + return $this->process_payment($order_id, false, $force_save_source); |
|
362 | 362 | } |
363 | 363 | |
364 | - sleep( $this->retry_interval ); |
|
364 | + sleep($this->retry_interval); |
|
365 | 365 | |
366 | 366 | $this->retry_interval++; |
367 | 367 | |
368 | - return $this->process_payment( $order_id, true, $force_save_source ); |
|
368 | + return $this->process_payment($order_id, true, $force_save_source); |
|
369 | 369 | } else { |
370 | - $localized_message = __( 'Sorry, we are unable to process your payment at this time. Please retry later.', 'woocommerce-gateway-stripe' ); |
|
371 | - $order->add_order_note( $localized_message ); |
|
372 | - throw new WC_Stripe_Exception( print_r( $response, true ), $localized_message ); |
|
370 | + $localized_message = __('Sorry, we are unable to process your payment at this time. Please retry later.', 'woocommerce-gateway-stripe'); |
|
371 | + $order->add_order_note($localized_message); |
|
372 | + throw new WC_Stripe_Exception(print_r($response, true), $localized_message); |
|
373 | 373 | } |
374 | 374 | } |
375 | 375 | |
376 | 376 | $localized_messages = WC_Stripe_Helper::get_localized_messages(); |
377 | 377 | |
378 | - if ( 'card_error' === $response->error->type ) { |
|
379 | - $localized_message = isset( $localized_messages[ $response->error->code ] ) ? $localized_messages[ $response->error->code ] : $response->error->message; |
|
378 | + if ('card_error' === $response->error->type) { |
|
379 | + $localized_message = isset($localized_messages[$response->error->code]) ? $localized_messages[$response->error->code] : $response->error->message; |
|
380 | 380 | } else { |
381 | - $localized_message = isset( $localized_messages[ $response->error->type ] ) ? $localized_messages[ $response->error->type ] : $response->error->message; |
|
381 | + $localized_message = isset($localized_messages[$response->error->type]) ? $localized_messages[$response->error->type] : $response->error->message; |
|
382 | 382 | } |
383 | 383 | |
384 | - $order->add_order_note( $localized_message ); |
|
384 | + $order->add_order_note($localized_message); |
|
385 | 385 | |
386 | - throw new WC_Stripe_Exception( print_r( $response, true ), $localized_message ); |
|
386 | + throw new WC_Stripe_Exception(print_r($response, true), $localized_message); |
|
387 | 387 | } |
388 | 388 | |
389 | - do_action( 'wc_gateway_stripe_process_payment', $response, $order ); |
|
389 | + do_action('wc_gateway_stripe_process_payment', $response, $order); |
|
390 | 390 | |
391 | 391 | // Process valid response. |
392 | - $this->process_response( $response, $order ); |
|
392 | + $this->process_response($response, $order); |
|
393 | 393 | } else { |
394 | 394 | $order->payment_complete(); |
395 | 395 | } |
@@ -400,17 +400,17 @@ discard block |
||
400 | 400 | // Return thank you page redirect. |
401 | 401 | return array( |
402 | 402 | 'result' => 'success', |
403 | - 'redirect' => $this->get_return_url( $order ), |
|
403 | + 'redirect' => $this->get_return_url($order), |
|
404 | 404 | ); |
405 | 405 | |
406 | - } catch ( WC_Stripe_Exception $e ) { |
|
407 | - wc_add_notice( $e->getLocalizedMessage(), 'error' ); |
|
408 | - WC_Stripe_Logger::log( 'Error: ' . $e->getMessage() ); |
|
406 | + } catch (WC_Stripe_Exception $e) { |
|
407 | + wc_add_notice($e->getLocalizedMessage(), 'error'); |
|
408 | + WC_Stripe_Logger::log('Error: ' . $e->getMessage()); |
|
409 | 409 | |
410 | - do_action( 'wc_gateway_stripe_process_payment_error', $e, $order ); |
|
410 | + do_action('wc_gateway_stripe_process_payment_error', $e, $order); |
|
411 | 411 | |
412 | - if ( $order->has_status( array( 'pending', 'failed' ) ) ) { |
|
413 | - $this->send_failed_order_email( $order_id ); |
|
412 | + if ($order->has_status(array('pending', 'failed'))) { |
|
413 | + $this->send_failed_order_email($order_id); |
|
414 | 414 | } |
415 | 415 | |
416 | 416 | return array( |