Completed
Pull Request — master (#1407)
by
unknown
01:49
created
includes/abstracts/abstract-wc-stripe-payment-gateway.php 1 patch
Spacing   +337 added lines, -337 removed lines patch added patch discarded remove patch
@@ -1,5 +1,5 @@  discard block
 block discarded – undo
1 1
 <?php
2
-if ( ! defined( 'ABSPATH' ) ) {
2
+if ( ! defined('ABSPATH')) {
3 3
 	exit;
4 4
 }
5 5
 
@@ -21,7 +21,7 @@  discard block
 block discarded – undo
21 21
 	 */
22 22
 	public function display_admin_settings_webhook_description() {
23 23
 		/* translators: 1) webhook url */
24
-		return sprintf( __( 'You must add the following webhook endpoint <strong style="background-color:#ddd;">&nbsp;%s&nbsp;</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() );
24
+		return sprintf(__('You must add the following webhook endpoint <strong style="background-color:#ddd;">&nbsp;%s&nbsp;</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());
25 25
 	}
26 26
 
27 27
 	/**
@@ -35,8 +35,8 @@  discard block
 block discarded – undo
35 35
 				<input id="wc-%1$s-new-payment-method" name="wc-%1$s-new-payment-method" type="checkbox" value="true" style="width:auto;" />
36 36
 				<label for="wc-%1$s-new-payment-method" style="display:inline;">%2$s</label>
37 37
 			</p>',
38
-			esc_attr( $this->id ),
39
-			esc_html( apply_filters( 'wc_stripe_save_to_account_text', __( 'Save payment information to my account for future purchases.', 'woocommerce-gateway-stripe' ) ) )
38
+			esc_attr($this->id),
39
+			esc_html(apply_filters('wc_stripe_save_to_account_text', __('Save payment information to my account for future purchases.', 'woocommerce-gateway-stripe')))
40 40
 		);
41 41
 	}
42 42
 
@@ -47,7 +47,7 @@  discard block
 block discarded – undo
47 47
 	 * @since 4.0.5
48 48
 	 * @param array $error
49 49
 	 */
50
-	public function is_retryable_error( $error ) {
50
+	public function is_retryable_error($error) {
51 51
 		return (
52 52
 			'invalid_request_error' === $error->type ||
53 53
 			'idempotency_error' === $error->type ||
@@ -64,11 +64,11 @@  discard block
 block discarded – undo
64 64
 	 * @since 4.1.0
65 65
 	 * @param array $error
66 66
 	 */
67
-	public function is_same_idempotency_error( $error ) {
67
+	public function is_same_idempotency_error($error) {
68 68
 		return (
69 69
 			$error &&
70 70
 			'idempotency_error' === $error->type &&
71
-			preg_match( '/Keys for idempotent requests can only be used with the same parameters they were first used with./i', $error->message )
71
+			preg_match('/Keys for idempotent requests can only be used with the same parameters they were first used with./i', $error->message)
72 72
 		);
73 73
 	}
74 74
 
@@ -79,11 +79,11 @@  discard block
 block discarded – undo
79 79
 	 * @since 4.1.0
80 80
 	 * @param array $error
81 81
 	 */
82
-	public function is_no_such_customer_error( $error ) {
82
+	public function is_no_such_customer_error($error) {
83 83
 		return (
84 84
 			$error &&
85 85
 			'invalid_request_error' === $error->type &&
86
-			preg_match( '/No such customer/i', $error->message )
86
+			preg_match('/No such customer/i', $error->message)
87 87
 		);
88 88
 	}
89 89
 
@@ -94,11 +94,11 @@  discard block
 block discarded – undo
94 94
 	 * @since 4.1.0
95 95
 	 * @param array $error
96 96
 	 */
97
-	public function is_no_such_token_error( $error ) {
97
+	public function is_no_such_token_error($error) {
98 98
 		return (
99 99
 			$error &&
100 100
 			'invalid_request_error' === $error->type &&
101
-			preg_match( '/No such token/i', $error->message )
101
+			preg_match('/No such token/i', $error->message)
102 102
 		);
103 103
 	}
104 104
 
@@ -109,11 +109,11 @@  discard block
 block discarded – undo
109 109
 	 * @since 4.1.0
110 110
 	 * @param array $error
111 111
 	 */
112
-	public function is_no_such_source_error( $error ) {
112
+	public function is_no_such_source_error($error) {
113 113
 		return (
114 114
 			$error &&
115 115
 			'invalid_request_error' === $error->type &&
116
-			preg_match( '/No such source/i', $error->message )
116
+			preg_match('/No such source/i', $error->message)
117 117
 		);
118 118
 	}
119 119
 
@@ -124,11 +124,11 @@  discard block
 block discarded – undo
124 124
 	 * @since 4.1.0
125 125
 	 * @param array $error
126 126
 	 */
127
-	public function is_no_linked_source_error( $error ) {
127
+	public function is_no_linked_source_error($error) {
128 128
 		return (
129 129
 			$error &&
130 130
 			'invalid_request_error' === $error->type &&
131
-			preg_match( '/does not have a linked source with ID/i', $error->message )
131
+			preg_match('/does not have a linked source with ID/i', $error->message)
132 132
 		);
133 133
 	}
134 134
 
@@ -141,13 +141,13 @@  discard block
 block discarded – undo
141 141
 	 * @param object $error
142 142
 	 * @return bool
143 143
 	 */
144
-	public function need_update_idempotency_key( $source_object, $error ) {
144
+	public function need_update_idempotency_key($source_object, $error) {
145 145
 		return (
146 146
 			$error &&
147 147
 			1 < $this->retry_interval &&
148
-			! empty( $source_object ) &&
148
+			! empty($source_object) &&
149 149
 			'chargeable' === $source_object->status &&
150
-			self::is_same_idempotency_error( $error )
150
+			self::is_same_idempotency_error($error)
151 151
 		);
152 152
 	}
153 153
 
@@ -161,12 +161,12 @@  discard block
 block discarded – undo
161 161
 		// NOTE: updates to this function should be added to are_keys_set()
162 162
 		// in includes/payment-methods/class-wc-stripe-payment-request.php
163 163
 
164
-		if ( $this->testmode ) {
165
-			return preg_match( '/^pk_test_/', $this->publishable_key )
166
-				&& preg_match( '/^[rs]k_test_/', $this->secret_key );
164
+		if ($this->testmode) {
165
+			return preg_match('/^pk_test_/', $this->publishable_key)
166
+				&& preg_match('/^[rs]k_test_/', $this->secret_key);
167 167
 		} else {
168
-			return preg_match( '/^pk_live_/', $this->publishable_key )
169
-			    && preg_match( '/^[rs]k_live_/', $this->secret_key );
168
+			return preg_match('/^pk_live_/', $this->publishable_key)
169
+			    && preg_match('/^[rs]k_live_/', $this->secret_key);
170 170
 		}
171 171
 	}
172 172
 
@@ -176,7 +176,7 @@  discard block
 block discarded – undo
176 176
 	 * @since 4.1.3
177 177
 	 */
178 178
 	public function is_available() {
179
-		if ( 'yes' === $this->enabled ) {
179
+		if ('yes' === $this->enabled) {
180 180
 			return $this->are_keys_set();
181 181
 		}
182 182
 
@@ -191,12 +191,12 @@  discard block
 block discarded – undo
191 191
 	 * @param int $order_id
192 192
 	 * @return bool
193 193
 	 */
194
-	public function maybe_process_pre_orders( $order_id ) {
194
+	public function maybe_process_pre_orders($order_id) {
195 195
 		return (
196 196
 			WC_Stripe_Helper::is_pre_orders_exists() &&
197
-			$this->pre_orders->is_pre_order( $order_id ) &&
198
-			WC_Pre_Orders_Order::order_requires_payment_tokenization( $order_id ) &&
199
-			! is_wc_endpoint_url( 'order-pay' )
197
+			$this->pre_orders->is_pre_order($order_id) &&
198
+			WC_Pre_Orders_Order::order_requires_payment_tokenization($order_id) &&
199
+			! is_wc_endpoint_url('order-pay')
200 200
 		);
201 201
 	}
202 202
 
@@ -240,10 +240,10 @@  discard block
 block discarded – undo
240 240
 	 * @version 4.0.0
241 241
 	 * @param object $order
242 242
 	 */
243
-	public function validate_minimum_order_amount( $order ) {
244
-		if ( $order->get_total() * 100 < WC_Stripe_Helper::get_minimum_amount() ) {
243
+	public function validate_minimum_order_amount($order) {
244
+		if ($order->get_total() * 100 < WC_Stripe_Helper::get_minimum_amount()) {
245 245
 			/* translators: 1) dollar amount */
246
-			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 ) ) );
246
+			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)));
247 247
 		}
248 248
 	}
249 249
 
@@ -253,14 +253,14 @@  discard block
 block discarded – undo
253 253
 	 * @since 4.0.0
254 254
 	 * @version 4.0.0
255 255
 	 */
256
-	public function get_transaction_url( $order ) {
257
-		if ( $this->testmode ) {
256
+	public function get_transaction_url($order) {
257
+		if ($this->testmode) {
258 258
 			$this->view_transaction_url = 'https://dashboard.stripe.com/test/payments/%s';
259 259
 		} else {
260 260
 			$this->view_transaction_url = 'https://dashboard.stripe.com/payments/%s';
261 261
 		}
262 262
 
263
-		return parent::get_transaction_url( $order );
263
+		return parent::get_transaction_url($order);
264 264
 	}
265 265
 
266 266
 	/**
@@ -269,12 +269,12 @@  discard block
 block discarded – undo
269 269
 	 * @since 4.0.0
270 270
 	 * @version 4.0.0
271 271
 	 */
272
-	public function get_stripe_customer_id( $order ) {
273
-		$customer = get_user_option( '_stripe_customer_id', $order->get_customer_id() );
272
+	public function get_stripe_customer_id($order) {
273
+		$customer = get_user_option('_stripe_customer_id', $order->get_customer_id());
274 274
 
275
-		if ( empty( $customer ) ) {
275
+		if (empty($customer)) {
276 276
 			// Try to get it via the order.
277
-			return $order->get_meta( '_stripe_customer_id', true );
277
+			return $order->get_meta('_stripe_customer_id', true);
278 278
 		} else {
279 279
 			return $customer;
280 280
 		}
@@ -290,9 +290,9 @@  discard block
 block discarded – undo
290 290
 	 * @param object $order
291 291
 	 * @param int $id Stripe session id.
292 292
 	 */
293
-	public function get_stripe_return_url( $order = null, $id = null ) {
294
-		if ( is_object( $order ) ) {
295
-			if ( empty( $id ) ) {
293
+	public function get_stripe_return_url($order = null, $id = null) {
294
+		if (is_object($order)) {
295
+			if (empty($id)) {
296 296
 				$id = uniqid();
297 297
 			}
298 298
 
@@ -303,10 +303,10 @@  discard block
 block discarded – undo
303 303
 				'order_id'       => $order_id,
304 304
 			);
305 305
 
306
-			return wp_sanitize_redirect( esc_url_raw( add_query_arg( $args, $this->get_return_url( $order ) ) ) );
306
+			return wp_sanitize_redirect(esc_url_raw(add_query_arg($args, $this->get_return_url($order))));
307 307
 		}
308 308
 
309
-		return wp_sanitize_redirect( esc_url_raw( add_query_arg( array( 'utm_nooverride' => '1' ), $this->get_return_url() ) ) );
309
+		return wp_sanitize_redirect(esc_url_raw(add_query_arg(array('utm_nooverride' => '1'), $this->get_return_url())));
310 310
 	}
311 311
 
312 312
 	/**
@@ -314,8 +314,8 @@  discard block
 block discarded – undo
314 314
 	 * @param  int  $order_id
315 315
 	 * @return boolean
316 316
 	 */
317
-	public function has_subscription( $order_id ) {
318
-		return ( function_exists( 'wcs_order_contains_subscription' ) && ( wcs_order_contains_subscription( $order_id ) || wcs_is_subscription( $order_id ) || wcs_order_contains_renewal( $order_id ) ) );
317
+	public function has_subscription($order_id) {
318
+		return (function_exists('wcs_order_contains_subscription') && (wcs_order_contains_subscription($order_id) || wcs_is_subscription($order_id) || wcs_order_contains_renewal($order_id)));
319 319
 	}
320 320
 
321 321
 	/**
@@ -327,41 +327,41 @@  discard block
 block discarded – undo
327 327
 	 * @param  object $prepared_source
328 328
 	 * @return array()
329 329
 	 */
330
-	public function generate_payment_request( $order, $prepared_source ) {
331
-		$settings              = get_option( 'woocommerce_stripe_settings', array() );
332
-		$statement_descriptor  = ! empty( $settings['statement_descriptor'] ) ? str_replace( "'", '', $settings['statement_descriptor'] ) : '';
333
-		$capture               = ! empty( $settings['capture'] ) && 'yes' === $settings['capture'] ? true : false;
330
+	public function generate_payment_request($order, $prepared_source) {
331
+		$settings              = get_option('woocommerce_stripe_settings', array());
332
+		$statement_descriptor  = ! empty($settings['statement_descriptor']) ? str_replace("'", '', $settings['statement_descriptor']) : '';
333
+		$capture               = ! empty($settings['capture']) && 'yes' === $settings['capture'] ? true : false;
334 334
 		$post_data             = array();
335
-		$post_data['currency'] = strtolower( $order->get_currency() );
336
-		$post_data['amount']   = WC_Stripe_Helper::get_stripe_amount( $order->get_total(), $post_data['currency'] );
335
+		$post_data['currency'] = strtolower($order->get_currency());
336
+		$post_data['amount']   = WC_Stripe_Helper::get_stripe_amount($order->get_total(), $post_data['currency']);
337 337
 		/* translators: 1) blog name 2) order number */
338
-		$post_data['description'] = sprintf( __( '%1$s - Order %2$s', 'woocommerce-gateway-stripe' ), wp_specialchars_decode( get_bloginfo( 'name' ), ENT_QUOTES ), $order->get_order_number() );
338
+		$post_data['description'] = sprintf(__('%1$s - Order %2$s', 'woocommerce-gateway-stripe'), wp_specialchars_decode(get_bloginfo('name'), ENT_QUOTES), $order->get_order_number());
339 339
 		$billing_email            = $order->get_billing_email();
340 340
 		$billing_first_name       = $order->get_billing_first_name();
341 341
 		$billing_last_name        = $order->get_billing_last_name();
342 342
 
343
-		if ( ! empty( $billing_email ) && apply_filters( 'wc_stripe_send_stripe_receipt', false ) ) {
343
+		if ( ! empty($billing_email) && apply_filters('wc_stripe_send_stripe_receipt', false)) {
344 344
 			$post_data['receipt_email'] = $billing_email;
345 345
 		}
346 346
 
347
-		switch ( $order->get_payment_method() ) {
347
+		switch ($order->get_payment_method()) {
348 348
 			case 'stripe':
349
-				if ( ! empty( $statement_descriptor ) ) {
350
-					$post_data['statement_descriptor'] = WC_Stripe_Helper::clean_statement_descriptor( $statement_descriptor );
349
+				if ( ! empty($statement_descriptor)) {
350
+					$post_data['statement_descriptor'] = WC_Stripe_Helper::clean_statement_descriptor($statement_descriptor);
351 351
 				}
352 352
 
353 353
 				$post_data['capture'] = $capture ? 'true' : 'false';
354 354
 				break;
355 355
 			case 'stripe_sepa':
356
-				if ( ! empty( $statement_descriptor ) ) {
357
-					$post_data['statement_descriptor'] = WC_Stripe_Helper::clean_statement_descriptor( $statement_descriptor );
356
+				if ( ! empty($statement_descriptor)) {
357
+					$post_data['statement_descriptor'] = WC_Stripe_Helper::clean_statement_descriptor($statement_descriptor);
358 358
 				}
359 359
 				break;
360 360
 		}
361 361
 
362
-		if ( method_exists( $order, 'get_shipping_postcode' ) && ! empty( $order->get_shipping_postcode() ) ) {
362
+		if (method_exists($order, 'get_shipping_postcode') && ! empty($order->get_shipping_postcode())) {
363 363
 			$post_data['shipping'] = array(
364
-				'name'    => trim( $order->get_shipping_first_name() . ' ' . $order->get_shipping_last_name() ),
364
+				'name'    => trim($order->get_shipping_first_name() . ' ' . $order->get_shipping_last_name()),
365 365
 				'address' => array(
366 366
 					'line1'       => $order->get_shipping_address_1(),
367 367
 					'line2'       => $order->get_shipping_address_2(),
@@ -376,25 +376,25 @@  discard block
 block discarded – undo
376 376
 		$post_data['expand[]'] = 'balance_transaction';
377 377
 
378 378
 		$metadata = array(
379
-			__( 'customer_name', 'woocommerce-gateway-stripe' ) => sanitize_text_field( $billing_first_name ) . ' ' . sanitize_text_field( $billing_last_name ),
380
-			__( 'customer_email', 'woocommerce-gateway-stripe' ) => sanitize_email( $billing_email ),
379
+			__('customer_name', 'woocommerce-gateway-stripe') => sanitize_text_field($billing_first_name) . ' ' . sanitize_text_field($billing_last_name),
380
+			__('customer_email', 'woocommerce-gateway-stripe') => sanitize_email($billing_email),
381 381
 			'order_id' => $order->get_order_number(),
382
-			'site_url' => esc_url( get_site_url() ),
382
+			'site_url' => esc_url(get_site_url()),
383 383
 		);
384 384
 
385
-		if ( $this->has_subscription( $order->get_id() ) ) {
385
+		if ($this->has_subscription($order->get_id())) {
386 386
 			$metadata += array(
387 387
 				'payment_type' => 'recurring',
388 388
 			);
389 389
 		}
390 390
 
391
-		$post_data['metadata'] = apply_filters( 'wc_stripe_payment_metadata', $metadata, $order, $prepared_source );
391
+		$post_data['metadata'] = apply_filters('wc_stripe_payment_metadata', $metadata, $order, $prepared_source);
392 392
 
393
-		if ( $prepared_source->customer ) {
393
+		if ($prepared_source->customer) {
394 394
 			$post_data['customer'] = $prepared_source->customer;
395 395
 		}
396 396
 
397
-		if ( $prepared_source->source ) {
397
+		if ($prepared_source->source) {
398 398
 			$post_data['source'] = $prepared_source->source;
399 399
 		}
400 400
 
@@ -406,72 +406,72 @@  discard block
 block discarded – undo
406 406
 		 * @param WC_Order $order
407 407
 		 * @param object $source
408 408
 		 */
409
-		return apply_filters( 'wc_stripe_generate_payment_request', $post_data, $order, $prepared_source );
409
+		return apply_filters('wc_stripe_generate_payment_request', $post_data, $order, $prepared_source);
410 410
 	}
411 411
 
412 412
 	/**
413 413
 	 * Store extra meta data for an order from a Stripe Response.
414 414
 	 */
415
-	public function process_response( $response, $order ) {
416
-		WC_Stripe_Logger::log( 'Processing response: ' . print_r( $response, true ) );
415
+	public function process_response($response, $order) {
416
+		WC_Stripe_Logger::log('Processing response: ' . print_r($response, true));
417 417
 
418 418
 		$order_id = $order->get_id();
419
-		$captured = ( isset( $response->captured ) && $response->captured ) ? 'yes' : 'no';
419
+		$captured = (isset($response->captured) && $response->captured) ? 'yes' : 'no';
420 420
 
421 421
 		// Store charge data.
422
-		$order->update_meta_data( '_stripe_charge_captured', $captured );
422
+		$order->update_meta_data('_stripe_charge_captured', $captured);
423 423
 
424
-		if ( isset( $response->balance_transaction ) ) {
425
-			$this->update_fees( $order, is_string( $response->balance_transaction ) ? $response->balance_transaction : $response->balance_transaction->id );
424
+		if (isset($response->balance_transaction)) {
425
+			$this->update_fees($order, is_string($response->balance_transaction) ? $response->balance_transaction : $response->balance_transaction->id);
426 426
 		}
427 427
 
428
-		if ( 'yes' === $captured ) {
428
+		if ('yes' === $captured) {
429 429
 			/**
430 430
 			 * Charge can be captured but in a pending state. Payment methods
431 431
 			 * that are asynchronous may take couple days to clear. Webhook will
432 432
 			 * take care of the status changes.
433 433
 			 */
434
-			if ( 'pending' === $response->status ) {
435
-				$order_stock_reduced = $order->get_meta( '_order_stock_reduced', true );
434
+			if ('pending' === $response->status) {
435
+				$order_stock_reduced = $order->get_meta('_order_stock_reduced', true);
436 436
 
437
-				if ( ! $order_stock_reduced ) {
438
-					wc_reduce_stock_levels( $order_id );
437
+				if ( ! $order_stock_reduced) {
438
+					wc_reduce_stock_levels($order_id);
439 439
 				}
440 440
 
441
-				$order->set_transaction_id( $response->id );
441
+				$order->set_transaction_id($response->id);
442 442
 				/* translators: transaction id */
443
-				$order->update_status( 'on-hold', sprintf( __( 'Stripe charge awaiting payment: %s.', 'woocommerce-gateway-stripe' ), $response->id ) );
443
+				$order->update_status('on-hold', sprintf(__('Stripe charge awaiting payment: %s.', 'woocommerce-gateway-stripe'), $response->id));
444 444
 			}
445 445
 
446
-			if ( 'succeeded' === $response->status ) {
447
-				$order->payment_complete( $response->id );
446
+			if ('succeeded' === $response->status) {
447
+				$order->payment_complete($response->id);
448 448
 
449 449
 				/* translators: transaction id */
450
-				$message = sprintf( __( 'Stripe charge complete (Charge ID: %s)', 'woocommerce-gateway-stripe' ), $response->id );
451
-				$order->add_order_note( $message );
450
+				$message = sprintf(__('Stripe charge complete (Charge ID: %s)', 'woocommerce-gateway-stripe'), $response->id);
451
+				$order->add_order_note($message);
452 452
 			}
453 453
 
454
-			if ( 'failed' === $response->status ) {
455
-				$localized_message = __( 'Payment processing failed. Please retry.', 'woocommerce-gateway-stripe' );
456
-				$order->add_order_note( $localized_message );
457
-				throw new WC_Stripe_Exception( print_r( $response, true ), $localized_message );
454
+			if ('failed' === $response->status) {
455
+				$localized_message = __('Payment processing failed. Please retry.', 'woocommerce-gateway-stripe');
456
+				$order->add_order_note($localized_message);
457
+				throw new WC_Stripe_Exception(print_r($response, true), $localized_message);
458 458
 			}
459 459
 		} else {
460
-			$order->set_transaction_id( $response->id );
460
+			$order->set_transaction_id($response->id);
461 461
 
462
-			if ( $order->has_status( array( 'pending', 'failed' ) ) ) {
463
-				wc_reduce_stock_levels( $order_id );
462
+			if ($order->has_status(array('pending', 'failed'))) {
463
+				wc_reduce_stock_levels($order_id);
464 464
 			}
465 465
 
466 466
 			/* translators: transaction id */
467
-			$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 ) );
467
+			$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));
468 468
 		}
469 469
 
470
-		if ( is_callable( array( $order, 'save' ) ) ) {
470
+		if (is_callable(array($order, 'save'))) {
471 471
 			$order->save();
472 472
 		}
473 473
 
474
-		do_action( 'wc_gateway_stripe_process_response', $response, $order );
474
+		do_action('wc_gateway_stripe_process_response', $response, $order);
475 475
 
476 476
 		return $response;
477 477
 	}
@@ -484,10 +484,10 @@  discard block
 block discarded – undo
484 484
 	 * @param int $order_id
485 485
 	 * @return null
486 486
 	 */
487
-	public function send_failed_order_email( $order_id ) {
487
+	public function send_failed_order_email($order_id) {
488 488
 		$emails = WC()->mailer()->get_emails();
489
-		if ( ! empty( $emails ) && ! empty( $order_id ) ) {
490
-			$emails['WC_Email_Failed_Order']->trigger( $order_id );
489
+		if ( ! empty($emails) && ! empty($order_id)) {
490
+			$emails['WC_Email_Failed_Order']->trigger($order_id);
491 491
 		}
492 492
 	}
493 493
 
@@ -499,7 +499,7 @@  discard block
 block discarded – undo
499 499
 	 * @param object $order
500 500
 	 * @return object $details
501 501
 	 */
502
-	public function get_owner_details( $order ) {
502
+	public function get_owner_details($order) {
503 503
 		$billing_first_name = $order->get_billing_first_name();
504 504
 		$billing_last_name  = $order->get_billing_last_name();
505 505
 
@@ -509,15 +509,15 @@  discard block
 block discarded – undo
509 509
 		$email = $order->get_billing_email();
510 510
 		$phone = $order->get_billing_phone();
511 511
 
512
-		if ( ! empty( $phone ) ) {
512
+		if ( ! empty($phone)) {
513 513
 			$details['phone'] = $phone;
514 514
 		}
515 515
 
516
-		if ( ! empty( $name ) ) {
516
+		if ( ! empty($name)) {
517 517
 			$details['name'] = $name;
518 518
 		}
519 519
 
520
-		if ( ! empty( $email ) ) {
520
+		if ( ! empty($email)) {
521 521
 			$details['email'] = $email;
522 522
 		}
523 523
 
@@ -528,7 +528,7 @@  discard block
 block discarded – undo
528 528
 		$details['address']['postal_code'] = $order->get_billing_postcode();
529 529
 		$details['address']['country']     = $order->get_billing_country();
530 530
 
531
-		return (object) apply_filters( 'wc_stripe_owner_details', $details, $order );
531
+		return (object) apply_filters('wc_stripe_owner_details', $details, $order);
532 532
 	}
533 533
 
534 534
 	/**
@@ -537,15 +537,15 @@  discard block
 block discarded – undo
537 537
 	 * @since 4.0.3
538 538
 	 * @param string $source_id The source ID to get source object for.
539 539
 	 */
540
-	public function get_source_object( $source_id = '' ) {
541
-		if ( empty( $source_id ) ) {
540
+	public function get_source_object($source_id = '') {
541
+		if (empty($source_id)) {
542 542
 			return '';
543 543
 		}
544 544
 
545
-		$source_object = WC_Stripe_API::retrieve( 'sources/' . $source_id );
545
+		$source_object = WC_Stripe_API::retrieve('sources/' . $source_id);
546 546
 
547
-		if ( ! empty( $source_object->error ) ) {
548
-			throw new WC_Stripe_Exception( print_r( $source_object, true ), $source_object->error->message );
547
+		if ( ! empty($source_object->error)) {
548
+			throw new WC_Stripe_Exception(print_r($source_object, true), $source_object->error->message);
549 549
 		}
550 550
 
551 551
 		return $source_object;
@@ -558,10 +558,10 @@  discard block
 block discarded – undo
558 558
 	 * @param object $source_object
559 559
 	 * @return bool
560 560
 	 */
561
-	public function is_prepaid_card( $source_object ) {
561
+	public function is_prepaid_card($source_object) {
562 562
 		return (
563 563
 			$source_object
564
-			&& ( 'token' === $source_object->object || 'source' === $source_object->object )
564
+			&& ('token' === $source_object->object || 'source' === $source_object->object)
565 565
 			&& 'prepaid' === $source_object->card->funding
566 566
 		);
567 567
 	}
@@ -573,8 +573,8 @@  discard block
 block discarded – undo
573 573
 	 * @param string $source_id
574 574
 	 * @return bool
575 575
 	 */
576
-	public function is_type_legacy_card( $source_id ) {
577
-		return ( preg_match( '/^card_/', $source_id ) );
576
+	public function is_type_legacy_card($source_id) {
577
+		return (preg_match('/^card_/', $source_id));
578 578
 	}
579 579
 
580 580
 	/**
@@ -584,9 +584,9 @@  discard block
 block discarded – undo
584 584
 	 * @return bool
585 585
 	 */
586 586
 	public function is_using_saved_payment_method() {
587
-		$payment_method = isset( $_POST['payment_method'] ) ? wc_clean( $_POST['payment_method'] ) : 'stripe';
587
+		$payment_method = isset($_POST['payment_method']) ? wc_clean($_POST['payment_method']) : 'stripe';
588 588
 
589
-		return ( isset( $_POST[ 'wc-' . $payment_method . '-payment-token' ] ) && 'new' !== $_POST[ 'wc-' . $payment_method . '-payment-token' ] );
589
+		return (isset($_POST['wc-' . $payment_method . '-payment-token']) && 'new' !== $_POST['wc-' . $payment_method . '-payment-token']);
590 590
 	}
591 591
 
592 592
 	/**
@@ -599,34 +599,34 @@  discard block
 block discarded – undo
599 599
 	 * @return bool
600 600
 	 * @since 4.6.0
601 601
 	 */
602
-	public function should_save_payment_method( $source, $customer, $force_save ) {
603
-		if ( apply_filters( 'wc_stripe_force_save_source', $force_save, $customer ) ) {
602
+	public function should_save_payment_method($source, $customer, $force_save) {
603
+		if (apply_filters('wc_stripe_force_save_source', $force_save, $customer)) {
604 604
 			return true;
605 605
 		}
606 606
 
607 607
 		// The customer has disabled "Saved cards" functionality.
608
-		if ( ! $this->saved_cards ) {
608
+		if ( ! $this->saved_cards) {
609 609
 			return false;
610 610
 		}
611 611
 
612 612
 		// The payment method in use is already saved.
613
-		if ( $this->is_using_saved_payment_method() ) {
613
+		if ($this->is_using_saved_payment_method()) {
614 614
 			return false;
615 615
 		}
616 616
 
617 617
 		// The customer is not logged in.
618
-		if ( ! $customer->get_user_id() ) {
618
+		if ( ! $customer->get_user_id()) {
619 619
 			return false;
620 620
 		}
621 621
 
622 622
 		// If the payment method is explicitly not reusable, dont try to save it.
623
-		if ( ! empty( $source ) && 'reusable' !== $source->usage ) {
623
+		if ( ! empty($source) && 'reusable' !== $source->usage) {
624 624
 			return false;
625 625
 		}
626 626
 
627 627
 		// Lastly, check if the user has chosen to save the payment method.
628
-		$payment_method = isset( $_POST['payment_method'] ) ? wc_clean( $_POST['payment_method'] ) : 'stripe';
629
-		return isset( $_POST[ 'wc-' . $payment_method . '-new-payment-method' ] ) && ! empty( $_POST[ 'wc-' . $payment_method . '-new-payment-method' ] );
628
+		$payment_method = isset($_POST['payment_method']) ? wc_clean($_POST['payment_method']) : 'stripe';
629
+		return isset($_POST['wc-' . $payment_method . '-new-payment-method']) && ! empty($_POST['wc-' . $payment_method . '-new-payment-method']);
630 630
 	}
631 631
 
632 632
 	/**
@@ -642,57 +642,57 @@  discard block
 block discarded – undo
642 642
 	 * @throws Exception When card was not added or for and invalid card.
643 643
 	 * @return object
644 644
 	 */
645
-	public function prepare_source( $user_id, $force_save_source = false, $existing_customer_id = null ) {
646
-		$customer = new WC_Stripe_Customer( $user_id );
647
-		if ( ! empty( $existing_customer_id ) ) {
648
-			$customer->set_id( $existing_customer_id );
645
+	public function prepare_source($user_id, $force_save_source = false, $existing_customer_id = null) {
646
+		$customer = new WC_Stripe_Customer($user_id);
647
+		if ( ! empty($existing_customer_id)) {
648
+			$customer->set_id($existing_customer_id);
649 649
 		}
650 650
 
651 651
 		$source_object = '';
652 652
 		$wc_token_id   = false;
653 653
 
654
-		if ( $this->is_using_saved_payment_method() ) {
654
+		if ($this->is_using_saved_payment_method()) {
655 655
 			// Use an existing token, and then process the payment.
656
-			$payment_method = isset( $_POST['payment_method'] ) ? wc_clean( $_POST['payment_method'] ) : 'stripe';
657
-			$wc_token_id    = wc_clean( $_POST[ 'wc-' . $payment_method . '-payment-token' ] );
658
-			$wc_token       = WC_Payment_Tokens::get( $wc_token_id );
656
+			$payment_method = isset($_POST['payment_method']) ? wc_clean($_POST['payment_method']) : 'stripe';
657
+			$wc_token_id    = wc_clean($_POST['wc-' . $payment_method . '-payment-token']);
658
+			$wc_token       = WC_Payment_Tokens::get($wc_token_id);
659 659
 
660
-			if ( ! $wc_token || $wc_token->get_user_id() !== get_current_user_id() ) {
661
-				WC()->session->set( 'refresh_totals', true );
662
-				throw new WC_Stripe_Exception( 'Invalid payment method', __( 'Invalid payment method. Please input a new card number.', 'woocommerce-gateway-stripe' ) );
660
+			if ( ! $wc_token || $wc_token->get_user_id() !== get_current_user_id()) {
661
+				WC()->session->set('refresh_totals', true);
662
+				throw new WC_Stripe_Exception('Invalid payment method', __('Invalid payment method. Please input a new card number.', 'woocommerce-gateway-stripe'));
663 663
 			}
664 664
 
665 665
 			$source_id = $wc_token->get_token();
666 666
 
667
-			if ( ! $this->is_type_legacy_card( $source_id ) ) {
668
-				$source_object = self::get_source_object( $source_id );
667
+			if ( ! $this->is_type_legacy_card($source_id)) {
668
+				$source_object = self::get_source_object($source_id);
669 669
 			}
670 670
 		} else {
671 671
 			// New CC info was entered and we have a new source to process.
672
-			if ( ! empty( $_POST['stripe_source'] ) ) {
673
-				$source_object = self::get_source_object( wc_clean( $_POST['stripe_source'] ) );
672
+			if ( ! empty($_POST['stripe_source'])) {
673
+				$source_object = self::get_source_object(wc_clean($_POST['stripe_source']));
674 674
 				$source_id     = $source_object->id;
675
-			} elseif ( isset( $_POST['stripe_token'] ) && 'new' !== $_POST['stripe_token'] ) {
676
-				$source_id = wc_clean( $_POST['stripe_token'] );
675
+			} elseif (isset($_POST['stripe_token']) && 'new' !== $_POST['stripe_token']) {
676
+				$source_id = wc_clean($_POST['stripe_token']);
677 677
 			}
678 678
 
679
-			if ( $this->should_save_payment_method( $source_object, $customer, $force_save_source ) ) {
680
-				$response = $customer->add_source( $source_id );
679
+			if ($this->should_save_payment_method($source_object, $customer, $force_save_source)) {
680
+				$response = $customer->add_source($source_id);
681 681
 
682
-				if ( ! empty( $response->error ) ) {
683
-					throw new WC_Stripe_Exception( print_r( $response, true ), $this->get_localized_error_message_from_response( $response ) );
682
+				if ( ! empty($response->error)) {
683
+					throw new WC_Stripe_Exception(print_r($response, true), $this->get_localized_error_message_from_response($response));
684 684
 				}
685 685
 
686 686
 				$source_id = $response;
687
-				if ( empty( $source_object ) ) {
688
-					$source_object = self::get_source_object( $source_id );
687
+				if (empty($source_object)) {
688
+					$source_object = self::get_source_object($source_id);
689 689
 				}
690 690
 			}
691 691
 		}
692 692
 
693 693
 		$customer_id = $customer->get_id();
694
-		if ( ! $customer_id ) {
695
-			$customer->set_id( $customer->create_customer() );
694
+		if ( ! $customer_id) {
695
+			$customer->set_id($customer->create_customer());
696 696
 			$customer_id = $customer->get_id();
697 697
 		} else {
698 698
 			$customer_id = $customer->update_customer();
@@ -719,39 +719,39 @@  discard block
 block discarded – undo
719 719
 	 * @param object $order
720 720
 	 * @return object
721 721
 	 */
722
-	public function prepare_order_source( $order = null ) {
722
+	public function prepare_order_source($order = null) {
723 723
 		$stripe_customer = new WC_Stripe_Customer();
724 724
 		$stripe_source   = false;
725 725
 		$token_id        = false;
726 726
 		$source_object   = false;
727 727
 
728
-		if ( $order ) {
728
+		if ($order) {
729 729
 			$order_id = $order->get_id();
730 730
 
731
-			$stripe_customer_id = get_post_meta( $order_id, '_stripe_customer_id', true );
731
+			$stripe_customer_id = get_post_meta($order_id, '_stripe_customer_id', true);
732 732
 
733
-			if ( $stripe_customer_id ) {
734
-				$stripe_customer->set_id( $stripe_customer_id );
733
+			if ($stripe_customer_id) {
734
+				$stripe_customer->set_id($stripe_customer_id);
735 735
 			}
736 736
 
737
-			$source_id = $order->get_meta( '_stripe_source_id', true );
737
+			$source_id = $order->get_meta('_stripe_source_id', true);
738 738
 
739 739
 			// Since 4.0.0, we changed card to source so we need to account for that.
740
-			if ( empty( $source_id ) ) {
741
-				$source_id = $order->get_meta( '_stripe_card_id', true );
740
+			if (empty($source_id)) {
741
+				$source_id = $order->get_meta('_stripe_card_id', true);
742 742
 
743 743
 				// Take this opportunity to update the key name.
744
-				$order->update_meta_data( '_stripe_source_id', $source_id );
744
+				$order->update_meta_data('_stripe_source_id', $source_id);
745 745
 
746
-				if ( is_callable( array( $order, 'save' ) ) ) {
746
+				if (is_callable(array($order, 'save'))) {
747 747
 					$order->save();
748 748
 				}
749 749
 			}
750 750
 
751
-			if ( $source_id ) {
751
+			if ($source_id) {
752 752
 				$stripe_source = $source_id;
753
-				$source_object = WC_Stripe_API::retrieve( 'sources/' . $source_id );
754
-			} elseif ( apply_filters( 'wc_stripe_use_default_customer_source', true ) ) {
753
+				$source_object = WC_Stripe_API::retrieve('sources/' . $source_id);
754
+			} elseif (apply_filters('wc_stripe_use_default_customer_source', true)) {
755 755
 				/*
756 756
 				 * We can attempt to charge the customer's default source
757 757
 				 * by sending empty source id.
@@ -776,17 +776,17 @@  discard block
 block discarded – undo
776 776
 	 * @param WC_Order $order For to which the source applies.
777 777
 	 * @param stdClass $source Source information.
778 778
 	 */
779
-	public function save_source_to_order( $order, $source ) {
779
+	public function save_source_to_order($order, $source) {
780 780
 		// Store source in the order.
781
-		if ( $source->customer ) {
782
-			$order->update_meta_data( '_stripe_customer_id', $source->customer );
781
+		if ($source->customer) {
782
+			$order->update_meta_data('_stripe_customer_id', $source->customer);
783 783
 		}
784 784
 
785
-		if ( $source->source ) {
786
-			$order->update_meta_data( '_stripe_source_id', $source->source );
785
+		if ($source->source) {
786
+			$order->update_meta_data('_stripe_source_id', $source->source);
787 787
 		}
788 788
 
789
-		if ( is_callable( array( $order, 'save' ) ) ) {
789
+		if (is_callable(array($order, 'save'))) {
790 790
 			$order->save();
791 791
 		}
792 792
 	}
@@ -800,36 +800,36 @@  discard block
 block discarded – undo
800 800
 	 * @param object $order The order object
801 801
 	 * @param int $balance_transaction_id
802 802
 	 */
803
-	public function update_fees( $order, $balance_transaction_id ) {
804
-		$balance_transaction = WC_Stripe_API::retrieve( 'balance/history/' . $balance_transaction_id );
803
+	public function update_fees($order, $balance_transaction_id) {
804
+		$balance_transaction = WC_Stripe_API::retrieve('balance/history/' . $balance_transaction_id);
805 805
 
806
-		if ( empty( $balance_transaction->error ) ) {
807
-			if ( isset( $balance_transaction ) && isset( $balance_transaction->fee ) ) {
806
+		if (empty($balance_transaction->error)) {
807
+			if (isset($balance_transaction) && isset($balance_transaction->fee)) {
808 808
 				// Fees and Net needs to both come from Stripe to be accurate as the returned
809 809
 				// values are in the local currency of the Stripe account, not from WC.
810
-				$fee_refund = ! empty( $balance_transaction->fee ) ? WC_Stripe_Helper::format_balance_fee( $balance_transaction, 'fee' ) : 0;
811
-				$net_refund = ! empty( $balance_transaction->net ) ? WC_Stripe_Helper::format_balance_fee( $balance_transaction, 'net' ) : 0;
810
+				$fee_refund = ! empty($balance_transaction->fee) ? WC_Stripe_Helper::format_balance_fee($balance_transaction, 'fee') : 0;
811
+				$net_refund = ! empty($balance_transaction->net) ? WC_Stripe_Helper::format_balance_fee($balance_transaction, 'net') : 0;
812 812
 
813 813
 				// Current data fee & net.
814
-				$fee_current = WC_Stripe_Helper::get_stripe_fee( $order );
815
-				$net_current = WC_Stripe_Helper::get_stripe_net( $order );
814
+				$fee_current = WC_Stripe_Helper::get_stripe_fee($order);
815
+				$net_current = WC_Stripe_Helper::get_stripe_net($order);
816 816
 
817 817
 				// Calculation.
818 818
 				$fee = (float) $fee_current + (float) $fee_refund;
819 819
 				$net = (float) $net_current + (float) $net_refund;
820 820
 
821
-				WC_Stripe_Helper::update_stripe_fee( $order, $fee );
822
-				WC_Stripe_Helper::update_stripe_net( $order, $net );
821
+				WC_Stripe_Helper::update_stripe_fee($order, $fee);
822
+				WC_Stripe_Helper::update_stripe_net($order, $net);
823 823
 
824
-				$currency = ! empty( $balance_transaction->currency ) ? strtoupper( $balance_transaction->currency ) : null;
825
-				WC_Stripe_Helper::update_stripe_currency( $order, $currency );
824
+				$currency = ! empty($balance_transaction->currency) ? strtoupper($balance_transaction->currency) : null;
825
+				WC_Stripe_Helper::update_stripe_currency($order, $currency);
826 826
 
827
-				if ( is_callable( array( $order, 'save' ) ) ) {
827
+				if (is_callable(array($order, 'save'))) {
828 828
 					$order->save();
829 829
 				}
830 830
 			}
831 831
 		} else {
832
-			WC_Stripe_Logger::log( 'Unable to update fees/net meta for order: ' . $order->get_id() );
832
+			WC_Stripe_Logger::log('Unable to update fees/net meta for order: ' . $order->get_id());
833 833
 		}
834 834
 	}
835 835
 
@@ -842,93 +842,93 @@  discard block
 block discarded – undo
842 842
 	 * @param  float $amount
843 843
 	 * @return bool
844 844
 	 */
845
-	public function process_refund( $order_id, $amount = null, $reason = '' ) {
846
-		$order = wc_get_order( $order_id );
845
+	public function process_refund($order_id, $amount = null, $reason = '') {
846
+		$order = wc_get_order($order_id);
847 847
 
848
-		if ( ! $order ) {
848
+		if ( ! $order) {
849 849
 			return false;
850 850
 		}
851 851
 
852 852
 		$request = array();
853 853
 
854 854
 		$order_currency = $order->get_currency();
855
-		$captured       = $order->get_meta( '_stripe_charge_captured', true );
855
+		$captured       = $order->get_meta('_stripe_charge_captured', true);
856 856
 		$charge_id      = $order->get_transaction_id();
857 857
 
858
-		if ( ! $charge_id ) {
858
+		if ( ! $charge_id) {
859 859
 			return false;
860 860
 		}
861 861
 
862
-		if ( ! is_null( $amount ) ) {
863
-			$request['amount'] = WC_Stripe_Helper::get_stripe_amount( $amount, $order_currency );
862
+		if ( ! is_null($amount)) {
863
+			$request['amount'] = WC_Stripe_Helper::get_stripe_amount($amount, $order_currency);
864 864
 		}
865 865
 
866 866
 		// If order is only authorized, don't pass amount.
867
-		if ( 'yes' !== $captured ) {
868
-			unset( $request['amount'] );
867
+		if ('yes' !== $captured) {
868
+			unset($request['amount']);
869 869
 		}
870 870
 
871
-		if ( $reason ) {
871
+		if ($reason) {
872 872
 			$request['metadata'] = array(
873 873
 				'reason' => $reason,
874 874
 			);
875 875
 		}
876 876
 
877 877
 		$request['charge'] = $charge_id;
878
-		WC_Stripe_Logger::log( "Info: Beginning refund for order {$charge_id} for the amount of {$amount}" );
878
+		WC_Stripe_Logger::log("Info: Beginning refund for order {$charge_id} for the amount of {$amount}");
879 879
 
880
-		$request = apply_filters( 'wc_stripe_refund_request', $request, $order );
880
+		$request = apply_filters('wc_stripe_refund_request', $request, $order);
881 881
 
882
-		$intent = $this->get_intent_from_order( $order );
882
+		$intent = $this->get_intent_from_order($order);
883 883
 		$intent_cancelled = false;
884
-		if ( $intent ) {
884
+		if ($intent) {
885 885
 			// If the order has a Payment Intent pending capture, then the Intent itself must be refunded (cancelled), not the Charge
886
-			if ( ! empty( $intent->error ) ) {
886
+			if ( ! empty($intent->error)) {
887 887
 				$response = $intent;
888 888
 				$intent_cancelled = true;
889
-			} elseif ( 'requires_capture' === $intent->status ) {
889
+			} elseif ('requires_capture' === $intent->status) {
890 890
 				$result = WC_Stripe_API::request(
891 891
 					array(),
892 892
 					'payment_intents/' . $intent->id . '/cancel'
893 893
 				);
894 894
 				$intent_cancelled = true;
895 895
 
896
-				if ( ! empty( $result->error ) ) {
896
+				if ( ! empty($result->error)) {
897 897
 					$response = $result;
898 898
 				} else {
899
-					$charge = end( $result->charges->data );
900
-					$response = end( $charge->refunds->data );
899
+					$charge = end($result->charges->data);
900
+					$response = end($charge->refunds->data);
901 901
 				}
902 902
 			}
903 903
 		}
904 904
 
905
-		if ( ! $intent_cancelled ) {
906
-			$response = WC_Stripe_API::request( $request, 'refunds' );
905
+		if ( ! $intent_cancelled) {
906
+			$response = WC_Stripe_API::request($request, 'refunds');
907 907
 		}
908 908
 
909
-		if ( ! empty( $response->error ) ) {
910
-			WC_Stripe_Logger::log( 'Error: ' . $response->error->message );
909
+		if ( ! empty($response->error)) {
910
+			WC_Stripe_Logger::log('Error: ' . $response->error->message);
911 911
 
912 912
 			return $response;
913 913
 
914
-		} elseif ( ! empty( $response->id ) ) {
915
-			$order->update_meta_data( '_stripe_refund_id', $response->id );
914
+		} elseif ( ! empty($response->id)) {
915
+			$order->update_meta_data('_stripe_refund_id', $response->id);
916 916
 
917
-			$amount = wc_price( $response->amount / 100 );
917
+			$amount = wc_price($response->amount / 100);
918 918
 
919
-			if ( in_array( strtolower( $order->get_currency() ), WC_Stripe_Helper::no_decimal_currencies() ) ) {
920
-				$amount = wc_price( $response->amount );
919
+			if (in_array(strtolower($order->get_currency()), WC_Stripe_Helper::no_decimal_currencies())) {
920
+				$amount = wc_price($response->amount);
921 921
 			}
922 922
 
923
-			if ( isset( $response->balance_transaction ) ) {
924
-				$this->update_fees( $order, $response->balance_transaction );
923
+			if (isset($response->balance_transaction)) {
924
+				$this->update_fees($order, $response->balance_transaction);
925 925
 			}
926 926
 
927 927
 			/* translators: 1) dollar amount 2) transaction id 3) refund message */
928
-			$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' );
928
+			$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');
929 929
 
930
-			$order->add_order_note( $refund_message );
931
-			WC_Stripe_Logger::log( 'Success: ' . html_entity_decode( wp_strip_all_tags( $refund_message ) ) );
930
+			$order->add_order_note($refund_message);
931
+			WC_Stripe_Logger::log('Success: ' . html_entity_decode(wp_strip_all_tags($refund_message)));
932 932
 
933 933
 			return true;
934 934
 		}
@@ -943,46 +943,46 @@  discard block
 block discarded – undo
943 943
 	 */
944 944
 	public function add_payment_method() {
945 945
 		$error     = false;
946
-		$error_msg = __( 'There was a problem adding the payment method.', 'woocommerce-gateway-stripe' );
946
+		$error_msg = __('There was a problem adding the payment method.', 'woocommerce-gateway-stripe');
947 947
 		$source_id = '';
948 948
 
949
-		if ( empty( $_POST['stripe_source'] ) && empty( $_POST['stripe_token'] ) || ! is_user_logged_in() ) {
949
+		if (empty($_POST['stripe_source']) && empty($_POST['stripe_token']) || ! is_user_logged_in()) {
950 950
 			$error = true;
951 951
 		}
952 952
 
953
-		$stripe_customer = new WC_Stripe_Customer( get_current_user_id() );
953
+		$stripe_customer = new WC_Stripe_Customer(get_current_user_id());
954 954
 
955
-		$source = ! empty( $_POST['stripe_source'] ) ? wc_clean( $_POST['stripe_source'] ) : '';
955
+		$source = ! empty($_POST['stripe_source']) ? wc_clean($_POST['stripe_source']) : '';
956 956
 
957
-		$source_object = WC_Stripe_API::retrieve( 'sources/' . $source );
957
+		$source_object = WC_Stripe_API::retrieve('sources/' . $source);
958 958
 
959
-		if ( isset( $source_object ) ) {
960
-			if ( ! empty( $source_object->error ) ) {
959
+		if (isset($source_object)) {
960
+			if ( ! empty($source_object->error)) {
961 961
 				$error = true;
962 962
 			}
963 963
 
964 964
 			$source_id = $source_object->id;
965
-		} elseif ( isset( $_POST['stripe_token'] ) ) {
966
-			$source_id = wc_clean( $_POST['stripe_token'] );
965
+		} elseif (isset($_POST['stripe_token'])) {
966
+			$source_id = wc_clean($_POST['stripe_token']);
967 967
 		}
968 968
 
969
-		$response = $stripe_customer->add_source( $source_id );
969
+		$response = $stripe_customer->add_source($source_id);
970 970
 
971
-		if ( ! $response || is_wp_error( $response ) || ! empty( $response->error ) ) {
971
+		if ( ! $response || is_wp_error($response) || ! empty($response->error)) {
972 972
 			$error = true;
973 973
 		}
974 974
 
975
-		if ( $error ) {
976
-			wc_add_notice( $error_msg, 'error' );
977
-			WC_Stripe_Logger::log( 'Add payment method Error: ' . $error_msg );
975
+		if ($error) {
976
+			wc_add_notice($error_msg, 'error');
977
+			WC_Stripe_Logger::log('Add payment method Error: ' . $error_msg);
978 978
 			return;
979 979
 		}
980 980
 
981
-		do_action( 'wc_stripe_add_payment_method_' . $_POST['payment_method'] . '_success', $source_id, $source_object );
981
+		do_action('wc_stripe_add_payment_method_' . $_POST['payment_method'] . '_success', $source_id, $source_object);
982 982
 
983 983
 		return array(
984 984
 			'result'   => 'success',
985
-			'redirect' => wc_get_endpoint_url( 'payment-methods' ),
985
+			'redirect' => wc_get_endpoint_url('payment-methods'),
986 986
 		);
987 987
 	}
988 988
 
@@ -999,10 +999,10 @@  discard block
 block discarded – undo
999 999
 		 * Stripe expects Norwegian to only be passed NO.
1000 1000
 		 * But WP has different dialects.
1001 1001
 		 */
1002
-		if ( 'NO' === substr( $locale, 3, 2 ) ) {
1002
+		if ('NO' === substr($locale, 3, 2)) {
1003 1003
 			$locale = 'no';
1004 1004
 		} else {
1005
-			$locale = substr( get_locale(), 0, 2 );
1005
+			$locale = substr(get_locale(), 0, 2);
1006 1006
 		}
1007 1007
 
1008 1008
 		return $locale;
@@ -1016,9 +1016,9 @@  discard block
 block discarded – undo
1016 1016
 	 * @param string $idempotency_key
1017 1017
 	 * @param array $request
1018 1018
 	 */
1019
-	public function change_idempotency_key( $idempotency_key, $request ) {
1020
-		$customer = ! empty( $request['customer'] ) ? $request['customer'] : '';
1021
-		$source   = ! empty( $request['source'] ) ? $request['source'] : $customer;
1019
+	public function change_idempotency_key($idempotency_key, $request) {
1020
+		$customer = ! empty($request['customer']) ? $request['customer'] : '';
1021
+		$source   = ! empty($request['source']) ? $request['source'] : $customer;
1022 1022
 		$count    = $this->retry_interval;
1023 1023
 
1024 1024
 		return $request['metadata']['order_id'] . '-' . $count . '-' . $source;
@@ -1032,8 +1032,8 @@  discard block
 block discarded – undo
1032 1032
 	 * @since 4.0.6
1033 1033
 	 * @param array $headers
1034 1034
 	 */
1035
-	public function is_original_request( $headers ) {
1036
-		if ( $headers['original-request'] === $headers['request-id'] ) {
1035
+	public function is_original_request($headers) {
1036
+		if ($headers['original-request'] === $headers['request-id']) {
1037 1037
 			return true;
1038 1038
 		}
1039 1039
 
@@ -1048,35 +1048,35 @@  discard block
 block discarded – undo
1048 1048
 	 * @param bool     $save_source     Whether the payment method is being saved for future use or not.
1049 1049
 	 * @return array                    The arguments for the request.
1050 1050
 	 */
1051
-	public function generate_create_intent_request( $order, $prepared_source, $save_source ) {
1051
+	public function generate_create_intent_request($order, $prepared_source, $save_source) {
1052 1052
 		// The request for a charge contains metadata for the intent.
1053
-		$full_request = $this->generate_payment_request( $order, $prepared_source );
1053
+		$full_request = $this->generate_payment_request($order, $prepared_source);
1054 1054
 
1055 1055
 		$request = array(
1056 1056
 			'source'               => $prepared_source->source,
1057
-			'amount'               => WC_Stripe_Helper::get_stripe_amount( $order->get_total() ),
1058
-			'currency'             => strtolower( $order->get_currency() ),
1057
+			'amount'               => WC_Stripe_Helper::get_stripe_amount($order->get_total()),
1058
+			'currency'             => strtolower($order->get_currency()),
1059 1059
 			'description'          => $full_request['description'],
1060 1060
 			'metadata'             => $full_request['metadata'],
1061
-			'capture_method'       => ( 'true' === $full_request['capture'] ) ? 'automatic' : 'manual',
1061
+			'capture_method'       => ('true' === $full_request['capture']) ? 'automatic' : 'manual',
1062 1062
 			'payment_method_types' => array(
1063 1063
 				'card',
1064 1064
 			),
1065 1065
 		);
1066 1066
 
1067
-		if ( $save_source ) {
1067
+		if ($save_source) {
1068 1068
 			$request['setup_future_usage'] = 'off_session';
1069 1069
 		}
1070 1070
 
1071
-		if ( $prepared_source->customer ) {
1071
+		if ($prepared_source->customer) {
1072 1072
 			$request['customer'] = $prepared_source->customer;
1073 1073
 		}
1074 1074
 
1075
-		if ( isset( $full_request['statement_descriptor'] ) ) {
1075
+		if (isset($full_request['statement_descriptor'])) {
1076 1076
 			$request['statement_descriptor'] = $full_request['statement_descriptor'];
1077 1077
 		}
1078 1078
 
1079
-		if ( isset( $full_request['shipping'] ) ) {
1079
+		if (isset($full_request['shipping'])) {
1080 1080
 			$request['shipping'] = $full_request['shipping'];
1081 1081
 		}
1082 1082
 
@@ -1088,7 +1088,7 @@  discard block
 block discarded – undo
1088 1088
 		 * @param WC_Order $order
1089 1089
 		 * @param object $source
1090 1090
 		 */
1091
-		return apply_filters( 'wc_stripe_generate_create_intent_request', $request, $order, $prepared_source );
1091
+		return apply_filters('wc_stripe_generate_create_intent_request', $request, $order, $prepared_source);
1092 1092
 	}
1093 1093
 
1094 1094
 	/**
@@ -1097,21 +1097,21 @@  discard block
 block discarded – undo
1097 1097
 	 * @param WC_Order $order The order that is being paid for.
1098 1098
 	 * @return array          The level 3 data to send to Stripe.
1099 1099
 	 */
1100
-	public function get_level3_data_from_order( $order ) {
1100
+	public function get_level3_data_from_order($order) {
1101 1101
 		// Get the order items. Don't need their keys, only their values.
1102 1102
 		// Order item IDs are used as keys in the original order items array.
1103
-		$order_items = array_values( $order->get_items() );
1103
+		$order_items = array_values($order->get_items());
1104 1104
 		$currency    = $order->get_currency();
1105 1105
 
1106
-		$stripe_line_items = array_map(function( $item ) use ( $currency ) {
1106
+		$stripe_line_items = array_map(function($item) use ($currency) {
1107 1107
 			$product_id          = $item->get_variation_id()
1108 1108
 				? $item->get_variation_id()
1109 1109
 				: $item->get_product_id();
1110
-			$product_description = substr( $item->get_name(), 0, 26 );
1110
+			$product_description = substr($item->get_name(), 0, 26);
1111 1111
 			$quantity            = $item->get_quantity();
1112
-			$unit_cost           = WC_Stripe_Helper::get_stripe_amount( ( $item->get_subtotal() / $quantity ), $currency );
1113
-			$tax_amount          = WC_Stripe_Helper::get_stripe_amount( $item->get_total_tax(), $currency );
1114
-			$discount_amount     = WC_Stripe_Helper::get_stripe_amount( $item->get_subtotal() - $item->get_total(), $currency );
1112
+			$unit_cost           = WC_Stripe_Helper::get_stripe_amount(($item->get_subtotal() / $quantity), $currency);
1113
+			$tax_amount          = WC_Stripe_Helper::get_stripe_amount($item->get_total_tax(), $currency);
1114
+			$discount_amount     = WC_Stripe_Helper::get_stripe_amount($item->get_subtotal() - $item->get_total(), $currency);
1115 1115
 
1116 1116
 			return (object) array(
1117 1117
 				'product_code'        => (string) $product_id, // Up to 12 characters that uniquely identify the product.
@@ -1125,19 +1125,19 @@  discard block
 block discarded – undo
1125 1125
 
1126 1126
 		$level3_data = array(
1127 1127
 			'merchant_reference'   => $order->get_id(), // An alphanumeric string of up to  characters in length. This unique value is assigned by the merchant to identify the order. Also known as an “Order ID”.
1128
-			'shipping_amount'      => WC_Stripe_Helper::get_stripe_amount( (float) $order->get_shipping_total() + (float) $order->get_shipping_tax(), $currency), // The shipping cost, in cents, as a non-negative integer.
1128
+			'shipping_amount'      => WC_Stripe_Helper::get_stripe_amount((float) $order->get_shipping_total() + (float) $order->get_shipping_tax(), $currency), // The shipping cost, in cents, as a non-negative integer.
1129 1129
 			'line_items'           => $stripe_line_items,
1130 1130
 		);
1131 1131
 
1132 1132
 		// The customer’s U.S. shipping ZIP code.
1133 1133
 		$shipping_address_zip = $order->get_shipping_postcode();
1134
-		if ( $this->is_valid_us_zip_code( $shipping_address_zip ) ) {
1134
+		if ($this->is_valid_us_zip_code($shipping_address_zip)) {
1135 1135
 			$level3_data['shipping_address_zip'] = $shipping_address_zip;
1136 1136
 		}
1137 1137
 
1138 1138
 		// The merchant’s U.S. shipping ZIP code.
1139
-		$store_postcode = get_option( 'woocommerce_store_postcode' );
1140
-		if ( $this->is_valid_us_zip_code( $store_postcode ) ) {
1139
+		$store_postcode = get_option('woocommerce_store_postcode');
1140
+		if ($this->is_valid_us_zip_code($store_postcode)) {
1141 1141
 			$level3_data['shipping_from_zip'] = $store_postcode;
1142 1142
 		}
1143 1143
 
@@ -1153,20 +1153,20 @@  discard block
 block discarded – undo
1153 1153
 	 * @return object                   An intent or an error.
1154 1154
 	 * @throws WC_Stripe_Exception
1155 1155
 	 */
1156
-	public function create_intent( $order, $prepared_source, $save_source ) {
1157
-		$request = $this->generate_create_intent_request( $order, $prepared_source, $save_source );
1156
+	public function create_intent($order, $prepared_source, $save_source) {
1157
+		$request = $this->generate_create_intent_request($order, $prepared_source, $save_source);
1158 1158
 
1159 1159
 		// Create an intent that awaits an action.
1160
-		$intent = WC_Stripe_API::request( $request, 'payment_intents' );
1161
-		if ( ! empty( $intent->error ) ) {
1160
+		$intent = WC_Stripe_API::request($request, 'payment_intents');
1161
+		if ( ! empty($intent->error)) {
1162 1162
 			return $intent;
1163 1163
 		}
1164 1164
 
1165 1165
 		$order_id = $order->get_id();
1166
-		WC_Stripe_Logger::log( "Stripe PaymentIntent $intent->id initiated for order $order_id" );
1166
+		WC_Stripe_Logger::log("Stripe PaymentIntent $intent->id initiated for order $order_id");
1167 1167
 
1168 1168
 		// Save the intent ID to the order.
1169
-		$this->save_intent_to_order( $order, $intent );
1169
+		$this->save_intent_to_order($order, $intent);
1170 1170
 
1171 1171
 		return $intent;
1172 1172
 	}
@@ -1179,27 +1179,27 @@  discard block
 block discarded – undo
1179 1179
 	 * @param object   $prepared_source Currently selected source.
1180 1180
 	 * @return object                   An updated intent.
1181 1181
 	 */
1182
-	public function update_existing_intent( $intent, $order, $prepared_source ) {
1182
+	public function update_existing_intent($intent, $order, $prepared_source) {
1183 1183
 		$request = array();
1184 1184
 
1185
-		if ( $prepared_source->source !== $intent->source ) {
1185
+		if ($prepared_source->source !== $intent->source) {
1186 1186
 			$request['source'] = $prepared_source->source;
1187 1187
 		}
1188 1188
 
1189
-		$new_amount = WC_Stripe_Helper::get_stripe_amount( $order->get_total() );
1190
-		if ( $intent->amount !== $new_amount ) {
1189
+		$new_amount = WC_Stripe_Helper::get_stripe_amount($order->get_total());
1190
+		if ($intent->amount !== $new_amount) {
1191 1191
 			$request['amount'] = $new_amount;
1192 1192
 		}
1193 1193
 
1194
-		if ( $prepared_source->customer && $intent->customer !== $prepared_source->customer ) {
1194
+		if ($prepared_source->customer && $intent->customer !== $prepared_source->customer) {
1195 1195
 			$request['customer'] = $prepared_source->customer;
1196 1196
 		}
1197 1197
 
1198
-		if ( empty( $request ) ) {
1198
+		if (empty($request)) {
1199 1199
 			return $intent;
1200 1200
 		}
1201 1201
 
1202
-		$level3_data = $this->get_level3_data_from_order( $order );
1202
+		$level3_data = $this->get_level3_data_from_order($order);
1203 1203
 		return WC_Stripe_API::request_with_level3_data(
1204 1204
 			$request,
1205 1205
 			"payment_intents/$intent->id",
@@ -1217,8 +1217,8 @@  discard block
 block discarded – undo
1217 1217
 	 * @param object   $prepared_source The source that is being charged.
1218 1218
 	 * @return object                   Either an error or the updated intent.
1219 1219
 	 */
1220
-	public function confirm_intent( $intent, $order, $prepared_source ) {
1221
-		if ( 'requires_confirmation' !== $intent->status ) {
1220
+	public function confirm_intent($intent, $order, $prepared_source) {
1221
+		if ('requires_confirmation' !== $intent->status) {
1222 1222
 			return $intent;
1223 1223
 		}
1224 1224
 
@@ -1227,7 +1227,7 @@  discard block
 block discarded – undo
1227 1227
 			'source' => $prepared_source->source,
1228 1228
 		);
1229 1229
 
1230
-		$level3_data = $this->get_level3_data_from_order( $order );
1230
+		$level3_data = $this->get_level3_data_from_order($order);
1231 1231
 		$confirmed_intent = WC_Stripe_API::request_with_level3_data(
1232 1232
 			$confirm_request,
1233 1233
 			"payment_intents/$intent->id/confirm",
@@ -1235,16 +1235,16 @@  discard block
 block discarded – undo
1235 1235
 			$order
1236 1236
 		);
1237 1237
 
1238
-		if ( ! empty( $confirmed_intent->error ) ) {
1238
+		if ( ! empty($confirmed_intent->error)) {
1239 1239
 			return $confirmed_intent;
1240 1240
 		}
1241 1241
 
1242 1242
 		// Save a note about the status of the intent.
1243 1243
 		$order_id = $order->get_id();
1244
-		if ( 'succeeded' === $confirmed_intent->status ) {
1245
-			WC_Stripe_Logger::log( "Stripe PaymentIntent $intent->id succeeded for order $order_id" );
1246
-		} elseif ( 'requires_action' === $confirmed_intent->status ) {
1247
-			WC_Stripe_Logger::log( "Stripe PaymentIntent $intent->id requires authentication for order $order_id" );
1244
+		if ('succeeded' === $confirmed_intent->status) {
1245
+			WC_Stripe_Logger::log("Stripe PaymentIntent $intent->id succeeded for order $order_id");
1246
+		} elseif ('requires_action' === $confirmed_intent->status) {
1247
+			WC_Stripe_Logger::log("Stripe PaymentIntent $intent->id requires authentication for order $order_id");
1248 1248
 		}
1249 1249
 
1250 1250
 		return $confirmed_intent;
@@ -1257,10 +1257,10 @@  discard block
 block discarded – undo
1257 1257
 	 * @param WC_Order $order For to which the source applies.
1258 1258
 	 * @param stdClass $intent Payment intent information.
1259 1259
 	 */
1260
-	public function save_intent_to_order( $order, $intent ) {
1261
-		$order->update_meta_data( '_stripe_intent_id', $intent->id );
1260
+	public function save_intent_to_order($order, $intent) {
1261
+		$order->update_meta_data('_stripe_intent_id', $intent->id);
1262 1262
 
1263
-		if ( is_callable( array( $order, 'save' ) ) ) {
1263
+		if (is_callable(array($order, 'save'))) {
1264 1264
 			$order->save();
1265 1265
 		}
1266 1266
 	}
@@ -1272,18 +1272,18 @@  discard block
 block discarded – undo
1272 1272
 	 * @param WC_Order $order The order to retrieve an intent for.
1273 1273
 	 * @return obect|bool     Either the intent object or `false`.
1274 1274
 	 */
1275
-	public function get_intent_from_order( $order ) {
1276
-		$intent_id = $order->get_meta( '_stripe_intent_id' );
1275
+	public function get_intent_from_order($order) {
1276
+		$intent_id = $order->get_meta('_stripe_intent_id');
1277 1277
 
1278
-		if ( $intent_id ) {
1279
-			return $this->get_intent( 'payment_intents', $intent_id );
1278
+		if ($intent_id) {
1279
+			return $this->get_intent('payment_intents', $intent_id);
1280 1280
 		}
1281 1281
 
1282 1282
 		// The order doesn't have a payment intent, but it may have a setup intent.
1283
-		$intent_id = $order->get_meta( '_stripe_setup_intent' );
1283
+		$intent_id = $order->get_meta('_stripe_setup_intent');
1284 1284
 
1285
-		if ( $intent_id ) {
1286
-			return $this->get_intent( 'setup_intents', $intent_id );
1285
+		if ($intent_id) {
1286
+			return $this->get_intent('setup_intents', $intent_id);
1287 1287
 		}
1288 1288
 
1289 1289
 		return false;
@@ -1297,15 +1297,15 @@  discard block
 block discarded – undo
1297 1297
 	 * @return object|bool 			Either the intent object or `false`.
1298 1298
 	 * @throws Exception 			Throws exception for unknown $intent_type.
1299 1299
 	 */
1300
-	private function get_intent( $intent_type, $intent_id ) {
1301
-		if ( ! in_array( $intent_type, [ 'payment_intents', 'setup_intents' ] ) ) {
1302
-			throw new Exception( "Failed to get intent of type $intent_type. Type is not allowed" );
1300
+	private function get_intent($intent_type, $intent_id) {
1301
+		if ( ! in_array($intent_type, ['payment_intents', 'setup_intents'])) {
1302
+			throw new Exception("Failed to get intent of type $intent_type. Type is not allowed");
1303 1303
 		}
1304 1304
 
1305
-		$response = WC_Stripe_API::request( array(), "$intent_type/$intent_id", 'GET' );
1305
+		$response = WC_Stripe_API::request(array(), "$intent_type/$intent_id", 'GET');
1306 1306
 
1307
-		if ( $response && isset( $response->{ 'error' } ) ) {
1308
-			$error_response_message = print_r( $response, true );
1307
+		if ($response && isset($response->{ 'error' } )) {
1308
+			$error_response_message = print_r($response, true);
1309 1309
 			WC_Stripe_Logger::log("Failed to get Stripe intent $intent_type/$intent_id.");
1310 1310
 			WC_Stripe_Logger::log("Response: $error_response_message");
1311 1311
 			return false;
@@ -1322,18 +1322,18 @@  discard block
 block discarded – undo
1322 1322
 	 * @param stdClass $intent The intent that is being processed.
1323 1323
 	 * @return bool            A flag that indicates whether the order is already locked.
1324 1324
 	 */
1325
-	public function lock_order_payment( $order, $intent = null ) {
1325
+	public function lock_order_payment($order, $intent = null) {
1326 1326
 		$order_id       = $order->get_id();
1327 1327
 		$transient_name = 'wc_stripe_processing_intent_' . $order_id;
1328
-		$processing     = get_transient( $transient_name );
1328
+		$processing     = get_transient($transient_name);
1329 1329
 
1330 1330
 		// Block the process if the same intent is already being handled.
1331
-		if ( "-1" === $processing || ( isset( $intent->id ) && $processing === $intent->id ) ) {
1331
+		if ("-1" === $processing || (isset($intent->id) && $processing === $intent->id)) {
1332 1332
 			return true;
1333 1333
 		}
1334 1334
 
1335 1335
 		// Save the new intent as a transient, eventually overwriting another one.
1336
-		set_transient( $transient_name, empty( $intent ) ? '-1' : $intent->id, 5 * MINUTE_IN_SECONDS );
1336
+		set_transient($transient_name, empty($intent) ? '-1' : $intent->id, 5 * MINUTE_IN_SECONDS);
1337 1337
 
1338 1338
 		return false;
1339 1339
 	}
@@ -1344,9 +1344,9 @@  discard block
 block discarded – undo
1344 1344
 	 * @since 4.2
1345 1345
 	 * @param WC_Order $order The order that is being unlocked.
1346 1346
 	 */
1347
-	public function unlock_order_payment( $order ) {
1347
+	public function unlock_order_payment($order) {
1348 1348
 		$order_id = $order->get_id();
1349
-		delete_transient( 'wc_stripe_processing_intent_' . $order_id );
1349
+		delete_transient('wc_stripe_processing_intent_' . $order_id);
1350 1350
 	}
1351 1351
 
1352 1352
 	/**
@@ -1356,9 +1356,9 @@  discard block
 block discarded – undo
1356 1356
 	 * @param object $response The response from Stripe.
1357 1357
 	 * @return boolean Whether or not it's a 'authentication_required' error
1358 1358
 	 */
1359
-	public function is_authentication_required_for_payment( $response ) {
1360
-		return ( ! empty( $response->error ) && 'authentication_required' === $response->error->code )
1361
-			|| ( ! empty( $response->last_payment_error ) && 'authentication_required' === $response->last_payment_error->code );
1359
+	public function is_authentication_required_for_payment($response) {
1360
+		return ( ! empty($response->error) && 'authentication_required' === $response->error->code)
1361
+			|| ( ! empty($response->last_payment_error) && 'authentication_required' === $response->last_payment_error->code);
1362 1362
 	}
1363 1363
 
1364 1364
 	/**
@@ -1368,18 +1368,18 @@  discard block
 block discarded – undo
1368 1368
 	 * @param object   $prepared_source The source, entered/chosen by the customer.
1369 1369
 	 * @return string                   The client secret of the intent, used for confirmation in JS.
1370 1370
 	 */
1371
-	public function setup_intent( $order, $prepared_source ) {
1371
+	public function setup_intent($order, $prepared_source) {
1372 1372
 		$order_id     = $order->get_id();
1373
-		$setup_intent = WC_Stripe_API::request( array(
1373
+		$setup_intent = WC_Stripe_API::request(array(
1374 1374
 			'payment_method' => $prepared_source->source,
1375 1375
 			'customer'       => $prepared_source->customer,
1376 1376
 			'confirm'        => 'true',
1377
-		), 'setup_intents' );
1377
+		), 'setup_intents');
1378 1378
 
1379
-		if ( is_wp_error( $setup_intent ) ) {
1380
-			WC_Stripe_Logger::log( "Unable to create SetupIntent for Order #$order_id: " . print_r( $setup_intent, true ) );
1381
-		} elseif ( 'requires_action' === $setup_intent->status ) {
1382
-			$order->update_meta_data( '_stripe_setup_intent', $setup_intent->id );
1379
+		if (is_wp_error($setup_intent)) {
1380
+			WC_Stripe_Logger::log("Unable to create SetupIntent for Order #$order_id: " . print_r($setup_intent, true));
1381
+		} elseif ('requires_action' === $setup_intent->status) {
1382
+			$order->update_meta_data('_stripe_setup_intent', $setup_intent->id);
1383 1383
 			$order->save();
1384 1384
 
1385 1385
 			return $setup_intent->client_secret;
@@ -1394,12 +1394,12 @@  discard block
 block discarded – undo
1394 1394
 	 * @param float    $amount          The amount to charge. If not specified, it will be read from the order.
1395 1395
 	 * @return object                   An intent or an error.
1396 1396
 	 */
1397
-	public function create_and_confirm_intent_for_off_session( $order, $prepared_source, $amount = NULL ) {
1397
+	public function create_and_confirm_intent_for_off_session($order, $prepared_source, $amount = NULL) {
1398 1398
 		// The request for a charge contains metadata for the intent.
1399
-		$full_request = $this->generate_payment_request( $order, $prepared_source );
1399
+		$full_request = $this->generate_payment_request($order, $prepared_source);
1400 1400
 
1401 1401
 		$request = array(
1402
-			'amount'               => $amount ? WC_Stripe_Helper::get_stripe_amount( $amount, $full_request['currency'] ) : $full_request['amount'],
1402
+			'amount'               => $amount ? WC_Stripe_Helper::get_stripe_amount($amount, $full_request['currency']) : $full_request['amount'],
1403 1403
 			'currency'             => $full_request['currency'],
1404 1404
 			'description'          => $full_request['description'],
1405 1405
 			'metadata'             => $full_request['metadata'],
@@ -1411,17 +1411,17 @@  discard block
 block discarded – undo
1411 1411
 			'confirmation_method'  => 'automatic',
1412 1412
 		);
1413 1413
 
1414
-		if ( isset( $full_request['statement_descriptor'] ) ) {
1414
+		if (isset($full_request['statement_descriptor'])) {
1415 1415
 			$request['statement_descriptor'] = $full_request['statement_descriptor'];
1416 1416
 		}
1417 1417
 
1418
-		if ( isset( $full_request['customer'] ) ) {
1418
+		if (isset($full_request['customer'])) {
1419 1419
 			$request['customer'] = $full_request['customer'];
1420 1420
 		}
1421 1421
 
1422
-		if ( isset( $full_request['source'] ) ) {
1423
-			$is_source = 'src_' === substr( $full_request['source'], 0, 4 );
1424
-			$request[ $is_source ? 'source' : 'payment_method' ] = $full_request['source'];
1422
+		if (isset($full_request['source'])) {
1423
+			$is_source = 'src_' === substr($full_request['source'], 0, 4);
1424
+			$request[$is_source ? 'source' : 'payment_method'] = $full_request['source'];
1425 1425
 		}
1426 1426
 
1427 1427
 		/**
@@ -1432,38 +1432,38 @@  discard block
 block discarded – undo
1432 1432
 		 * @param WC_Order $order
1433 1433
 		 * @param object $source
1434 1434
 		 */
1435
-		$request = apply_filters('wc_stripe_generate_create_intent_request', $request, $order, $prepared_source );
1435
+		$request = apply_filters('wc_stripe_generate_create_intent_request', $request, $order, $prepared_source);
1436 1436
 
1437
-		if ( isset( $full_request['shipping'] ) ) {
1437
+		if (isset($full_request['shipping'])) {
1438 1438
 			$request['shipping'] = $full_request['shipping'];
1439 1439
 		}
1440 1440
 
1441
-		$level3_data = $this->get_level3_data_from_order( $order );
1441
+		$level3_data = $this->get_level3_data_from_order($order);
1442 1442
 		$intent = WC_Stripe_API::request_with_level3_data(
1443 1443
 			$request,
1444 1444
 			'payment_intents',
1445 1445
 			$level3_data,
1446 1446
 			$order
1447 1447
 		);
1448
-		$is_authentication_required = $this->is_authentication_required_for_payment( $intent );
1448
+		$is_authentication_required = $this->is_authentication_required_for_payment($intent);
1449 1449
 
1450
-		if ( ! empty( $intent->error ) && ! $is_authentication_required ) {
1450
+		if ( ! empty($intent->error) && ! $is_authentication_required) {
1451 1451
 			return $intent;
1452 1452
 		}
1453 1453
 
1454
-		$intent_id      = ( ! empty( $intent->error )
1454
+		$intent_id = ( ! empty($intent->error)
1455 1455
 			? $intent->error->payment_intent->id
1456 1456
 			: $intent->id
1457 1457
 		);
1458
-		$payment_intent = ( ! empty( $intent->error )
1458
+		$payment_intent = ( ! empty($intent->error)
1459 1459
 			? $intent->error->payment_intent
1460 1460
 			: $intent
1461 1461
 		);
1462
-		$order_id       = $order->get_id();
1463
-		WC_Stripe_Logger::log( "Stripe PaymentIntent $intent_id initiated for order $order_id" );
1462
+		$order_id = $order->get_id();
1463
+		WC_Stripe_Logger::log("Stripe PaymentIntent $intent_id initiated for order $order_id");
1464 1464
 
1465 1465
 		// Save the intent ID to the order.
1466
-		$this->save_intent_to_order( $order, $payment_intent );
1466
+		$this->save_intent_to_order($order, $payment_intent);
1467 1467
 
1468 1468
 		return $intent;
1469 1469
 	}
@@ -1474,13 +1474,13 @@  discard block
 block discarded – undo
1474 1474
 	 * Fix renewal for existing subscriptions affected by https://github.com/woocommerce/woocommerce-gateway-stripe/issues/1072.
1475 1475
 	 * @param int $order_id subscription renewal order id.
1476 1476
 	 */
1477
-	public function ensure_subscription_has_customer_id( $order_id ) {
1478
-		$subscriptions_ids = wcs_get_subscriptions_for_order( $order_id, array( 'order_type' => 'any' ) );
1479
-		foreach( $subscriptions_ids as $subscription_id => $subscription ) {
1480
-			if ( ! metadata_exists( 'post', $subscription_id, '_stripe_customer_id' ) ) {
1481
-				$stripe_customer = new WC_Stripe_Customer( $subscription->get_user_id() );
1482
-				update_post_meta( $subscription_id, '_stripe_customer_id', $stripe_customer->get_id() );
1483
-				update_post_meta( $order_id, '_stripe_customer_id', $stripe_customer->get_id() );
1477
+	public function ensure_subscription_has_customer_id($order_id) {
1478
+		$subscriptions_ids = wcs_get_subscriptions_for_order($order_id, array('order_type' => 'any'));
1479
+		foreach ($subscriptions_ids as $subscription_id => $subscription) {
1480
+			if ( ! metadata_exists('post', $subscription_id, '_stripe_customer_id')) {
1481
+				$stripe_customer = new WC_Stripe_Customer($subscription->get_user_id());
1482
+				update_post_meta($subscription_id, '_stripe_customer_id', $stripe_customer->get_id());
1483
+				update_post_meta($order_id, '_stripe_customer_id', $stripe_customer->get_id());
1484 1484
 			}
1485 1485
 		}
1486 1486
 	}
@@ -1490,7 +1490,7 @@  discard block
 block discarded – undo
1490 1490
 	 * @param string $zip The ZIP code to verify.
1491 1491
 	 * @return boolean
1492 1492
 	 */
1493
-	public function is_valid_us_zip_code( $zip ) {
1494
-		return ! empty( $zip ) && preg_match( '/^\d{5,5}(-\d{4,4})?$/', $zip );
1493
+	public function is_valid_us_zip_code($zip) {
1494
+		return ! empty($zip) && preg_match('/^\d{5,5}(-\d{4,4})?$/', $zip);
1495 1495
 	}
1496 1496
 }
Please login to merge, or discard this patch.
includes/compat/class-wc-stripe-subs-compat.php 1 patch
Spacing   +200 added lines, -200 removed lines patch added patch discarded remove patch
@@ -1,5 +1,5 @@  discard block
 block discarded – undo
1 1
 <?php
2
-if ( ! defined( 'ABSPATH' ) ) {
2
+if ( ! defined('ABSPATH')) {
3 3
 	exit;
4 4
 }
5 5
 
@@ -15,21 +15,21 @@  discard block
 block discarded – undo
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
 			 * WC subscriptions hooks into the "template_redirect" hook with priority 100.
@@ -37,8 +37,8 @@  discard block
 block discarded – undo
37 37
 			 * See: https://github.com/woocommerce/woocommerce-subscriptions/blob/99a75687e109b64cbc07af6e5518458a6305f366/includes/class-wcs-cart-renewal.php#L165
38 38
 			 * If we are in the "You just need to authorize SCA" flow, we don't want that redirection to happen.
39 39
 			 */
40
-			add_action( 'template_redirect', array( $this, 'remove_order_pay_var' ), 99 );
41
-			add_action( 'template_redirect', array( $this, 'restore_order_pay_var' ), 101 );
40
+			add_action('template_redirect', array($this, 'remove_order_pay_var'), 99);
41
+			add_action('template_redirect', array($this, 'restore_order_pay_var'), 101);
42 42
 		}
43 43
 	}
44 44
 
@@ -49,8 +49,8 @@  discard block
 block discarded – undo
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
 block discarded – undo
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
 block discarded – undo
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
 	/**
@@ -83,20 +83,20 @@  discard block
 block discarded – undo
83 83
 	 * @since 4.1.11
84 84
 	 */
85 85
 	public function display_update_subs_payment_checkout() {
86
-		$subs_statuses = apply_filters( 'wc_stripe_update_subs_payment_method_card_statuses', array( 'active' ) );
86
+		$subs_statuses = apply_filters('wc_stripe_update_subs_payment_method_card_statuses', array('active'));
87 87
 		if (
88
-			apply_filters( 'wc_stripe_display_update_subs_payment_method_card_checkbox', true ) &&
89
-			wcs_user_has_subscription( get_current_user_id(), '', $subs_statuses ) &&
88
+			apply_filters('wc_stripe_display_update_subs_payment_method_card_checkbox', true) &&
89
+			wcs_user_has_subscription(get_current_user_id(), '', $subs_statuses) &&
90 90
 			is_add_payment_method_page()
91 91
 		) {
92
-			$label = esc_html( apply_filters( 'wc_stripe_save_to_subs_text', __( 'Update the Payment Method used for all of my active subscriptions.', 'woocommerce-gateway-stripe' ) ) );
93
-			$id    = sprintf( 'wc-%1$s-update-subs-payment-method-card', $this->id );
92
+			$label = esc_html(apply_filters('wc_stripe_save_to_subs_text', __('Update the Payment Method used for all of my active subscriptions.', 'woocommerce-gateway-stripe')));
93
+			$id    = sprintf('wc-%1$s-update-subs-payment-method-card', $this->id);
94 94
 			woocommerce_form_field(
95 95
 				$id,
96 96
 				array(
97 97
 					'type'    => 'checkbox',
98 98
 					'label'   => $label,
99
-					'default' => apply_filters( 'wc_stripe_save_to_subs_checked', false ),
99
+					'default' => apply_filters('wc_stripe_save_to_subs_checked', false),
100 100
 				)
101 101
 			);
102 102
 		}
@@ -109,19 +109,19 @@  discard block
 block discarded – undo
109 109
 	 * @param string $source_id
110 110
 	 * @param object $source_object
111 111
 	 */
112
-	public function handle_add_payment_method_success( $source_id, $source_object ) {
113
-		if ( isset( $_POST[ 'wc-' . $this->id . '-update-subs-payment-method-card' ] ) ) {
112
+	public function handle_add_payment_method_success($source_id, $source_object) {
113
+		if (isset($_POST['wc-' . $this->id . '-update-subs-payment-method-card'])) {
114 114
 			$all_subs        = wcs_get_users_subscriptions();
115
-			$subs_statuses   = apply_filters( 'wc_stripe_update_subs_payment_method_card_statuses', array( 'active' ) );
116
-			$stripe_customer = new WC_Stripe_Customer( get_current_user_id() );
117
-
118
-			if ( ! empty( $all_subs ) ) {
119
-				foreach ( $all_subs as $sub ) {
120
-					if ( $sub->has_status( $subs_statuses ) ) {
121
-						update_post_meta( $sub->get_id(), '_stripe_source_id', $source_id );
122
-						update_post_meta( $sub->get_id(), '_stripe_customer_id', $stripe_customer->get_id() );
123
-						update_post_meta( $sub->get_id(), '_payment_method', $this->id );
124
-						update_post_meta( $sub->get_id(), '_payment_method_title', $this->method_title );
115
+			$subs_statuses   = apply_filters('wc_stripe_update_subs_payment_method_card_statuses', array('active'));
116
+			$stripe_customer = new WC_Stripe_Customer(get_current_user_id());
117
+
118
+			if ( ! empty($all_subs)) {
119
+				foreach ($all_subs as $sub) {
120
+					if ($sub->has_status($subs_statuses)) {
121
+						update_post_meta($sub->get_id(), '_stripe_source_id', $source_id);
122
+						update_post_meta($sub->get_id(), '_stripe_customer_id', $stripe_customer->get_id());
123
+						update_post_meta($sub->get_id(), '_payment_method', $this->id);
124
+						update_post_meta($sub->get_id(), '_payment_method_title', $this->method_title);
125 125
 					}
126 126
 				}
127 127
 			}
@@ -135,24 +135,24 @@  discard block
 block discarded – undo
135 135
 	 * @since 4.1.11 Remove 3DS check as it is not needed.
136 136
 	 * @param int $order_id
137 137
 	 */
138
-	public function change_subs_payment_method( $order_id ) {
138
+	public function change_subs_payment_method($order_id) {
139 139
 		try {
140
-			$subscription    = wc_get_order( $order_id );
141
-			$prepared_source = $this->prepare_source( get_current_user_id(), true );
140
+			$subscription    = wc_get_order($order_id);
141
+			$prepared_source = $this->prepare_source(get_current_user_id(), true);
142 142
 
143
-			$this->maybe_disallow_prepaid_card( $prepared_source );
144
-			$this->check_source( $prepared_source );
145
-			$this->save_source_to_order( $subscription, $prepared_source );
143
+			$this->maybe_disallow_prepaid_card($prepared_source);
144
+			$this->check_source($prepared_source);
145
+			$this->save_source_to_order($subscription, $prepared_source);
146 146
 
147
-			do_action( 'wc_stripe_change_subs_payment_method_success', $prepared_source->source, $prepared_source );
147
+			do_action('wc_stripe_change_subs_payment_method_success', $prepared_source->source, $prepared_source);
148 148
 
149 149
 			return array(
150 150
 				'result'   => 'success',
151
-				'redirect' => $this->get_return_url( $subscription ),
151
+				'redirect' => $this->get_return_url($subscription),
152 152
 			);
153
-		} catch ( WC_Stripe_Exception $e ) {
154
-			wc_add_notice( $e->getLocalizedMessage(), 'error' );
155
-			WC_Stripe_Logger::log( 'Error: ' . $e->getMessage() );
153
+		} catch (WC_Stripe_Exception $e) {
154
+			wc_add_notice($e->getLocalizedMessage(), 'error');
155
+			WC_Stripe_Logger::log('Error: ' . $e->getMessage());
156 156
 		}
157 157
 	}
158 158
 
@@ -161,16 +161,16 @@  discard block
 block discarded – undo
161 161
 	 * @param  int $order_id
162 162
 	 * @return array
163 163
 	 */
164
-	public function process_payment( $order_id, $retry = true, $force_save_source = false, $previous_error = false, $use_order_source = false ) {
165
-		if ( $this->has_subscription( $order_id ) ) {
166
-			if ( $this->is_subs_change_payment() ) {
167
-				return $this->change_subs_payment_method( $order_id );
164
+	public function process_payment($order_id, $retry = true, $force_save_source = false, $previous_error = false, $use_order_source = false) {
165
+		if ($this->has_subscription($order_id)) {
166
+			if ($this->is_subs_change_payment()) {
167
+				return $this->change_subs_payment_method($order_id);
168 168
 			}
169 169
 
170 170
 			// Regular payment with force customer enabled
171
-			return parent::process_payment( $order_id, $retry, true, $previous_error, $use_order_source );
171
+			return parent::process_payment($order_id, $retry, true, $previous_error, $use_order_source);
172 172
 		} else {
173
-			return parent::process_payment( $order_id, $retry, $force_save_source, $previous_error, $use_order_source );
173
+			return parent::process_payment($order_id, $retry, $force_save_source, $previous_error, $use_order_source);
174 174
 		}
175 175
 	}
176 176
 
@@ -180,8 +180,8 @@  discard block
 block discarded – undo
180 180
 	 * @param $amount_to_charge float The amount to charge.
181 181
 	 * @param $renewal_order WC_Order A WC_Order object created to record the renewal payment.
182 182
 	 */
183
-	public function scheduled_subscription_payment( $amount_to_charge, $renewal_order ) {
184
-		$this->process_subscription_payment( $amount_to_charge, $renewal_order, true, false );
183
+	public function scheduled_subscription_payment($amount_to_charge, $renewal_order) {
184
+		$this->process_subscription_payment($amount_to_charge, $renewal_order, true, false);
185 185
 	}
186 186
 
187 187
 	/**
@@ -195,11 +195,11 @@  discard block
 block discarded – undo
195 195
 	 * @param bool $retry Should we retry the process?
196 196
 	 * @param object $previous_error
197 197
 	 */
198
-	public function process_subscription_payment( $amount, $renewal_order, $retry = true, $previous_error = false ) {
198
+	public function process_subscription_payment($amount, $renewal_order, $retry = true, $previous_error = false) {
199 199
 		try {
200
-			if ( $amount * 100 < WC_Stripe_Helper::get_minimum_amount() ) {
200
+			if ($amount * 100 < WC_Stripe_Helper::get_minimum_amount()) {
201 201
 				/* translators: minimum amount */
202
-				$message = 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 ) );
202
+				$message = 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));
203 203
 				throw new WC_Stripe_Exception(
204 204
 					'Error while processing renewal order ' . $renewal_order->get_id() . ' : ' . $message,
205 205
 					$message
@@ -208,141 +208,141 @@  discard block
 block discarded – undo
208 208
 
209 209
 			$order_id = $renewal_order->get_id();
210 210
 
211
-			$this->ensure_subscription_has_customer_id( $order_id );
211
+			$this->ensure_subscription_has_customer_id($order_id);
212 212
 
213 213
 			// Unlike regular off-session subscription payments, early renewals are treated as on-session payments, involving the customer.
214
-			if ( isset( $_REQUEST['process_early_renewal'] ) ) { // wpcs: csrf ok.
215
-				$response = parent::process_payment( $order_id, true, false, $previous_error, true );
214
+			if (isset($_REQUEST['process_early_renewal'])) { // wpcs: csrf ok.
215
+				$response = parent::process_payment($order_id, true, false, $previous_error, true);
216 216
 
217
-				if( 'success' === $response['result'] && isset( $response['payment_intent_secret'] ) ) {
217
+				if ('success' === $response['result'] && isset($response['payment_intent_secret'])) {
218 218
 					$verification_url = add_query_arg(
219 219
 						array(
220 220
 							'order'         => $order_id,
221
-							'nonce'         => wp_create_nonce( 'wc_stripe_confirm_pi' ),
222
-							'redirect_to'   => remove_query_arg( array( 'process_early_renewal', 'subscription_id', 'wcs_nonce' ) ),
221
+							'nonce'         => wp_create_nonce('wc_stripe_confirm_pi'),
222
+							'redirect_to'   => remove_query_arg(array('process_early_renewal', 'subscription_id', 'wcs_nonce')),
223 223
 							'early_renewal' => true,
224 224
 						),
225
-						WC_AJAX::get_endpoint( 'wc_stripe_verify_intent' )
225
+						WC_AJAX::get_endpoint('wc_stripe_verify_intent')
226 226
 					);
227 227
 
228
-					echo wp_json_encode( array(
228
+					echo wp_json_encode(array(
229 229
 						'stripe_sca_required' => true,
230 230
 						'intent_secret'       => $response['payment_intent_secret'],
231 231
 						'redirect_url'        => $verification_url,
232
-					) );
232
+					));
233 233
 
234 234
 					exit;
235 235
 				}
236 236
 
237 237
 				// Hijack all other redirects in order to do the redirection in JavaScript.
238
-				add_action( 'wp_redirect', array( $this, 'redirect_after_early_renewal' ), 100 );
238
+				add_action('wp_redirect', array($this, 'redirect_after_early_renewal'), 100);
239 239
 
240 240
 				return;
241 241
 			}
242 242
 
243 243
 			// Check for an existing intent, which is associated with the order.
244
-			if ( $this->has_authentication_already_failed( $renewal_order ) ) {
244
+			if ($this->has_authentication_already_failed($renewal_order)) {
245 245
 				return;
246 246
 			}
247 247
 
248 248
 			// Get source from order
249
-			$prepared_source = $this->prepare_order_source( $renewal_order );
249
+			$prepared_source = $this->prepare_order_source($renewal_order);
250 250
 			$source_object   = $prepared_source->source_object;
251 251
 
252
-			if ( ! $prepared_source->customer ) {
252
+			if ( ! $prepared_source->customer) {
253 253
 				throw new WC_Stripe_Exception(
254 254
 					'Failed to process renewal for order ' . $renewal_order->get_id() . '. Stripe customer id is missing in the order',
255
-					__( 'Customer not found', 'woocommerce-gateway-stripe' )
255
+					__('Customer not found', 'woocommerce-gateway-stripe')
256 256
 				);
257 257
 			}
258 258
 
259
-			WC_Stripe_Logger::log( "Info: Begin processing subscription payment for order {$order_id} for the amount of {$amount}" );
259
+			WC_Stripe_Logger::log("Info: Begin processing subscription payment for order {$order_id} for the amount of {$amount}");
260 260
 
261 261
 			/* If we're doing a retry and source is chargeable, we need to pass
262 262
 			 * a different idempotency key and retry for success.
263 263
 			 */
264
-			if ( is_object( $source_object ) && empty( $source_object->error ) && $this->need_update_idempotency_key( $source_object, $previous_error ) ) {
265
-				add_filter( 'wc_stripe_idempotency_key', array( $this, 'change_idempotency_key' ), 10, 2 );
264
+			if (is_object($source_object) && empty($source_object->error) && $this->need_update_idempotency_key($source_object, $previous_error)) {
265
+				add_filter('wc_stripe_idempotency_key', array($this, 'change_idempotency_key'), 10, 2);
266 266
 			}
267 267
 
268
-			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 ) ) {
268
+			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)) {
269 269
 				// Passing empty source will charge customer default.
270 270
 				$prepared_source->source = '';
271 271
 			}
272 272
 
273
-			$this->lock_order_payment( $renewal_order );
273
+			$this->lock_order_payment($renewal_order);
274 274
 
275
-			$response                   = $this->create_and_confirm_intent_for_off_session( $renewal_order, $prepared_source, $amount );
276
-			$is_authentication_required = $this->is_authentication_required_for_payment( $response );
275
+			$response                   = $this->create_and_confirm_intent_for_off_session($renewal_order, $prepared_source, $amount);
276
+			$is_authentication_required = $this->is_authentication_required_for_payment($response);
277 277
 
278 278
 			// It's only a failed payment if it's an error and it's not of the type 'authentication_required'.
279 279
 			// If it's 'authentication_required', then we should email the user and ask them to authenticate.
280
-			if ( ! empty( $response->error ) && ! $is_authentication_required ) {
280
+			if ( ! empty($response->error) && ! $is_authentication_required) {
281 281
 				// We want to retry.
282
-				if ( $this->is_retryable_error( $response->error ) ) {
283
-					if ( $retry ) {
282
+				if ($this->is_retryable_error($response->error)) {
283
+					if ($retry) {
284 284
 						// Don't do anymore retries after this.
285
-						if ( 5 <= $this->retry_interval ) {
286
-							return $this->process_subscription_payment( $amount, $renewal_order, false, $response->error );
285
+						if (5 <= $this->retry_interval) {
286
+							return $this->process_subscription_payment($amount, $renewal_order, false, $response->error);
287 287
 						}
288 288
 
289
-						sleep( $this->retry_interval );
289
+						sleep($this->retry_interval);
290 290
 
291 291
 						$this->retry_interval++;
292 292
 
293
-						return $this->process_subscription_payment( $amount, $renewal_order, true, $response->error );
293
+						return $this->process_subscription_payment($amount, $renewal_order, true, $response->error);
294 294
 					} else {
295
-						$localized_message = __( 'Sorry, we are unable to process your payment at this time. Please retry later.', 'woocommerce-gateway-stripe' );
296
-						$renewal_order->add_order_note( $localized_message );
297
-						throw new WC_Stripe_Exception( print_r( $response, true ), $localized_message );
295
+						$localized_message = __('Sorry, we are unable to process your payment at this time. Please retry later.', 'woocommerce-gateway-stripe');
296
+						$renewal_order->add_order_note($localized_message);
297
+						throw new WC_Stripe_Exception(print_r($response, true), $localized_message);
298 298
 					}
299 299
 				}
300 300
 
301 301
 				$localized_messages = WC_Stripe_Helper::get_localized_messages();
302 302
 
303
-				if ( 'card_error' === $response->error->type ) {
304
-					$localized_message = isset( $localized_messages[ $response->error->code ] ) ? $localized_messages[ $response->error->code ] : $response->error->message;
303
+				if ('card_error' === $response->error->type) {
304
+					$localized_message = isset($localized_messages[$response->error->code]) ? $localized_messages[$response->error->code] : $response->error->message;
305 305
 				} else {
306
-					$localized_message = isset( $localized_messages[ $response->error->type ] ) ? $localized_messages[ $response->error->type ] : $response->error->message;
306
+					$localized_message = isset($localized_messages[$response->error->type]) ? $localized_messages[$response->error->type] : $response->error->message;
307 307
 				}
308 308
 
309
-				$renewal_order->add_order_note( $localized_message );
309
+				$renewal_order->add_order_note($localized_message);
310 310
 
311
-				throw new WC_Stripe_Exception( print_r( $response, true ), $localized_message );
311
+				throw new WC_Stripe_Exception(print_r($response, true), $localized_message);
312 312
 			}
313 313
 
314 314
 			// Either the charge was successfully captured, or it requires further authentication.
315 315
 
316
-			if ( $is_authentication_required ) {
317
-				do_action( 'wc_gateway_stripe_process_payment_authentication_required', $renewal_order, $response );
316
+			if ($is_authentication_required) {
317
+				do_action('wc_gateway_stripe_process_payment_authentication_required', $renewal_order, $response);
318 318
 
319
-				$error_message = __( 'This transaction requires authentication.', 'woocommerce-gateway-stripe' );
320
-				$renewal_order->add_order_note( $error_message );
319
+				$error_message = __('This transaction requires authentication.', 'woocommerce-gateway-stripe');
320
+				$renewal_order->add_order_note($error_message);
321 321
 
322
-				$charge = end( $response->error->payment_intent->charges->data );
322
+				$charge = end($response->error->payment_intent->charges->data);
323 323
 				$id = $charge->id;
324 324
 				$order_id = $renewal_order->get_id();
325 325
 
326
-				$renewal_order->set_transaction_id( $id );
327
-				$renewal_order->update_status( 'failed', sprintf( __( 'Stripe charge awaiting authentication by user: %s.', 'woocommerce-gateway-stripe' ), $id ) );
328
-				if ( is_callable( array( $renewal_order, 'save' ) ) ) {
326
+				$renewal_order->set_transaction_id($id);
327
+				$renewal_order->update_status('failed', sprintf(__('Stripe charge awaiting authentication by user: %s.', 'woocommerce-gateway-stripe'), $id));
328
+				if (is_callable(array($renewal_order, 'save'))) {
329 329
 					$renewal_order->save();
330 330
 				}
331 331
 			} else {
332 332
 				// The charge was successfully captured
333
-				do_action( 'wc_gateway_stripe_process_payment', $response, $renewal_order );
333
+				do_action('wc_gateway_stripe_process_payment', $response, $renewal_order);
334 334
 
335
-				$this->process_response( end( $response->charges->data ), $renewal_order );
335
+				$this->process_response(end($response->charges->data), $renewal_order);
336 336
 			}
337 337
 
338
-			$this->unlock_order_payment( $renewal_order );
339
-		} catch ( WC_Stripe_Exception $e ) {
340
-			WC_Stripe_Logger::log( 'Error: ' . $e->getMessage() );
338
+			$this->unlock_order_payment($renewal_order);
339
+		} catch (WC_Stripe_Exception $e) {
340
+			WC_Stripe_Logger::log('Error: ' . $e->getMessage());
341 341
 
342
-			do_action( 'wc_gateway_stripe_process_payment_error', $e, $renewal_order );
342
+			do_action('wc_gateway_stripe_process_payment_error', $e, $renewal_order);
343 343
 
344 344
 			/* translators: error message */
345
-			$renewal_order->update_status( 'failed' );
345
+			$renewal_order->update_status('failed');
346 346
 		}
347 347
 	}
348 348
 
@@ -352,24 +352,24 @@  discard block
 block discarded – undo
352 352
 	 * @since 3.1.0
353 353
 	 * @version 4.0.0
354 354
 	 */
355
-	public function save_source_to_order( $order, $source ) {
356
-		parent::save_source_to_order( $order, $source );
355
+	public function save_source_to_order($order, $source) {
356
+		parent::save_source_to_order($order, $source);
357 357
 
358 358
 		$order_id = $order->get_id();
359 359
 
360 360
 		// Also store it on the subscriptions being purchased or paid for in the order
361
-		if ( function_exists( 'wcs_order_contains_subscription' ) && wcs_order_contains_subscription( $order_id ) ) {
362
-			$subscriptions = wcs_get_subscriptions_for_order( $order_id );
363
-		} elseif ( function_exists( 'wcs_order_contains_renewal' ) && wcs_order_contains_renewal( $order_id ) ) {
364
-			$subscriptions = wcs_get_subscriptions_for_renewal_order( $order_id );
361
+		if (function_exists('wcs_order_contains_subscription') && wcs_order_contains_subscription($order_id)) {
362
+			$subscriptions = wcs_get_subscriptions_for_order($order_id);
363
+		} elseif (function_exists('wcs_order_contains_renewal') && wcs_order_contains_renewal($order_id)) {
364
+			$subscriptions = wcs_get_subscriptions_for_renewal_order($order_id);
365 365
 		} else {
366 366
 			$subscriptions = array();
367 367
 		}
368 368
 
369
-		foreach ( $subscriptions as $subscription ) {
369
+		foreach ($subscriptions as $subscription) {
370 370
 			$subscription_id = $subscription->get_id();
371
-			update_post_meta( $subscription_id, '_stripe_customer_id', $source->customer );
372
-			update_post_meta( $subscription_id, '_stripe_source_id', $source->source );
371
+			update_post_meta($subscription_id, '_stripe_customer_id', $source->customer);
372
+			update_post_meta($subscription_id, '_stripe_source_id', $source->source);
373 373
 		}
374 374
 	}
375 375
 
@@ -377,26 +377,26 @@  discard block
 block discarded – undo
377 377
 	 * Don't transfer Stripe customer/token meta to resubscribe orders.
378 378
 	 * @param int $resubscribe_order The order created for the customer to resubscribe to the old expired/cancelled subscription
379 379
 	 */
380
-	public function delete_resubscribe_meta( $resubscribe_order ) {
381
-		delete_post_meta( $resubscribe_order->get_id(), '_stripe_customer_id' );
382
-		delete_post_meta( $resubscribe_order->get_id(), '_stripe_source_id' );
380
+	public function delete_resubscribe_meta($resubscribe_order) {
381
+		delete_post_meta($resubscribe_order->get_id(), '_stripe_customer_id');
382
+		delete_post_meta($resubscribe_order->get_id(), '_stripe_source_id');
383 383
 		// For BW compat will remove in future
384
-		delete_post_meta( $resubscribe_order->get_id(), '_stripe_card_id' );
384
+		delete_post_meta($resubscribe_order->get_id(), '_stripe_card_id');
385 385
 		// delete payment intent ID
386
-		delete_post_meta( $resubscribe_order->get_id(), '_stripe_intent_id' );
387
-		$this->delete_renewal_meta( $resubscribe_order );
386
+		delete_post_meta($resubscribe_order->get_id(), '_stripe_intent_id');
387
+		$this->delete_renewal_meta($resubscribe_order);
388 388
 	}
389 389
 
390 390
 	/**
391 391
 	 * Don't transfer Stripe fee/ID meta to renewal orders.
392 392
 	 * @param int $resubscribe_order The order created for the customer to resubscribe to the old expired/cancelled subscription
393 393
 	 */
394
-	public function delete_renewal_meta( $renewal_order ) {
395
-		WC_Stripe_Helper::delete_stripe_fee( $renewal_order );
396
-		WC_Stripe_Helper::delete_stripe_net( $renewal_order );
394
+	public function delete_renewal_meta($renewal_order) {
395
+		WC_Stripe_Helper::delete_stripe_fee($renewal_order);
396
+		WC_Stripe_Helper::delete_stripe_net($renewal_order);
397 397
 
398 398
 		// delete payment intent ID
399
-		delete_post_meta( $renewal_order->get_id(), '_stripe_intent_id' );
399
+		delete_post_meta($renewal_order->get_id(), '_stripe_intent_id');
400 400
 
401 401
 		return $renewal_order;
402 402
 	}
@@ -410,9 +410,9 @@  discard block
 block discarded – undo
410 410
 	 * @param WC_Order $renewal_order The order which recorded the successful payment (to make up for the failed automatic payment).
411 411
 	 * @return void
412 412
 	 */
413
-	public function update_failing_payment_method( $subscription, $renewal_order ) {
414
-		update_post_meta( $subscription->get_id(), '_stripe_customer_id', $renewal_order->get_meta( '_stripe_customer_id', true ) );
415
-		update_post_meta( $subscription->get_id(), '_stripe_source_id', $renewal_order->get_meta( '_stripe_source_id', true ) );
413
+	public function update_failing_payment_method($subscription, $renewal_order) {
414
+		update_post_meta($subscription->get_id(), '_stripe_customer_id', $renewal_order->get_meta('_stripe_customer_id', true));
415
+		update_post_meta($subscription->get_id(), '_stripe_source_id', $renewal_order->get_meta('_stripe_source_id', true));
416 416
 	}
417 417
 
418 418
 	/**
@@ -424,23 +424,23 @@  discard block
 block discarded – undo
424 424
 	 * @param WC_Subscription $subscription An instance of a subscription object
425 425
 	 * @return array
426 426
 	 */
427
-	public function add_subscription_payment_meta( $payment_meta, $subscription ) {
427
+	public function add_subscription_payment_meta($payment_meta, $subscription) {
428 428
 		$subscription_id = $subscription->get_id();
429
-		$source_id       = get_post_meta( $subscription_id, '_stripe_source_id', true );
429
+		$source_id       = get_post_meta($subscription_id, '_stripe_source_id', true);
430 430
 
431 431
 		// For BW compat will remove in future.
432
-		if ( empty( $source_id ) ) {
433
-			$source_id = get_post_meta( $subscription_id, '_stripe_card_id', true );
432
+		if (empty($source_id)) {
433
+			$source_id = get_post_meta($subscription_id, '_stripe_card_id', true);
434 434
 
435 435
 			// Take this opportunity to update the key name.
436
-			update_post_meta( $subscription_id, '_stripe_source_id', $source_id );
437
-			delete_post_meta( $subscription_id, '_stripe_card_id', $source_id );
436
+			update_post_meta($subscription_id, '_stripe_source_id', $source_id);
437
+			delete_post_meta($subscription_id, '_stripe_card_id', $source_id);
438 438
 		}
439 439
 
440
-		$payment_meta[ $this->id ] = array(
440
+		$payment_meta[$this->id] = array(
441 441
 			'post_meta' => array(
442 442
 				'_stripe_customer_id' => array(
443
-					'value' => get_post_meta( $subscription_id, '_stripe_customer_id', true ),
443
+					'value' => get_post_meta($subscription_id, '_stripe_customer_id', true),
444 444
 					'label' => 'Stripe Customer ID',
445 445
 				),
446 446
 				'_stripe_source_id'   => array(
@@ -463,27 +463,27 @@  discard block
 block discarded – undo
463 463
 	 * @param array $payment_meta associative array of meta data required for automatic payments
464 464
 	 * @return array
465 465
 	 */
466
-	public function validate_subscription_payment_meta( $payment_method_id, $payment_meta ) {
467
-		if ( $this->id === $payment_method_id ) {
466
+	public function validate_subscription_payment_meta($payment_method_id, $payment_meta) {
467
+		if ($this->id === $payment_method_id) {
468 468
 
469
-			if ( ! isset( $payment_meta['post_meta']['_stripe_customer_id']['value'] ) || empty( $payment_meta['post_meta']['_stripe_customer_id']['value'] ) ) {
469
+			if ( ! isset($payment_meta['post_meta']['_stripe_customer_id']['value']) || empty($payment_meta['post_meta']['_stripe_customer_id']['value'])) {
470 470
 
471 471
 				// Allow empty stripe customer id during subscription renewal. It will be added when processing payment if required.
472
-				if ( ! isset( $_POST['wc_order_action'] ) || 'wcs_process_renewal' !== $_POST['wc_order_action'] ) {
473
-					throw new Exception( __( 'A "Stripe Customer ID" value is required.', 'woocommerce-gateway-stripe' ) );
472
+				if ( ! isset($_POST['wc_order_action']) || 'wcs_process_renewal' !== $_POST['wc_order_action']) {
473
+					throw new Exception(__('A "Stripe Customer ID" value is required.', 'woocommerce-gateway-stripe'));
474 474
 				}
475
-			} elseif ( 0 !== strpos( $payment_meta['post_meta']['_stripe_customer_id']['value'], 'cus_' ) ) {
476
-				throw new Exception( __( 'Invalid customer ID. A valid "Stripe Customer ID" must begin with "cus_".', 'woocommerce-gateway-stripe' ) );
475
+			} elseif (0 !== strpos($payment_meta['post_meta']['_stripe_customer_id']['value'], 'cus_')) {
476
+				throw new Exception(__('Invalid customer ID. A valid "Stripe Customer ID" must begin with "cus_".', 'woocommerce-gateway-stripe'));
477 477
 			}
478 478
 
479 479
 			if (
480
-				! empty( $payment_meta['post_meta']['_stripe_source_id']['value'] ) && (
481
-					0 !== strpos( $payment_meta['post_meta']['_stripe_source_id']['value'], 'card_' )
482
-					&& 0 !== strpos( $payment_meta['post_meta']['_stripe_source_id']['value'], 'src_' )
483
-					&& 0 !== strpos( $payment_meta['post_meta']['_stripe_source_id']['value'], 'pm_' )
480
+				! empty($payment_meta['post_meta']['_stripe_source_id']['value']) && (
481
+					0 !== strpos($payment_meta['post_meta']['_stripe_source_id']['value'], 'card_')
482
+					&& 0 !== strpos($payment_meta['post_meta']['_stripe_source_id']['value'], 'src_')
483
+					&& 0 !== strpos($payment_meta['post_meta']['_stripe_source_id']['value'], 'pm_')
484 484
 				)
485 485
 			) {
486
-				throw new Exception( __( 'Invalid source ID. A valid source "Stripe Source ID" must begin with "src_", "pm_", or "card_".', 'woocommerce-gateway-stripe' ) );
486
+				throw new Exception(__('Invalid source ID. A valid source "Stripe Source ID" must begin with "src_", "pm_", or "card_".', 'woocommerce-gateway-stripe'));
487 487
 			}
488 488
 		}
489 489
 	}
@@ -496,75 +496,75 @@  discard block
 block discarded – undo
496 496
 	 * @param WC_Subscription $subscription the subscription details
497 497
 	 * @return string the subscription payment method
498 498
 	 */
499
-	public function maybe_render_subscription_payment_method( $payment_method_to_display, $subscription ) {
499
+	public function maybe_render_subscription_payment_method($payment_method_to_display, $subscription) {
500 500
 		$customer_user = $subscription->get_customer_id();
501 501
 
502 502
 		// bail for other payment methods
503
-		if ( $subscription->get_payment_method() !== $this->id || ! $customer_user ) {
503
+		if ($subscription->get_payment_method() !== $this->id || ! $customer_user) {
504 504
 			return $payment_method_to_display;
505 505
 		}
506 506
 
507
-		$stripe_source_id = get_post_meta( $subscription->get_id(), '_stripe_source_id', true );
507
+		$stripe_source_id = get_post_meta($subscription->get_id(), '_stripe_source_id', true);
508 508
 
509 509
 		// For BW compat will remove in future.
510
-		if ( empty( $stripe_source_id ) ) {
511
-			$stripe_source_id = get_post_meta( $subscription->get_id(), '_stripe_card_id', true );
510
+		if (empty($stripe_source_id)) {
511
+			$stripe_source_id = get_post_meta($subscription->get_id(), '_stripe_card_id', true);
512 512
 
513 513
 			// Take this opportunity to update the key name.
514
-			update_post_meta( $subscription->get_id(), '_stripe_source_id', $stripe_source_id );
514
+			update_post_meta($subscription->get_id(), '_stripe_source_id', $stripe_source_id);
515 515
 		}
516 516
 
517 517
 		$stripe_customer    = new WC_Stripe_Customer();
518
-		$stripe_customer_id = get_post_meta( $subscription->get_id(), '_stripe_customer_id', true );
518
+		$stripe_customer_id = get_post_meta($subscription->get_id(), '_stripe_customer_id', true);
519 519
 
520 520
 		// If we couldn't find a Stripe customer linked to the subscription, fallback to the user meta data.
521
-		if ( ! $stripe_customer_id || ! is_string( $stripe_customer_id ) ) {
521
+		if ( ! $stripe_customer_id || ! is_string($stripe_customer_id)) {
522 522
 			$user_id            = $customer_user;
523
-			$stripe_customer_id = get_user_option( '_stripe_customer_id', $user_id );
524
-			$stripe_source_id   = get_user_option( '_stripe_source_id', $user_id );
523
+			$stripe_customer_id = get_user_option('_stripe_customer_id', $user_id);
524
+			$stripe_source_id   = get_user_option('_stripe_source_id', $user_id);
525 525
 
526 526
 			// For BW compat will remove in future.
527
-			if ( empty( $stripe_source_id ) ) {
528
-				$stripe_source_id = get_user_option( '_stripe_card_id', $user_id );
527
+			if (empty($stripe_source_id)) {
528
+				$stripe_source_id = get_user_option('_stripe_card_id', $user_id);
529 529
 
530 530
 				// Take this opportunity to update the key name.
531
-				update_user_option( $user_id, '_stripe_source_id', $stripe_source_id, false );
531
+				update_user_option($user_id, '_stripe_source_id', $stripe_source_id, false);
532 532
 			}
533 533
 		}
534 534
 
535 535
 		// If we couldn't find a Stripe customer linked to the account, fallback to the order meta data.
536
-		if ( ( ! $stripe_customer_id || ! is_string( $stripe_customer_id ) ) && false !== $subscription->order ) {
537
-			$stripe_customer_id = get_post_meta( $subscription->get_parent_id(), '_stripe_customer_id', true );
538
-			$stripe_source_id   = get_post_meta( $subscription->get_parent_id(), '_stripe_source_id', true );
536
+		if (( ! $stripe_customer_id || ! is_string($stripe_customer_id)) && false !== $subscription->order) {
537
+			$stripe_customer_id = get_post_meta($subscription->get_parent_id(), '_stripe_customer_id', true);
538
+			$stripe_source_id   = get_post_meta($subscription->get_parent_id(), '_stripe_source_id', true);
539 539
 
540 540
 			// For BW compat will remove in future.
541
-			if ( empty( $stripe_source_id ) ) {
542
-				$stripe_source_id = get_post_meta( $subscription->get_parent_id(), '_stripe_card_id', true );
541
+			if (empty($stripe_source_id)) {
542
+				$stripe_source_id = get_post_meta($subscription->get_parent_id(), '_stripe_card_id', true);
543 543
 
544 544
 				// Take this opportunity to update the key name.
545
-				update_post_meta( $subscription->get_parent_id(), '_stripe_source_id', $stripe_source_id );
545
+				update_post_meta($subscription->get_parent_id(), '_stripe_source_id', $stripe_source_id);
546 546
 			}
547 547
 		}
548 548
 
549
-		$stripe_customer->set_id( $stripe_customer_id );
549
+		$stripe_customer->set_id($stripe_customer_id);
550 550
 
551 551
 		$sources                   = $stripe_customer->get_sources();
552
-		$payment_method_to_display = __( 'N/A', 'woocommerce-gateway-stripe' );
552
+		$payment_method_to_display = __('N/A', 'woocommerce-gateway-stripe');
553 553
 
554
-		if ( $sources ) {
554
+		if ($sources) {
555 555
 			$card = false;
556 556
 
557
-			foreach ( $sources as $source ) {
558
-				if ( isset( $source->type ) && 'card' === $source->type ) {
557
+			foreach ($sources as $source) {
558
+				if (isset($source->type) && 'card' === $source->type) {
559 559
 					$card = $source->card;
560
-				} elseif ( isset( $source->object ) && 'card' === $source->object ) {
560
+				} elseif (isset($source->object) && 'card' === $source->object) {
561 561
 					$card = $source;
562 562
 				}
563 563
 
564
-				if ( $source->id === $stripe_source_id ) {
565
-					if ( $card ) {
564
+				if ($source->id === $stripe_source_id) {
565
+					if ($card) {
566 566
 						/* translators: 1) card brand 2) last 4 digits */
567
-						$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 );
567
+						$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);
568 568
 					}
569 569
 
570 570
 					break;
@@ -581,7 +581,7 @@  discard block
 block discarded – undo
581 581
 	 */
582 582
 	public function remove_order_pay_var() {
583 583
 		global $wp;
584
-		if ( isset( $_GET['wc-stripe-confirmation'] ) ) {
584
+		if (isset($_GET['wc-stripe-confirmation'])) {
585 585
 			$this->order_pay_var = $wp->query_vars['order-pay'];
586 586
 			$wp->query_vars['order-pay'] = null;
587 587
 		}
@@ -592,7 +592,7 @@  discard block
 block discarded – undo
592 592
 	 */
593 593
 	public function restore_order_pay_var() {
594 594
 		global $wp;
595
-		if ( isset( $this->order_pay_var ) ) {
595
+		if (isset($this->order_pay_var)) {
596 596
 			$wp->query_vars['order-pay'] = $this->order_pay_var;
597 597
 		}
598 598
 	}
@@ -603,13 +603,13 @@  discard block
 block discarded – undo
603 603
 	 * @param WC_Order $renewal_order The renewal order.
604 604
 	 * @return boolean
605 605
 	 */
606
-	public function has_authentication_already_failed( $renewal_order ) {
607
-		$existing_intent = $this->get_intent_from_order( $renewal_order );
606
+	public function has_authentication_already_failed($renewal_order) {
607
+		$existing_intent = $this->get_intent_from_order($renewal_order);
608 608
 
609 609
 		if (
610 610
 			! $existing_intent
611 611
 			|| 'requires_payment_method' !== $existing_intent->status
612
-			|| empty( $existing_intent->last_payment_error )
612
+			|| empty($existing_intent->last_payment_error)
613 613
 			|| 'authentication_required' !== $existing_intent->last_payment_error->code
614 614
 		) {
615 615
 			return false;
@@ -623,12 +623,12 @@  discard block
 block discarded – undo
623 623
 		 *
624 624
 		 * @param WC_Order $renewal_order The order that is being renewed.
625 625
 		 */
626
-		do_action( 'wc_gateway_stripe_process_payment_authentication_required', $renewal_order );
626
+		do_action('wc_gateway_stripe_process_payment_authentication_required', $renewal_order);
627 627
 
628 628
 		// Fail the payment attempt (order would be currently pending because of retry rules).
629
-		$charge    = end( $existing_intent->charges->data );
629
+		$charge    = end($existing_intent->charges->data);
630 630
 		$charge_id = $charge->id;
631
-		$renewal_order->update_status( 'failed', sprintf( __( 'Stripe charge awaiting authentication by user: %s.', 'woocommerce-gateway-stripe' ), $charge_id ) );
631
+		$renewal_order->update_status('failed', sprintf(__('Stripe charge awaiting authentication by user: %s.', 'woocommerce-gateway-stripe'), $charge_id));
632 632
 
633 633
 		return true;
634 634
 	}
@@ -639,7 +639,7 @@  discard block
 block discarded – undo
639 639
 	 * @param string $url The URL that Subscriptions attempts a redirect to.
640 640
 	 * @return void
641 641
 	 */
642
-	public function redirect_after_early_renewal( $url ) {
642
+	public function redirect_after_early_renewal($url) {
643 643
 		echo wp_json_encode(
644 644
 			array(
645 645
 				'stripe_sca_required' => false,
@@ -656,12 +656,12 @@  discard block
 block discarded – undo
656 656
 	 * @param WC_Order $order The renewal order.
657 657
 	 * @param stdClass $intent The Payment Intent object.
658 658
 	 */
659
-	protected function handle_intent_verification_success( $order, $intent ) {
660
-		parent::handle_intent_verification_success( $order, $intent );
659
+	protected function handle_intent_verification_success($order, $intent) {
660
+		parent::handle_intent_verification_success($order, $intent);
661 661
 
662
-		if ( isset( $_GET['early_renewal'] ) ) { // wpcs: csrf ok.
663
-			wcs_update_dates_after_early_renewal( wcs_get_subscription( $order->get_meta( '_subscription_renewal' ) ), $order );
664
-			wc_add_notice( __( 'Your early renewal order was successful.', 'woocommerce-gateway-stripe' ), 'success' );
662
+		if (isset($_GET['early_renewal'])) { // wpcs: csrf ok.
663
+			wcs_update_dates_after_early_renewal(wcs_get_subscription($order->get_meta('_subscription_renewal')), $order);
664
+			wc_add_notice(__('Your early renewal order was successful.', 'woocommerce-gateway-stripe'), 'success');
665 665
 		}
666 666
 	}
667 667
 
@@ -671,12 +671,12 @@  discard block
 block discarded – undo
671 671
 	 * @param WC_Order $order The renewal order.
672 672
 	 * @param stdClass $intent The Payment Intent object (unused).
673 673
 	 */
674
-	protected function handle_intent_verification_failure( $order, $intent ) {
675
-		if ( isset( $_GET['early_renewal'] ) ) {
676
-			$order->delete( true );
677
-			wc_add_notice( __( 'Payment authorization for the renewal order was unsuccessful, please try again.', 'woocommerce-gateway-stripe' ), 'error' );
678
-			$renewal_url = wcs_get_early_renewal_url( wcs_get_subscription( $order->get_meta( '_subscription_renewal' ) ) );
679
-			wp_redirect( $renewal_url ); exit;
674
+	protected function handle_intent_verification_failure($order, $intent) {
675
+		if (isset($_GET['early_renewal'])) {
676
+			$order->delete(true);
677
+			wc_add_notice(__('Payment authorization for the renewal order was unsuccessful, please try again.', 'woocommerce-gateway-stripe'), 'error');
678
+			$renewal_url = wcs_get_early_renewal_url(wcs_get_subscription($order->get_meta('_subscription_renewal')));
679
+			wp_redirect($renewal_url); exit;
680 680
 		}
681 681
 	}
682 682
 }
Please login to merge, or discard this patch.
includes/class-wc-gateway-stripe.php 1 patch
Spacing   +320 added lines, -320 removed lines patch added patch discarded remove patch
@@ -1,5 +1,5 @@  discard block
 block discarded – undo
1 1
 <?php
2
-if ( ! defined( 'ABSPATH' ) ) {
2
+if ( ! defined('ABSPATH')) {
3 3
 	exit;
4 4
 }
5 5
 
@@ -85,9 +85,9 @@  discard block
 block discarded – undo
85 85
 	public function __construct() {
86 86
 		$this->retry_interval = 1;
87 87
 		$this->id             = 'stripe';
88
-		$this->method_title   = __( 'Stripe', 'woocommerce-gateway-stripe' );
88
+		$this->method_title   = __('Stripe', 'woocommerce-gateway-stripe');
89 89
 		/* translators: 1) link to Stripe register page 2) link to Stripe api keys page */
90
-		$this->method_description = __( 'Stripe works by adding payment fields on the checkout and then sending the details to Stripe for verification.', 'woocommerce-gateway-stripe' );
90
+		$this->method_description = __('Stripe works by adding payment fields on the checkout and then sending the details to Stripe for verification.', 'woocommerce-gateway-stripe');
91 91
 		$this->has_fields         = true;
92 92
 		$this->supports           = array(
93 93
 			'products',
@@ -114,40 +114,40 @@  discard block
 block discarded – undo
114 114
 		$this->init_settings();
115 115
 
116 116
 		// Get setting values.
117
-		$this->title                = $this->get_option( 'title' );
118
-		$this->description          = $this->get_option( 'description' );
119
-		$this->enabled              = $this->get_option( 'enabled' );
120
-		$this->testmode             = 'yes' === $this->get_option( 'testmode' );
121
-		$this->inline_cc_form       = 'yes' === $this->get_option( 'inline_cc_form' );
122
-		$this->capture              = 'yes' === $this->get_option( 'capture', 'yes' );
123
-		$this->statement_descriptor = WC_Stripe_Helper::clean_statement_descriptor( $this->get_option( 'statement_descriptor' ) );
124
-		$this->saved_cards          = 'yes' === $this->get_option( 'saved_cards' );
125
-		$this->secret_key           = $this->testmode ? $this->get_option( 'test_secret_key' ) : $this->get_option( 'secret_key' );
126
-		$this->publishable_key      = $this->testmode ? $this->get_option( 'test_publishable_key' ) : $this->get_option( 'publishable_key' );
127
-		$this->payment_request      = 'yes' === $this->get_option( 'payment_request', 'yes' );
128
-
129
-		WC_Stripe_API::set_secret_key( $this->secret_key );
117
+		$this->title                = $this->get_option('title');
118
+		$this->description          = $this->get_option('description');
119
+		$this->enabled              = $this->get_option('enabled');
120
+		$this->testmode             = 'yes' === $this->get_option('testmode');
121
+		$this->inline_cc_form       = 'yes' === $this->get_option('inline_cc_form');
122
+		$this->capture              = 'yes' === $this->get_option('capture', 'yes');
123
+		$this->statement_descriptor = WC_Stripe_Helper::clean_statement_descriptor($this->get_option('statement_descriptor'));
124
+		$this->saved_cards          = 'yes' === $this->get_option('saved_cards');
125
+		$this->secret_key           = $this->testmode ? $this->get_option('test_secret_key') : $this->get_option('secret_key');
126
+		$this->publishable_key      = $this->testmode ? $this->get_option('test_publishable_key') : $this->get_option('publishable_key');
127
+		$this->payment_request      = 'yes' === $this->get_option('payment_request', 'yes');
128
+
129
+		WC_Stripe_API::set_secret_key($this->secret_key);
130 130
 
131 131
 		// Hooks.
132
-		add_action( 'wp_enqueue_scripts', array( $this, 'payment_scripts' ) );
133
-		add_action( 'admin_enqueue_scripts', array( $this, 'admin_scripts' ) );
134
-		add_action( 'woocommerce_update_options_payment_gateways_' . $this->id, array( $this, 'process_admin_options' ) );
135
-		add_action( 'woocommerce_admin_order_totals_after_total', array( $this, 'display_order_fee' ) );
136
-		add_action( 'woocommerce_admin_order_totals_after_total', array( $this, 'display_order_payout' ), 20 );
137
-		add_action( 'woocommerce_customer_save_address', array( $this, 'show_update_card_notice' ), 10, 2 );
138
-		add_filter( 'woocommerce_available_payment_gateways', array( $this, 'prepare_order_pay_page' ) );
139
-		add_action( 'woocommerce_account_view-order_endpoint', array( $this, 'check_intent_status_on_order_page' ), 1 );
140
-		add_filter( 'woocommerce_payment_successful_result', array( $this, 'modify_successful_payment_result' ), 99999, 2 );
141
-		add_action( 'set_logged_in_cookie', array( $this, 'set_cookie_on_current_request' ) );
142
-		add_filter( 'woocommerce_get_checkout_payment_url', array( $this, 'get_checkout_payment_url' ), 10, 2 );
132
+		add_action('wp_enqueue_scripts', array($this, 'payment_scripts'));
133
+		add_action('admin_enqueue_scripts', array($this, 'admin_scripts'));
134
+		add_action('woocommerce_update_options_payment_gateways_' . $this->id, array($this, 'process_admin_options'));
135
+		add_action('woocommerce_admin_order_totals_after_total', array($this, 'display_order_fee'));
136
+		add_action('woocommerce_admin_order_totals_after_total', array($this, 'display_order_payout'), 20);
137
+		add_action('woocommerce_customer_save_address', array($this, 'show_update_card_notice'), 10, 2);
138
+		add_filter('woocommerce_available_payment_gateways', array($this, 'prepare_order_pay_page'));
139
+		add_action('woocommerce_account_view-order_endpoint', array($this, 'check_intent_status_on_order_page'), 1);
140
+		add_filter('woocommerce_payment_successful_result', array($this, 'modify_successful_payment_result'), 99999, 2);
141
+		add_action('set_logged_in_cookie', array($this, 'set_cookie_on_current_request'));
142
+		add_filter('woocommerce_get_checkout_payment_url', array($this, 'get_checkout_payment_url'), 10, 2);
143 143
 
144 144
 		// Note: display error is in the parent class.
145
-		add_action( 'admin_notices', array( $this, 'display_errors' ), 9999 );
145
+		add_action('admin_notices', array($this, 'display_errors'), 9999);
146 146
 
147
-		if ( WC_Stripe_Helper::is_pre_orders_exists() ) {
147
+		if (WC_Stripe_Helper::is_pre_orders_exists()) {
148 148
 			$this->pre_orders = new WC_Stripe_Pre_Orders_Compat();
149 149
 
150
-			add_action( 'wc_pre_orders_process_pre_order_completion_payment_' . $this->id, array( $this->pre_orders, 'process_pre_order_release_payment' ) );
150
+			add_action('wc_pre_orders_process_pre_order_completion_payment_' . $this->id, array($this->pre_orders, 'process_pre_order_release_payment'));
151 151
 		}
152 152
 	}
153 153
 
@@ -157,7 +157,7 @@  discard block
 block discarded – undo
157 157
 	 * @since 4.0.2
158 158
 	 */
159 159
 	public function is_available() {
160
-		if ( is_add_payment_method_page() && ! $this->saved_cards ) {
160
+		if (is_add_payment_method_page() && ! $this->saved_cards) {
161 161
 			return false;
162 162
 		}
163 163
 
@@ -171,13 +171,13 @@  discard block
 block discarded – undo
171 171
 	 * @param int    $user_id      The ID of the current user.
172 172
 	 * @param string $load_address The address to load.
173 173
 	 */
174
-	public function show_update_card_notice( $user_id, $load_address ) {
175
-		if ( ! $this->saved_cards || ! WC_Stripe_Payment_Tokens::customer_has_saved_methods( $user_id ) || 'billing' !== $load_address ) {
174
+	public function show_update_card_notice($user_id, $load_address) {
175
+		if ( ! $this->saved_cards || ! WC_Stripe_Payment_Tokens::customer_has_saved_methods($user_id) || 'billing' !== $load_address) {
176 176
 			return;
177 177
 		}
178 178
 
179 179
 		/* translators: 1) Opening anchor tag 2) closing anchor tag */
180
-		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' );
180
+		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');
181 181
 	}
182 182
 
183 183
 	/**
@@ -192,24 +192,24 @@  discard block
 block discarded – undo
192 192
 
193 193
 		$icons_str = '';
194 194
 
195
-		$icons_str .= isset( $icons['visa'] ) ? $icons['visa'] : '';
196
-		$icons_str .= isset( $icons['amex'] ) ? $icons['amex'] : '';
197
-		$icons_str .= isset( $icons['mastercard'] ) ? $icons['mastercard'] : '';
195
+		$icons_str .= isset($icons['visa']) ? $icons['visa'] : '';
196
+		$icons_str .= isset($icons['amex']) ? $icons['amex'] : '';
197
+		$icons_str .= isset($icons['mastercard']) ? $icons['mastercard'] : '';
198 198
 
199
-		if ( 'USD' === get_woocommerce_currency() ) {
200
-			$icons_str .= isset( $icons['discover'] ) ? $icons['discover'] : '';
201
-			$icons_str .= isset( $icons['jcb'] ) ? $icons['jcb'] : '';
202
-			$icons_str .= isset( $icons['diners'] ) ? $icons['diners'] : '';
199
+		if ('USD' === get_woocommerce_currency()) {
200
+			$icons_str .= isset($icons['discover']) ? $icons['discover'] : '';
201
+			$icons_str .= isset($icons['jcb']) ? $icons['jcb'] : '';
202
+			$icons_str .= isset($icons['diners']) ? $icons['diners'] : '';
203 203
 		}
204 204
 
205
-		return apply_filters( 'woocommerce_gateway_icon', $icons_str, $this->id );
205
+		return apply_filters('woocommerce_gateway_icon', $icons_str, $this->id);
206 206
 	}
207 207
 
208 208
 	/**
209 209
 	 * Initialise Gateway Settings Form Fields
210 210
 	 */
211 211
 	public function init_form_fields() {
212
-		$this->form_fields = require( dirname( __FILE__ ) . '/admin/stripe-settings.php' );
212
+		$this->form_fields = require(dirname(__FILE__) . '/admin/stripe-settings.php');
213 213
 	}
214 214
 
215 215
 	/**
@@ -218,27 +218,27 @@  discard block
 block discarded – undo
218 218
 	public function payment_fields() {
219 219
 		global $wp;
220 220
 		$user                 = wp_get_current_user();
221
-		$display_tokenization = $this->supports( 'tokenization' ) && is_checkout() && $this->saved_cards;
221
+		$display_tokenization = $this->supports('tokenization') && is_checkout() && $this->saved_cards;
222 222
 		$total                = WC()->cart->total;
223 223
 		$user_email           = '';
224 224
 		$description          = $this->get_description();
225
-		$description          = ! empty( $description ) ? $description : '';
225
+		$description          = ! empty($description) ? $description : '';
226 226
 		$firstname            = '';
227 227
 		$lastname             = '';
228 228
 
229 229
 		// If paying from order, we need to get total from order not cart.
230
-		if ( isset( $_GET['pay_for_order'] ) && ! empty( $_GET['key'] ) ) { // wpcs: csrf ok.
231
-			$order      = wc_get_order( wc_clean( $wp->query_vars['order-pay'] ) ); // wpcs: csrf ok, sanitization ok.
230
+		if (isset($_GET['pay_for_order']) && ! empty($_GET['key'])) { // wpcs: csrf ok.
231
+			$order      = wc_get_order(wc_clean($wp->query_vars['order-pay'])); // wpcs: csrf ok, sanitization ok.
232 232
 			$total      = $order->get_total();
233 233
 			$user_email = $order->get_billing_email();
234 234
 		} else {
235
-			if ( $user->ID ) {
236
-				$user_email = get_user_meta( $user->ID, 'billing_email', true );
235
+			if ($user->ID) {
236
+				$user_email = get_user_meta($user->ID, 'billing_email', true);
237 237
 				$user_email = $user_email ? $user_email : $user->user_email;
238 238
 			}
239 239
 		}
240 240
 
241
-		if ( is_add_payment_method_page() ) {
241
+		if (is_add_payment_method_page()) {
242 242
 			$firstname       = $user->user_firstname;
243 243
 			$lastname        = $user->user_lastname;
244 244
 		}
@@ -247,33 +247,33 @@  discard block
 block discarded – undo
247 247
 
248 248
 		echo '<div
249 249
 			id="stripe-payment-data"
250
-			data-email="' . esc_attr( $user_email ) . '"
251
-			data-full-name="' . esc_attr( $firstname . ' ' . $lastname ) . '"
252
-			data-currency="' . esc_attr( strtolower( get_woocommerce_currency() ) ) . '"
250
+			data-email="' . esc_attr($user_email) . '"
251
+			data-full-name="' . esc_attr($firstname . ' ' . $lastname) . '"
252
+			data-currency="' . esc_attr(strtolower(get_woocommerce_currency())) . '"
253 253
 		>';
254 254
 
255
-		if ( $this->testmode ) {
255
+		if ($this->testmode) {
256 256
 			/* translators: link to Stripe testing page */
257
-			$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' );
257
+			$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');
258 258
 		}
259 259
 
260
-		$description = trim( $description );
260
+		$description = trim($description);
261 261
 
262
-		echo apply_filters( 'wc_stripe_description', wpautop( wp_kses_post( $description ) ), $this->id ); // wpcs: xss ok.
262
+		echo apply_filters('wc_stripe_description', wpautop(wp_kses_post($description)), $this->id); // wpcs: xss ok.
263 263
 
264
-		if ( $display_tokenization ) {
264
+		if ($display_tokenization) {
265 265
 			$this->tokenization_script();
266 266
 			$this->saved_payment_methods();
267 267
 		}
268 268
 
269 269
 		$this->elements_form();
270 270
 
271
-		if ( apply_filters( 'wc_stripe_display_save_payment_method_checkbox', $display_tokenization ) && ! is_add_payment_method_page() && ! isset( $_GET['change_payment_method'] ) ) { // wpcs: csrf ok.
271
+		if (apply_filters('wc_stripe_display_save_payment_method_checkbox', $display_tokenization) && ! is_add_payment_method_page() && ! isset($_GET['change_payment_method'])) { // wpcs: csrf ok.
272 272
 
273 273
 			$this->save_payment_method_checkbox();
274 274
 		}
275 275
 
276
-		do_action( 'wc_stripe_cards_payment_fields', $this->id );
276
+		do_action('wc_stripe_cards_payment_fields', $this->id);
277 277
 
278 278
 		echo '</div>';
279 279
 
@@ -288,12 +288,12 @@  discard block
 block discarded – undo
288 288
 	 */
289 289
 	public function elements_form() {
290 290
 		?>
291
-		<fieldset id="wc-<?php echo esc_attr( $this->id ); ?>-cc-form" class="wc-credit-card-form wc-payment-form" style="background:transparent;">
292
-			<?php do_action( 'woocommerce_credit_card_form_start', $this->id ); ?>
291
+		<fieldset id="wc-<?php echo esc_attr($this->id); ?>-cc-form" class="wc-credit-card-form wc-payment-form" style="background:transparent;">
292
+			<?php do_action('woocommerce_credit_card_form_start', $this->id); ?>
293 293
 
294
-			<?php if ( $this->inline_cc_form ) { ?>
294
+			<?php if ($this->inline_cc_form) { ?>
295 295
 				<label for="card-element">
296
-					<?php esc_html_e( 'Credit or debit card', 'woocommerce-gateway-stripe' ); ?>
296
+					<?php esc_html_e('Credit or debit card', 'woocommerce-gateway-stripe'); ?>
297 297
 				</label>
298 298
 
299 299
 				<div id="stripe-card-element" class="wc-stripe-elements-field">
@@ -301,7 +301,7 @@  discard block
 block discarded – undo
301 301
 				</div>
302 302
 			<?php } else { ?>
303 303
 				<div class="form-row form-row-wide">
304
-					<label for="stripe-card-element"><?php esc_html_e( 'Card Number', 'woocommerce-gateway-stripe' ); ?> <span class="required">*</span></label>
304
+					<label for="stripe-card-element"><?php esc_html_e('Card Number', 'woocommerce-gateway-stripe'); ?> <span class="required">*</span></label>
305 305
 					<div class="stripe-card-group">
306 306
 						<div id="stripe-card-element" class="wc-stripe-elements-field">
307 307
 						<!-- a Stripe Element will be inserted here. -->
@@ -312,7 +312,7 @@  discard block
 block discarded – undo
312 312
 				</div>
313 313
 
314 314
 				<div class="form-row form-row-first">
315
-					<label for="stripe-exp-element"><?php esc_html_e( 'Expiry Date', 'woocommerce-gateway-stripe' ); ?> <span class="required">*</span></label>
315
+					<label for="stripe-exp-element"><?php esc_html_e('Expiry Date', 'woocommerce-gateway-stripe'); ?> <span class="required">*</span></label>
316 316
 
317 317
 					<div id="stripe-exp-element" class="wc-stripe-elements-field">
318 318
 					<!-- a Stripe Element will be inserted here. -->
@@ -320,7 +320,7 @@  discard block
 block discarded – undo
320 320
 				</div>
321 321
 
322 322
 				<div class="form-row form-row-last">
323
-					<label for="stripe-cvc-element"><?php esc_html_e( 'Card Code (CVC)', 'woocommerce-gateway-stripe' ); ?> <span class="required">*</span></label>
323
+					<label for="stripe-cvc-element"><?php esc_html_e('Card Code (CVC)', 'woocommerce-gateway-stripe'); ?> <span class="required">*</span></label>
324 324
 				<div id="stripe-cvc-element" class="wc-stripe-elements-field">
325 325
 				<!-- a Stripe Element will be inserted here. -->
326 326
 				</div>
@@ -331,7 +331,7 @@  discard block
 block discarded – undo
331 331
 			<!-- Used to display form errors -->
332 332
 			<div class="stripe-source-errors" role="alert"></div>
333 333
 			<br />
334
-			<?php do_action( 'woocommerce_credit_card_form_end', $this->id ); ?>
334
+			<?php do_action('woocommerce_credit_card_form_end', $this->id); ?>
335 335
 			<div class="clear"></div>
336 336
 		</fieldset>
337 337
 		<?php
@@ -344,13 +344,13 @@  discard block
 block discarded – undo
344 344
 	 * @version 3.1.0
345 345
 	 */
346 346
 	public function admin_scripts() {
347
-		if ( 'woocommerce_page_wc-settings' !== get_current_screen()->id ) {
347
+		if ('woocommerce_page_wc-settings' !== get_current_screen()->id) {
348 348
 			return;
349 349
 		}
350 350
 
351
-		$suffix = defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG ? '' : '.min';
351
+		$suffix = defined('SCRIPT_DEBUG') && SCRIPT_DEBUG ? '' : '.min';
352 352
 
353
-		wp_enqueue_script( 'woocommerce_stripe_admin', plugins_url( 'assets/js/stripe-admin' . $suffix . '.js', WC_STRIPE_MAIN_FILE ), array(), WC_STRIPE_VERSION, true );
353
+		wp_enqueue_script('woocommerce_stripe_admin', plugins_url('assets/js/stripe-admin' . $suffix . '.js', WC_STRIPE_MAIN_FILE), array(), WC_STRIPE_VERSION, true);
354 354
 	}
355 355
 
356 356
 	/**
@@ -367,54 +367,54 @@  discard block
 block discarded – undo
367 367
 			! is_product()
368 368
 			&& ! is_cart()
369 369
 			&& ! is_checkout()
370
-			&& ! isset( $_GET['pay_for_order'] ) // wpcs: csrf ok.
370
+			&& ! isset($_GET['pay_for_order']) // wpcs: csrf ok.
371 371
 			&& ! is_add_payment_method_page()
372
-			&& ! isset( $_GET['change_payment_method'] ) // wpcs: csrf ok.
373
-			&& ! ( ! empty( get_query_var( 'view-subscription' ) ) && is_callable( 'WCS_Early_Renewal_Manager::is_early_renewal_via_modal_enabled' ) && WCS_Early_Renewal_Manager::is_early_renewal_via_modal_enabled() )
374
-			|| ( is_order_received_page() )
372
+			&& ! isset($_GET['change_payment_method']) // wpcs: csrf ok.
373
+			&& ! ( ! empty(get_query_var('view-subscription')) && is_callable('WCS_Early_Renewal_Manager::is_early_renewal_via_modal_enabled') && WCS_Early_Renewal_Manager::is_early_renewal_via_modal_enabled())
374
+			|| (is_order_received_page())
375 375
 		) {
376 376
 			return;
377 377
 		}
378 378
 
379 379
 		// If Stripe is not enabled bail.
380
-		if ( 'no' === $this->enabled ) {
380
+		if ('no' === $this->enabled) {
381 381
 			return;
382 382
 		}
383 383
 
384 384
 		// If keys are not set bail.
385
-		if ( ! $this->are_keys_set() ) {
386
-			WC_Stripe_Logger::log( 'Keys are not set correctly.' );
385
+		if ( ! $this->are_keys_set()) {
386
+			WC_Stripe_Logger::log('Keys are not set correctly.');
387 387
 			return;
388 388
 		}
389 389
 
390 390
 		// If no SSL bail.
391
-		if ( ! $this->testmode && ! is_ssl() ) {
392
-			WC_Stripe_Logger::log( 'Stripe live mode requires SSL.' );
391
+		if ( ! $this->testmode && ! is_ssl()) {
392
+			WC_Stripe_Logger::log('Stripe live mode requires SSL.');
393 393
 			return;
394 394
 		}
395 395
 
396 396
 		$current_theme = wp_get_theme();
397 397
 
398
-		$suffix = defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG ? '' : '.min';
398
+		$suffix = defined('SCRIPT_DEBUG') && SCRIPT_DEBUG ? '' : '.min';
399 399
 
400
-		wp_register_style( 'stripe_styles', plugins_url( 'assets/css/stripe-styles.css', WC_STRIPE_MAIN_FILE ), array(), WC_STRIPE_VERSION );
401
-		wp_enqueue_style( 'stripe_styles' );
400
+		wp_register_style('stripe_styles', plugins_url('assets/css/stripe-styles.css', WC_STRIPE_MAIN_FILE), array(), WC_STRIPE_VERSION);
401
+		wp_enqueue_style('stripe_styles');
402 402
 
403
-		wp_register_script( 'stripe', 'https://js.stripe.com/v3/', '', '3.0', true );
404
-		wp_register_script( 'woocommerce_stripe', plugins_url( 'assets/js/stripe' . $suffix . '.js', WC_STRIPE_MAIN_FILE ), array( 'jquery-payment', 'stripe' ), WC_STRIPE_VERSION, true );
403
+		wp_register_script('stripe', 'https://js.stripe.com/v3/', '', '3.0', true);
404
+		wp_register_script('woocommerce_stripe', plugins_url('assets/js/stripe' . $suffix . '.js', WC_STRIPE_MAIN_FILE), array('jquery-payment', 'stripe'), WC_STRIPE_VERSION, true);
405 405
 
406 406
 		$stripe_params = array(
407 407
 			'key'                  => $this->publishable_key,
408
-			'i18n_terms'           => __( 'Please accept the terms and conditions first', 'woocommerce-gateway-stripe' ),
409
-			'i18n_required_fields' => __( 'Please fill in required checkout fields first', 'woocommerce-gateway-stripe' ),
408
+			'i18n_terms'           => __('Please accept the terms and conditions first', 'woocommerce-gateway-stripe'),
409
+			'i18n_required_fields' => __('Please fill in required checkout fields first', 'woocommerce-gateway-stripe'),
410 410
 		);
411 411
 
412 412
 		// If we're on the pay page we need to pass stripe.js the address of the order.
413
-		if ( isset( $_GET['pay_for_order'] ) && 'true' === $_GET['pay_for_order'] ) { // wpcs: csrf ok.
414
-			$order_id = wc_clean( $wp->query_vars['order-pay'] ); // wpcs: csrf ok, sanitization ok, xss ok.
415
-			$order    = wc_get_order( $order_id );
413
+		if (isset($_GET['pay_for_order']) && 'true' === $_GET['pay_for_order']) { // wpcs: csrf ok.
414
+			$order_id = wc_clean($wp->query_vars['order-pay']); // wpcs: csrf ok, sanitization ok, xss ok.
415
+			$order    = wc_get_order($order_id);
416 416
 
417
-			if ( is_a( $order, 'WC_Order' ) ) {
417
+			if (is_a($order, 'WC_Order')) {
418 418
 				$stripe_params['billing_first_name'] = $order->get_billing_first_name();
419 419
 				$stripe_params['billing_last_name']  = $order->get_billing_last_name();
420 420
 				$stripe_params['billing_address_1']  = $order->get_billing_address_1();
@@ -429,40 +429,40 @@  discard block
 block discarded – undo
429 429
 		$sepa_elements_options = apply_filters(
430 430
 			'wc_stripe_sepa_elements_options',
431 431
 			array(
432
-				'supportedCountries' => array( 'SEPA' ),
432
+				'supportedCountries' => array('SEPA'),
433 433
 				'placeholderCountry' => WC()->countries->get_base_country(),
434
-				'style'              => array( 'base' => array( 'fontSize' => '15px' ) ),
434
+				'style'              => array('base' => array('fontSize' => '15px')),
435 435
 			)
436 436
 		);
437 437
 
438
-		$stripe_params['no_prepaid_card_msg']       = __( 'Sorry, we\'re not accepting prepaid cards at this time. Your credit card has not been charged. Please try with alternative payment method.', 'woocommerce-gateway-stripe' );
439
-		$stripe_params['no_sepa_owner_msg']         = __( 'Please enter your IBAN account name.', 'woocommerce-gateway-stripe' );
440
-		$stripe_params['no_sepa_iban_msg']          = __( 'Please enter your IBAN account number.', 'woocommerce-gateway-stripe' );
441
-		$stripe_params['payment_intent_error']      = __( 'We couldn\'t initiate the payment. Please try again.', 'woocommerce-gateway-stripe' );
442
-		$stripe_params['sepa_mandate_notification'] = apply_filters( 'wc_stripe_sepa_mandate_notification', 'email' );
443
-		$stripe_params['allow_prepaid_card']        = apply_filters( 'wc_stripe_allow_prepaid_card', true ) ? 'yes' : 'no';
438
+		$stripe_params['no_prepaid_card_msg']       = __('Sorry, we\'re not accepting prepaid cards at this time. Your credit card has not been charged. Please try with alternative payment method.', 'woocommerce-gateway-stripe');
439
+		$stripe_params['no_sepa_owner_msg']         = __('Please enter your IBAN account name.', 'woocommerce-gateway-stripe');
440
+		$stripe_params['no_sepa_iban_msg']          = __('Please enter your IBAN account number.', 'woocommerce-gateway-stripe');
441
+		$stripe_params['payment_intent_error']      = __('We couldn\'t initiate the payment. Please try again.', 'woocommerce-gateway-stripe');
442
+		$stripe_params['sepa_mandate_notification'] = apply_filters('wc_stripe_sepa_mandate_notification', 'email');
443
+		$stripe_params['allow_prepaid_card']        = apply_filters('wc_stripe_allow_prepaid_card', true) ? 'yes' : 'no';
444 444
 		$stripe_params['inline_cc_form']            = $this->inline_cc_form ? 'yes' : 'no';
445
-		$stripe_params['is_checkout']               = ( is_checkout() && empty( $_GET['pay_for_order'] ) ) ? 'yes' : 'no'; // wpcs: csrf ok.
445
+		$stripe_params['is_checkout']               = (is_checkout() && empty($_GET['pay_for_order'])) ? 'yes' : 'no'; // wpcs: csrf ok.
446 446
 		$stripe_params['return_url']                = $this->get_stripe_return_url();
447
-		$stripe_params['ajaxurl']                   = WC_AJAX::get_endpoint( '%%endpoint%%' );
448
-		$stripe_params['stripe_nonce']              = wp_create_nonce( '_wc_stripe_nonce' );
447
+		$stripe_params['ajaxurl']                   = WC_AJAX::get_endpoint('%%endpoint%%');
448
+		$stripe_params['stripe_nonce']              = wp_create_nonce('_wc_stripe_nonce');
449 449
 		$stripe_params['statement_descriptor']      = $this->statement_descriptor;
450
-		$stripe_params['elements_options']          = apply_filters( 'wc_stripe_elements_options', array() );
450
+		$stripe_params['elements_options']          = apply_filters('wc_stripe_elements_options', array());
451 451
 		$stripe_params['sepa_elements_options']     = $sepa_elements_options;
452
-		$stripe_params['invalid_owner_name']        = __( 'Billing First Name and Last Name are required.', 'woocommerce-gateway-stripe' );
453
-		$stripe_params['is_change_payment_page']    = isset( $_GET['change_payment_method'] ) ? 'yes' : 'no'; // wpcs: csrf ok.
454
-		$stripe_params['is_add_payment_page']       = is_wc_endpoint_url( 'add-payment-method' ) ? 'yes' : 'no';
455
-		$stripe_params['is_pay_for_order_page']     = is_wc_endpoint_url( 'order-pay' ) ? 'yes' : 'no';
456
-		$stripe_params['elements_styling']          = apply_filters( 'wc_stripe_elements_styling', false );
457
-		$stripe_params['elements_classes']          = apply_filters( 'wc_stripe_elements_classes', false );
452
+		$stripe_params['invalid_owner_name']        = __('Billing First Name and Last Name are required.', 'woocommerce-gateway-stripe');
453
+		$stripe_params['is_change_payment_page']    = isset($_GET['change_payment_method']) ? 'yes' : 'no'; // wpcs: csrf ok.
454
+		$stripe_params['is_add_payment_page']       = is_wc_endpoint_url('add-payment-method') ? 'yes' : 'no';
455
+		$stripe_params['is_pay_for_order_page']     = is_wc_endpoint_url('order-pay') ? 'yes' : 'no';
456
+		$stripe_params['elements_styling']          = apply_filters('wc_stripe_elements_styling', false);
457
+		$stripe_params['elements_classes']          = apply_filters('wc_stripe_elements_classes', false);
458 458
 
459 459
 		// Merge localized messages to be use in JS.
460
-		$stripe_params = array_merge( $stripe_params, WC_Stripe_Helper::get_localized_messages() );
460
+		$stripe_params = array_merge($stripe_params, WC_Stripe_Helper::get_localized_messages());
461 461
 
462
-		wp_localize_script( 'woocommerce_stripe', 'wc_stripe_params', apply_filters( 'wc_stripe_params', $stripe_params ) );
462
+		wp_localize_script('woocommerce_stripe', 'wc_stripe_params', apply_filters('wc_stripe_params', $stripe_params));
463 463
 
464 464
 		$this->tokenization_script();
465
-		wp_enqueue_script( 'woocommerce_stripe' );
465
+		wp_enqueue_script('woocommerce_stripe');
466 466
 	}
467 467
 
468 468
 	/**
@@ -473,14 +473,14 @@  discard block
 block discarded – undo
473 473
 	 * @param object $prepared_source The object with source details.
474 474
 	 * @throws WC_Stripe_Exception An exception if the card is prepaid, but prepaid cards are not allowed.
475 475
 	 */
476
-	public function maybe_disallow_prepaid_card( $prepared_source ) {
476
+	public function maybe_disallow_prepaid_card($prepared_source) {
477 477
 		// Check if we don't allow prepaid credit cards.
478
-		if ( apply_filters( 'wc_stripe_allow_prepaid_card', true ) || ! $this->is_prepaid_card( $prepared_source->source_object ) ) {
478
+		if (apply_filters('wc_stripe_allow_prepaid_card', true) || ! $this->is_prepaid_card($prepared_source->source_object)) {
479 479
 			return;
480 480
 		}
481 481
 
482
-		$localized_message = __( 'Sorry, we\'re not accepting prepaid cards at this time. Your credit card has not been charged. Please try with alternative payment method.', 'woocommerce-gateway-stripe' );
483
-		throw new WC_Stripe_Exception( print_r( $prepared_source->source_object, true ), $localized_message );
482
+		$localized_message = __('Sorry, we\'re not accepting prepaid cards at this time. Your credit card has not been charged. Please try with alternative payment method.', 'woocommerce-gateway-stripe');
483
+		throw new WC_Stripe_Exception(print_r($prepared_source->source_object, true), $localized_message);
484 484
 	}
485 485
 
486 486
 	/**
@@ -490,10 +490,10 @@  discard block
 block discarded – undo
490 490
 	 * @param  object $prepared_source The source that should be verified.
491 491
 	 * @throws WC_Stripe_Exception     An exception if the source ID is missing.
492 492
 	 */
493
-	public function check_source( $prepared_source ) {
494
-		if ( empty( $prepared_source->source ) ) {
495
-			$localized_message = __( 'Payment processing failed. Please retry.', 'woocommerce-gateway-stripe' );
496
-			throw new WC_Stripe_Exception( print_r( $prepared_source, true ), $localized_message );
493
+	public function check_source($prepared_source) {
494
+		if (empty($prepared_source->source)) {
495
+			$localized_message = __('Payment processing failed. Please retry.', 'woocommerce-gateway-stripe');
496
+			throw new WC_Stripe_Exception(print_r($prepared_source, true), $localized_message);
497 497
 		}
498 498
 	}
499 499
 
@@ -505,13 +505,13 @@  discard block
 block discarded – undo
505 505
 	 * @param WC_Order $order The order those payment is being processed.
506 506
 	 * @return bool           A flag that indicates that the customer does not exist and should be removed.
507 507
 	 */
508
-	public function maybe_remove_non_existent_customer( $error, $order ) {
509
-		if ( ! $this->is_no_such_customer_error( $error ) ) {
508
+	public function maybe_remove_non_existent_customer($error, $order) {
509
+		if ( ! $this->is_no_such_customer_error($error)) {
510 510
 			return false;
511 511
 		}
512 512
 
513
-		delete_user_option( $order->get_customer_id(), '_stripe_customer_id' );
514
-		$order->delete_meta_data( '_stripe_customer_id' );
513
+		delete_user_option($order->get_customer_id(), '_stripe_customer_id');
514
+		$order->delete_meta_data('_stripe_customer_id');
515 515
 		$order->save();
516 516
 
517 517
 		return true;
@@ -526,15 +526,15 @@  discard block
 block discarded – undo
526 526
 	 * @param boolean  $force_save_source Whether the payment source must be saved, like when dealing with a Subscription setup.
527 527
 	 * @return array                      Redirection data for `process_payment`.
528 528
 	 */
529
-	public function complete_free_order( $order, $prepared_source, $force_save_source ) {
530
-		if ( $force_save_source ) {
531
-			$intent_secret = $this->setup_intent( $order, $prepared_source );
529
+	public function complete_free_order($order, $prepared_source, $force_save_source) {
530
+		if ($force_save_source) {
531
+			$intent_secret = $this->setup_intent($order, $prepared_source);
532 532
 
533
-			if ( ! empty( $intent_secret ) ) {
533
+			if ( ! empty($intent_secret)) {
534 534
 				// `get_return_url()` must be called immediately before returning a value.
535 535
 				return array(
536 536
 					'result'              => 'success',
537
-					'redirect'            => $this->get_return_url( $order ),
537
+					'redirect'            => $this->get_return_url($order),
538 538
 					'setup_intent_secret' => $intent_secret,
539 539
 				);
540 540
 			}
@@ -548,7 +548,7 @@  discard block
 block discarded – undo
548 548
 		// Return thank you page redirect.
549 549
 		return array(
550 550
 			'result'   => 'success',
551
-			'redirect' => $this->get_return_url( $order ),
551
+			'redirect' => $this->get_return_url($order),
552 552
 		);
553 553
 	}
554 554
 
@@ -566,82 +566,82 @@  discard block
 block discarded – undo
566 566
 	 * @throws Exception If payment will not be accepted.
567 567
 	 * @return array|void
568 568
 	 */
569
-	public function process_payment( $order_id, $retry = true, $force_save_source = false, $previous_error = false, $use_order_source = false ) {
569
+	public function process_payment($order_id, $retry = true, $force_save_source = false, $previous_error = false, $use_order_source = false) {
570 570
 		try {
571
-			$order = wc_get_order( $order_id );
571
+			$order = wc_get_order($order_id);
572 572
 
573 573
 			// ToDo: `process_pre_order` saves the source to the order for a later payment.
574 574
 			// This might not work well with PaymentIntents.
575
-			if ( $this->maybe_process_pre_orders( $order_id ) ) {
576
-				return $this->pre_orders->process_pre_order( $order_id );
575
+			if ($this->maybe_process_pre_orders($order_id)) {
576
+				return $this->pre_orders->process_pre_order($order_id);
577 577
 			}
578 578
 
579 579
 			// Check whether there is an existing intent.
580
-			$intent = $this->get_intent_from_order( $order );
581
-			if ( isset( $intent->object ) && 'setup_intent' === $intent->object ) {
580
+			$intent = $this->get_intent_from_order($order);
581
+			if (isset($intent->object) && 'setup_intent' === $intent->object) {
582 582
 				$intent = false; // This function can only deal with *payment* intents
583 583
 			}
584 584
 
585 585
 			$stripe_customer_id = null;
586
-			if ( $intent && ! empty( $intent->customer ) ) {
586
+			if ($intent && ! empty($intent->customer)) {
587 587
 				$stripe_customer_id = $intent->customer;
588 588
 			}
589 589
 
590 590
 			// For some payments the source should already be present in the order.
591
-			if ( $use_order_source ) {
592
-				$prepared_source = $this->prepare_order_source( $order );
591
+			if ($use_order_source) {
592
+				$prepared_source = $this->prepare_order_source($order);
593 593
 			} else {
594
-				$prepared_source = $this->prepare_source( get_current_user_id(), $force_save_source, $stripe_customer_id );
594
+				$prepared_source = $this->prepare_source(get_current_user_id(), $force_save_source, $stripe_customer_id);
595 595
 			}
596 596
 
597
-			$this->maybe_disallow_prepaid_card( $prepared_source );
598
-			$this->check_source( $prepared_source );
599
-			$this->save_source_to_order( $order, $prepared_source );
597
+			$this->maybe_disallow_prepaid_card($prepared_source);
598
+			$this->check_source($prepared_source);
599
+			$this->save_source_to_order($order, $prepared_source);
600 600
 
601
-			if ( 0 >= $order->get_total() ) {
602
-				return $this->complete_free_order( $order, $prepared_source, $force_save_source );
601
+			if (0 >= $order->get_total()) {
602
+				return $this->complete_free_order($order, $prepared_source, $force_save_source);
603 603
 			}
604 604
 
605 605
 			// This will throw exception if not valid.
606
-			$this->validate_minimum_order_amount( $order );
606
+			$this->validate_minimum_order_amount($order);
607 607
 
608
-			WC_Stripe_Logger::log( "Info: Begin processing payment for order $order_id for the amount of {$order->get_total()}" );
608
+			WC_Stripe_Logger::log("Info: Begin processing payment for order $order_id for the amount of {$order->get_total()}");
609 609
 
610
-			if ( $intent ) {
611
-				$intent = $this->update_existing_intent( $intent, $order, $prepared_source );
610
+			if ($intent) {
611
+				$intent = $this->update_existing_intent($intent, $order, $prepared_source);
612 612
 			} else {
613
-				$should_save_source = $this->should_save_payment_method( $prepared_source->source_object, new WC_Stripe_Customer( get_current_user_id() ), $force_save_source );
614
-				$intent             = $this->create_intent( $order, $prepared_source, $should_save_source );
613
+				$should_save_source = $this->should_save_payment_method($prepared_source->source_object, new WC_Stripe_Customer(get_current_user_id()), $force_save_source);
614
+				$intent             = $this->create_intent($order, $prepared_source, $should_save_source);
615 615
 			}
616 616
 
617 617
 			// Confirm the intent after locking the order to make sure webhooks will not interfere.
618
-			if ( empty( $intent->error ) ) {
619
-				$this->lock_order_payment( $order, $intent );
620
-				$intent = $this->confirm_intent( $intent, $order, $prepared_source );
618
+			if (empty($intent->error)) {
619
+				$this->lock_order_payment($order, $intent);
620
+				$intent = $this->confirm_intent($intent, $order, $prepared_source);
621 621
 			}
622 622
 
623
-			if ( ! empty( $intent->error ) ) {
624
-				$this->maybe_remove_non_existent_customer( $intent->error, $order );
623
+			if ( ! empty($intent->error)) {
624
+				$this->maybe_remove_non_existent_customer($intent->error, $order);
625 625
 
626 626
 				// We want to retry.
627
-				if ( $this->is_retryable_error( $intent->error ) ) {
628
-					return $this->retry_after_error( $intent, $order, $retry, $force_save_source, $previous_error, $use_order_source );
627
+				if ($this->is_retryable_error($intent->error)) {
628
+					return $this->retry_after_error($intent, $order, $retry, $force_save_source, $previous_error, $use_order_source);
629 629
 				}
630 630
 
631
-				$this->unlock_order_payment( $order );
632
-				$this->throw_localized_message( $intent, $order );
631
+				$this->unlock_order_payment($order);
632
+				$this->throw_localized_message($intent, $order);
633 633
 			}
634 634
 
635
-			if ( ! empty( $intent ) ) {
635
+			if ( ! empty($intent)) {
636 636
 				// Use the last charge within the intent to proceed.
637
-				$response = end( $intent->charges->data );
637
+				$response = end($intent->charges->data);
638 638
 
639 639
 				// If the intent requires a 3DS flow, redirect to it.
640
-				if ( 'requires_action' === $intent->status ) {
641
-					$this->unlock_order_payment( $order );
640
+				if ('requires_action' === $intent->status) {
641
+					$this->unlock_order_payment($order);
642 642
 
643
-					if ( is_wc_endpoint_url( 'order-pay' ) ) {
644
-						$redirect_url = add_query_arg( 'wc-stripe-confirmation', 1, $order->get_checkout_payment_url( false ) );
643
+					if (is_wc_endpoint_url('order-pay')) {
644
+						$redirect_url = add_query_arg('wc-stripe-confirmation', 1, $order->get_checkout_payment_url(false));
645 645
 
646 646
 						return array(
647 647
 							'result'   => 'success',
@@ -656,7 +656,7 @@  discard block
 block discarded – undo
656 656
 
657 657
 						return array(
658 658
 							'result'                => 'success',
659
-							'redirect'              => $this->get_return_url( $order ),
659
+							'redirect'              => $this->get_return_url($order),
660 660
 							'payment_intent_secret' => $intent->client_secret,
661 661
 						);
662 662
 					}
@@ -664,30 +664,30 @@  discard block
 block discarded – undo
664 664
 			}
665 665
 
666 666
 			// Process valid response.
667
-			$this->process_response( $response, $order );
667
+			$this->process_response($response, $order);
668 668
 
669 669
 			// Remove cart.
670
-			if ( isset( WC()->cart ) ) {
670
+			if (isset(WC()->cart)) {
671 671
 				WC()->cart->empty_cart();
672 672
 			}
673 673
 
674 674
 			// Unlock the order.
675
-			$this->unlock_order_payment( $order );
675
+			$this->unlock_order_payment($order);
676 676
 
677 677
 			// Return thank you page redirect.
678 678
 			return array(
679 679
 				'result'   => 'success',
680
-				'redirect' => $this->get_return_url( $order ),
680
+				'redirect' => $this->get_return_url($order),
681 681
 			);
682 682
 
683
-		} catch ( WC_Stripe_Exception $e ) {
684
-			wc_add_notice( $e->getLocalizedMessage(), 'error' );
685
-			WC_Stripe_Logger::log( 'Error: ' . $e->getMessage() );
683
+		} catch (WC_Stripe_Exception $e) {
684
+			wc_add_notice($e->getLocalizedMessage(), 'error');
685
+			WC_Stripe_Logger::log('Error: ' . $e->getMessage());
686 686
 
687
-			do_action( 'wc_gateway_stripe_process_payment_error', $e, $order );
687
+			do_action('wc_gateway_stripe_process_payment_error', $e, $order);
688 688
 
689 689
 			/* translators: error message */
690
-			$order->update_status( 'failed' );
690
+			$order->update_status('failed');
691 691
 
692 692
 			return array(
693 693
 				'result'   => 'fail',
@@ -703,17 +703,17 @@  discard block
 block discarded – undo
703 703
 	 *
704 704
 	 * @param int $order_id The ID of the order.
705 705
 	 */
706
-	public function display_order_fee( $order_id ) {
707
-		if ( apply_filters( 'wc_stripe_hide_display_order_fee', false, $order_id ) ) {
706
+	public function display_order_fee($order_id) {
707
+		if (apply_filters('wc_stripe_hide_display_order_fee', false, $order_id)) {
708 708
 			return;
709 709
 		}
710 710
 
711
-		$order = wc_get_order( $order_id );
711
+		$order = wc_get_order($order_id);
712 712
 
713
-		$fee      = WC_Stripe_Helper::get_stripe_fee( $order );
714
-		$currency = WC_Stripe_Helper::get_stripe_currency( $order );
713
+		$fee      = WC_Stripe_Helper::get_stripe_fee($order);
714
+		$currency = WC_Stripe_Helper::get_stripe_currency($order);
715 715
 
716
-		if ( ! $fee || ! $currency ) {
716
+		if ( ! $fee || ! $currency) {
717 717
 			return;
718 718
 		}
719 719
 
@@ -721,12 +721,12 @@  discard block
 block discarded – undo
721 721
 
722 722
 		<tr>
723 723
 			<td class="label stripe-fee">
724
-				<?php echo wc_help_tip( __( 'This represents the fee Stripe collects for the transaction.', 'woocommerce-gateway-stripe' ) ); // wpcs: xss ok. ?>
725
-				<?php esc_html_e( 'Stripe Fee:', 'woocommerce-gateway-stripe' ); ?>
724
+				<?php echo wc_help_tip(__('This represents the fee Stripe collects for the transaction.', 'woocommerce-gateway-stripe')); // wpcs: xss ok. ?>
725
+				<?php esc_html_e('Stripe Fee:', 'woocommerce-gateway-stripe'); ?>
726 726
 			</td>
727 727
 			<td width="1%"></td>
728 728
 			<td class="total">
729
-				-&nbsp;<?php echo wc_price( $fee, array( 'currency' => $currency ) ); // wpcs: xss ok. ?>
729
+				-&nbsp;<?php echo wc_price($fee, array('currency' => $currency)); // wpcs: xss ok. ?>
730 730
 			</td>
731 731
 		</tr>
732 732
 
@@ -740,17 +740,17 @@  discard block
 block discarded – undo
740 740
 	 *
741 741
 	 * @param int $order_id The ID of the order.
742 742
 	 */
743
-	public function display_order_payout( $order_id ) {
744
-		if ( apply_filters( 'wc_stripe_hide_display_order_payout', false, $order_id ) ) {
743
+	public function display_order_payout($order_id) {
744
+		if (apply_filters('wc_stripe_hide_display_order_payout', false, $order_id)) {
745 745
 			return;
746 746
 		}
747 747
 
748
-		$order = wc_get_order( $order_id );
748
+		$order = wc_get_order($order_id);
749 749
 
750
-		$net      = WC_Stripe_Helper::get_stripe_net( $order );
751
-		$currency = WC_Stripe_Helper::get_stripe_currency( $order );
750
+		$net      = WC_Stripe_Helper::get_stripe_net($order);
751
+		$currency = WC_Stripe_Helper::get_stripe_currency($order);
752 752
 
753
-		if ( ! $net || ! $currency ) {
753
+		if ( ! $net || ! $currency) {
754 754
 			return;
755 755
 		}
756 756
 
@@ -758,12 +758,12 @@  discard block
 block discarded – undo
758 758
 
759 759
 		<tr>
760 760
 			<td class="label stripe-payout">
761
-				<?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' ) ); // wpcs: xss ok. ?>
762
-				<?php esc_html_e( 'Stripe Payout:', 'woocommerce-gateway-stripe' ); ?>
761
+				<?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')); // wpcs: xss ok. ?>
762
+				<?php esc_html_e('Stripe Payout:', 'woocommerce-gateway-stripe'); ?>
763 763
 			</td>
764 764
 			<td width="1%"></td>
765 765
 			<td class="total">
766
-				<?php echo wc_price( $net, array( 'currency' => $currency ) ); // wpcs: xss ok. ?>
766
+				<?php echo wc_price($net, array('currency' => $currency)); // wpcs: xss ok. ?>
767 767
 			</td>
768 768
 		</tr>
769 769
 
@@ -779,13 +779,13 @@  discard block
 block discarded – undo
779 779
 	 *
780 780
 	 * @return string The localized error message.
781 781
 	 */
782
-	public function get_localized_error_message_from_response( $response ) {
782
+	public function get_localized_error_message_from_response($response) {
783 783
 		$localized_messages = WC_Stripe_Helper::get_localized_messages();
784 784
 
785
-		if ( 'card_error' === $response->error->type ) {
786
-			$localized_message = isset( $localized_messages[ $response->error->code ] ) ? $localized_messages[ $response->error->code ] : $response->error->message;
785
+		if ('card_error' === $response->error->type) {
786
+			$localized_message = isset($localized_messages[$response->error->code]) ? $localized_messages[$response->error->code] : $response->error->message;
787 787
 		} else {
788
-			$localized_message = isset( $localized_messages[ $response->error->type ] ) ? $localized_messages[ $response->error->type ] : $response->error->message;
788
+			$localized_message = isset($localized_messages[$response->error->type]) ? $localized_messages[$response->error->type] : $response->error->message;
789 789
 		}
790 790
 
791 791
 		return $localized_message;
@@ -799,12 +799,12 @@  discard block
 block discarded – undo
799 799
 	 * @param  WC_Order $order     The order to add a note to.
800 800
 	 * @throws WC_Stripe_Exception An exception with the right message.
801 801
 	 */
802
-	public function throw_localized_message( $response, $order ) {
803
-		$localized_message = $this->get_localized_error_message_from_response( $response );
802
+	public function throw_localized_message($response, $order) {
803
+		$localized_message = $this->get_localized_error_message_from_response($response);
804 804
 
805
-		$order->add_order_note( $localized_message );
805
+		$order->add_order_note($localized_message);
806 806
 
807
-		throw new WC_Stripe_Exception( print_r( $response, true ), $localized_message );
807
+		throw new WC_Stripe_Exception(print_r($response, true), $localized_message);
808 808
 	}
809 809
 
810 810
 	/**
@@ -820,22 +820,22 @@  discard block
 block discarded – undo
820 820
 	 * @throws WC_Stripe_Exception        If the payment is not accepted.
821 821
 	 * @return array|void
822 822
 	 */
823
-	public function retry_after_error( $response, $order, $retry, $force_save_source, $previous_error, $use_order_source ) {
824
-		if ( ! $retry ) {
825
-			$localized_message = __( 'Sorry, we are unable to process your payment at this time. Please retry later.', 'woocommerce-gateway-stripe' );
826
-			$order->add_order_note( $localized_message );
827
-			throw new WC_Stripe_Exception( print_r( $response, true ), $localized_message ); // phpcs:ignore WordPress.PHP.DevelopmentFunctions.
823
+	public function retry_after_error($response, $order, $retry, $force_save_source, $previous_error, $use_order_source) {
824
+		if ( ! $retry) {
825
+			$localized_message = __('Sorry, we are unable to process your payment at this time. Please retry later.', 'woocommerce-gateway-stripe');
826
+			$order->add_order_note($localized_message);
827
+			throw new WC_Stripe_Exception(print_r($response, true), $localized_message); // phpcs:ignore WordPress.PHP.DevelopmentFunctions.
828 828
 		}
829 829
 
830 830
 		// Don't do anymore retries after this.
831
-		if ( 5 <= $this->retry_interval ) {
832
-			return $this->process_payment( $order->get_id(), false, $force_save_source, $response->error, $previous_error );
831
+		if (5 <= $this->retry_interval) {
832
+			return $this->process_payment($order->get_id(), false, $force_save_source, $response->error, $previous_error);
833 833
 		}
834 834
 
835
-		sleep( $this->retry_interval );
835
+		sleep($this->retry_interval);
836 836
 		$this->retry_interval++;
837 837
 
838
-		return $this->process_payment( $order->get_id(), true, $force_save_source, $response->error, $previous_error, $use_order_source );
838
+		return $this->process_payment($order->get_id(), true, $force_save_source, $response->error, $previous_error, $use_order_source);
839 839
 	}
840 840
 
841 841
 	/**
@@ -846,23 +846,23 @@  discard block
 block discarded – undo
846 846
 	 * @param WC_Payment_Gateway[] $gateways A list of all available gateways.
847 847
 	 * @return WC_Payment_Gateway[]          Either the same list or an empty one in the right conditions.
848 848
 	 */
849
-	public function prepare_order_pay_page( $gateways ) {
850
-		if ( ! is_wc_endpoint_url( 'order-pay' ) || ! isset( $_GET['wc-stripe-confirmation'] ) ) { // wpcs: csrf ok.
849
+	public function prepare_order_pay_page($gateways) {
850
+		if ( ! is_wc_endpoint_url('order-pay') || ! isset($_GET['wc-stripe-confirmation'])) { // wpcs: csrf ok.
851 851
 			return $gateways;
852 852
 		}
853 853
 
854 854
 		try {
855 855
 			$this->prepare_intent_for_order_pay_page();
856
-		} catch ( WC_Stripe_Exception $e ) {
856
+		} catch (WC_Stripe_Exception $e) {
857 857
 			// Just show the full order pay page if there was a problem preparing the Payment Intent
858 858
 			return $gateways;
859 859
 		}
860 860
 
861
-		add_filter( 'woocommerce_checkout_show_terms', '__return_false' );
862
-		add_filter( 'woocommerce_pay_order_button_html', '__return_false' );
863
-		add_filter( 'woocommerce_available_payment_gateways', '__return_empty_array' );
864
-		add_filter( 'woocommerce_no_available_payment_methods_message', array( $this, 'change_no_available_methods_message' ) );
865
-		add_action( 'woocommerce_pay_order_after_submit', array( $this, 'render_payment_intent_inputs' ) );
861
+		add_filter('woocommerce_checkout_show_terms', '__return_false');
862
+		add_filter('woocommerce_pay_order_button_html', '__return_false');
863
+		add_filter('woocommerce_available_payment_gateways', '__return_empty_array');
864
+		add_filter('woocommerce_no_available_payment_methods_message', array($this, 'change_no_available_methods_message'));
865
+		add_action('woocommerce_pay_order_after_submit', array($this, 'render_payment_intent_inputs'));
866 866
 
867 867
 		return array();
868 868
 	}
@@ -875,7 +875,7 @@  discard block
 block discarded – undo
875 875
 	 * @return string the new message.
876 876
 	 */
877 877
 	public function change_no_available_methods_message() {
878
-		return wpautop( __( "Almost there!\n\nYour order has already been created, the only thing that still needs to be done is for you to authorize the payment with your bank.", 'woocommerce-gateway-stripe' ) );
878
+		return wpautop(__("Almost there!\n\nYour order has already been created, the only thing that still needs to be done is for you to authorize the payment with your bank.", 'woocommerce-gateway-stripe'));
879 879
 	}
880 880
 
881 881
 	/**
@@ -886,19 +886,19 @@  discard block
 block discarded – undo
886 886
 	 * @throws WC_Stripe_Exception
887 887
 	 * @since 4.3
888 888
 	 */
889
-	public function prepare_intent_for_order_pay_page( $order = null ) {
890
-		if ( ! isset( $order ) || empty( $order ) ) {
891
-			$order = wc_get_order( absint( get_query_var( 'order-pay' ) ) );
889
+	public function prepare_intent_for_order_pay_page($order = null) {
890
+		if ( ! isset($order) || empty($order)) {
891
+			$order = wc_get_order(absint(get_query_var('order-pay')));
892 892
 		}
893
-		$intent = $this->get_intent_from_order( $order );
893
+		$intent = $this->get_intent_from_order($order);
894 894
 
895
-		if ( ! $intent ) {
896
-			throw new WC_Stripe_Exception( 'Payment Intent not found', __( 'Payment Intent not found for order #' . $order->get_id(), 'woocommerce-gateway-stripe' ) );
895
+		if ( ! $intent) {
896
+			throw new WC_Stripe_Exception('Payment Intent not found', __('Payment Intent not found for order #' . $order->get_id(), 'woocommerce-gateway-stripe'));
897 897
 		}
898 898
 
899
-		if ( 'requires_payment_method' === $intent->status && isset( $intent->last_payment_error )
900
-		     && 'authentication_required' === $intent->last_payment_error->code ) {
901
-			$level3_data = $this->get_level3_data_from_order( $order );
899
+		if ('requires_payment_method' === $intent->status && isset($intent->last_payment_error)
900
+		     && 'authentication_required' === $intent->last_payment_error->code) {
901
+			$level3_data = $this->get_level3_data_from_order($order);
902 902
 			$intent      = WC_Stripe_API::request_with_level3_data(
903 903
 				array(
904 904
 					'payment_method' => $intent->last_payment_error->source->id,
@@ -908,8 +908,8 @@  discard block
 block discarded – undo
908 908
 				$order
909 909
 			);
910 910
 
911
-			if ( isset( $intent->error ) ) {
912
-				throw new WC_Stripe_Exception( print_r( $intent, true ), $intent->error->message );
911
+			if (isset($intent->error)) {
912
+				throw new WC_Stripe_Exception(print_r($intent, true), $intent->error->message);
913 913
 			}
914 914
 		}
915 915
 
@@ -924,26 +924,26 @@  discard block
 block discarded – undo
924 924
 	 * @throws WC_Stripe_Exception
925 925
 	 * @since 4.2
926 926
 	 */
927
-	public function render_payment_intent_inputs( $order = null ) {
928
-		if ( ! isset( $order ) || empty( $order ) ) {
929
-			$order = wc_get_order( absint( get_query_var( 'order-pay' ) ) );
927
+	public function render_payment_intent_inputs($order = null) {
928
+		if ( ! isset($order) || empty($order)) {
929
+			$order = wc_get_order(absint(get_query_var('order-pay')));
930 930
 		}
931
-		if ( ! isset( $this->order_pay_intent ) ) {
932
-			$this->prepare_intent_for_order_pay_page( $order );
931
+		if ( ! isset($this->order_pay_intent)) {
932
+			$this->prepare_intent_for_order_pay_page($order);
933 933
 		}
934 934
 
935 935
 		$verification_url = add_query_arg(
936 936
 			array(
937 937
 				'order'            => $order->get_id(),
938
-				'nonce'            => wp_create_nonce( 'wc_stripe_confirm_pi' ),
939
-				'redirect_to'      => rawurlencode( $this->get_return_url( $order ) ),
938
+				'nonce'            => wp_create_nonce('wc_stripe_confirm_pi'),
939
+				'redirect_to'      => rawurlencode($this->get_return_url($order)),
940 940
 				'is_pay_for_order' => true,
941 941
 			),
942
-			WC_AJAX::get_endpoint( 'wc_stripe_verify_intent' )
942
+			WC_AJAX::get_endpoint('wc_stripe_verify_intent')
943 943
 		);
944 944
 
945
-		echo '<input type="hidden" id="stripe-intent-id" value="' . esc_attr( $this->order_pay_intent->client_secret ) . '" />';
946
-		echo '<input type="hidden" id="stripe-intent-return" value="' . esc_attr( $verification_url ) . '" />';
945
+		echo '<input type="hidden" id="stripe-intent-id" value="' . esc_attr($this->order_pay_intent->client_secret) . '" />';
946
+		echo '<input type="hidden" id="stripe-intent-return" value="' . esc_attr($verification_url) . '" />';
947 947
 	}
948 948
 
949 949
 	/**
@@ -953,11 +953,11 @@  discard block
 block discarded – undo
953 953
 	 * @param WC_Payment_Token $token Payment Token.
954 954
 	 * @return string                 Generated payment method HTML
955 955
 	 */
956
-	public function get_saved_payment_method_option_html( $token ) {
957
-		$html          = parent::get_saved_payment_method_option_html( $token );
956
+	public function get_saved_payment_method_option_html($token) {
957
+		$html          = parent::get_saved_payment_method_option_html($token);
958 958
 		$error_wrapper = '<div class="stripe-source-errors" role="alert"></div>';
959 959
 
960
-		return preg_replace( '~</(\w+)>\s*$~', "$error_wrapper</$1>", $html );
960
+		return preg_replace('~</(\w+)>\s*$~', "$error_wrapper</$1>", $html);
961 961
 	}
962 962
 
963 963
 	/**
@@ -967,18 +967,18 @@  discard block
 block discarded – undo
967 967
 	 * @since 4.2.0
968 968
 	 * @param int $order_id The ID that will be used for the thank you page.
969 969
 	 */
970
-	public function check_intent_status_on_order_page( $order_id ) {
971
-		if ( empty( $order_id ) || absint( $order_id ) <= 0 ) {
970
+	public function check_intent_status_on_order_page($order_id) {
971
+		if (empty($order_id) || absint($order_id) <= 0) {
972 972
 			return;
973 973
 		}
974 974
 
975
-		$order = wc_get_order( absint( $order_id ) );
975
+		$order = wc_get_order(absint($order_id));
976 976
 
977
-		if ( ! $order ) {
977
+		if ( ! $order) {
978 978
 			return;
979 979
 		}
980 980
 
981
-		$this->verify_intent_after_checkout( $order );
981
+		$this->verify_intent_after_checkout($order);
982 982
 	}
983 983
 
984 984
 	/**
@@ -992,8 +992,8 @@  discard block
 block discarded – undo
992 992
 	 * @param int   $order_id The ID of the order which is being paid for.
993 993
 	 * @return array
994 994
 	 */
995
-	public function modify_successful_payment_result( $result, $order_id ) {
996
-		if ( ! isset( $result['payment_intent_secret'] ) && ! isset( $result['setup_intent_secret'] ) ) {
995
+	public function modify_successful_payment_result($result, $order_id) {
996
+		if ( ! isset($result['payment_intent_secret']) && ! isset($result['setup_intent_secret'])) {
997 997
 			// Only redirects with intents need to be modified.
998 998
 			return $result;
999 999
 		}
@@ -1002,16 +1002,16 @@  discard block
 block discarded – undo
1002 1002
 		$verification_url = add_query_arg(
1003 1003
 			array(
1004 1004
 				'order'       => $order_id,
1005
-				'nonce'       => wp_create_nonce( 'wc_stripe_confirm_pi' ),
1006
-				'redirect_to' => rawurlencode( $result['redirect'] ),
1005
+				'nonce'       => wp_create_nonce('wc_stripe_confirm_pi'),
1006
+				'redirect_to' => rawurlencode($result['redirect']),
1007 1007
 			),
1008
-			WC_AJAX::get_endpoint( 'wc_stripe_verify_intent' )
1008
+			WC_AJAX::get_endpoint('wc_stripe_verify_intent')
1009 1009
 		);
1010 1010
 
1011
-		if ( isset( $result['payment_intent_secret'] ) ) {
1012
-			$redirect = sprintf( '#confirm-pi-%s:%s', $result['payment_intent_secret'], rawurlencode( $verification_url ) );
1013
-		} else if ( isset( $result['setup_intent_secret'] ) ) {
1014
-			$redirect = sprintf( '#confirm-si-%s:%s', $result['setup_intent_secret'], rawurlencode( $verification_url ) );
1011
+		if (isset($result['payment_intent_secret'])) {
1012
+			$redirect = sprintf('#confirm-pi-%s:%s', $result['payment_intent_secret'], rawurlencode($verification_url));
1013
+		} else if (isset($result['setup_intent_secret'])) {
1014
+			$redirect = sprintf('#confirm-si-%s:%s', $result['setup_intent_secret'], rawurlencode($verification_url));
1015 1015
 		}
1016 1016
 
1017 1017
 		return array(
@@ -1023,8 +1023,8 @@  discard block
 block discarded – undo
1023 1023
 	/**
1024 1024
 	 * Proceed with current request using new login session (to ensure consistent nonce).
1025 1025
 	 */
1026
-	public function set_cookie_on_current_request( $cookie ) {
1027
-		$_COOKIE[ LOGGED_IN_COOKIE ] = $cookie;
1026
+	public function set_cookie_on_current_request($cookie) {
1027
+		$_COOKIE[LOGGED_IN_COOKIE] = $cookie;
1028 1028
 	}
1029 1029
 
1030 1030
 	/**
@@ -1034,48 +1034,48 @@  discard block
 block discarded – undo
1034 1034
 	 * @since 4.2.0
1035 1035
 	 * @param WC_Order $order The order which is in a transitional state.
1036 1036
 	 */
1037
-	public function verify_intent_after_checkout( $order ) {
1037
+	public function verify_intent_after_checkout($order) {
1038 1038
 		$payment_method = $order->get_payment_method();
1039
-		if ( $payment_method !== $this->id ) {
1039
+		if ($payment_method !== $this->id) {
1040 1040
 			// If this is not the payment method, an intent would not be available.
1041 1041
 			return;
1042 1042
 		}
1043 1043
 
1044
-		$intent = $this->get_intent_from_order( $order );
1045
-		if ( ! $intent ) {
1044
+		$intent = $this->get_intent_from_order($order);
1045
+		if ( ! $intent) {
1046 1046
 			// No intent, redirect to the order received page for further actions.
1047 1047
 			return;
1048 1048
 		}
1049 1049
 
1050 1050
 		// A webhook might have modified or locked the order while the intent was retreived. This ensures we are reading the right status.
1051
-		clean_post_cache( $order->get_id() );
1052
-		$order = wc_get_order( $order->get_id() );
1051
+		clean_post_cache($order->get_id());
1052
+		$order = wc_get_order($order->get_id());
1053 1053
 
1054
-		if ( ! $order->has_status( array( 'pending', 'failed' ) ) ) {
1054
+		if ( ! $order->has_status(array('pending', 'failed'))) {
1055 1055
 			// If payment has already been completed, this function is redundant.
1056 1056
 			return;
1057 1057
 		}
1058 1058
 
1059
-		if ( $this->lock_order_payment( $order, $intent ) ) {
1059
+		if ($this->lock_order_payment($order, $intent)) {
1060 1060
 			return;
1061 1061
 		}
1062 1062
 
1063
-		if ( 'setup_intent' === $intent->object && 'succeeded' === $intent->status ) {
1063
+		if ('setup_intent' === $intent->object && 'succeeded' === $intent->status) {
1064 1064
 			WC()->cart->empty_cart();
1065
-			if ( WC_Stripe_Helper::is_pre_orders_exists() && WC_Pre_Orders_Order::order_contains_pre_order( $order ) ) {
1066
-				WC_Pre_Orders_Order::mark_order_as_pre_ordered( $order );
1065
+			if (WC_Stripe_Helper::is_pre_orders_exists() && WC_Pre_Orders_Order::order_contains_pre_order($order)) {
1066
+				WC_Pre_Orders_Order::mark_order_as_pre_ordered($order);
1067 1067
 			} else {
1068 1068
 				$order->payment_complete();
1069 1069
 			}
1070
-		} else if ( 'succeeded' === $intent->status || 'requires_capture' === $intent->status ) {
1070
+		} else if ('succeeded' === $intent->status || 'requires_capture' === $intent->status) {
1071 1071
 			// Proceed with the payment completion.
1072
-			$this->handle_intent_verification_success( $order, $intent );
1073
-		} else if ( 'requires_payment_method' === $intent->status ) {
1072
+			$this->handle_intent_verification_success($order, $intent);
1073
+		} else if ('requires_payment_method' === $intent->status) {
1074 1074
 			// `requires_payment_method` means that SCA got denied for the current payment method.
1075
-			$this->handle_intent_verification_failure( $order, $intent );
1075
+			$this->handle_intent_verification_failure($order, $intent);
1076 1076
 		}
1077 1077
 
1078
-		$this->unlock_order_payment( $order );
1078
+		$this->unlock_order_payment($order);
1079 1079
 	}
1080 1080
 
1081 1081
 	/**
@@ -1085,8 +1085,8 @@  discard block
 block discarded – undo
1085 1085
 	 * @param WC_Order $order The order whose verification succeeded.
1086 1086
 	 * @param stdClass $intent The Payment Intent object.
1087 1087
 	 */
1088
-	protected function handle_intent_verification_success( $order, $intent ) {
1089
-		$this->process_response( end( $intent->charges->data ), $order );
1088
+	protected function handle_intent_verification_success($order, $intent) {
1089
+		$this->process_response(end($intent->charges->data), $order);
1090 1090
 	}
1091 1091
 
1092 1092
 	/**
@@ -1096,8 +1096,8 @@  discard block
 block discarded – undo
1096 1096
 	 * @param WC_Order $order The order whose verification failed.
1097 1097
 	 * @param stdClass $intent The Payment Intent object.
1098 1098
 	 */
1099
-	protected function handle_intent_verification_failure( $order, $intent ) {
1100
-		$this->failed_sca_auth( $order, $intent );
1099
+	protected function handle_intent_verification_failure($order, $intent) {
1100
+		$this->failed_sca_auth($order, $intent);
1101 1101
 	}
1102 1102
 
1103 1103
 	/**
@@ -1107,18 +1107,18 @@  discard block
 block discarded – undo
1107 1107
 	 * @param WC_Order $order  The order which should be checked.
1108 1108
 	 * @param object   $intent The intent, associated with the order.
1109 1109
 	 */
1110
-	public function failed_sca_auth( $order, $intent ) {
1110
+	public function failed_sca_auth($order, $intent) {
1111 1111
 		// If the order has already failed, do not repeat the same message.
1112
-		if ( $order->has_status( 'failed' ) ) {
1112
+		if ($order->has_status('failed')) {
1113 1113
 			return;
1114 1114
 		}
1115 1115
 
1116 1116
 		// Load the right message and update the status.
1117
-		$status_message = isset( $intent->last_payment_error )
1117
+		$status_message = isset($intent->last_payment_error)
1118 1118
 			/* translators: 1) The error message that was received from Stripe. */
1119
-			? sprintf( __( 'Stripe SCA authentication failed. Reason: %s', 'woocommerce-gateway-stripe' ), $intent->last_payment_error->message )
1120
-			: __( 'Stripe SCA authentication failed.', 'woocommerce-gateway-stripe' );
1121
-		$order->update_status( 'failed', $status_message );
1119
+			? sprintf(__('Stripe SCA authentication failed. Reason: %s', 'woocommerce-gateway-stripe'), $intent->last_payment_error->message)
1120
+			: __('Stripe SCA authentication failed.', 'woocommerce-gateway-stripe');
1121
+		$order->update_status('failed', $status_message);
1122 1122
 	}
1123 1123
 
1124 1124
 	/**
@@ -1129,10 +1129,10 @@  discard block
 block discarded – undo
1129 1129
 	 *
1130 1130
 	 * @return string Checkout URL for the given order.
1131 1131
 	 */
1132
-	public function get_checkout_payment_url( $pay_url, $order ) {
1132
+	public function get_checkout_payment_url($pay_url, $order) {
1133 1133
 		global $wp;
1134
-		if ( isset( $_GET['wc-stripe-confirmation'] ) && isset( $wp->query_vars['order-pay'] ) && $wp->query_vars['order-pay'] == $order->get_id() ) {
1135
-			$pay_url = add_query_arg( 'wc-stripe-confirmation', 1, $pay_url );
1134
+		if (isset($_GET['wc-stripe-confirmation']) && isset($wp->query_vars['order-pay']) && $wp->query_vars['order-pay'] == $order->get_id()) {
1135
+			$pay_url = add_query_arg('wc-stripe-confirmation', 1, $pay_url);
1136 1136
 		}
1137 1137
 		return $pay_url;
1138 1138
 	}
@@ -1142,63 +1142,63 @@  discard block
 block discarded – undo
1142 1142
 	 */
1143 1143
 	public function process_admin_options() {
1144 1144
 		// Load all old values before the new settings get saved.
1145
-		$old_publishable_key      = $this->get_option( 'publishable_key' );
1146
-		$old_secret_key           = $this->get_option( 'secret_key' );
1147
-		$old_test_publishable_key = $this->get_option( 'test_publishable_key' );
1148
-		$old_test_secret_key      = $this->get_option( 'test_secret_key' );
1145
+		$old_publishable_key      = $this->get_option('publishable_key');
1146
+		$old_secret_key           = $this->get_option('secret_key');
1147
+		$old_test_publishable_key = $this->get_option('test_publishable_key');
1148
+		$old_test_secret_key      = $this->get_option('test_secret_key');
1149 1149
 
1150 1150
 		parent::process_admin_options();
1151 1151
 
1152 1152
 		// Load all old values after the new settings have been saved.
1153
-		$new_publishable_key      = $this->get_option( 'publishable_key' );
1154
-		$new_secret_key           = $this->get_option( 'secret_key' );
1155
-		$new_test_publishable_key = $this->get_option( 'test_publishable_key' );
1156
-		$new_test_secret_key      = $this->get_option( 'test_secret_key' );
1153
+		$new_publishable_key      = $this->get_option('publishable_key');
1154
+		$new_secret_key           = $this->get_option('secret_key');
1155
+		$new_test_publishable_key = $this->get_option('test_publishable_key');
1156
+		$new_test_secret_key      = $this->get_option('test_secret_key');
1157 1157
 
1158 1158
 		// Checks whether a value has transitioned from a non-empty value to a new one.
1159
-		$has_changed = function( $old_value, $new_value ) {
1160
-			return ! empty( $old_value ) && ( $old_value !== $new_value );
1159
+		$has_changed = function($old_value, $new_value) {
1160
+			return ! empty($old_value) && ($old_value !== $new_value);
1161 1161
 		};
1162 1162
 
1163 1163
 		// Look for updates.
1164 1164
 		if (
1165
-			$has_changed( $old_publishable_key, $new_publishable_key )
1166
-			|| $has_changed( $old_secret_key, $new_secret_key )
1167
-			|| $has_changed( $old_test_publishable_key, $new_test_publishable_key )
1168
-			|| $has_changed( $old_test_secret_key, $new_test_secret_key )
1165
+			$has_changed($old_publishable_key, $new_publishable_key)
1166
+			|| $has_changed($old_secret_key, $new_secret_key)
1167
+			|| $has_changed($old_test_publishable_key, $new_test_publishable_key)
1168
+			|| $has_changed($old_test_secret_key, $new_test_secret_key)
1169 1169
 		) {
1170
-			update_option( 'wc_stripe_show_changed_keys_notice', 'yes' );
1170
+			update_option('wc_stripe_show_changed_keys_notice', 'yes');
1171 1171
 		}
1172 1172
 	}
1173 1173
 
1174
-	public function validate_publishable_key_field( $key, $value ) {
1175
-		$value = $this->validate_text_field( $key, $value );
1176
-		if ( ! empty( $value ) && ! preg_match( '/^pk_live_/', $value ) ) {
1177
-			throw new Exception( __( 'The "Live Publishable Key" should start with "pk_live", enter the correct key.', 'woocommerce-gateway-stripe' ) );
1174
+	public function validate_publishable_key_field($key, $value) {
1175
+		$value = $this->validate_text_field($key, $value);
1176
+		if ( ! empty($value) && ! preg_match('/^pk_live_/', $value)) {
1177
+			throw new Exception(__('The "Live Publishable Key" should start with "pk_live", enter the correct key.', 'woocommerce-gateway-stripe'));
1178 1178
 		}
1179 1179
 		return $value;
1180 1180
 	}
1181 1181
 
1182
-	public function validate_secret_key_field( $key, $value ) {
1183
-		$value = $this->validate_text_field( $key, $value );
1184
-		if ( ! empty( $value ) && ! preg_match( '/^[rs]k_live_/', $value ) ) {
1185
-			throw new Exception( __( 'The "Live Secret Key" should start with "sk_live" or "rk_live", enter the correct key.', 'woocommerce-gateway-stripe' ) );
1182
+	public function validate_secret_key_field($key, $value) {
1183
+		$value = $this->validate_text_field($key, $value);
1184
+		if ( ! empty($value) && ! preg_match('/^[rs]k_live_/', $value)) {
1185
+			throw new Exception(__('The "Live Secret Key" should start with "sk_live" or "rk_live", enter the correct key.', 'woocommerce-gateway-stripe'));
1186 1186
 		}
1187 1187
 		return $value;
1188 1188
 	}
1189 1189
 
1190
-	public function validate_test_publishable_key_field( $key, $value ) {
1191
-		$value = $this->validate_text_field( $key, $value );
1192
-		if ( ! empty( $value ) && ! preg_match( '/^pk_test_/', $value ) ) {
1193
-			throw new Exception( __( 'The "Test Publishable Key" should start with "pk_test", enter the correct key.', 'woocommerce-gateway-stripe' ) );
1190
+	public function validate_test_publishable_key_field($key, $value) {
1191
+		$value = $this->validate_text_field($key, $value);
1192
+		if ( ! empty($value) && ! preg_match('/^pk_test_/', $value)) {
1193
+			throw new Exception(__('The "Test Publishable Key" should start with "pk_test", enter the correct key.', 'woocommerce-gateway-stripe'));
1194 1194
 		}
1195 1195
 		return $value;
1196 1196
 	}
1197 1197
 
1198
-	public function validate_test_secret_key_field( $key, $value ) {
1199
-		$value = $this->validate_text_field( $key, $value );
1200
-		if ( ! empty( $value ) && ! preg_match( '/^[rs]k_test_/', $value ) ) {
1201
-			throw new Exception( __( 'The "Test Secret Key" should start with "sk_test" or "rk_test", enter the correct key.', 'woocommerce-gateway-stripe' ) );
1198
+	public function validate_test_secret_key_field($key, $value) {
1199
+		$value = $this->validate_text_field($key, $value);
1200
+		if ( ! empty($value) && ! preg_match('/^[rs]k_test_/', $value)) {
1201
+			throw new Exception(__('The "Test Secret Key" should start with "sk_test" or "rk_test", enter the correct key.', 'woocommerce-gateway-stripe'));
1202 1202
 		}
1203 1203
 		return $value;
1204 1204
 	}
Please login to merge, or discard this patch.