@@ -1,5 +1,5 @@ discard block |
||
1 | 1 | <?php |
2 | -if ( ! defined( 'ABSPATH' ) ) { |
|
2 | +if ( ! defined('ABSPATH')) { |
|
3 | 3 | exit; |
4 | 4 | } |
5 | 5 | |
@@ -23,7 +23,7 @@ discard block |
||
23 | 23 | * @since 4.2.0 |
24 | 24 | */ |
25 | 25 | public function __construct() { |
26 | - add_action( 'wc_ajax_wc_stripe_verify_intent', array( $this, 'verify_intent' ) ); |
|
26 | + add_action('wc_ajax_wc_stripe_verify_intent', array($this, 'verify_intent')); |
|
27 | 27 | } |
28 | 28 | |
29 | 29 | /** |
@@ -33,8 +33,8 @@ discard block |
||
33 | 33 | * @return WC_Gateway_Stripe |
34 | 34 | */ |
35 | 35 | protected function get_gateway() { |
36 | - if ( ! isset( $this->gateway ) ) { |
|
37 | - if ( class_exists( 'WC_Subscriptions_Order' ) && function_exists( 'wcs_create_renewal_order' ) ) { |
|
36 | + if ( ! isset($this->gateway)) { |
|
37 | + if (class_exists('WC_Subscriptions_Order') && function_exists('wcs_create_renewal_order')) { |
|
38 | 38 | $class_name = 'WC_Stripe_Subs_Compat'; |
39 | 39 | } else { |
40 | 40 | $class_name = 'WC_Gateway_Stripe'; |
@@ -54,21 +54,21 @@ discard block |
||
54 | 54 | * @return WC_Order |
55 | 55 | */ |
56 | 56 | protected function get_order_from_request() { |
57 | - if ( ! isset( $_GET['nonce'] ) || ! wp_verify_nonce( sanitize_key( $_GET['nonce'] ), 'wc_stripe_confirm_pi' ) ) { |
|
58 | - throw new WC_Stripe_Exception( 'missing-nonce', __( 'CSRF verification failed.', 'woocommerce-gateway-stripe' ) ); |
|
57 | + if ( ! isset($_GET['nonce']) || ! wp_verify_nonce(sanitize_key($_GET['nonce']), 'wc_stripe_confirm_pi')) { |
|
58 | + throw new WC_Stripe_Exception('missing-nonce', __('CSRF verification failed.', 'woocommerce-gateway-stripe')); |
|
59 | 59 | } |
60 | 60 | |
61 | 61 | // Load the order ID. |
62 | 62 | $order_id = null; |
63 | - if ( isset( $_GET['order'] ) && absint( $_GET['order'] ) ) { |
|
64 | - $order_id = absint( $_GET['order'] ); |
|
63 | + if (isset($_GET['order']) && absint($_GET['order'])) { |
|
64 | + $order_id = absint($_GET['order']); |
|
65 | 65 | } |
66 | 66 | |
67 | 67 | // Retrieve the order. |
68 | - $order = wc_get_order( $order_id ); |
|
68 | + $order = wc_get_order($order_id); |
|
69 | 69 | |
70 | - if ( ! $order ) { |
|
71 | - throw new WC_Stripe_Exception( 'missing-order', __( 'Missing order ID for payment confirmation', 'woocommerce-gateway-stripe' ) ); |
|
70 | + if ( ! $order) { |
|
71 | + throw new WC_Stripe_Exception('missing-order', __('Missing order ID for payment confirmation', 'woocommerce-gateway-stripe')); |
|
72 | 72 | } |
73 | 73 | |
74 | 74 | return $order; |
@@ -86,32 +86,32 @@ discard block |
||
86 | 86 | |
87 | 87 | try { |
88 | 88 | $order = $this->get_order_from_request(); |
89 | - } catch ( WC_Stripe_Exception $e ) { |
|
89 | + } catch (WC_Stripe_Exception $e) { |
|
90 | 90 | /* translators: Error message text */ |
91 | - $message = sprintf( __( 'Payment verification error: %s', 'woocommerce-gateway-stripe' ), $e->getLocalizedMessage() ); |
|
92 | - wc_add_notice( esc_html( $message ), 'error' ); |
|
91 | + $message = sprintf(__('Payment verification error: %s', 'woocommerce-gateway-stripe'), $e->getLocalizedMessage()); |
|
92 | + wc_add_notice(esc_html($message), 'error'); |
|
93 | 93 | |
94 | 94 | $redirect_url = $woocommerce->cart->is_empty() |
95 | - ? get_permalink( WC_Stripe_Helper::is_wc_lt( '3.0' ) ? woocommerce_get_page_id( 'shop' ) : wc_get_page_id( 'shop' ) ) |
|
95 | + ? get_permalink(WC_Stripe_Helper::is_wc_lt('3.0') ? woocommerce_get_page_id('shop') : wc_get_page_id('shop')) |
|
96 | 96 | : wc_get_checkout_url(); |
97 | 97 | |
98 | - $this->handle_error( $e, $redirect_url ); |
|
98 | + $this->handle_error($e, $redirect_url); |
|
99 | 99 | } |
100 | 100 | |
101 | 101 | try { |
102 | - $gateway->verify_intent_after_checkout( $order ); |
|
102 | + $gateway->verify_intent_after_checkout($order); |
|
103 | 103 | |
104 | - if ( ! isset( $_GET['is_ajax'] ) ) { |
|
105 | - $redirect_url = isset( $_GET['redirect_to'] ) // wpcs: csrf ok. |
|
106 | - ? esc_url_raw( wp_unslash( $_GET['redirect_to'] ) ) // wpcs: csrf ok. |
|
107 | - : $gateway->get_return_url( $order ); |
|
104 | + if ( ! isset($_GET['is_ajax'])) { |
|
105 | + $redirect_url = isset($_GET['redirect_to']) // wpcs: csrf ok. |
|
106 | + ? esc_url_raw(wp_unslash($_GET['redirect_to'])) // wpcs: csrf ok. |
|
107 | + : $gateway->get_return_url($order); |
|
108 | 108 | |
109 | - wp_safe_redirect( $redirect_url ); |
|
109 | + wp_safe_redirect($redirect_url); |
|
110 | 110 | } |
111 | 111 | |
112 | 112 | exit; |
113 | - } catch ( WC_Stripe_Exception $e ) { |
|
114 | - $this->handle_error( $e, $gateway->get_return_url( $order ) ); |
|
113 | + } catch (WC_Stripe_Exception $e) { |
|
114 | + $this->handle_error($e, $gateway->get_return_url($order)); |
|
115 | 115 | } |
116 | 116 | } |
117 | 117 | |
@@ -122,17 +122,17 @@ discard block |
||
122 | 122 | * @param WC_Stripe_Exception $e The exception that was thrown. |
123 | 123 | * @param string $redirect_url An URL to use if a redirect is needed. |
124 | 124 | */ |
125 | - protected function handle_error( $e, $redirect_url ) { |
|
125 | + protected function handle_error($e, $redirect_url) { |
|
126 | 126 | // Log the exception before redirecting. |
127 | - $message = sprintf( 'PaymentIntent verification exception: %s', $e->getLocalizedMessage() ); |
|
128 | - WC_Stripe_Logger::log( $message ); |
|
127 | + $message = sprintf('PaymentIntent verification exception: %s', $e->getLocalizedMessage()); |
|
128 | + WC_Stripe_Logger::log($message); |
|
129 | 129 | |
130 | 130 | // `is_ajax` is only used for PI error reporting, a response is not expected. |
131 | - if ( isset( $_GET['is_ajax'] ) ) { |
|
131 | + if (isset($_GET['is_ajax'])) { |
|
132 | 132 | exit; |
133 | 133 | } |
134 | 134 | |
135 | - wp_safe_redirect( $redirect_url ); |
|
135 | + wp_safe_redirect($redirect_url); |
|
136 | 136 | exit; |
137 | 137 | } |
138 | 138 | } |
@@ -1,5 +1,5 @@ discard block |
||
1 | 1 | <?php |
2 | -if ( ! defined( 'ABSPATH' ) ) { |
|
2 | +if ( ! defined('ABSPATH')) { |
|
3 | 3 | exit; |
4 | 4 | } |
5 | 5 | |
@@ -22,14 +22,14 @@ discard block |
||
22 | 22 | * @param object $order |
23 | 23 | * @return string $currency |
24 | 24 | */ |
25 | - public static function get_stripe_currency( $order = null ) { |
|
26 | - if ( is_null( $order ) ) { |
|
25 | + public static function get_stripe_currency($order = null) { |
|
26 | + if (is_null($order)) { |
|
27 | 27 | return false; |
28 | 28 | } |
29 | 29 | |
30 | - $order_id = WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $order->id : $order->get_id(); |
|
30 | + $order_id = WC_Stripe_Helper::is_wc_lt('3.0') ? $order->id : $order->get_id(); |
|
31 | 31 | |
32 | - return WC_Stripe_Helper::is_wc_lt( '3.0' ) ? get_post_meta( $order_id, self::META_NAME_STRIPE_CURRENCY, true ) : $order->get_meta( self::META_NAME_STRIPE_CURRENCY, true ); |
|
32 | + return WC_Stripe_Helper::is_wc_lt('3.0') ? get_post_meta($order_id, self::META_NAME_STRIPE_CURRENCY, true) : $order->get_meta(self::META_NAME_STRIPE_CURRENCY, true); |
|
33 | 33 | } |
34 | 34 | |
35 | 35 | /** |
@@ -39,14 +39,14 @@ discard block |
||
39 | 39 | * @param object $order |
40 | 40 | * @param string $currency |
41 | 41 | */ |
42 | - public static function update_stripe_currency( $order = null, $currency ) { |
|
43 | - if ( is_null( $order ) ) { |
|
42 | + public static function update_stripe_currency($order = null, $currency) { |
|
43 | + if (is_null($order)) { |
|
44 | 44 | return false; |
45 | 45 | } |
46 | 46 | |
47 | - $order_id = WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $order->id : $order->get_id(); |
|
47 | + $order_id = WC_Stripe_Helper::is_wc_lt('3.0') ? $order->id : $order->get_id(); |
|
48 | 48 | |
49 | - WC_Stripe_Helper::is_wc_lt( '3.0' ) ? update_post_meta( $order_id, self::META_NAME_STRIPE_CURRENCY, $currency ) : $order->update_meta_data( self::META_NAME_STRIPE_CURRENCY, $currency ); |
|
49 | + WC_Stripe_Helper::is_wc_lt('3.0') ? update_post_meta($order_id, self::META_NAME_STRIPE_CURRENCY, $currency) : $order->update_meta_data(self::META_NAME_STRIPE_CURRENCY, $currency); |
|
50 | 50 | } |
51 | 51 | |
52 | 52 | /** |
@@ -56,22 +56,22 @@ discard block |
||
56 | 56 | * @param object $order |
57 | 57 | * @return string $amount |
58 | 58 | */ |
59 | - public static function get_stripe_fee( $order = null ) { |
|
60 | - if ( is_null( $order ) ) { |
|
59 | + public static function get_stripe_fee($order = null) { |
|
60 | + if (is_null($order)) { |
|
61 | 61 | return false; |
62 | 62 | } |
63 | 63 | |
64 | - $order_id = WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $order->id : $order->get_id(); |
|
64 | + $order_id = WC_Stripe_Helper::is_wc_lt('3.0') ? $order->id : $order->get_id(); |
|
65 | 65 | |
66 | - $amount = WC_Stripe_Helper::is_wc_lt( '3.0' ) ? get_post_meta( $order_id, self::META_NAME_FEE, true ) : $order->get_meta( self::META_NAME_FEE, true ); |
|
66 | + $amount = WC_Stripe_Helper::is_wc_lt('3.0') ? get_post_meta($order_id, self::META_NAME_FEE, true) : $order->get_meta(self::META_NAME_FEE, true); |
|
67 | 67 | |
68 | 68 | // If not found let's check for legacy name. |
69 | - if ( empty( $amount ) ) { |
|
70 | - $amount = WC_Stripe_Helper::is_wc_lt( '3.0' ) ? get_post_meta( $order_id, self::LEGACY_META_NAME_FEE, true ) : $order->get_meta( self::LEGACY_META_NAME_FEE, true ); |
|
69 | + if (empty($amount)) { |
|
70 | + $amount = WC_Stripe_Helper::is_wc_lt('3.0') ? get_post_meta($order_id, self::LEGACY_META_NAME_FEE, true) : $order->get_meta(self::LEGACY_META_NAME_FEE, true); |
|
71 | 71 | |
72 | 72 | // If found update to new name. |
73 | - if ( $amount ) { |
|
74 | - self::update_stripe_fee( $order, $amount ); |
|
73 | + if ($amount) { |
|
74 | + self::update_stripe_fee($order, $amount); |
|
75 | 75 | } |
76 | 76 | } |
77 | 77 | |
@@ -85,14 +85,14 @@ discard block |
||
85 | 85 | * @param object $order |
86 | 86 | * @param float $amount |
87 | 87 | */ |
88 | - public static function update_stripe_fee( $order = null, $amount = 0.0 ) { |
|
89 | - if ( is_null( $order ) ) { |
|
88 | + public static function update_stripe_fee($order = null, $amount = 0.0) { |
|
89 | + if (is_null($order)) { |
|
90 | 90 | return false; |
91 | 91 | } |
92 | 92 | |
93 | - $order_id = WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $order->id : $order->get_id(); |
|
93 | + $order_id = WC_Stripe_Helper::is_wc_lt('3.0') ? $order->id : $order->get_id(); |
|
94 | 94 | |
95 | - WC_Stripe_Helper::is_wc_lt( '3.0' ) ? update_post_meta( $order_id, self::META_NAME_FEE, $amount ) : $order->update_meta_data( self::META_NAME_FEE, $amount ); |
|
95 | + WC_Stripe_Helper::is_wc_lt('3.0') ? update_post_meta($order_id, self::META_NAME_FEE, $amount) : $order->update_meta_data(self::META_NAME_FEE, $amount); |
|
96 | 96 | } |
97 | 97 | |
98 | 98 | /** |
@@ -101,15 +101,15 @@ discard block |
||
101 | 101 | * @since 4.1.0 |
102 | 102 | * @param object $order |
103 | 103 | */ |
104 | - public static function delete_stripe_fee( $order = null ) { |
|
105 | - if ( is_null( $order ) ) { |
|
104 | + public static function delete_stripe_fee($order = null) { |
|
105 | + if (is_null($order)) { |
|
106 | 106 | return false; |
107 | 107 | } |
108 | 108 | |
109 | - $order_id = WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $order->id : $order->get_id(); |
|
109 | + $order_id = WC_Stripe_Helper::is_wc_lt('3.0') ? $order->id : $order->get_id(); |
|
110 | 110 | |
111 | - delete_post_meta( $order_id, self::META_NAME_FEE ); |
|
112 | - delete_post_meta( $order_id, self::LEGACY_META_NAME_FEE ); |
|
111 | + delete_post_meta($order_id, self::META_NAME_FEE); |
|
112 | + delete_post_meta($order_id, self::LEGACY_META_NAME_FEE); |
|
113 | 113 | } |
114 | 114 | |
115 | 115 | /** |
@@ -119,22 +119,22 @@ discard block |
||
119 | 119 | * @param object $order |
120 | 120 | * @return string $amount |
121 | 121 | */ |
122 | - public static function get_stripe_net( $order = null ) { |
|
123 | - if ( is_null( $order ) ) { |
|
122 | + public static function get_stripe_net($order = null) { |
|
123 | + if (is_null($order)) { |
|
124 | 124 | return false; |
125 | 125 | } |
126 | 126 | |
127 | - $order_id = WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $order->id : $order->get_id(); |
|
127 | + $order_id = WC_Stripe_Helper::is_wc_lt('3.0') ? $order->id : $order->get_id(); |
|
128 | 128 | |
129 | - $amount = WC_Stripe_Helper::is_wc_lt( '3.0' ) ? get_post_meta( $order_id, self::META_NAME_NET, true ) : $order->get_meta( self::META_NAME_NET, true ); |
|
129 | + $amount = WC_Stripe_Helper::is_wc_lt('3.0') ? get_post_meta($order_id, self::META_NAME_NET, true) : $order->get_meta(self::META_NAME_NET, true); |
|
130 | 130 | |
131 | 131 | // If not found let's check for legacy name. |
132 | - if ( empty( $amount ) ) { |
|
133 | - $amount = WC_Stripe_Helper::is_wc_lt( '3.0' ) ? get_post_meta( $order_id, self::LEGACY_META_NAME_NET, true ) : $order->get_meta( self::LEGACY_META_NAME_NET, true ); |
|
132 | + if (empty($amount)) { |
|
133 | + $amount = WC_Stripe_Helper::is_wc_lt('3.0') ? get_post_meta($order_id, self::LEGACY_META_NAME_NET, true) : $order->get_meta(self::LEGACY_META_NAME_NET, true); |
|
134 | 134 | |
135 | 135 | // If found update to new name. |
136 | - if ( $amount ) { |
|
137 | - self::update_stripe_net( $order, $amount ); |
|
136 | + if ($amount) { |
|
137 | + self::update_stripe_net($order, $amount); |
|
138 | 138 | } |
139 | 139 | } |
140 | 140 | |
@@ -148,14 +148,14 @@ discard block |
||
148 | 148 | * @param object $order |
149 | 149 | * @param float $amount |
150 | 150 | */ |
151 | - public static function update_stripe_net( $order = null, $amount = 0.0 ) { |
|
152 | - if ( is_null( $order ) ) { |
|
151 | + public static function update_stripe_net($order = null, $amount = 0.0) { |
|
152 | + if (is_null($order)) { |
|
153 | 153 | return false; |
154 | 154 | } |
155 | 155 | |
156 | - $order_id = WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $order->id : $order->get_id(); |
|
156 | + $order_id = WC_Stripe_Helper::is_wc_lt('3.0') ? $order->id : $order->get_id(); |
|
157 | 157 | |
158 | - WC_Stripe_Helper::is_wc_lt( '3.0' ) ? update_post_meta( $order_id, self::META_NAME_NET, $amount ) : $order->update_meta_data( self::META_NAME_NET, $amount ); |
|
158 | + WC_Stripe_Helper::is_wc_lt('3.0') ? update_post_meta($order_id, self::META_NAME_NET, $amount) : $order->update_meta_data(self::META_NAME_NET, $amount); |
|
159 | 159 | } |
160 | 160 | |
161 | 161 | /** |
@@ -164,15 +164,15 @@ discard block |
||
164 | 164 | * @since 4.1.0 |
165 | 165 | * @param object $order |
166 | 166 | */ |
167 | - public static function delete_stripe_net( $order = null ) { |
|
168 | - if ( is_null( $order ) ) { |
|
167 | + public static function delete_stripe_net($order = null) { |
|
168 | + if (is_null($order)) { |
|
169 | 169 | return false; |
170 | 170 | } |
171 | 171 | |
172 | - $order_id = WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $order->id : $order->get_id(); |
|
172 | + $order_id = WC_Stripe_Helper::is_wc_lt('3.0') ? $order->id : $order->get_id(); |
|
173 | 173 | |
174 | - delete_post_meta( $order_id, self::META_NAME_NET ); |
|
175 | - delete_post_meta( $order_id, self::LEGACY_META_NAME_NET ); |
|
174 | + delete_post_meta($order_id, self::META_NAME_NET); |
|
175 | + delete_post_meta($order_id, self::LEGACY_META_NAME_NET); |
|
176 | 176 | } |
177 | 177 | |
178 | 178 | /** |
@@ -183,15 +183,15 @@ discard block |
||
183 | 183 | * |
184 | 184 | * @return float|int |
185 | 185 | */ |
186 | - public static function get_stripe_amount( $total, $currency = '' ) { |
|
187 | - if ( ! $currency ) { |
|
186 | + public static function get_stripe_amount($total, $currency = '') { |
|
187 | + if ( ! $currency) { |
|
188 | 188 | $currency = get_woocommerce_currency(); |
189 | 189 | } |
190 | 190 | |
191 | - if ( in_array( strtolower( $currency ), self::no_decimal_currencies() ) ) { |
|
192 | - return absint( $total ); |
|
191 | + if (in_array(strtolower($currency), self::no_decimal_currencies())) { |
|
192 | + return absint($total); |
|
193 | 193 | } else { |
194 | - return absint( wc_format_decimal( ( (float) $total * 100 ), wc_get_price_decimals() ) ); // In cents. |
|
194 | + return absint(wc_format_decimal(((float) $total * 100), wc_get_price_decimals())); // In cents. |
|
195 | 195 | } |
196 | 196 | } |
197 | 197 | |
@@ -206,24 +206,24 @@ discard block |
||
206 | 206 | return apply_filters( |
207 | 207 | 'wc_stripe_localized_messages', |
208 | 208 | array( |
209 | - 'invalid_number' => __( 'The card number is not a valid credit card number.', 'woocommerce-gateway-stripe' ), |
|
210 | - 'invalid_expiry_month' => __( 'The card\'s expiration month is invalid.', 'woocommerce-gateway-stripe' ), |
|
211 | - 'invalid_expiry_year' => __( 'The card\'s expiration year is invalid.', 'woocommerce-gateway-stripe' ), |
|
212 | - 'invalid_cvc' => __( 'The card\'s security code is invalid.', 'woocommerce-gateway-stripe' ), |
|
213 | - 'incorrect_number' => __( 'The card number is incorrect.', 'woocommerce-gateway-stripe' ), |
|
214 | - 'incomplete_number' => __( 'The card number is incomplete.', 'woocommerce-gateway-stripe' ), |
|
215 | - 'incomplete_cvc' => __( 'The card\'s security code is incomplete.', 'woocommerce-gateway-stripe' ), |
|
216 | - 'incomplete_expiry' => __( 'The card\'s expiration date is incomplete.', 'woocommerce-gateway-stripe' ), |
|
217 | - 'expired_card' => __( 'The card has expired.', 'woocommerce-gateway-stripe' ), |
|
218 | - 'incorrect_cvc' => __( 'The card\'s security code is incorrect.', 'woocommerce-gateway-stripe' ), |
|
219 | - 'incorrect_zip' => __( 'The card\'s zip code failed validation.', 'woocommerce-gateway-stripe' ), |
|
220 | - 'invalid_expiry_year_past' => __( 'The card\'s expiration year is in the past', 'woocommerce-gateway-stripe' ), |
|
221 | - 'card_declined' => __( 'The card was declined.', 'woocommerce-gateway-stripe' ), |
|
222 | - 'missing' => __( 'There is no card on a customer that is being charged.', 'woocommerce-gateway-stripe' ), |
|
223 | - 'processing_error' => __( 'An error occurred while processing the card.', 'woocommerce-gateway-stripe' ), |
|
224 | - 'invalid_request_error' => __( 'Unable to process this payment, please try again or use alternative method.', 'woocommerce-gateway-stripe' ), |
|
225 | - 'invalid_sofort_country' => __( 'The billing country is not accepted by SOFORT. Please try another country.', 'woocommerce-gateway-stripe' ), |
|
226 | - 'email_invalid' => __( 'Invalid email address, please correct and try again.', 'woocommerce-gateway-stripe' ), |
|
209 | + 'invalid_number' => __('The card number is not a valid credit card number.', 'woocommerce-gateway-stripe'), |
|
210 | + 'invalid_expiry_month' => __('The card\'s expiration month is invalid.', 'woocommerce-gateway-stripe'), |
|
211 | + 'invalid_expiry_year' => __('The card\'s expiration year is invalid.', 'woocommerce-gateway-stripe'), |
|
212 | + 'invalid_cvc' => __('The card\'s security code is invalid.', 'woocommerce-gateway-stripe'), |
|
213 | + 'incorrect_number' => __('The card number is incorrect.', 'woocommerce-gateway-stripe'), |
|
214 | + 'incomplete_number' => __('The card number is incomplete.', 'woocommerce-gateway-stripe'), |
|
215 | + 'incomplete_cvc' => __('The card\'s security code is incomplete.', 'woocommerce-gateway-stripe'), |
|
216 | + 'incomplete_expiry' => __('The card\'s expiration date is incomplete.', 'woocommerce-gateway-stripe'), |
|
217 | + 'expired_card' => __('The card has expired.', 'woocommerce-gateway-stripe'), |
|
218 | + 'incorrect_cvc' => __('The card\'s security code is incorrect.', 'woocommerce-gateway-stripe'), |
|
219 | + 'incorrect_zip' => __('The card\'s zip code failed validation.', 'woocommerce-gateway-stripe'), |
|
220 | + 'invalid_expiry_year_past' => __('The card\'s expiration year is in the past', 'woocommerce-gateway-stripe'), |
|
221 | + 'card_declined' => __('The card was declined.', 'woocommerce-gateway-stripe'), |
|
222 | + 'missing' => __('There is no card on a customer that is being charged.', 'woocommerce-gateway-stripe'), |
|
223 | + 'processing_error' => __('An error occurred while processing the card.', 'woocommerce-gateway-stripe'), |
|
224 | + 'invalid_request_error' => __('Unable to process this payment, please try again or use alternative method.', 'woocommerce-gateway-stripe'), |
|
225 | + 'invalid_sofort_country' => __('The billing country is not accepted by SOFORT. Please try another country.', 'woocommerce-gateway-stripe'), |
|
226 | + 'email_invalid' => __('Invalid email address, please correct and try again.', 'woocommerce-gateway-stripe'), |
|
227 | 227 | ) |
228 | 228 | ); |
229 | 229 | } |
@@ -264,24 +264,24 @@ discard block |
||
264 | 264 | * @param string $type Type of number to format |
265 | 265 | * @return string |
266 | 266 | */ |
267 | - public static function format_balance_fee( $balance_transaction, $type = 'fee' ) { |
|
268 | - if ( ! is_object( $balance_transaction ) ) { |
|
267 | + public static function format_balance_fee($balance_transaction, $type = 'fee') { |
|
268 | + if ( ! is_object($balance_transaction)) { |
|
269 | 269 | return; |
270 | 270 | } |
271 | 271 | |
272 | - if ( in_array( strtolower( $balance_transaction->currency ), self::no_decimal_currencies() ) ) { |
|
273 | - if ( 'fee' === $type ) { |
|
272 | + if (in_array(strtolower($balance_transaction->currency), self::no_decimal_currencies())) { |
|
273 | + if ('fee' === $type) { |
|
274 | 274 | return $balance_transaction->fee; |
275 | 275 | } |
276 | 276 | |
277 | 277 | return $balance_transaction->net; |
278 | 278 | } |
279 | 279 | |
280 | - if ( 'fee' === $type ) { |
|
281 | - return number_format( $balance_transaction->fee / 100, 2, '.', '' ); |
|
280 | + if ('fee' === $type) { |
|
281 | + return number_format($balance_transaction->fee / 100, 2, '.', ''); |
|
282 | 282 | } |
283 | 283 | |
284 | - return number_format( $balance_transaction->net / 100, 2, '.', '' ); |
|
284 | + return number_format($balance_transaction->net / 100, 2, '.', ''); |
|
285 | 285 | } |
286 | 286 | |
287 | 287 | /** |
@@ -289,7 +289,7 @@ discard block |
||
289 | 289 | */ |
290 | 290 | public static function get_minimum_amount() { |
291 | 291 | // Check order amount |
292 | - switch ( get_woocommerce_currency() ) { |
|
292 | + switch (get_woocommerce_currency()) { |
|
293 | 293 | case 'USD': |
294 | 294 | case 'CAD': |
295 | 295 | case 'EUR': |
@@ -334,14 +334,14 @@ discard block |
||
334 | 334 | * @param string $method The payment method to get the settings from. |
335 | 335 | * @param string $setting The name of the setting to get. |
336 | 336 | */ |
337 | - public static function get_settings( $method = null, $setting = null ) { |
|
338 | - $all_settings = null === $method ? get_option( 'woocommerce_stripe_settings', array() ) : get_option( 'woocommerce_stripe_' . $method . '_settings', array() ); |
|
337 | + public static function get_settings($method = null, $setting = null) { |
|
338 | + $all_settings = null === $method ? get_option('woocommerce_stripe_settings', array()) : get_option('woocommerce_stripe_' . $method . '_settings', array()); |
|
339 | 339 | |
340 | - if ( null === $setting ) { |
|
340 | + if (null === $setting) { |
|
341 | 341 | return $all_settings; |
342 | 342 | } |
343 | 343 | |
344 | - return isset( $all_settings[ $setting ] ) ? $all_settings[ $setting ] : ''; |
|
344 | + return isset($all_settings[$setting]) ? $all_settings[$setting] : ''; |
|
345 | 345 | } |
346 | 346 | |
347 | 347 | /** |
@@ -351,7 +351,7 @@ discard block |
||
351 | 351 | * @return bool |
352 | 352 | */ |
353 | 353 | public static function is_pre_orders_exists() { |
354 | - return class_exists( 'WC_Pre_Orders_Order' ); |
|
354 | + return class_exists('WC_Pre_Orders_Order'); |
|
355 | 355 | } |
356 | 356 | |
357 | 357 | /** |
@@ -363,9 +363,9 @@ discard block |
||
363 | 363 | * @return bool |
364 | 364 | */ |
365 | 365 | public static function is_pre_30() { |
366 | - error_log( 'is_pre_30() function has been deprecated since 4.1.11. Please use is_wc_lt( $version ) instead.' ); |
|
366 | + error_log('is_pre_30() function has been deprecated since 4.1.11. Please use is_wc_lt( $version ) instead.'); |
|
367 | 367 | |
368 | - return self::is_wc_lt( '3.0' ); |
|
368 | + return self::is_wc_lt('3.0'); |
|
369 | 369 | } |
370 | 370 | |
371 | 371 | /** |
@@ -375,8 +375,8 @@ discard block |
||
375 | 375 | * @param string $version Version to check against. |
376 | 376 | * @return bool |
377 | 377 | */ |
378 | - public static function is_wc_lt( $version ) { |
|
379 | - return version_compare( WC_VERSION, $version, '<' ); |
|
378 | + public static function is_wc_lt($version) { |
|
379 | + return version_compare(WC_VERSION, $version, '<'); |
|
380 | 380 | } |
381 | 381 | |
382 | 382 | /** |
@@ -389,7 +389,7 @@ discard block |
||
389 | 389 | * @return string |
390 | 390 | */ |
391 | 391 | public static function get_webhook_url() { |
392 | - return add_query_arg( 'wc-api', 'wc_stripe', trailingslashit( get_home_url() ) ); |
|
392 | + return add_query_arg('wc-api', 'wc_stripe', trailingslashit(get_home_url())); |
|
393 | 393 | } |
394 | 394 | |
395 | 395 | /** |
@@ -399,13 +399,13 @@ discard block |
||
399 | 399 | * @version 4.0.0 |
400 | 400 | * @param string $source_id |
401 | 401 | */ |
402 | - public static function get_order_by_source_id( $source_id ) { |
|
402 | + public static function get_order_by_source_id($source_id) { |
|
403 | 403 | global $wpdb; |
404 | 404 | |
405 | - $order_id = $wpdb->get_var( $wpdb->prepare( "SELECT DISTINCT ID FROM $wpdb->posts as posts LEFT JOIN $wpdb->postmeta as meta ON posts.ID = meta.post_id WHERE meta.meta_value = %s AND meta.meta_key = %s", $source_id, '_stripe_source_id' ) ); |
|
405 | + $order_id = $wpdb->get_var($wpdb->prepare("SELECT DISTINCT ID FROM $wpdb->posts as posts LEFT JOIN $wpdb->postmeta as meta ON posts.ID = meta.post_id WHERE meta.meta_value = %s AND meta.meta_key = %s", $source_id, '_stripe_source_id')); |
|
406 | 406 | |
407 | - if ( ! empty( $order_id ) ) { |
|
408 | - return wc_get_order( $order_id ); |
|
407 | + if ( ! empty($order_id)) { |
|
408 | + return wc_get_order($order_id); |
|
409 | 409 | } |
410 | 410 | |
411 | 411 | return false; |
@@ -418,17 +418,17 @@ discard block |
||
418 | 418 | * @since 4.1.16 Return false if charge_id is empty. |
419 | 419 | * @param string $charge_id |
420 | 420 | */ |
421 | - public static function get_order_by_charge_id( $charge_id ) { |
|
421 | + public static function get_order_by_charge_id($charge_id) { |
|
422 | 422 | global $wpdb; |
423 | 423 | |
424 | - if ( empty( $charge_id ) ) { |
|
424 | + if (empty($charge_id)) { |
|
425 | 425 | return false; |
426 | 426 | } |
427 | 427 | |
428 | - $order_id = $wpdb->get_var( $wpdb->prepare( "SELECT DISTINCT ID FROM $wpdb->posts as posts LEFT JOIN $wpdb->postmeta as meta ON posts.ID = meta.post_id WHERE meta.meta_value = %s AND meta.meta_key = %s", $charge_id, '_transaction_id' ) ); |
|
428 | + $order_id = $wpdb->get_var($wpdb->prepare("SELECT DISTINCT ID FROM $wpdb->posts as posts LEFT JOIN $wpdb->postmeta as meta ON posts.ID = meta.post_id WHERE meta.meta_value = %s AND meta.meta_key = %s", $charge_id, '_transaction_id')); |
|
429 | 429 | |
430 | - if ( ! empty( $order_id ) ) { |
|
431 | - return wc_get_order( $order_id ); |
|
430 | + if ( ! empty($order_id)) { |
|
431 | + return wc_get_order($order_id); |
|
432 | 432 | } |
433 | 433 | |
434 | 434 | return false; |
@@ -441,13 +441,13 @@ discard block |
||
441 | 441 | * @param string $intent_id The ID of the intent. |
442 | 442 | * @return WC_Order|bool Either an order or false when not found. |
443 | 443 | */ |
444 | - public static function get_order_by_intent_id( $intent_id ) { |
|
444 | + public static function get_order_by_intent_id($intent_id) { |
|
445 | 445 | global $wpdb; |
446 | 446 | |
447 | - $order_id = $wpdb->get_var( $wpdb->prepare( "SELECT DISTINCT ID FROM $wpdb->posts as posts LEFT JOIN $wpdb->postmeta as meta ON posts.ID = meta.post_id WHERE meta.meta_value = %s AND meta.meta_key = %s", $intent_id, '_stripe_intent_id' ) ); |
|
447 | + $order_id = $wpdb->get_var($wpdb->prepare("SELECT DISTINCT ID FROM $wpdb->posts as posts LEFT JOIN $wpdb->postmeta as meta ON posts.ID = meta.post_id WHERE meta.meta_value = %s AND meta.meta_key = %s", $intent_id, '_stripe_intent_id')); |
|
448 | 448 | |
449 | - if ( ! empty( $order_id ) ) { |
|
450 | - return wc_get_order( $order_id ); |
|
449 | + if ( ! empty($order_id)) { |
|
450 | + return wc_get_order($order_id); |
|
451 | 451 | } |
452 | 452 | |
453 | 453 | return false; |
@@ -460,13 +460,13 @@ discard block |
||
460 | 460 | * @param string $intent_id The ID of the intent. |
461 | 461 | * @return WC_Order|bool Either an order or false when not found. |
462 | 462 | */ |
463 | - public static function get_order_by_setup_intent_id( $intent_id ) { |
|
463 | + public static function get_order_by_setup_intent_id($intent_id) { |
|
464 | 464 | global $wpdb; |
465 | 465 | |
466 | - $order_id = $wpdb->get_var( $wpdb->prepare( "SELECT DISTINCT ID FROM $wpdb->posts as posts LEFT JOIN $wpdb->postmeta as meta ON posts.ID = meta.post_id WHERE meta.meta_value = %s AND meta.meta_key = %s", $intent_id, '_stripe_setup_intent' ) ); |
|
466 | + $order_id = $wpdb->get_var($wpdb->prepare("SELECT DISTINCT ID FROM $wpdb->posts as posts LEFT JOIN $wpdb->postmeta as meta ON posts.ID = meta.post_id WHERE meta.meta_value = %s AND meta.meta_key = %s", $intent_id, '_stripe_setup_intent')); |
|
467 | 467 | |
468 | - if ( ! empty( $order_id ) ) { |
|
469 | - return wc_get_order( $order_id ); |
|
468 | + if ( ! empty($order_id)) { |
|
469 | + return wc_get_order($order_id); |
|
470 | 470 | } |
471 | 471 | |
472 | 472 | return false; |
@@ -482,13 +482,13 @@ discard block |
||
482 | 482 | * @param string $statement_descriptor |
483 | 483 | * @return string $statement_descriptor Sanitized statement descriptor |
484 | 484 | */ |
485 | - public static function clean_statement_descriptor( $statement_descriptor = '' ) { |
|
486 | - $disallowed_characters = array( '<', '>', '"', "'" ); |
|
485 | + public static function clean_statement_descriptor($statement_descriptor = '') { |
|
486 | + $disallowed_characters = array('<', '>', '"', "'"); |
|
487 | 487 | |
488 | 488 | // Remove special characters. |
489 | - $statement_descriptor = str_replace( $disallowed_characters, '', $statement_descriptor ); |
|
489 | + $statement_descriptor = str_replace($disallowed_characters, '', $statement_descriptor); |
|
490 | 490 | |
491 | - $statement_descriptor = substr( trim( $statement_descriptor ), 0, 22 ); |
|
491 | + $statement_descriptor = substr(trim($statement_descriptor), 0, 22); |
|
492 | 492 | |
493 | 493 | return $statement_descriptor; |
494 | 494 | } |
@@ -34,9 +34,9 @@ discard block |
||
34 | 34 | public function setUp() { |
35 | 35 | parent::setUp(); |
36 | 36 | |
37 | - $this->wc_stripe_subs_compat = $this->getMockBuilder( 'WC_Stripe_Subs_Compat' ) |
|
37 | + $this->wc_stripe_subs_compat = $this->getMockBuilder('WC_Stripe_Subs_Compat') |
|
38 | 38 | ->disableOriginalConstructor() |
39 | - ->setMethods( array( 'prepare_source', 'has_subscription' ) ) |
|
39 | + ->setMethods(array('prepare_source', 'has_subscription')) |
|
40 | 40 | ->getMock(); |
41 | 41 | |
42 | 42 | // Mocked in order to get metadata[payment_type] = recurring in the HTTP request. |
@@ -54,7 +54,7 @@ discard block |
||
54 | 54 | */ |
55 | 55 | public function tearDown() { |
56 | 56 | parent::tearDown(); |
57 | - delete_option( 'woocommerce_stripe_settings' ); |
|
57 | + delete_option('woocommerce_stripe_settings'); |
|
58 | 58 | } |
59 | 59 | |
60 | 60 | /** |
@@ -69,27 +69,27 @@ discard block |
||
69 | 69 | */ |
70 | 70 | public function test_initial_intent_parameters() { |
71 | 71 | $initial_order = WC_Helper_Order::create_order(); |
72 | - $order_id = WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $initial_order->id : $initial_order->get_id(); |
|
73 | - $stripe_amount = WC_Stripe_Helper::get_stripe_amount( $initial_order->get_total() ); |
|
74 | - $currency = strtolower( WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $initial_order->get_order_currency() : $initial_order->get_currency() ); |
|
72 | + $order_id = WC_Stripe_Helper::is_wc_lt('3.0') ? $initial_order->id : $initial_order->get_id(); |
|
73 | + $stripe_amount = WC_Stripe_Helper::get_stripe_amount($initial_order->get_total()); |
|
74 | + $currency = strtolower(WC_Stripe_Helper::is_wc_lt('3.0') ? $initial_order->get_order_currency() : $initial_order->get_currency()); |
|
75 | 75 | $customer = 'cus_123abc'; |
76 | 76 | $source = 'src_123abc'; |
77 | - $statement_descriptor = WC_Stripe_Helper::clean_statement_descriptor( $this->statement_descriptor ); |
|
77 | + $statement_descriptor = WC_Stripe_Helper::clean_statement_descriptor($this->statement_descriptor); |
|
78 | 78 | $intents_api_endpoint = 'https://api.stripe.com/v1/payment_intents'; |
79 | 79 | $urls_used = array(); |
80 | 80 | |
81 | - if ( WC_Stripe_Helper::is_wc_lt( '3.0' ) ) { |
|
81 | + if (WC_Stripe_Helper::is_wc_lt('3.0')) { |
|
82 | 82 | $initial_order->payment_method = 'stripe'; |
83 | - update_post_meta( $order_id, '_payment_method', 'stripe' ); // for `wc_get_order()`. |
|
83 | + update_post_meta($order_id, '_payment_method', 'stripe'); // for `wc_get_order()`. |
|
84 | 84 | } else { |
85 | - $initial_order->set_payment_method( 'stripe' ); |
|
85 | + $initial_order->set_payment_method('stripe'); |
|
86 | 86 | $initial_order->save(); |
87 | 87 | } |
88 | 88 | |
89 | 89 | // Arrange: Mock prepare_source() so that we have a customer and source. |
90 | 90 | $this->wc_stripe_subs_compat |
91 | - ->expects( $this->any() ) |
|
92 | - ->method( 'prepare_source' ) |
|
91 | + ->expects($this->any()) |
|
92 | + ->method('prepare_source') |
|
93 | 93 | ->will( |
94 | 94 | $this->returnValue( |
95 | 95 | (object) array( |
@@ -103,11 +103,11 @@ discard block |
||
103 | 103 | |
104 | 104 | // Emulate a subscription. |
105 | 105 | $this->wc_stripe_subs_compat |
106 | - ->expects( $this->any() ) |
|
107 | - ->method( 'has_subscription' ) |
|
108 | - ->will( $this->returnValue( true ) ); |
|
106 | + ->expects($this->any()) |
|
107 | + ->method('has_subscription') |
|
108 | + ->will($this->returnValue(true)); |
|
109 | 109 | |
110 | - $pre_http_request_response_callback = function( $preempt, $request_args, $url ) use ( |
|
110 | + $pre_http_request_response_callback = function($preempt, $request_args, $url) use ( |
|
111 | 111 | $stripe_amount, |
112 | 112 | $currency, |
113 | 113 | $customer, |
@@ -118,9 +118,9 @@ discard block |
||
118 | 118 | &$urls_used |
119 | 119 | ) { |
120 | 120 | // Add all urls to array so we can later make assertions about which endpoints were used. |
121 | - array_push( $urls_used, $url ); |
|
121 | + array_push($urls_used, $url); |
|
122 | 122 | // Continue without mocking the request if it's not the endpoint we care about. |
123 | - if ( 0 !== strpos( $url, $intents_api_endpoint ) ) { |
|
123 | + if (0 !== strpos($url, $intents_api_endpoint)) { |
|
124 | 124 | return false; |
125 | 125 | } |
126 | 126 | |
@@ -128,7 +128,7 @@ discard block |
||
128 | 128 | $response = array( |
129 | 129 | 'headers' => array(), |
130 | 130 | // Too bad we aren't dynamically setting things 'cus_123abc' when using this file. |
131 | - 'body' => file_get_contents( 'tests/phpunit/dummy-data/subscription_signup_response_success.json' ), |
|
131 | + 'body' => file_get_contents('tests/phpunit/dummy-data/subscription_signup_response_success.json'), |
|
132 | 132 | 'response' => array( |
133 | 133 | 'code' => 200, |
134 | 134 | 'message' => 'OK', |
@@ -138,17 +138,17 @@ discard block |
||
138 | 138 | ); |
139 | 139 | |
140 | 140 | // Respond with a successfull intent for confirmations. |
141 | - if ( $url !== $intents_api_endpoint ) { |
|
142 | - $response['body'] = str_replace( 'requires_confirmation', 'succeeded', $response['body'] ); |
|
141 | + if ($url !== $intents_api_endpoint) { |
|
142 | + $response['body'] = str_replace('requires_confirmation', 'succeeded', $response['body']); |
|
143 | 143 | return $response; |
144 | 144 | } |
145 | 145 | |
146 | 146 | // Assert: the request method is POST. |
147 | - $this->assertArrayHasKey( 'method', $request_args ); |
|
148 | - $this->assertSame( 'POST', $request_args['method'] ); |
|
147 | + $this->assertArrayHasKey('method', $request_args); |
|
148 | + $this->assertSame('POST', $request_args['method']); |
|
149 | 149 | |
150 | 150 | // Assert: the request has a body. |
151 | - $this->assertArrayHasKey( 'body', $request_args ); |
|
151 | + $this->assertArrayHasKey('body', $request_args); |
|
152 | 152 | |
153 | 153 | // Assert: the request body contains these values. |
154 | 154 | $expected_request_body_values = array( |
@@ -158,11 +158,11 @@ discard block |
||
158 | 158 | 'statement_descriptor' => $statement_descriptor, |
159 | 159 | 'customer' => $customer, |
160 | 160 | 'setup_future_usage' => 'off_session', |
161 | - 'payment_method_types' => array( 'card' ), |
|
161 | + 'payment_method_types' => array('card'), |
|
162 | 162 | ); |
163 | - foreach ( $expected_request_body_values as $key => $value ) { |
|
164 | - $this->assertArrayHasKey( $key, $request_args['body'] ); |
|
165 | - $this->assertSame( $value, $request_args['body'][ $key ] ); |
|
163 | + foreach ($expected_request_body_values as $key => $value) { |
|
164 | + $this->assertArrayHasKey($key, $request_args['body']); |
|
165 | + $this->assertSame($value, $request_args['body'][$key]); |
|
166 | 166 | } |
167 | 167 | |
168 | 168 | // Assert: the request body contains these keys, without checking for their value. |
@@ -170,48 +170,48 @@ discard block |
||
170 | 170 | 'description', |
171 | 171 | 'capture_method', |
172 | 172 | ); |
173 | - foreach ( $expected_request_body_keys as $key ) { |
|
174 | - $this->assertArrayHasKey( $key, $request_args['body'] ); |
|
173 | + foreach ($expected_request_body_keys as $key) { |
|
174 | + $this->assertArrayHasKey($key, $request_args['body']); |
|
175 | 175 | } |
176 | 176 | |
177 | 177 | // Assert: the body metadata contains the order ID. |
178 | - $this->assertSame( $order_id, absint( $request_args['body']['metadata']['order_id'] ) ); |
|
178 | + $this->assertSame($order_id, absint($request_args['body']['metadata']['order_id'])); |
|
179 | 179 | |
180 | 180 | // // Assert: the body metadata has these keys, without checking for their value. |
181 | 181 | $expected_metadata_keys = array( |
182 | 182 | 'customer_name', |
183 | 183 | 'customer_email', |
184 | 184 | ); |
185 | - foreach ( $expected_metadata_keys as $key ) { |
|
186 | - $this->assertArrayHasKey( $key, $request_args['body']['metadata'] ); |
|
185 | + foreach ($expected_metadata_keys as $key) { |
|
186 | + $this->assertArrayHasKey($key, $request_args['body']['metadata']); |
|
187 | 187 | } |
188 | 188 | |
189 | 189 | // Return dummy content as the response. |
190 | 190 | return $response; |
191 | 191 | }; |
192 | - add_filter( 'pre_http_request', $pre_http_request_response_callback, 10, 3 ); |
|
192 | + add_filter('pre_http_request', $pre_http_request_response_callback, 10, 3); |
|
193 | 193 | |
194 | 194 | // Act: call process_subscription_payment(). |
195 | 195 | // We need to use `wc_stripe_subs_compat` here because we mocked this class earlier. |
196 | - $result = $this->wc_stripe_subs_compat->process_payment( $order_id ); |
|
196 | + $result = $this->wc_stripe_subs_compat->process_payment($order_id); |
|
197 | 197 | |
198 | 198 | // Assert: nothing was returned. |
199 | - $this->assertEquals( $result['result'], 'success' ); |
|
200 | - $this->assertArrayHasKey( 'redirect', $result ); |
|
199 | + $this->assertEquals($result['result'], 'success'); |
|
200 | + $this->assertArrayHasKey('redirect', $result); |
|
201 | 201 | |
202 | - $order = wc_get_order( $order_id ); |
|
202 | + $order = wc_get_order($order_id); |
|
203 | 203 | $order_data = ( |
204 | - WC_Stripe_Helper::is_wc_lt( '3.0' ) |
|
205 | - ? get_post_meta( $order_id, '_stripe_intent_id', true ) |
|
206 | - : $order->get_meta( '_stripe_intent_id' ) |
|
204 | + WC_Stripe_Helper::is_wc_lt('3.0') |
|
205 | + ? get_post_meta($order_id, '_stripe_intent_id', true) |
|
206 | + : $order->get_meta('_stripe_intent_id') |
|
207 | 207 | ); |
208 | 208 | |
209 | - $this->assertEquals( $order_data, 'pi_123abc' ); |
|
209 | + $this->assertEquals($order_data, 'pi_123abc'); |
|
210 | 210 | |
211 | 211 | // Assert: called payment intents. |
212 | - $this->assertTrue( in_array( $intents_api_endpoint, $urls_used, true ) ); |
|
212 | + $this->assertTrue(in_array($intents_api_endpoint, $urls_used, true)); |
|
213 | 213 | |
214 | 214 | // Clean up. |
215 | - remove_filter( 'pre_http_request', array( $this, 'pre_http_request_response_success' ) ); |
|
215 | + remove_filter('pre_http_request', array($this, 'pre_http_request_response_success')); |
|
216 | 216 | } |
217 | 217 | } |
@@ -34,17 +34,17 @@ discard block |
||
34 | 34 | public function setUp() { |
35 | 35 | parent::setUp(); |
36 | 36 | |
37 | - $this->wc_stripe_subs_compat = $this->getMockBuilder( 'WC_Stripe_Subs_Compat' ) |
|
37 | + $this->wc_stripe_subs_compat = $this->getMockBuilder('WC_Stripe_Subs_Compat') |
|
38 | 38 | ->disableOriginalConstructor() |
39 | - ->setMethods( array( 'prepare_order_source', 'has_subscription' ) ) |
|
39 | + ->setMethods(array('prepare_order_source', 'has_subscription')) |
|
40 | 40 | ->getMock(); |
41 | 41 | |
42 | 42 | // Mocked in order to get metadata[payment_type] = recurring in the HTTP request. |
43 | 43 | $this->wc_stripe_subs_compat |
44 | - ->expects( $this->any() ) |
|
45 | - ->method( 'has_subscription' ) |
|
44 | + ->expects($this->any()) |
|
45 | + ->method('has_subscription') |
|
46 | 46 | ->will( |
47 | - $this->returnValue( true ) |
|
47 | + $this->returnValue(true) |
|
48 | 48 | ); |
49 | 49 | |
50 | 50 | $this->statement_descriptor = 'This is a statement descriptor.'; |
@@ -62,7 +62,7 @@ discard block |
||
62 | 62 | public function tearDown() { |
63 | 63 | parent::tearDown(); |
64 | 64 | |
65 | - delete_option( 'woocommerce_stripe_settings' ); |
|
65 | + delete_option('woocommerce_stripe_settings'); |
|
66 | 66 | } |
67 | 67 | |
68 | 68 | /** |
@@ -79,11 +79,11 @@ discard block |
||
79 | 79 | // Arrange: Some variables we'll use later. |
80 | 80 | $renewal_order = WC_Helper_Order::create_order(); |
81 | 81 | $amount = 20; // WC Subs sends an amount to be used, instead of using the order amount. |
82 | - $stripe_amount = WC_Stripe_Helper::get_stripe_amount( $amount ); |
|
83 | - $currency = strtolower( WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $renewal_order->get_order_currency() : $renewal_order->get_currency() ); |
|
82 | + $stripe_amount = WC_Stripe_Helper::get_stripe_amount($amount); |
|
83 | + $currency = strtolower(WC_Stripe_Helper::is_wc_lt('3.0') ? $renewal_order->get_order_currency() : $renewal_order->get_currency()); |
|
84 | 84 | $customer = 'cus_123abc'; |
85 | 85 | $source = 'src_123abc'; |
86 | - $statement_descriptor = WC_Stripe_Helper::clean_statement_descriptor( $this->statement_descriptor ); |
|
86 | + $statement_descriptor = WC_Stripe_Helper::clean_statement_descriptor($this->statement_descriptor); |
|
87 | 87 | $should_retry = false; |
88 | 88 | $previous_error = false; |
89 | 89 | $payments_intents_api_endpoint = 'https://api.stripe.com/v1/payment_intents'; |
@@ -91,16 +91,16 @@ discard block |
||
91 | 91 | |
92 | 92 | // Arrange: Set payment method to stripe, and not stripe_sepa, for example. |
93 | 93 | // This needed for testing the statement_descriptor. |
94 | - if ( WC_Stripe_Helper::is_wc_lt( '3.0' ) ) { |
|
94 | + if (WC_Stripe_Helper::is_wc_lt('3.0')) { |
|
95 | 95 | $renewal_order->payment_method = 'stripe'; |
96 | 96 | } else { |
97 | - $renewal_order->set_payment_method( 'stripe' ); |
|
97 | + $renewal_order->set_payment_method('stripe'); |
|
98 | 98 | } |
99 | 99 | |
100 | 100 | // Arrange: Mock prepare_order_source() so that we have a customer and source. |
101 | 101 | $this->wc_stripe_subs_compat |
102 | - ->expects( $this->any() ) |
|
103 | - ->method( 'prepare_order_source' ) |
|
102 | + ->expects($this->any()) |
|
103 | + ->method('prepare_order_source') |
|
104 | 104 | ->will( |
105 | 105 | $this->returnValue( |
106 | 106 | (object) array( |
@@ -114,7 +114,7 @@ discard block |
||
114 | 114 | |
115 | 115 | // Arrange: Add filter that will return a mocked HTTP response for the payment_intent call. |
116 | 116 | // Note: There are assertions in the callback function. |
117 | - $pre_http_request_response_callback = function( $preempt, $request_args, $url ) use ( |
|
117 | + $pre_http_request_response_callback = function($preempt, $request_args, $url) use ( |
|
118 | 118 | $renewal_order, |
119 | 119 | $stripe_amount, |
120 | 120 | $currency, |
@@ -125,35 +125,35 @@ discard block |
||
125 | 125 | &$urls_used |
126 | 126 | ) { |
127 | 127 | // Add all urls to array so we can later make assertions about which endpoints were used. |
128 | - array_push( $urls_used, $url ); |
|
128 | + array_push($urls_used, $url); |
|
129 | 129 | |
130 | 130 | // Continue without mocking the request if it's not the endpoint we care about. |
131 | - if ( $payments_intents_api_endpoint !== $url ) { |
|
131 | + if ($payments_intents_api_endpoint !== $url) { |
|
132 | 132 | return false; |
133 | 133 | } |
134 | 134 | |
135 | 135 | // Assert: the request method is POST. |
136 | - $this->assertArrayHasKey( 'method', $request_args ); |
|
137 | - $this->assertSame( 'POST', $request_args['method'] ); |
|
136 | + $this->assertArrayHasKey('method', $request_args); |
|
137 | + $this->assertSame('POST', $request_args['method']); |
|
138 | 138 | |
139 | 139 | // Assert: the request has a body. |
140 | - $this->assertArrayHasKey( 'body', $request_args ); |
|
140 | + $this->assertArrayHasKey('body', $request_args); |
|
141 | 141 | |
142 | 142 | // Assert: the request body contains these values. |
143 | 143 | $expected_request_body_values = array( |
144 | 144 | 'source' => $source, |
145 | 145 | 'amount' => $stripe_amount, |
146 | 146 | 'currency' => $currency, |
147 | - 'payment_method_types' => array( 'card' ), |
|
147 | + 'payment_method_types' => array('card'), |
|
148 | 148 | 'customer' => $customer, |
149 | 149 | 'off_session' => 'true', |
150 | 150 | 'confirm' => 'true', |
151 | 151 | 'confirmation_method' => 'automatic', |
152 | 152 | 'statement_descriptor' => $statement_descriptor, |
153 | 153 | ); |
154 | - foreach ( $expected_request_body_values as $key => $value ) { |
|
155 | - $this->assertArrayHasKey( $key, $request_args['body'] ); |
|
156 | - $this->assertSame( $value, $request_args['body'][ $key ] ); |
|
154 | + foreach ($expected_request_body_values as $key => $value) { |
|
155 | + $this->assertArrayHasKey($key, $request_args['body']); |
|
156 | + $this->assertSame($value, $request_args['body'][$key]); |
|
157 | 157 | } |
158 | 158 | |
159 | 159 | // Assert: the request body contains these keys, without checking for their value. |
@@ -161,19 +161,19 @@ discard block |
||
161 | 161 | 'description', |
162 | 162 | 'metadata', |
163 | 163 | ); |
164 | - foreach ( $expected_request_body_keys as $key ) { |
|
165 | - $this->assertArrayHasKey( $key, $request_args['body'] ); |
|
164 | + foreach ($expected_request_body_keys as $key) { |
|
165 | + $this->assertArrayHasKey($key, $request_args['body']); |
|
166 | 166 | } |
167 | 167 | |
168 | 168 | // Assert: the body metadata has these values. |
169 | - $order_id = WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $renewal_order->id : (string) $renewal_order->get_id(); |
|
169 | + $order_id = WC_Stripe_Helper::is_wc_lt('3.0') ? $renewal_order->id : (string) $renewal_order->get_id(); |
|
170 | 170 | $expected_metadata_values = array( |
171 | 171 | 'order_id' => $order_id, |
172 | 172 | 'payment_type' => 'recurring', |
173 | 173 | ); |
174 | - foreach ( $expected_metadata_values as $key => $value ) { |
|
175 | - $this->assertArrayHasKey( $key, $request_args['body']['metadata'] ); |
|
176 | - $this->assertSame( $value, $request_args['body']['metadata'][ $key ] ); |
|
174 | + foreach ($expected_metadata_values as $key => $value) { |
|
175 | + $this->assertArrayHasKey($key, $request_args['body']['metadata']); |
|
176 | + $this->assertSame($value, $request_args['body']['metadata'][$key]); |
|
177 | 177 | } |
178 | 178 | |
179 | 179 | // Assert: the body metadata has these keys, without checking for their value. |
@@ -182,8 +182,8 @@ discard block |
||
182 | 182 | 'customer_email', |
183 | 183 | 'site_url', |
184 | 184 | ); |
185 | - foreach ( $expected_metadata_keys as $key ) { |
|
186 | - $this->assertArrayHasKey( $key, $request_args['body']['metadata'] ); |
|
185 | + foreach ($expected_metadata_keys as $key) { |
|
186 | + $this->assertArrayHasKey($key, $request_args['body']['metadata']); |
|
187 | 187 | } |
188 | 188 | |
189 | 189 | // Assert: the request body does not contains these keys. |
@@ -192,15 +192,15 @@ discard block |
||
192 | 192 | 'capture_method', // The default ('automatic') is what we want in this case, so we leave it off. |
193 | 193 | 'expand[]', |
194 | 194 | ); |
195 | - foreach ( $expected_missing_request_body_keys as $key ) { |
|
196 | - $this->assertArrayNotHasKey( $key, $request_args['body'] ); |
|
195 | + foreach ($expected_missing_request_body_keys as $key) { |
|
196 | + $this->assertArrayNotHasKey($key, $request_args['body']); |
|
197 | 197 | } |
198 | 198 | |
199 | 199 | // Arrange: return dummy content as the response. |
200 | 200 | return array( |
201 | 201 | 'headers' => array(), |
202 | 202 | // Too bad we aren't dynamically setting things 'cus_123abc' when using this file. |
203 | - 'body' => file_get_contents( 'tests/phpunit/dummy-data/subscription_renewal_response_success.json' ), |
|
203 | + 'body' => file_get_contents('tests/phpunit/dummy-data/subscription_renewal_response_success.json'), |
|
204 | 204 | 'response' => array( |
205 | 205 | 'code' => 200, |
206 | 206 | 'message' => 'OK', |
@@ -210,55 +210,55 @@ discard block |
||
210 | 210 | ); |
211 | 211 | }; |
212 | 212 | |
213 | - add_filter( 'pre_http_request', $pre_http_request_response_callback, 10, 3 ); |
|
213 | + add_filter('pre_http_request', $pre_http_request_response_callback, 10, 3); |
|
214 | 214 | |
215 | 215 | // Arrange: Make sure to check that an action we care about was called |
216 | 216 | // by hooking into it. |
217 | 217 | $mock_action_process_payment = new MockAction(); |
218 | 218 | add_action( |
219 | 219 | 'wc_gateway_stripe_process_payment', |
220 | - [ &$mock_action_process_payment, 'action' ] |
|
220 | + [&$mock_action_process_payment, 'action'] |
|
221 | 221 | ); |
222 | 222 | |
223 | 223 | // Act: call process_subscription_payment(). |
224 | 224 | // We need to use `wc_stripe_subs_compat` here because we mocked this class earlier. |
225 | - $result = $this->wc_stripe_subs_compat->process_subscription_payment( 20, $renewal_order, $should_retry, $previous_error ); |
|
225 | + $result = $this->wc_stripe_subs_compat->process_subscription_payment(20, $renewal_order, $should_retry, $previous_error); |
|
226 | 226 | |
227 | 227 | // Assert: nothing was returned. |
228 | - $this->assertEquals( $result, null ); |
|
228 | + $this->assertEquals($result, null); |
|
229 | 229 | |
230 | 230 | // Assert that we saved the payment intent to the order. |
231 | - $order_id = WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $renewal_order->id : $renewal_order->get_id(); |
|
232 | - $order = wc_get_order( $order_id ); |
|
231 | + $order_id = WC_Stripe_Helper::is_wc_lt('3.0') ? $renewal_order->id : $renewal_order->get_id(); |
|
232 | + $order = wc_get_order($order_id); |
|
233 | 233 | $order_data = ( |
234 | - WC_Stripe_Helper::is_wc_lt( '3.0' ) |
|
235 | - ? get_post_meta( $order_id, '_stripe_intent_id', true ) |
|
236 | - : $order->get_meta( '_stripe_intent_id' ) |
|
234 | + WC_Stripe_Helper::is_wc_lt('3.0') |
|
235 | + ? get_post_meta($order_id, '_stripe_intent_id', true) |
|
236 | + : $order->get_meta('_stripe_intent_id') |
|
237 | 237 | ); |
238 | - $this->assertEquals( $order_data, 'pi_123abc' ); |
|
238 | + $this->assertEquals($order_data, 'pi_123abc'); |
|
239 | 239 | |
240 | 240 | // Transaction ID was saved to order. |
241 | 241 | $order_transaction_id = ( |
242 | - WC_Stripe_Helper::is_wc_lt( '3.0' ) |
|
243 | - ? get_post_meta( $order_id, '_transaction_id', true ) |
|
242 | + WC_Stripe_Helper::is_wc_lt('3.0') |
|
243 | + ? get_post_meta($order_id, '_transaction_id', true) |
|
244 | 244 | : $order->get_transaction_id() |
245 | 245 | ); |
246 | - $this->assertEquals( $order_transaction_id, 'ch_123abc' ); |
|
246 | + $this->assertEquals($order_transaction_id, 'ch_123abc'); |
|
247 | 247 | |
248 | 248 | // Assert: the order was marked as processing (this is done in process_response()). |
249 | - $this->assertEquals( $order->get_status(), 'processing' ); |
|
249 | + $this->assertEquals($order->get_status(), 'processing'); |
|
250 | 250 | |
251 | 251 | // Assert: called payment intents. |
252 | - $this->assertTrue( in_array( $payments_intents_api_endpoint, $urls_used ) ); |
|
252 | + $this->assertTrue(in_array($payments_intents_api_endpoint, $urls_used)); |
|
253 | 253 | |
254 | 254 | // Assert: Our hook was called once. |
255 | - $this->assertEquals( 1, $mock_action_process_payment->get_call_count() ); |
|
255 | + $this->assertEquals(1, $mock_action_process_payment->get_call_count()); |
|
256 | 256 | |
257 | 257 | // Assert: Only our hook was called. |
258 | - $this->assertEquals( array( 'wc_gateway_stripe_process_payment' ), $mock_action_process_payment->get_tags() ); |
|
258 | + $this->assertEquals(array('wc_gateway_stripe_process_payment'), $mock_action_process_payment->get_tags()); |
|
259 | 259 | |
260 | 260 | // Clean up. |
261 | - remove_filter( 'pre_http_request', array( $this, 'pre_http_request_response_success' ) ); |
|
261 | + remove_filter('pre_http_request', array($this, 'pre_http_request_response_success')); |
|
262 | 262 | } |
263 | 263 | |
264 | 264 | /** |
@@ -275,8 +275,8 @@ discard block |
||
275 | 275 | // Arrange: Some variables we'll use later. |
276 | 276 | $renewal_order = WC_Helper_Order::create_order(); |
277 | 277 | $amount = 20; |
278 | - $stripe_amount = WC_Stripe_Helper::get_stripe_amount( $amount ); |
|
279 | - $currency = strtolower( WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $renewal_order->get_order_currency() : $renewal_order->get_currency() ); |
|
278 | + $stripe_amount = WC_Stripe_Helper::get_stripe_amount($amount); |
|
279 | + $currency = strtolower(WC_Stripe_Helper::is_wc_lt('3.0') ? $renewal_order->get_order_currency() : $renewal_order->get_currency()); |
|
280 | 280 | $customer = 'cus_123abc'; |
281 | 281 | $source = 'src_123abc'; |
282 | 282 | $should_retry = false; |
@@ -286,8 +286,8 @@ discard block |
||
286 | 286 | |
287 | 287 | // Arrange: Mock prepare_order_source() so that we have a customer and source. |
288 | 288 | $this->wc_stripe_subs_compat |
289 | - ->expects( $this->any() ) |
|
290 | - ->method( 'prepare_order_source' ) |
|
289 | + ->expects($this->any()) |
|
290 | + ->method('prepare_order_source') |
|
291 | 291 | ->will( |
292 | 292 | $this->returnValue( |
293 | 293 | (object) array( |
@@ -300,7 +300,7 @@ discard block |
||
300 | 300 | ); |
301 | 301 | |
302 | 302 | // Arrange: Add filter that will return a mocked HTTP response for the payment_intent call. |
303 | - $pre_http_request_response_callback = function( $preempt, $request_args, $url ) use ( |
|
303 | + $pre_http_request_response_callback = function($preempt, $request_args, $url) use ( |
|
304 | 304 | $renewal_order, |
305 | 305 | $stripe_amount, |
306 | 306 | $currency, |
@@ -310,10 +310,10 @@ discard block |
||
310 | 310 | &$urls_used |
311 | 311 | ) { |
312 | 312 | // Add all urls to array so we can later make assertions about which endpoints were used. |
313 | - array_push( $urls_used, $url ); |
|
313 | + array_push($urls_used, $url); |
|
314 | 314 | |
315 | 315 | // Continue without mocking the request if it's not the endpoint we care about. |
316 | - if ( $payments_intents_api_endpoint !== $url ) { |
|
316 | + if ($payments_intents_api_endpoint !== $url) { |
|
317 | 317 | return false; |
318 | 318 | } |
319 | 319 | |
@@ -321,7 +321,7 @@ discard block |
||
321 | 321 | return array( |
322 | 322 | 'headers' => array(), |
323 | 323 | // Too bad we aren't dynamically setting things 'cus_123abc' when using this file. |
324 | - 'body' => file_get_contents( 'tests/phpunit/dummy-data/subscription_renewal_response_authentication_required.json' ), |
|
324 | + 'body' => file_get_contents('tests/phpunit/dummy-data/subscription_renewal_response_authentication_required.json'), |
|
325 | 325 | 'response' => array( |
326 | 326 | 'code' => 402, |
327 | 327 | 'message' => 'Payment Required', |
@@ -330,56 +330,56 @@ discard block |
||
330 | 330 | 'filename' => null, |
331 | 331 | ); |
332 | 332 | }; |
333 | - add_filter( 'pre_http_request', $pre_http_request_response_callback, 10, 3 ); |
|
333 | + add_filter('pre_http_request', $pre_http_request_response_callback, 10, 3); |
|
334 | 334 | |
335 | 335 | // Arrange: Make sure to check that an action we care about was called |
336 | 336 | // by hooking into it. |
337 | 337 | $mock_action_process_payment = new MockAction(); |
338 | 338 | add_action( |
339 | 339 | 'wc_gateway_stripe_process_payment_authentication_required', |
340 | - [ &$mock_action_process_payment, 'action' ] |
|
340 | + [&$mock_action_process_payment, 'action'] |
|
341 | 341 | ); |
342 | 342 | |
343 | 343 | // Act: call process_subscription_payment(). |
344 | 344 | // We need to use `wc_stripe_subs_compat` here because we mocked this class earlier. |
345 | - $result = $this->wc_stripe_subs_compat->process_subscription_payment( 20, $renewal_order, $should_retry, $previous_error ); |
|
345 | + $result = $this->wc_stripe_subs_compat->process_subscription_payment(20, $renewal_order, $should_retry, $previous_error); |
|
346 | 346 | |
347 | 347 | // Assert: nothing was returned. |
348 | - $this->assertEquals( $result, null ); |
|
348 | + $this->assertEquals($result, null); |
|
349 | 349 | |
350 | 350 | // Assert that we saved the payment intent to the order. |
351 | - $order_id = WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $renewal_order->id : $renewal_order->get_id(); |
|
352 | - $order = wc_get_order( $order_id ); |
|
351 | + $order_id = WC_Stripe_Helper::is_wc_lt('3.0') ? $renewal_order->id : $renewal_order->get_id(); |
|
352 | + $order = wc_get_order($order_id); |
|
353 | 353 | $order_data = ( |
354 | - WC_Stripe_Helper::is_wc_lt( '3.0' ) |
|
355 | - ? get_post_meta( $order_id, '_stripe_intent_id', true ) |
|
356 | - : $order->get_meta( '_stripe_intent_id' ) |
|
354 | + WC_Stripe_Helper::is_wc_lt('3.0') |
|
355 | + ? get_post_meta($order_id, '_stripe_intent_id', true) |
|
356 | + : $order->get_meta('_stripe_intent_id') |
|
357 | 357 | ); |
358 | 358 | $order_transaction_id = ( |
359 | - WC_Stripe_Helper::is_wc_lt( '3.0' ) |
|
360 | - ? get_post_meta( $order_id, '_transaction_id', true ) |
|
359 | + WC_Stripe_Helper::is_wc_lt('3.0') |
|
360 | + ? get_post_meta($order_id, '_transaction_id', true) |
|
361 | 361 | : $order->get_transaction_id() |
362 | 362 | ); |
363 | 363 | |
364 | 364 | // Intent was saved to order even though there was an error in the response body. |
365 | - $this->assertEquals( $order_data, 'pi_123abc' ); |
|
365 | + $this->assertEquals($order_data, 'pi_123abc'); |
|
366 | 366 | |
367 | 367 | // Transaction ID was saved to order. |
368 | - $this->assertEquals( $order_transaction_id, 'ch_123abc' ); |
|
368 | + $this->assertEquals($order_transaction_id, 'ch_123abc'); |
|
369 | 369 | |
370 | 370 | // Assert: the order was marked as failed. |
371 | - $this->assertEquals( $order->get_status(), 'failed' ); |
|
371 | + $this->assertEquals($order->get_status(), 'failed'); |
|
372 | 372 | |
373 | 373 | // Assert: called payment intents. |
374 | - $this->assertTrue( in_array( $payments_intents_api_endpoint, $urls_used ) ); |
|
374 | + $this->assertTrue(in_array($payments_intents_api_endpoint, $urls_used)); |
|
375 | 375 | |
376 | 376 | // Assert: Our hook was called once. |
377 | - $this->assertEquals( 1, $mock_action_process_payment->get_call_count() ); |
|
377 | + $this->assertEquals(1, $mock_action_process_payment->get_call_count()); |
|
378 | 378 | |
379 | 379 | // Assert: Only our hook was called. |
380 | - $this->assertEquals( array( 'wc_gateway_stripe_process_payment_authentication_required' ), $mock_action_process_payment->get_tags() ); |
|
380 | + $this->assertEquals(array('wc_gateway_stripe_process_payment_authentication_required'), $mock_action_process_payment->get_tags()); |
|
381 | 381 | |
382 | 382 | // Clean up. |
383 | - remove_filter( 'pre_http_request', array( $this, 'pre_http_request_response_success' ) ); |
|
383 | + remove_filter('pre_http_request', array($this, 'pre_http_request_response_success')); |
|
384 | 384 | } |
385 | 385 | } |
@@ -1,17 +1,17 @@ |
||
1 | 1 | <?php |
2 | -if ( ! defined( 'ABSPATH' ) ) { |
|
2 | +if ( ! defined('ABSPATH')) { |
|
3 | 3 | exit; // Exit if accessed directly |
4 | 4 | } |
5 | 5 | |
6 | 6 | echo $email_heading . "\n\n"; |
7 | 7 | |
8 | 8 | // translators: %1$s: name of the blog, %2$s: link to checkout payment url, note: no full stop due to url at the end |
9 | -printf( esc_html_x( 'The automatic payment to renew your subscription with %1$s has failed. To reactivate the subscription, please login and authorize the renewal from your account page: %2$s', 'In failed renewal authentication email', 'woocommerce-gateway-stripe' ), esc_html( get_bloginfo( 'name' ) ), esc_attr( $authorization_url ) ); |
|
9 | +printf(esc_html_x('The automatic payment to renew your subscription with %1$s has failed. To reactivate the subscription, please login and authorize the renewal from your account page: %2$s', 'In failed renewal authentication email', 'woocommerce-gateway-stripe'), esc_html(get_bloginfo('name')), esc_attr($authorization_url)); |
|
10 | 10 | |
11 | 11 | echo "\n\n=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=\n"; |
12 | 12 | |
13 | -do_action( 'woocommerce_subscriptions_email_order_details', $order, $sent_to_admin, $plain_text, $email ); |
|
13 | +do_action('woocommerce_subscriptions_email_order_details', $order, $sent_to_admin, $plain_text, $email); |
|
14 | 14 | |
15 | 15 | echo "\n=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=\n\n"; |
16 | 16 | |
17 | -echo apply_filters( 'woocommerce_email_footer_text', get_option( 'woocommerce_email_footer_text' ) ); |
|
17 | +echo apply_filters('woocommerce_email_footer_text', get_option('woocommerce_email_footer_text')); |
@@ -1,17 +1,17 @@ |
||
1 | 1 | <?php |
2 | -if ( ! defined( 'ABSPATH' ) ) { |
|
2 | +if ( ! defined('ABSPATH')) { |
|
3 | 3 | exit; // Exit if accessed directly |
4 | 4 | } |
5 | 5 | ?> |
6 | 6 | |
7 | -<?php do_action( 'woocommerce_email_header', $email_heading, $email ); ?> |
|
7 | +<?php do_action('woocommerce_email_header', $email_heading, $email); ?> |
|
8 | 8 | |
9 | 9 | <p> |
10 | 10 | <?php |
11 | 11 | // translators: %1$s: name of the blog, %2$s: link to payment re-authentication URL, note: no full stop due to url at the end |
12 | - echo wp_kses( sprintf( _x( 'The automatic payment to renew your subscription with %1$s has failed. To reactivate the subscription, please login and authorize the renewal from your account page: %2$s', 'In failed renewal authentication email', 'woocommerce-gateway-stripe' ), esc_html( get_bloginfo( 'name' ) ), '<a href="' . esc_url( $authorization_url ) . '">' . esc_html__( 'Authorize the payment »', 'woocommerce-gateway-stripe' ) . '</a>' ), array( 'a' => array( 'href' => true ) ) ); ?> |
|
12 | + echo wp_kses(sprintf(_x('The automatic payment to renew your subscription with %1$s has failed. To reactivate the subscription, please login and authorize the renewal from your account page: %2$s', 'In failed renewal authentication email', 'woocommerce-gateway-stripe'), esc_html(get_bloginfo('name')), '<a href="' . esc_url($authorization_url) . '">' . esc_html__('Authorize the payment »', 'woocommerce-gateway-stripe') . '</a>'), array('a' => array('href' => true))); ?> |
|
13 | 13 | </p> |
14 | 14 | |
15 | -<?php do_action( 'woocommerce_subscriptions_email_order_details', $order, $sent_to_admin, $plain_text, $email ); ?> |
|
15 | +<?php do_action('woocommerce_subscriptions_email_order_details', $order, $sent_to_admin, $plain_text, $email); ?> |
|
16 | 16 | |
17 | -<?php do_action( 'woocommerce_email_footer', $email ); ?> |
|
17 | +<?php do_action('woocommerce_email_footer', $email); ?> |
@@ -1,5 +1,5 @@ discard block |
||
1 | 1 | <?php |
2 | -if ( ! defined( 'ABSPATH' ) ) { |
|
2 | +if ( ! defined('ABSPATH')) { |
|
3 | 3 | exit; // Exit if accessed directly. |
4 | 4 | } |
5 | 5 | |
@@ -30,7 +30,7 @@ discard block |
||
30 | 30 | 'email_heading' => $this->get_heading(), |
31 | 31 | 'sent_to_admin' => false, |
32 | 32 | 'plain_text' => false, |
33 | - 'authorization_url' => $this->get_authorization_url( $this->object ), |
|
33 | + 'authorization_url' => $this->get_authorization_url($this->object), |
|
34 | 34 | 'email' => $this, |
35 | 35 | ), |
36 | 36 | '', |
@@ -53,7 +53,7 @@ discard block |
||
53 | 53 | 'email_heading' => $this->get_heading(), |
54 | 54 | 'sent_to_admin' => false, |
55 | 55 | 'plain_text' => true, |
56 | - 'authorization_url' => $this->get_authorization_url( $this->object ), |
|
56 | + 'authorization_url' => $this->get_authorization_url($this->object), |
|
57 | 57 | 'email' => $this, |
58 | 58 | ), |
59 | 59 | '', |
@@ -68,8 +68,8 @@ discard block |
||
68 | 68 | * @param WC_Order $order The order whose payment needs authentication. |
69 | 69 | * @return string |
70 | 70 | */ |
71 | - public function get_authorization_url( $order ) { |
|
72 | - return add_query_arg( 'wc-stripe-confirmation', 1, $order->get_checkout_payment_url( false ) ); |
|
71 | + public function get_authorization_url($order) { |
|
72 | + return add_query_arg('wc-stripe-confirmation', 1, $order->get_checkout_payment_url(false)); |
|
73 | 73 | } |
74 | 74 | |
75 | 75 | /** |
@@ -81,9 +81,9 @@ discard block |
||
81 | 81 | |
82 | 82 | $this->form_fields = array( |
83 | 83 | 'enabled' => array( |
84 | - 'title' => _x( 'Enable/Disable', 'an email notification', 'woocommerce-gateway-stripe' ), |
|
84 | + 'title' => _x('Enable/Disable', 'an email notification', 'woocommerce-gateway-stripe'), |
|
85 | 85 | 'type' => 'checkbox', |
86 | - 'label' => __( 'Enable this email notification', 'woocommerce-gateway-stripe' ), |
|
86 | + 'label' => __('Enable this email notification', 'woocommerce-gateway-stripe'), |
|
87 | 87 | 'default' => 'yes', |
88 | 88 | ), |
89 | 89 | |
@@ -98,29 +98,29 @@ discard block |
||
98 | 98 | * |
99 | 99 | * @param WC_Order $order The renewal order whose payment failed. |
100 | 100 | */ |
101 | - public function trigger( $order ) { |
|
102 | - if ( ! $this->is_enabled() ) { |
|
101 | + public function trigger($order) { |
|
102 | + if ( ! $this->is_enabled()) { |
|
103 | 103 | return; |
104 | 104 | } |
105 | 105 | |
106 | 106 | $this->object = $order; |
107 | 107 | |
108 | - if ( method_exists( $order, 'get_billing_email' ) ) { |
|
108 | + if (method_exists($order, 'get_billing_email')) { |
|
109 | 109 | $this->recipient = $order->get_billing_email(); |
110 | 110 | } else { |
111 | 111 | $this->recipient = $order->billing_email; |
112 | 112 | } |
113 | 113 | |
114 | 114 | $this->find['order_date'] = '{order_date}'; |
115 | - if ( function_exists( 'wc_format_datetime' ) ) { // WC 3.0+ |
|
116 | - $this->replace['order_date'] = wc_format_datetime( $order->get_date_created() ); |
|
115 | + if (function_exists('wc_format_datetime')) { // WC 3.0+ |
|
116 | + $this->replace['order_date'] = wc_format_datetime($order->get_date_created()); |
|
117 | 117 | } else { // WC < 3.0 |
118 | - $this->replace['order_date'] = $order->date_created->date_i18n( wc_date_format() ); |
|
118 | + $this->replace['order_date'] = $order->date_created->date_i18n(wc_date_format()); |
|
119 | 119 | } |
120 | 120 | |
121 | 121 | $this->find['order_number'] = '{order_number}'; |
122 | 122 | $this->replace['order_number'] = $order->get_order_number(); |
123 | 123 | |
124 | - $this->send( $this->get_recipient(), $this->get_subject(), $this->get_content(), $this->get_headers(), $this->get_attachments() ); |
|
124 | + $this->send($this->get_recipient(), $this->get_subject(), $this->get_content(), $this->get_headers(), $this->get_attachments()); |
|
125 | 125 | } |
126 | 126 | } |
@@ -1,5 +1,5 @@ discard block |
||
1 | 1 | <?php |
2 | -if ( ! defined( 'ABSPATH' ) ) { |
|
2 | +if ( ! defined('ABSPATH')) { |
|
3 | 3 | exit; |
4 | 4 | } |
5 | 5 | |
@@ -21,9 +21,9 @@ discard block |
||
21 | 21 | * @since 4.1.0 |
22 | 22 | */ |
23 | 23 | public function __construct() { |
24 | - add_action( 'admin_notices', array( $this, 'admin_notices' ) ); |
|
25 | - add_action( 'wp_loaded', array( $this, 'hide_notices' ) ); |
|
26 | - add_action( 'woocommerce_stripe_updated', array( $this, 'stripe_updated' ) ); |
|
24 | + add_action('admin_notices', array($this, 'admin_notices')); |
|
25 | + add_action('wp_loaded', array($this, 'hide_notices')); |
|
26 | + add_action('woocommerce_stripe_updated', array($this, 'stripe_updated')); |
|
27 | 27 | } |
28 | 28 | |
29 | 29 | /** |
@@ -32,8 +32,8 @@ discard block |
||
32 | 32 | * @since 1.0.0 |
33 | 33 | * @version 4.0.0 |
34 | 34 | */ |
35 | - public function add_admin_notice( $slug, $class, $message, $dismissible = false ) { |
|
36 | - $this->notices[ $slug ] = array( |
|
35 | + public function add_admin_notice($slug, $class, $message, $dismissible = false) { |
|
36 | + $this->notices[$slug] = array( |
|
37 | 37 | 'class' => $class, |
38 | 38 | 'message' => $message, |
39 | 39 | 'dismissible' => $dismissible, |
@@ -47,7 +47,7 @@ discard block |
||
47 | 47 | * @version 4.0.0 |
48 | 48 | */ |
49 | 49 | public function admin_notices() { |
50 | - if ( ! current_user_can( 'manage_woocommerce' ) ) { |
|
50 | + if ( ! current_user_can('manage_woocommerce')) { |
|
51 | 51 | return; |
52 | 52 | } |
53 | 53 | |
@@ -57,17 +57,17 @@ discard block |
||
57 | 57 | // All other payment methods. |
58 | 58 | $this->payment_methods_check_environment(); |
59 | 59 | |
60 | - foreach ( (array) $this->notices as $notice_key => $notice ) { |
|
61 | - echo '<div class="' . esc_attr( $notice['class'] ) . '" style="position:relative;">'; |
|
60 | + foreach ((array) $this->notices as $notice_key => $notice) { |
|
61 | + echo '<div class="' . esc_attr($notice['class']) . '" style="position:relative;">'; |
|
62 | 62 | |
63 | - if ( $notice['dismissible'] ) { |
|
63 | + if ($notice['dismissible']) { |
|
64 | 64 | ?> |
65 | - <a href="<?php echo esc_url( wp_nonce_url( add_query_arg( 'wc-stripe-hide-notice', $notice_key ), 'wc_stripe_hide_notices_nonce', '_wc_stripe_notice_nonce' ) ); ?>" class="woocommerce-message-close notice-dismiss" style="position:relative;float:right;padding:9px 0px 9px 9px 9px;text-decoration:none;"></a> |
|
65 | + <a href="<?php echo esc_url(wp_nonce_url(add_query_arg('wc-stripe-hide-notice', $notice_key), 'wc_stripe_hide_notices_nonce', '_wc_stripe_notice_nonce')); ?>" class="woocommerce-message-close notice-dismiss" style="position:relative;float:right;padding:9px 0px 9px 9px 9px;text-decoration:none;"></a> |
|
66 | 66 | <?php |
67 | 67 | } |
68 | 68 | |
69 | 69 | echo '<p>'; |
70 | - echo wp_kses( $notice['message'], array( 'a' => array( 'href' => array(), 'target' => array() ) ) ); |
|
70 | + echo wp_kses($notice['message'], array('a' => array('href' => array(), 'target' => array()))); |
|
71 | 71 | echo '</p></div>'; |
72 | 72 | } |
73 | 73 | } |
@@ -100,110 +100,110 @@ discard block |
||
100 | 100 | * @version 4.0.0 |
101 | 101 | */ |
102 | 102 | public function stripe_check_environment() { |
103 | - $show_style_notice = get_option( 'wc_stripe_show_style_notice' ); |
|
104 | - $show_ssl_notice = get_option( 'wc_stripe_show_ssl_notice' ); |
|
105 | - $show_keys_notice = get_option( 'wc_stripe_show_keys_notice' ); |
|
106 | - $show_3ds_notice = get_option( 'wc_stripe_show_3ds_notice' ); |
|
107 | - $show_phpver_notice = get_option( 'wc_stripe_show_phpver_notice' ); |
|
108 | - $show_wcver_notice = get_option( 'wc_stripe_show_wcver_notice' ); |
|
109 | - $show_curl_notice = get_option( 'wc_stripe_show_curl_notice' ); |
|
110 | - $show_sca_notice = get_option( 'wc_stripe_show_sca_notice' ); |
|
111 | - $options = get_option( 'woocommerce_stripe_settings' ); |
|
112 | - $testmode = ( isset( $options['testmode'] ) && 'yes' === $options['testmode'] ) ? true : false; |
|
113 | - $test_pub_key = isset( $options['test_publishable_key'] ) ? $options['test_publishable_key'] : ''; |
|
114 | - $test_secret_key = isset( $options['test_secret_key'] ) ? $options['test_secret_key'] : ''; |
|
115 | - $live_pub_key = isset( $options['publishable_key'] ) ? $options['publishable_key'] : ''; |
|
116 | - $live_secret_key = isset( $options['secret_key'] ) ? $options['secret_key'] : ''; |
|
117 | - $three_d_secure = isset( $options['three_d_secure'] ) && 'yes' === $options['three_d_secure']; |
|
118 | - |
|
119 | - if ( isset( $options['enabled'] ) && 'yes' === $options['enabled'] ) { |
|
120 | - if ( empty( $show_3ds_notice ) && $three_d_secure ) { |
|
103 | + $show_style_notice = get_option('wc_stripe_show_style_notice'); |
|
104 | + $show_ssl_notice = get_option('wc_stripe_show_ssl_notice'); |
|
105 | + $show_keys_notice = get_option('wc_stripe_show_keys_notice'); |
|
106 | + $show_3ds_notice = get_option('wc_stripe_show_3ds_notice'); |
|
107 | + $show_phpver_notice = get_option('wc_stripe_show_phpver_notice'); |
|
108 | + $show_wcver_notice = get_option('wc_stripe_show_wcver_notice'); |
|
109 | + $show_curl_notice = get_option('wc_stripe_show_curl_notice'); |
|
110 | + $show_sca_notice = get_option('wc_stripe_show_sca_notice'); |
|
111 | + $options = get_option('woocommerce_stripe_settings'); |
|
112 | + $testmode = (isset($options['testmode']) && 'yes' === $options['testmode']) ? true : false; |
|
113 | + $test_pub_key = isset($options['test_publishable_key']) ? $options['test_publishable_key'] : ''; |
|
114 | + $test_secret_key = isset($options['test_secret_key']) ? $options['test_secret_key'] : ''; |
|
115 | + $live_pub_key = isset($options['publishable_key']) ? $options['publishable_key'] : ''; |
|
116 | + $live_secret_key = isset($options['secret_key']) ? $options['secret_key'] : ''; |
|
117 | + $three_d_secure = isset($options['three_d_secure']) && 'yes' === $options['three_d_secure']; |
|
118 | + |
|
119 | + if (isset($options['enabled']) && 'yes' === $options['enabled']) { |
|
120 | + if (empty($show_3ds_notice) && $three_d_secure) { |
|
121 | 121 | $url = 'https://stripe.com/docs/payments/3d-secure#three-ds-radar'; |
122 | 122 | |
123 | 123 | /* translators: 1) A URL that explains Stripe Radar. */ |
124 | - $message = __( 'WooCommerce Stripe - We see that you had the "Require 3D secure when applicable" setting turned on. This setting is not available here anymore, because it is now replaced by Stripe Radar. You can learn more about it <a href="%s" target="_blank">here</a>.', 'woocommerce-gateway-stripe' ); |
|
124 | + $message = __('WooCommerce Stripe - We see that you had the "Require 3D secure when applicable" setting turned on. This setting is not available here anymore, because it is now replaced by Stripe Radar. You can learn more about it <a href="%s" target="_blank">here</a>.', 'woocommerce-gateway-stripe'); |
|
125 | 125 | |
126 | - $this->add_admin_notice( '3ds', 'notice notice-warning', sprintf( $message, $url ), true ); |
|
126 | + $this->add_admin_notice('3ds', 'notice notice-warning', sprintf($message, $url), true); |
|
127 | 127 | } |
128 | 128 | |
129 | - if ( empty( $show_style_notice ) ) { |
|
129 | + if (empty($show_style_notice)) { |
|
130 | 130 | /* translators: 1) int version 2) int version */ |
131 | - $message = __( 'WooCommerce Stripe - We recently made changes to Stripe that may impact the appearance of your checkout. If your checkout has changed unexpectedly, please follow these <a href="https://docs.woocommerce.com/document/stripe/#styling" target="_blank">instructions</a> to fix.', 'woocommerce-gateway-stripe' ); |
|
131 | + $message = __('WooCommerce Stripe - We recently made changes to Stripe that may impact the appearance of your checkout. If your checkout has changed unexpectedly, please follow these <a href="https://docs.woocommerce.com/document/stripe/#styling" target="_blank">instructions</a> to fix.', 'woocommerce-gateway-stripe'); |
|
132 | 132 | |
133 | - $this->add_admin_notice( 'style', 'notice notice-warning', $message, true ); |
|
133 | + $this->add_admin_notice('style', 'notice notice-warning', $message, true); |
|
134 | 134 | |
135 | 135 | return; |
136 | 136 | } |
137 | 137 | |
138 | - if ( empty( $show_phpver_notice ) ) { |
|
139 | - if ( version_compare( phpversion(), WC_STRIPE_MIN_PHP_VER, '<' ) ) { |
|
138 | + if (empty($show_phpver_notice)) { |
|
139 | + if (version_compare(phpversion(), WC_STRIPE_MIN_PHP_VER, '<')) { |
|
140 | 140 | /* translators: 1) int version 2) int version */ |
141 | - $message = __( 'WooCommerce Stripe - The minimum PHP version required for this plugin is %1$s. You are running %2$s.', 'woocommerce-gateway-stripe' ); |
|
141 | + $message = __('WooCommerce Stripe - The minimum PHP version required for this plugin is %1$s. You are running %2$s.', 'woocommerce-gateway-stripe'); |
|
142 | 142 | |
143 | - $this->add_admin_notice( 'phpver', 'error', sprintf( $message, WC_STRIPE_MIN_PHP_VER, phpversion() ), true ); |
|
143 | + $this->add_admin_notice('phpver', 'error', sprintf($message, WC_STRIPE_MIN_PHP_VER, phpversion()), true); |
|
144 | 144 | |
145 | 145 | return; |
146 | 146 | } |
147 | 147 | } |
148 | 148 | |
149 | - if ( empty( $show_wcver_notice ) ) { |
|
150 | - if ( version_compare( WC_VERSION, WC_STRIPE_MIN_WC_VER, '<' ) ) { |
|
149 | + if (empty($show_wcver_notice)) { |
|
150 | + if (version_compare(WC_VERSION, WC_STRIPE_MIN_WC_VER, '<')) { |
|
151 | 151 | /* translators: 1) int version 2) int version */ |
152 | - $message = __( 'WooCommerce Stripe - The minimum WooCommerce version required for this plugin is %1$s. You are running %2$s.', 'woocommerce-gateway-stripe' ); |
|
152 | + $message = __('WooCommerce Stripe - The minimum WooCommerce version required for this plugin is %1$s. You are running %2$s.', 'woocommerce-gateway-stripe'); |
|
153 | 153 | |
154 | - $this->add_admin_notice( 'wcver', 'notice notice-warning', sprintf( $message, WC_STRIPE_MIN_WC_VER, WC_VERSION ), true ); |
|
154 | + $this->add_admin_notice('wcver', 'notice notice-warning', sprintf($message, WC_STRIPE_MIN_WC_VER, WC_VERSION), true); |
|
155 | 155 | |
156 | 156 | return; |
157 | 157 | } |
158 | 158 | } |
159 | 159 | |
160 | - if ( empty( $show_curl_notice ) ) { |
|
161 | - if ( ! function_exists( 'curl_init' ) ) { |
|
162 | - $this->add_admin_notice( 'curl', 'notice notice-warning', __( 'WooCommerce Stripe - cURL is not installed.', 'woocommerce-gateway-stripe' ), true ); |
|
160 | + if (empty($show_curl_notice)) { |
|
161 | + if ( ! function_exists('curl_init')) { |
|
162 | + $this->add_admin_notice('curl', 'notice notice-warning', __('WooCommerce Stripe - cURL is not installed.', 'woocommerce-gateway-stripe'), true); |
|
163 | 163 | } |
164 | 164 | } |
165 | 165 | |
166 | - if ( empty( $show_keys_notice ) ) { |
|
166 | + if (empty($show_keys_notice)) { |
|
167 | 167 | $secret = WC_Stripe_API::get_secret_key(); |
168 | 168 | |
169 | - if ( empty( $secret ) && ! ( isset( $_GET['page'], $_GET['section'] ) && 'wc-settings' === $_GET['page'] && 'stripe' === $_GET['section'] ) ) { |
|
169 | + if (empty($secret) && ! (isset($_GET['page'], $_GET['section']) && 'wc-settings' === $_GET['page'] && 'stripe' === $_GET['section'])) { |
|
170 | 170 | $setting_link = $this->get_setting_link(); |
171 | 171 | /* translators: 1) link */ |
172 | - $this->add_admin_notice( 'keys', 'notice notice-warning', sprintf( __( 'Stripe is almost ready. To get started, <a href="%s">set your Stripe account keys</a>.', 'woocommerce-gateway-stripe' ), $setting_link ), true ); |
|
172 | + $this->add_admin_notice('keys', 'notice notice-warning', sprintf(__('Stripe is almost ready. To get started, <a href="%s">set your Stripe account keys</a>.', 'woocommerce-gateway-stripe'), $setting_link), true); |
|
173 | 173 | } |
174 | 174 | |
175 | 175 | // Check if keys are entered properly per live/test mode. |
176 | - if ( $testmode ) { |
|
176 | + if ($testmode) { |
|
177 | 177 | if ( |
178 | - ! empty( $test_pub_key ) && ! preg_match( '/^pk_test_/', $test_pub_key ) |
|
179 | - || ( ! empty( $test_secret_key ) && ! preg_match( '/^sk_test_/', $test_secret_key ) |
|
180 | - && ! empty( $test_secret_key ) && ! preg_match( '/^rk_test_/', $test_secret_key ) ) ) { |
|
178 | + ! empty($test_pub_key) && ! preg_match('/^pk_test_/', $test_pub_key) |
|
179 | + || ( ! empty($test_secret_key) && ! preg_match('/^sk_test_/', $test_secret_key) |
|
180 | + && ! empty($test_secret_key) && ! preg_match('/^rk_test_/', $test_secret_key)) ) { |
|
181 | 181 | $setting_link = $this->get_setting_link(); |
182 | 182 | /* translators: 1) link */ |
183 | - $this->add_admin_notice( 'keys', 'notice notice-error', sprintf( __( 'Stripe is in test mode however your test keys may not be valid. Test keys start with pk_test and sk_test or rk_test. Please go to your settings and, <a href="%s">set your Stripe account keys</a>.', 'woocommerce-gateway-stripe' ), $setting_link ), true ); |
|
183 | + $this->add_admin_notice('keys', 'notice notice-error', sprintf(__('Stripe is in test mode however your test keys may not be valid. Test keys start with pk_test and sk_test or rk_test. Please go to your settings and, <a href="%s">set your Stripe account keys</a>.', 'woocommerce-gateway-stripe'), $setting_link), true); |
|
184 | 184 | } |
185 | 185 | } else { |
186 | 186 | if ( |
187 | - ! empty( $live_pub_key ) && ! preg_match( '/^pk_live_/', $live_pub_key ) |
|
188 | - || ( ! empty( $live_secret_key ) && ! preg_match( '/^sk_live_/', $live_secret_key ) |
|
189 | - && ! empty( $live_secret_key ) && ! preg_match( '/^rk_live_/', $live_secret_key ) ) ) { |
|
187 | + ! empty($live_pub_key) && ! preg_match('/^pk_live_/', $live_pub_key) |
|
188 | + || ( ! empty($live_secret_key) && ! preg_match('/^sk_live_/', $live_secret_key) |
|
189 | + && ! empty($live_secret_key) && ! preg_match('/^rk_live_/', $live_secret_key)) ) { |
|
190 | 190 | $setting_link = $this->get_setting_link(); |
191 | 191 | /* translators: 1) link */ |
192 | - $this->add_admin_notice( 'keys', 'notice notice-error', sprintf( __( 'Stripe is in live mode however your test keys may not be valid. Live keys start with pk_live and sk_live or rk_live. Please go to your settings and, <a href="%s">set your Stripe account keys</a>.', 'woocommerce-gateway-stripe' ), $setting_link ), true ); |
|
192 | + $this->add_admin_notice('keys', 'notice notice-error', sprintf(__('Stripe is in live mode however your test keys may not be valid. Live keys start with pk_live and sk_live or rk_live. Please go to your settings and, <a href="%s">set your Stripe account keys</a>.', 'woocommerce-gateway-stripe'), $setting_link), true); |
|
193 | 193 | } |
194 | 194 | } |
195 | 195 | } |
196 | 196 | |
197 | - if ( empty( $show_ssl_notice ) ) { |
|
197 | + if (empty($show_ssl_notice)) { |
|
198 | 198 | // Show message if enabled and FORCE SSL is disabled and WordpressHTTPS plugin is not detected. |
199 | - if ( ! wc_checkout_is_https() ) { |
|
199 | + if ( ! wc_checkout_is_https()) { |
|
200 | 200 | /* translators: 1) link */ |
201 | - $this->add_admin_notice( 'ssl', 'notice notice-warning', sprintf( __( 'Stripe is enabled, but a SSL certificate is not detected. Your checkout may not be secure! Please ensure your server has a valid <a href="%1$s" target="_blank">SSL certificate</a>', 'woocommerce-gateway-stripe' ), 'https://en.wikipedia.org/wiki/Transport_Layer_Security' ), true ); |
|
201 | + $this->add_admin_notice('ssl', 'notice notice-warning', sprintf(__('Stripe is enabled, but a SSL certificate is not detected. Your checkout may not be secure! Please ensure your server has a valid <a href="%1$s" target="_blank">SSL certificate</a>', 'woocommerce-gateway-stripe'), 'https://en.wikipedia.org/wiki/Transport_Layer_Security'), true); |
|
202 | 202 | } |
203 | 203 | } |
204 | 204 | |
205 | - if ( empty( $show_sca_notice ) ) { |
|
206 | - $this->add_admin_notice( 'sca', 'notice notice-success', sprintf( __( 'Stripe is now ready for Strong Customer Authentication (SCA) and 3D Secure 2! <a href="%1$s" target="_blank">Read about SCA</a>', 'woocommerce-gateway-stripe' ), 'https://woocommerce.com/posts/introducing-strong-customer-authentication-sca/' ), true ); |
|
205 | + if (empty($show_sca_notice)) { |
|
206 | + $this->add_admin_notice('sca', 'notice notice-success', sprintf(__('Stripe is now ready for Strong Customer Authentication (SCA) and 3D Secure 2! <a href="%1$s" target="_blank">Read about SCA</a>', 'woocommerce-gateway-stripe'), 'https://woocommerce.com/posts/introducing-strong-customer-authentication-sca/'), true); |
|
207 | 207 | } |
208 | 208 | } |
209 | 209 | } |
@@ -216,17 +216,17 @@ discard block |
||
216 | 216 | public function payment_methods_check_environment() { |
217 | 217 | $payment_methods = $this->get_payment_methods(); |
218 | 218 | |
219 | - foreach ( $payment_methods as $method => $class ) { |
|
220 | - $show_notice = get_option( 'wc_stripe_show_' . strtolower( $method ) . '_notice' ); |
|
219 | + foreach ($payment_methods as $method => $class) { |
|
220 | + $show_notice = get_option('wc_stripe_show_' . strtolower($method) . '_notice'); |
|
221 | 221 | $gateway = new $class(); |
222 | 222 | |
223 | - if ( 'yes' !== $gateway->enabled || 'no' === $show_notice ) { |
|
223 | + if ('yes' !== $gateway->enabled || 'no' === $show_notice) { |
|
224 | 224 | continue; |
225 | 225 | } |
226 | 226 | |
227 | - if ( ! in_array( get_woocommerce_currency(), $gateway->get_supported_currency() ) ) { |
|
227 | + if ( ! in_array(get_woocommerce_currency(), $gateway->get_supported_currency())) { |
|
228 | 228 | /* translators: %1$s Payment method, %2$s List of supported currencies */ |
229 | - $this->add_admin_notice( $method, 'notice notice-error', sprintf( __( '%1$s is enabled - it requires store currency to be set to %2$s', 'woocommerce-gateway-stripe' ), $method, implode( ', ', $gateway->get_supported_currency() ) ), true ); |
|
229 | + $this->add_admin_notice($method, 'notice notice-error', sprintf(__('%1$s is enabled - it requires store currency to be set to %2$s', 'woocommerce-gateway-stripe'), $method, implode(', ', $gateway->get_supported_currency())), true); |
|
230 | 230 | } |
231 | 231 | } |
232 | 232 | } |
@@ -238,68 +238,68 @@ discard block |
||
238 | 238 | * @version 4.0.0 |
239 | 239 | */ |
240 | 240 | public function hide_notices() { |
241 | - if ( isset( $_GET['wc-stripe-hide-notice'] ) && isset( $_GET['_wc_stripe_notice_nonce'] ) ) { |
|
242 | - if ( ! wp_verify_nonce( $_GET['_wc_stripe_notice_nonce'], 'wc_stripe_hide_notices_nonce' ) ) { |
|
243 | - wp_die( __( 'Action failed. Please refresh the page and retry.', 'woocommerce-gateway-stripe' ) ); |
|
241 | + if (isset($_GET['wc-stripe-hide-notice']) && isset($_GET['_wc_stripe_notice_nonce'])) { |
|
242 | + if ( ! wp_verify_nonce($_GET['_wc_stripe_notice_nonce'], 'wc_stripe_hide_notices_nonce')) { |
|
243 | + wp_die(__('Action failed. Please refresh the page and retry.', 'woocommerce-gateway-stripe')); |
|
244 | 244 | } |
245 | 245 | |
246 | - if ( ! current_user_can( 'manage_woocommerce' ) ) { |
|
247 | - wp_die( __( 'Cheatin’ huh?', 'woocommerce-gateway-stripe' ) ); |
|
246 | + if ( ! current_user_can('manage_woocommerce')) { |
|
247 | + wp_die(__('Cheatin’ huh?', 'woocommerce-gateway-stripe')); |
|
248 | 248 | } |
249 | 249 | |
250 | - $notice = wc_clean( $_GET['wc-stripe-hide-notice'] ); |
|
250 | + $notice = wc_clean($_GET['wc-stripe-hide-notice']); |
|
251 | 251 | |
252 | - switch ( $notice ) { |
|
252 | + switch ($notice) { |
|
253 | 253 | case 'style': |
254 | - update_option( 'wc_stripe_show_style_notice', 'no' ); |
|
254 | + update_option('wc_stripe_show_style_notice', 'no'); |
|
255 | 255 | break; |
256 | 256 | case 'phpver': |
257 | - update_option( 'wc_stripe_show_phpver_notice', 'no' ); |
|
257 | + update_option('wc_stripe_show_phpver_notice', 'no'); |
|
258 | 258 | break; |
259 | 259 | case 'wcver': |
260 | - update_option( 'wc_stripe_show_wcver_notice', 'no' ); |
|
260 | + update_option('wc_stripe_show_wcver_notice', 'no'); |
|
261 | 261 | break; |
262 | 262 | case 'curl': |
263 | - update_option( 'wc_stripe_show_curl_notice', 'no' ); |
|
263 | + update_option('wc_stripe_show_curl_notice', 'no'); |
|
264 | 264 | break; |
265 | 265 | case 'ssl': |
266 | - update_option( 'wc_stripe_show_ssl_notice', 'no' ); |
|
266 | + update_option('wc_stripe_show_ssl_notice', 'no'); |
|
267 | 267 | break; |
268 | 268 | case 'keys': |
269 | - update_option( 'wc_stripe_show_keys_notice', 'no' ); |
|
269 | + update_option('wc_stripe_show_keys_notice', 'no'); |
|
270 | 270 | break; |
271 | 271 | case '3ds': |
272 | - update_option( 'wc_stripe_show_3ds_notice', 'no' ); |
|
272 | + update_option('wc_stripe_show_3ds_notice', 'no'); |
|
273 | 273 | break; |
274 | 274 | case 'Alipay': |
275 | - update_option( 'wc_stripe_show_alipay_notice', 'no' ); |
|
275 | + update_option('wc_stripe_show_alipay_notice', 'no'); |
|
276 | 276 | break; |
277 | 277 | case 'Bancontact': |
278 | - update_option( 'wc_stripe_show_bancontact_notice', 'no' ); |
|
278 | + update_option('wc_stripe_show_bancontact_notice', 'no'); |
|
279 | 279 | break; |
280 | 280 | case 'EPS': |
281 | - update_option( 'wc_stripe_show_eps_notice', 'no' ); |
|
281 | + update_option('wc_stripe_show_eps_notice', 'no'); |
|
282 | 282 | break; |
283 | 283 | case 'Giropay': |
284 | - update_option( 'wc_stripe_show_giropay_notice', 'no' ); |
|
284 | + update_option('wc_stripe_show_giropay_notice', 'no'); |
|
285 | 285 | break; |
286 | 286 | case 'iDeal': |
287 | - update_option( 'wc_stripe_show_ideal_notice', 'no' ); |
|
287 | + update_option('wc_stripe_show_ideal_notice', 'no'); |
|
288 | 288 | break; |
289 | 289 | case 'Multibanco': |
290 | - update_option( 'wc_stripe_show_multibanco_notice', 'no' ); |
|
290 | + update_option('wc_stripe_show_multibanco_notice', 'no'); |
|
291 | 291 | break; |
292 | 292 | case 'P24': |
293 | - update_option( 'wc_stripe_show_p24_notice', 'no' ); |
|
293 | + update_option('wc_stripe_show_p24_notice', 'no'); |
|
294 | 294 | break; |
295 | 295 | case 'SEPA': |
296 | - update_option( 'wc_stripe_show_sepa_notice', 'no' ); |
|
296 | + update_option('wc_stripe_show_sepa_notice', 'no'); |
|
297 | 297 | break; |
298 | 298 | case 'SOFORT': |
299 | - update_option( 'wc_stripe_show_sofort_notice', 'no' ); |
|
299 | + update_option('wc_stripe_show_sofort_notice', 'no'); |
|
300 | 300 | break; |
301 | 301 | case 'sca': |
302 | - update_option( 'wc_stripe_show_sca_notice', 'no' ); |
|
302 | + update_option('wc_stripe_show_sca_notice', 'no'); |
|
303 | 303 | break; |
304 | 304 | } |
305 | 305 | } |
@@ -313,11 +313,11 @@ discard block |
||
313 | 313 | * @return string Setting link |
314 | 314 | */ |
315 | 315 | public function get_setting_link() { |
316 | - $use_id_as_section = function_exists( 'WC' ) ? version_compare( WC()->version, '2.6', '>=' ) : false; |
|
316 | + $use_id_as_section = function_exists('WC') ? version_compare(WC()->version, '2.6', '>=') : false; |
|
317 | 317 | |
318 | - $section_slug = $use_id_as_section ? 'stripe' : strtolower( 'WC_Gateway_Stripe' ); |
|
318 | + $section_slug = $use_id_as_section ? 'stripe' : strtolower('WC_Gateway_Stripe'); |
|
319 | 319 | |
320 | - return admin_url( 'admin.php?page=wc-settings&tab=checkout§ion=' . $section_slug ); |
|
320 | + return admin_url('admin.php?page=wc-settings&tab=checkout§ion=' . $section_slug); |
|
321 | 321 | } |
322 | 322 | |
323 | 323 | /** |
@@ -326,16 +326,16 @@ discard block |
||
326 | 326 | * @since 4.3.0 |
327 | 327 | */ |
328 | 328 | public function stripe_updated() { |
329 | - $previous_version = get_option( 'wc_stripe_version' ); |
|
329 | + $previous_version = get_option('wc_stripe_version'); |
|
330 | 330 | |
331 | 331 | // Only show the style notice if the plugin was installed and older than 4.1.4. |
332 | - if ( empty( $previous_version ) || version_compare( $previous_version, '4.1.4', 'ge' ) ) { |
|
333 | - update_option( 'wc_stripe_show_style_notice', 'no' ); |
|
332 | + if (empty($previous_version) || version_compare($previous_version, '4.1.4', 'ge')) { |
|
333 | + update_option('wc_stripe_show_style_notice', 'no'); |
|
334 | 334 | } |
335 | 335 | |
336 | 336 | // Only show the SCA notice on pre-4.3.0 installs. |
337 | - if ( empty( $previous_version ) || version_compare( $previous_version, '4.3.0', 'ge' ) ) { |
|
338 | - update_option( 'wc_stripe_show_sca_notice', 'no' ); |
|
337 | + if (empty($previous_version) || version_compare($previous_version, '4.3.0', 'ge')) { |
|
338 | + update_option('wc_stripe_show_sca_notice', 'no'); |
|
339 | 339 | } |
340 | 340 | } |
341 | 341 | } |
@@ -1,5 +1,5 @@ discard block |
||
1 | 1 | <?php |
2 | -if ( ! defined( 'ABSPATH' ) ) { |
|
2 | +if ( ! defined('ABSPATH')) { |
|
3 | 3 | exit; |
4 | 4 | } |
5 | 5 | |
@@ -15,21 +15,21 @@ discard block |
||
15 | 15 | public function __construct() { |
16 | 16 | parent::__construct(); |
17 | 17 | |
18 | - if ( class_exists( 'WC_Subscriptions_Order' ) ) { |
|
19 | - add_action( 'woocommerce_scheduled_subscription_payment_' . $this->id, array( $this, 'scheduled_subscription_payment' ), 10, 2 ); |
|
20 | - add_action( 'wcs_resubscribe_order_created', array( $this, 'delete_resubscribe_meta' ), 10 ); |
|
21 | - add_action( 'wcs_renewal_order_created', array( $this, 'delete_renewal_meta' ), 10 ); |
|
22 | - add_action( 'woocommerce_subscription_failing_payment_method_updated_stripe', array( $this, 'update_failing_payment_method' ), 10, 2 ); |
|
23 | - add_action( 'wc_stripe_cards_payment_fields', array( $this, 'display_update_subs_payment_checkout' ) ); |
|
24 | - add_action( 'wc_stripe_add_payment_method_' . $this->id . '_success', array( $this, 'handle_add_payment_method_success' ), 10, 2 ); |
|
18 | + if (class_exists('WC_Subscriptions_Order')) { |
|
19 | + add_action('woocommerce_scheduled_subscription_payment_' . $this->id, array($this, 'scheduled_subscription_payment'), 10, 2); |
|
20 | + add_action('wcs_resubscribe_order_created', array($this, 'delete_resubscribe_meta'), 10); |
|
21 | + add_action('wcs_renewal_order_created', array($this, 'delete_renewal_meta'), 10); |
|
22 | + add_action('woocommerce_subscription_failing_payment_method_updated_stripe', array($this, 'update_failing_payment_method'), 10, 2); |
|
23 | + add_action('wc_stripe_cards_payment_fields', array($this, 'display_update_subs_payment_checkout')); |
|
24 | + add_action('wc_stripe_add_payment_method_' . $this->id . '_success', array($this, 'handle_add_payment_method_success'), 10, 2); |
|
25 | 25 | |
26 | 26 | // display the credit card used for a subscription in the "My Subscriptions" table |
27 | - add_filter( 'woocommerce_my_subscriptions_payment_method', array( $this, 'maybe_render_subscription_payment_method' ), 10, 2 ); |
|
27 | + add_filter('woocommerce_my_subscriptions_payment_method', array($this, 'maybe_render_subscription_payment_method'), 10, 2); |
|
28 | 28 | |
29 | 29 | // allow store managers to manually set Stripe as the payment method on a subscription |
30 | - add_filter( 'woocommerce_subscription_payment_meta', array( $this, 'add_subscription_payment_meta' ), 10, 2 ); |
|
31 | - add_filter( 'woocommerce_subscription_validate_payment_meta', array( $this, 'validate_subscription_payment_meta' ), 10, 2 ); |
|
32 | - add_filter( 'wc_stripe_display_save_payment_method_checkbox', array( $this, 'maybe_hide_save_checkbox' ) ); |
|
30 | + add_filter('woocommerce_subscription_payment_meta', array($this, 'add_subscription_payment_meta'), 10, 2); |
|
31 | + add_filter('woocommerce_subscription_validate_payment_meta', array($this, 'validate_subscription_payment_meta'), 10, 2); |
|
32 | + add_filter('wc_stripe_display_save_payment_method_checkbox', array($this, 'maybe_hide_save_checkbox')); |
|
33 | 33 | |
34 | 34 | /* |
35 | 35 | * WC subscriptions hooks into the "template_redirect" hook with priority 100. |
@@ -37,8 +37,8 @@ discard block |
||
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 |
||
49 | 49 | * @since 4.0.0 |
50 | 50 | * @version 4.0.0 |
51 | 51 | */ |
52 | - public function maybe_hide_save_checkbox( $display_tokenization ) { |
|
53 | - if ( WC_Subscriptions_Cart::cart_contains_subscription() ) { |
|
52 | + public function maybe_hide_save_checkbox($display_tokenization) { |
|
53 | + if (WC_Subscriptions_Cart::cart_contains_subscription()) { |
|
54 | 54 | return false; |
55 | 55 | } |
56 | 56 | |
@@ -62,8 +62,8 @@ discard block |
||
62 | 62 | * @param int $order_id |
63 | 63 | * @return boolean |
64 | 64 | */ |
65 | - public function has_subscription( $order_id ) { |
|
66 | - return ( function_exists( 'wcs_order_contains_subscription' ) && ( wcs_order_contains_subscription( $order_id ) || wcs_is_subscription( $order_id ) || wcs_order_contains_renewal( $order_id ) ) ); |
|
65 | + public function has_subscription($order_id) { |
|
66 | + return (function_exists('wcs_order_contains_subscription') && (wcs_order_contains_subscription($order_id) || wcs_is_subscription($order_id) || wcs_order_contains_renewal($order_id))); |
|
67 | 67 | } |
68 | 68 | |
69 | 69 | /** |
@@ -73,7 +73,7 @@ discard block |
||
73 | 73 | * @return bool |
74 | 74 | */ |
75 | 75 | public function is_subs_change_payment() { |
76 | - return ( isset( $_GET['pay_for_order'] ) && isset( $_GET['change_payment_method'] ) ); |
|
76 | + return (isset($_GET['pay_for_order']) && isset($_GET['change_payment_method'])); |
|
77 | 77 | } |
78 | 78 | |
79 | 79 | /** |
@@ -84,8 +84,8 @@ discard block |
||
84 | 84 | */ |
85 | 85 | public function display_update_subs_payment_checkout() { |
86 | 86 | if ( |
87 | - apply_filters( 'wc_stripe_display_update_subs_payment_method_card_checkbox', true ) && |
|
88 | - wcs_user_has_subscription( get_current_user_id(), '', 'active' ) && |
|
87 | + apply_filters('wc_stripe_display_update_subs_payment_method_card_checkbox', true) && |
|
88 | + wcs_user_has_subscription(get_current_user_id(), '', 'active') && |
|
89 | 89 | is_add_payment_method_page() |
90 | 90 | ) { |
91 | 91 | printf( |
@@ -93,8 +93,8 @@ discard block |
||
93 | 93 | <input id="wc-%1$s-update-subs-payment-method-card" name="wc-%1$s-update-subs-payment-method-card" type="checkbox" value="true" style="width:auto;" /> |
94 | 94 | <label for="wc-%1$s-update-subs-payment-method-card" style="display:inline;">%2$s</label> |
95 | 95 | </p>', |
96 | - esc_attr( $this->id ), |
|
97 | - esc_html( apply_filters( 'wc_stripe_save_to_subs_text', __( 'Update the Payment Method used for all of my active subscriptions (optional).', 'woocommerce-gateway-stripe' ) ) ) |
|
96 | + esc_attr($this->id), |
|
97 | + esc_html(apply_filters('wc_stripe_save_to_subs_text', __('Update the Payment Method used for all of my active subscriptions (optional).', 'woocommerce-gateway-stripe'))) |
|
98 | 98 | ); |
99 | 99 | } |
100 | 100 | } |
@@ -106,16 +106,16 @@ discard block |
||
106 | 106 | * @param string $source_id |
107 | 107 | * @param object $source_object |
108 | 108 | */ |
109 | - public function handle_add_payment_method_success( $source_id, $source_object ) { |
|
110 | - if ( isset( $_POST[ 'wc-' . $this->id . '-update-subs-payment-method-card' ] ) ) { |
|
109 | + public function handle_add_payment_method_success($source_id, $source_object) { |
|
110 | + if (isset($_POST['wc-' . $this->id . '-update-subs-payment-method-card'])) { |
|
111 | 111 | $all_subs = wcs_get_users_subscriptions(); |
112 | 112 | |
113 | - if ( ! empty( $all_subs ) ) { |
|
114 | - foreach ( $all_subs as $sub ) { |
|
115 | - if ( 'active' === $sub->get_status() ) { |
|
116 | - update_post_meta( $sub->get_id(), '_stripe_source_id', $source_id ); |
|
117 | - update_post_meta( $sub->get_id(), '_payment_method', $this->id ); |
|
118 | - update_post_meta( $sub->get_id(), '_payment_method_title', $this->method_title ); |
|
113 | + if ( ! empty($all_subs)) { |
|
114 | + foreach ($all_subs as $sub) { |
|
115 | + if ('active' === $sub->get_status()) { |
|
116 | + update_post_meta($sub->get_id(), '_stripe_source_id', $source_id); |
|
117 | + update_post_meta($sub->get_id(), '_payment_method', $this->id); |
|
118 | + update_post_meta($sub->get_id(), '_payment_method_title', $this->method_title); |
|
119 | 119 | } |
120 | 120 | } |
121 | 121 | } |
@@ -129,24 +129,24 @@ discard block |
||
129 | 129 | * @since 4.1.11 Remove 3DS check as it is not needed. |
130 | 130 | * @param int $order_id |
131 | 131 | */ |
132 | - public function change_subs_payment_method( $order_id ) { |
|
132 | + public function change_subs_payment_method($order_id) { |
|
133 | 133 | try { |
134 | - $subscription = wc_get_order( $order_id ); |
|
135 | - $prepared_source = $this->prepare_source( get_current_user_id(), true ); |
|
134 | + $subscription = wc_get_order($order_id); |
|
135 | + $prepared_source = $this->prepare_source(get_current_user_id(), true); |
|
136 | 136 | |
137 | - $this->maybe_disallow_prepaid_card( $prepared_source ); |
|
138 | - $this->check_source( $prepared_source ); |
|
139 | - $this->save_source_to_order( $subscription, $prepared_source ); |
|
137 | + $this->maybe_disallow_prepaid_card($prepared_source); |
|
138 | + $this->check_source($prepared_source); |
|
139 | + $this->save_source_to_order($subscription, $prepared_source); |
|
140 | 140 | |
141 | - do_action( 'wc_stripe_change_subs_payment_method_success', $prepared_source->source, $prepared_source ); |
|
141 | + do_action('wc_stripe_change_subs_payment_method_success', $prepared_source->source, $prepared_source); |
|
142 | 142 | |
143 | 143 | return array( |
144 | 144 | 'result' => 'success', |
145 | - 'redirect' => $this->get_return_url( $subscription ), |
|
145 | + 'redirect' => $this->get_return_url($subscription), |
|
146 | 146 | ); |
147 | - } catch ( WC_Stripe_Exception $e ) { |
|
148 | - wc_add_notice( $e->getLocalizedMessage(), 'error' ); |
|
149 | - WC_Stripe_Logger::log( 'Error: ' . $e->getMessage() ); |
|
147 | + } catch (WC_Stripe_Exception $e) { |
|
148 | + wc_add_notice($e->getLocalizedMessage(), 'error'); |
|
149 | + WC_Stripe_Logger::log('Error: ' . $e->getMessage()); |
|
150 | 150 | } |
151 | 151 | } |
152 | 152 | |
@@ -155,16 +155,16 @@ discard block |
||
155 | 155 | * @param int $order_id |
156 | 156 | * @return array |
157 | 157 | */ |
158 | - public function process_payment( $order_id, $retry = true, $force_save_source = false, $previous_error = false ) { |
|
159 | - if ( $this->has_subscription( $order_id ) ) { |
|
160 | - if ( $this->is_subs_change_payment() ) { |
|
161 | - return $this->change_subs_payment_method( $order_id ); |
|
158 | + public function process_payment($order_id, $retry = true, $force_save_source = false, $previous_error = false) { |
|
159 | + if ($this->has_subscription($order_id)) { |
|
160 | + if ($this->is_subs_change_payment()) { |
|
161 | + return $this->change_subs_payment_method($order_id); |
|
162 | 162 | } |
163 | 163 | |
164 | 164 | // Regular payment with force customer enabled |
165 | - return parent::process_payment( $order_id, $retry, true, $previous_error ); |
|
165 | + return parent::process_payment($order_id, $retry, true, $previous_error); |
|
166 | 166 | } else { |
167 | - return parent::process_payment( $order_id, $retry, $force_save_source, $previous_error ); |
|
167 | + return parent::process_payment($order_id, $retry, $force_save_source, $previous_error); |
|
168 | 168 | } |
169 | 169 | } |
170 | 170 | |
@@ -176,11 +176,11 @@ discard block |
||
176 | 176 | * @param object $prepared_source The source that is used for the payment. |
177 | 177 | * @return array The arguments for the request. |
178 | 178 | */ |
179 | - public function generate_create_intent_request( $order, $prepared_source ) { |
|
180 | - $request = parent::generate_create_intent_request( $order, $prepared_source ); |
|
179 | + public function generate_create_intent_request($order, $prepared_source) { |
|
180 | + $request = parent::generate_create_intent_request($order, $prepared_source); |
|
181 | 181 | |
182 | 182 | // Non-subscription orders do not need any additional parameters. |
183 | - if ( ! $this->has_subscription( $order ) ) { |
|
183 | + if ( ! $this->has_subscription($order)) { |
|
184 | 184 | return $request; |
185 | 185 | } |
186 | 186 | |
@@ -196,8 +196,8 @@ discard block |
||
196 | 196 | * @param $amount_to_charge float The amount to charge. |
197 | 197 | * @param $renewal_order WC_Order A WC_Order object created to record the renewal payment. |
198 | 198 | */ |
199 | - public function scheduled_subscription_payment( $amount_to_charge, $renewal_order ) { |
|
200 | - $this->process_subscription_payment( $amount_to_charge, $renewal_order, true, false ); |
|
199 | + public function scheduled_subscription_payment($amount_to_charge, $renewal_order) { |
|
200 | + $this->process_subscription_payment($amount_to_charge, $renewal_order, true, false); |
|
201 | 201 | } |
202 | 202 | |
203 | 203 | /** |
@@ -211,112 +211,112 @@ discard block |
||
211 | 211 | * @param bool $retry Should we retry the process? |
212 | 212 | * @param object $previous_error |
213 | 213 | */ |
214 | - public function process_subscription_payment( $amount = 0.0, $renewal_order, $retry = true, $previous_error ) { |
|
214 | + public function process_subscription_payment($amount = 0.0, $renewal_order, $retry = true, $previous_error) { |
|
215 | 215 | try { |
216 | - if ( $amount * 100 < WC_Stripe_Helper::get_minimum_amount() ) { |
|
216 | + if ($amount * 100 < WC_Stripe_Helper::get_minimum_amount()) { |
|
217 | 217 | /* translators: minimum amount */ |
218 | - return new WP_Error( 'stripe_error', sprintf( __( 'Sorry, the minimum allowed order total is %1$s to use this payment method.', 'woocommerce-gateway-stripe' ), wc_price( WC_Stripe_Helper::get_minimum_amount() / 100 ) ) ); |
|
218 | + return new WP_Error('stripe_error', sprintf(__('Sorry, the minimum allowed order total is %1$s to use this payment method.', 'woocommerce-gateway-stripe'), wc_price(WC_Stripe_Helper::get_minimum_amount() / 100))); |
|
219 | 219 | } |
220 | 220 | |
221 | - $order_id = WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $renewal_order->id : $renewal_order->get_id(); |
|
221 | + $order_id = WC_Stripe_Helper::is_wc_lt('3.0') ? $renewal_order->id : $renewal_order->get_id(); |
|
222 | 222 | |
223 | 223 | // Check for an existing intent, which is associated with the order. |
224 | - if ( $this->has_authentication_already_failed( $renewal_order ) ) { |
|
224 | + if ($this->has_authentication_already_failed($renewal_order)) { |
|
225 | 225 | return; |
226 | 226 | } |
227 | 227 | |
228 | 228 | // Get source from order |
229 | - $prepared_source = $this->prepare_order_source( $renewal_order ); |
|
229 | + $prepared_source = $this->prepare_order_source($renewal_order); |
|
230 | 230 | $source_object = $prepared_source->source_object; |
231 | 231 | |
232 | - if ( ! $prepared_source->customer ) { |
|
233 | - return new WP_Error( 'stripe_error', __( 'Customer not found', 'woocommerce-gateway-stripe' ) ); |
|
232 | + if ( ! $prepared_source->customer) { |
|
233 | + return new WP_Error('stripe_error', __('Customer not found', 'woocommerce-gateway-stripe')); |
|
234 | 234 | } |
235 | 235 | |
236 | - WC_Stripe_Logger::log( "Info: Begin processing subscription payment for order {$order_id} for the amount of {$amount}" ); |
|
236 | + WC_Stripe_Logger::log("Info: Begin processing subscription payment for order {$order_id} for the amount of {$amount}"); |
|
237 | 237 | |
238 | 238 | /* If we're doing a retry and source is chargeable, we need to pass |
239 | 239 | * a different idempotency key and retry for success. |
240 | 240 | */ |
241 | - if ( is_object( $source_object ) && empty( $source_object->error ) && $this->need_update_idempotency_key( $source_object, $previous_error ) ) { |
|
242 | - add_filter( 'wc_stripe_idempotency_key', array( $this, 'change_idempotency_key' ), 10, 2 ); |
|
241 | + if (is_object($source_object) && empty($source_object->error) && $this->need_update_idempotency_key($source_object, $previous_error)) { |
|
242 | + add_filter('wc_stripe_idempotency_key', array($this, 'change_idempotency_key'), 10, 2); |
|
243 | 243 | } |
244 | 244 | |
245 | - 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 ) ) { |
|
245 | + 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)) { |
|
246 | 246 | // Passing empty source will charge customer default. |
247 | 247 | $prepared_source->source = ''; |
248 | 248 | } |
249 | 249 | |
250 | - $response = $this->create_and_confirm_intent_for_off_session( $renewal_order, $prepared_source, $amount ); |
|
250 | + $response = $this->create_and_confirm_intent_for_off_session($renewal_order, $prepared_source, $amount); |
|
251 | 251 | |
252 | - $is_authentication_required = $this->is_authentication_required_for_payment( $response ); |
|
252 | + $is_authentication_required = $this->is_authentication_required_for_payment($response); |
|
253 | 253 | |
254 | 254 | // It's only a failed payment if it's an error and it's not of the type 'authentication_required'. |
255 | 255 | // If it's 'authentication_required', then we should email the user and ask them to authenticate. |
256 | - if ( ! empty( $response->error ) && ! $is_authentication_required ) { |
|
256 | + if ( ! empty($response->error) && ! $is_authentication_required) { |
|
257 | 257 | // We want to retry. |
258 | - if ( $this->is_retryable_error( $response->error ) ) { |
|
259 | - if ( $retry ) { |
|
258 | + if ($this->is_retryable_error($response->error)) { |
|
259 | + if ($retry) { |
|
260 | 260 | // Don't do anymore retries after this. |
261 | - if ( 5 <= $this->retry_interval ) { |
|
262 | - return $this->process_subscription_payment( $amount, $renewal_order, false, $response->error ); |
|
261 | + if (5 <= $this->retry_interval) { |
|
262 | + return $this->process_subscription_payment($amount, $renewal_order, false, $response->error); |
|
263 | 263 | } |
264 | 264 | |
265 | - sleep( $this->retry_interval ); |
|
265 | + sleep($this->retry_interval); |
|
266 | 266 | |
267 | 267 | $this->retry_interval++; |
268 | 268 | |
269 | - return $this->process_subscription_payment( $amount, $renewal_order, true, $response->error ); |
|
269 | + return $this->process_subscription_payment($amount, $renewal_order, true, $response->error); |
|
270 | 270 | } else { |
271 | - $localized_message = __( 'Sorry, we are unable to process your payment at this time. Please retry later.', 'woocommerce-gateway-stripe' ); |
|
272 | - $renewal_order->add_order_note( $localized_message ); |
|
273 | - throw new WC_Stripe_Exception( print_r( $response, true ), $localized_message ); |
|
271 | + $localized_message = __('Sorry, we are unable to process your payment at this time. Please retry later.', 'woocommerce-gateway-stripe'); |
|
272 | + $renewal_order->add_order_note($localized_message); |
|
273 | + throw new WC_Stripe_Exception(print_r($response, true), $localized_message); |
|
274 | 274 | } |
275 | 275 | } |
276 | 276 | |
277 | 277 | $localized_messages = WC_Stripe_Helper::get_localized_messages(); |
278 | 278 | |
279 | - if ( 'card_error' === $response->error->type ) { |
|
280 | - $localized_message = isset( $localized_messages[ $response->error->code ] ) ? $localized_messages[ $response->error->code ] : $response->error->message; |
|
279 | + if ('card_error' === $response->error->type) { |
|
280 | + $localized_message = isset($localized_messages[$response->error->code]) ? $localized_messages[$response->error->code] : $response->error->message; |
|
281 | 281 | } else { |
282 | - $localized_message = isset( $localized_messages[ $response->error->type ] ) ? $localized_messages[ $response->error->type ] : $response->error->message; |
|
282 | + $localized_message = isset($localized_messages[$response->error->type]) ? $localized_messages[$response->error->type] : $response->error->message; |
|
283 | 283 | } |
284 | 284 | |
285 | - $renewal_order->add_order_note( $localized_message ); |
|
285 | + $renewal_order->add_order_note($localized_message); |
|
286 | 286 | |
287 | - throw new WC_Stripe_Exception( print_r( $response, true ), $localized_message ); |
|
287 | + throw new WC_Stripe_Exception(print_r($response, true), $localized_message); |
|
288 | 288 | } |
289 | 289 | |
290 | 290 | // Either the charge was successfully captured, or it requires further authentication. |
291 | 291 | |
292 | - if ( $is_authentication_required ) { |
|
293 | - do_action( 'wc_gateway_stripe_process_payment_authentication_required', $renewal_order, $response ); |
|
292 | + if ($is_authentication_required) { |
|
293 | + do_action('wc_gateway_stripe_process_payment_authentication_required', $renewal_order, $response); |
|
294 | 294 | |
295 | - $error_message = __( 'This transaction requires authentication.', 'woocommerce-gateway-stripe' ); |
|
296 | - $renewal_order->add_order_note( $error_message ); |
|
295 | + $error_message = __('This transaction requires authentication.', 'woocommerce-gateway-stripe'); |
|
296 | + $renewal_order->add_order_note($error_message); |
|
297 | 297 | |
298 | - $charge = end( $response->error->payment_intent->charges->data ); |
|
298 | + $charge = end($response->error->payment_intent->charges->data); |
|
299 | 299 | $id = $charge->id; |
300 | - $order_id = WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $renewal_order->id : $renewal_order->get_id(); |
|
300 | + $order_id = WC_Stripe_Helper::is_wc_lt('3.0') ? $renewal_order->id : $renewal_order->get_id(); |
|
301 | 301 | |
302 | - WC_Stripe_Helper::is_wc_lt( '3.0' ) ? update_post_meta( $order_id, '_transaction_id', $id ) : $renewal_order->set_transaction_id( $id ); |
|
303 | - $renewal_order->update_status( 'failed', sprintf( __( 'Stripe charge awaiting authentication by user: %s.', 'woocommerce-gateway-stripe' ), $id ) ); |
|
304 | - if ( is_callable( array( $renewal_order, 'save' ) ) ) { |
|
302 | + WC_Stripe_Helper::is_wc_lt('3.0') ? update_post_meta($order_id, '_transaction_id', $id) : $renewal_order->set_transaction_id($id); |
|
303 | + $renewal_order->update_status('failed', sprintf(__('Stripe charge awaiting authentication by user: %s.', 'woocommerce-gateway-stripe'), $id)); |
|
304 | + if (is_callable(array($renewal_order, 'save'))) { |
|
305 | 305 | $renewal_order->save(); |
306 | 306 | } |
307 | 307 | } else { |
308 | 308 | // The charge was successfully captured |
309 | - do_action( 'wc_gateway_stripe_process_payment', $response, $renewal_order ); |
|
309 | + do_action('wc_gateway_stripe_process_payment', $response, $renewal_order); |
|
310 | 310 | |
311 | - $this->process_response( end( $response->charges->data ), $renewal_order ); |
|
311 | + $this->process_response(end($response->charges->data), $renewal_order); |
|
312 | 312 | } |
313 | - } catch ( WC_Stripe_Exception $e ) { |
|
314 | - WC_Stripe_Logger::log( 'Error: ' . $e->getMessage() ); |
|
313 | + } catch (WC_Stripe_Exception $e) { |
|
314 | + WC_Stripe_Logger::log('Error: ' . $e->getMessage()); |
|
315 | 315 | |
316 | - do_action( 'wc_gateway_stripe_process_payment_error', $e, $renewal_order ); |
|
316 | + do_action('wc_gateway_stripe_process_payment_error', $e, $renewal_order); |
|
317 | 317 | |
318 | 318 | /* translators: error message */ |
319 | - $renewal_order->update_status( 'failed' ); |
|
319 | + $renewal_order->update_status('failed'); |
|
320 | 320 | } |
321 | 321 | } |
322 | 322 | |
@@ -326,24 +326,24 @@ discard block |
||
326 | 326 | * @since 3.1.0 |
327 | 327 | * @version 4.0.0 |
328 | 328 | */ |
329 | - public function save_source_to_order( $order, $source ) { |
|
330 | - parent::save_source_to_order( $order, $source ); |
|
329 | + public function save_source_to_order($order, $source) { |
|
330 | + parent::save_source_to_order($order, $source); |
|
331 | 331 | |
332 | - $order_id = WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $order->id : $order->get_id(); |
|
332 | + $order_id = WC_Stripe_Helper::is_wc_lt('3.0') ? $order->id : $order->get_id(); |
|
333 | 333 | |
334 | 334 | // Also store it on the subscriptions being purchased or paid for in the order |
335 | - if ( function_exists( 'wcs_order_contains_subscription' ) && wcs_order_contains_subscription( $order_id ) ) { |
|
336 | - $subscriptions = wcs_get_subscriptions_for_order( $order_id ); |
|
337 | - } elseif ( function_exists( 'wcs_order_contains_renewal' ) && wcs_order_contains_renewal( $order_id ) ) { |
|
338 | - $subscriptions = wcs_get_subscriptions_for_renewal_order( $order_id ); |
|
335 | + if (function_exists('wcs_order_contains_subscription') && wcs_order_contains_subscription($order_id)) { |
|
336 | + $subscriptions = wcs_get_subscriptions_for_order($order_id); |
|
337 | + } elseif (function_exists('wcs_order_contains_renewal') && wcs_order_contains_renewal($order_id)) { |
|
338 | + $subscriptions = wcs_get_subscriptions_for_renewal_order($order_id); |
|
339 | 339 | } else { |
340 | 340 | $subscriptions = array(); |
341 | 341 | } |
342 | 342 | |
343 | - foreach ( $subscriptions as $subscription ) { |
|
344 | - $subscription_id = WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $subscription->id : $subscription->get_id(); |
|
345 | - update_post_meta( $subscription_id, '_stripe_customer_id', $source->customer ); |
|
346 | - update_post_meta( $subscription_id, '_stripe_source_id', $source->source ); |
|
343 | + foreach ($subscriptions as $subscription) { |
|
344 | + $subscription_id = WC_Stripe_Helper::is_wc_lt('3.0') ? $subscription->id : $subscription->get_id(); |
|
345 | + update_post_meta($subscription_id, '_stripe_customer_id', $source->customer); |
|
346 | + update_post_meta($subscription_id, '_stripe_source_id', $source->source); |
|
347 | 347 | } |
348 | 348 | } |
349 | 349 | |
@@ -351,26 +351,26 @@ discard block |
||
351 | 351 | * Don't transfer Stripe customer/token meta to resubscribe orders. |
352 | 352 | * @param int $resubscribe_order The order created for the customer to resubscribe to the old expired/cancelled subscription |
353 | 353 | */ |
354 | - public function delete_resubscribe_meta( $resubscribe_order ) { |
|
355 | - delete_post_meta( ( WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $resubscribe_order->id : $resubscribe_order->get_id() ), '_stripe_customer_id' ); |
|
356 | - delete_post_meta( ( WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $resubscribe_order->id : $resubscribe_order->get_id() ), '_stripe_source_id' ); |
|
354 | + public function delete_resubscribe_meta($resubscribe_order) { |
|
355 | + delete_post_meta((WC_Stripe_Helper::is_wc_lt('3.0') ? $resubscribe_order->id : $resubscribe_order->get_id()), '_stripe_customer_id'); |
|
356 | + delete_post_meta((WC_Stripe_Helper::is_wc_lt('3.0') ? $resubscribe_order->id : $resubscribe_order->get_id()), '_stripe_source_id'); |
|
357 | 357 | // For BW compat will remove in future |
358 | - delete_post_meta( ( WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $resubscribe_order->id : $resubscribe_order->get_id() ), '_stripe_card_id' ); |
|
358 | + delete_post_meta((WC_Stripe_Helper::is_wc_lt('3.0') ? $resubscribe_order->id : $resubscribe_order->get_id()), '_stripe_card_id'); |
|
359 | 359 | // delete payment intent ID |
360 | - delete_post_meta( ( WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $resubscribe_order->id : $resubscribe_order->get_id() ), '_stripe_intent_id' ); |
|
361 | - $this->delete_renewal_meta( $resubscribe_order ); |
|
360 | + delete_post_meta((WC_Stripe_Helper::is_wc_lt('3.0') ? $resubscribe_order->id : $resubscribe_order->get_id()), '_stripe_intent_id'); |
|
361 | + $this->delete_renewal_meta($resubscribe_order); |
|
362 | 362 | } |
363 | 363 | |
364 | 364 | /** |
365 | 365 | * Don't transfer Stripe fee/ID meta to renewal orders. |
366 | 366 | * @param int $resubscribe_order The order created for the customer to resubscribe to the old expired/cancelled subscription |
367 | 367 | */ |
368 | - public function delete_renewal_meta( $renewal_order ) { |
|
369 | - WC_Stripe_Helper::delete_stripe_fee( $renewal_order ); |
|
370 | - WC_Stripe_Helper::delete_stripe_net( $renewal_order ); |
|
368 | + public function delete_renewal_meta($renewal_order) { |
|
369 | + WC_Stripe_Helper::delete_stripe_fee($renewal_order); |
|
370 | + WC_Stripe_Helper::delete_stripe_net($renewal_order); |
|
371 | 371 | |
372 | 372 | // delete payment intent ID |
373 | - delete_post_meta( ( WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $renewal_order->id : $renewal_order->get_id() ), '_stripe_intent_id' ); |
|
373 | + delete_post_meta((WC_Stripe_Helper::is_wc_lt('3.0') ? $renewal_order->id : $renewal_order->get_id()), '_stripe_intent_id'); |
|
374 | 374 | |
375 | 375 | return $renewal_order; |
376 | 376 | } |
@@ -384,14 +384,14 @@ discard block |
||
384 | 384 | * @param WC_Order $renewal_order The order which recorded the successful payment (to make up for the failed automatic payment). |
385 | 385 | * @return void |
386 | 386 | */ |
387 | - public function update_failing_payment_method( $subscription, $renewal_order ) { |
|
388 | - if ( WC_Stripe_Helper::is_wc_lt( '3.0' ) ) { |
|
389 | - update_post_meta( $subscription->id, '_stripe_customer_id', $renewal_order->stripe_customer_id ); |
|
390 | - update_post_meta( $subscription->id, '_stripe_source_id', $renewal_order->stripe_source_id ); |
|
387 | + public function update_failing_payment_method($subscription, $renewal_order) { |
|
388 | + if (WC_Stripe_Helper::is_wc_lt('3.0')) { |
|
389 | + update_post_meta($subscription->id, '_stripe_customer_id', $renewal_order->stripe_customer_id); |
|
390 | + update_post_meta($subscription->id, '_stripe_source_id', $renewal_order->stripe_source_id); |
|
391 | 391 | |
392 | 392 | } else { |
393 | - update_post_meta( $subscription->get_id(), '_stripe_customer_id', $renewal_order->get_meta( '_stripe_customer_id', true ) ); |
|
394 | - update_post_meta( $subscription->get_id(), '_stripe_source_id', $renewal_order->get_meta( '_stripe_source_id', true ) ); |
|
393 | + update_post_meta($subscription->get_id(), '_stripe_customer_id', $renewal_order->get_meta('_stripe_customer_id', true)); |
|
394 | + update_post_meta($subscription->get_id(), '_stripe_source_id', $renewal_order->get_meta('_stripe_source_id', true)); |
|
395 | 395 | } |
396 | 396 | } |
397 | 397 | |
@@ -404,23 +404,23 @@ discard block |
||
404 | 404 | * @param WC_Subscription $subscription An instance of a subscription object |
405 | 405 | * @return array |
406 | 406 | */ |
407 | - public function add_subscription_payment_meta( $payment_meta, $subscription ) { |
|
408 | - $subscription_id = WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $subscription->id : $subscription->get_id(); |
|
409 | - $source_id = get_post_meta( $subscription_id, '_stripe_source_id', true ); |
|
407 | + public function add_subscription_payment_meta($payment_meta, $subscription) { |
|
408 | + $subscription_id = WC_Stripe_Helper::is_wc_lt('3.0') ? $subscription->id : $subscription->get_id(); |
|
409 | + $source_id = get_post_meta($subscription_id, '_stripe_source_id', true); |
|
410 | 410 | |
411 | 411 | // For BW compat will remove in future. |
412 | - if ( empty( $source_id ) ) { |
|
413 | - $source_id = get_post_meta( $subscription_id, '_stripe_card_id', true ); |
|
412 | + if (empty($source_id)) { |
|
413 | + $source_id = get_post_meta($subscription_id, '_stripe_card_id', true); |
|
414 | 414 | |
415 | 415 | // Take this opportunity to update the key name. |
416 | - update_post_meta( $subscription_id, '_stripe_source_id', $source_id ); |
|
417 | - delete_post_meta( $subscription_id, '_stripe_card_id', $source_id ); |
|
416 | + update_post_meta($subscription_id, '_stripe_source_id', $source_id); |
|
417 | + delete_post_meta($subscription_id, '_stripe_card_id', $source_id); |
|
418 | 418 | } |
419 | 419 | |
420 | - $payment_meta[ $this->id ] = array( |
|
420 | + $payment_meta[$this->id] = array( |
|
421 | 421 | 'post_meta' => array( |
422 | 422 | '_stripe_customer_id' => array( |
423 | - 'value' => get_post_meta( $subscription_id, '_stripe_customer_id', true ), |
|
423 | + 'value' => get_post_meta($subscription_id, '_stripe_customer_id', true), |
|
424 | 424 | 'label' => 'Stripe Customer ID', |
425 | 425 | ), |
426 | 426 | '_stripe_source_id' => array( |
@@ -443,22 +443,22 @@ discard block |
||
443 | 443 | * @param array $payment_meta associative array of meta data required for automatic payments |
444 | 444 | * @return array |
445 | 445 | */ |
446 | - public function validate_subscription_payment_meta( $payment_method_id, $payment_meta ) { |
|
447 | - if ( $this->id === $payment_method_id ) { |
|
446 | + public function validate_subscription_payment_meta($payment_method_id, $payment_meta) { |
|
447 | + if ($this->id === $payment_method_id) { |
|
448 | 448 | |
449 | - if ( ! isset( $payment_meta['post_meta']['_stripe_customer_id']['value'] ) || empty( $payment_meta['post_meta']['_stripe_customer_id']['value'] ) ) { |
|
450 | - throw new Exception( __( 'A "Stripe Customer ID" value is required.', 'woocommerce-gateway-stripe' ) ); |
|
451 | - } elseif ( 0 !== strpos( $payment_meta['post_meta']['_stripe_customer_id']['value'], 'cus_' ) ) { |
|
452 | - throw new Exception( __( 'Invalid customer ID. A valid "Stripe Customer ID" must begin with "cus_".', 'woocommerce-gateway-stripe' ) ); |
|
449 | + if ( ! isset($payment_meta['post_meta']['_stripe_customer_id']['value']) || empty($payment_meta['post_meta']['_stripe_customer_id']['value'])) { |
|
450 | + throw new Exception(__('A "Stripe Customer ID" value is required.', 'woocommerce-gateway-stripe')); |
|
451 | + } elseif (0 !== strpos($payment_meta['post_meta']['_stripe_customer_id']['value'], 'cus_')) { |
|
452 | + throw new Exception(__('Invalid customer ID. A valid "Stripe Customer ID" must begin with "cus_".', 'woocommerce-gateway-stripe')); |
|
453 | 453 | } |
454 | 454 | |
455 | 455 | if ( |
456 | - ( ! empty( $payment_meta['post_meta']['_stripe_source_id']['value'] ) |
|
457 | - && 0 !== strpos( $payment_meta['post_meta']['_stripe_source_id']['value'], 'card_' ) ) |
|
458 | - && ( ! empty( $payment_meta['post_meta']['_stripe_source_id']['value'] ) |
|
459 | - && 0 !== strpos( $payment_meta['post_meta']['_stripe_source_id']['value'], 'src_' ) ) ) { |
|
456 | + ( ! empty($payment_meta['post_meta']['_stripe_source_id']['value']) |
|
457 | + && 0 !== strpos($payment_meta['post_meta']['_stripe_source_id']['value'], 'card_')) |
|
458 | + && ( ! empty($payment_meta['post_meta']['_stripe_source_id']['value']) |
|
459 | + && 0 !== strpos($payment_meta['post_meta']['_stripe_source_id']['value'], 'src_')) ) { |
|
460 | 460 | |
461 | - throw new Exception( __( 'Invalid source ID. A valid source "Stripe Source ID" must begin with "src_" or "card_".', 'woocommerce-gateway-stripe' ) ); |
|
461 | + throw new Exception(__('Invalid source ID. A valid source "Stripe Source ID" must begin with "src_" or "card_".', 'woocommerce-gateway-stripe')); |
|
462 | 462 | } |
463 | 463 | } |
464 | 464 | } |
@@ -471,75 +471,75 @@ discard block |
||
471 | 471 | * @param WC_Subscription $subscription the subscription details |
472 | 472 | * @return string the subscription payment method |
473 | 473 | */ |
474 | - public function maybe_render_subscription_payment_method( $payment_method_to_display, $subscription ) { |
|
475 | - $customer_user = WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $subscription->customer_user : $subscription->get_customer_id(); |
|
474 | + public function maybe_render_subscription_payment_method($payment_method_to_display, $subscription) { |
|
475 | + $customer_user = WC_Stripe_Helper::is_wc_lt('3.0') ? $subscription->customer_user : $subscription->get_customer_id(); |
|
476 | 476 | |
477 | 477 | // bail for other payment methods |
478 | - if ( ( WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $subscription->payment_method : $subscription->get_payment_method() ) !== $this->id || ! $customer_user ) { |
|
478 | + if ((WC_Stripe_Helper::is_wc_lt('3.0') ? $subscription->payment_method : $subscription->get_payment_method()) !== $this->id || ! $customer_user) { |
|
479 | 479 | return $payment_method_to_display; |
480 | 480 | } |
481 | 481 | |
482 | - $stripe_source_id = get_post_meta( ( WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $subscription->id : $subscription->get_id() ), '_stripe_source_id', true ); |
|
482 | + $stripe_source_id = get_post_meta((WC_Stripe_Helper::is_wc_lt('3.0') ? $subscription->id : $subscription->get_id()), '_stripe_source_id', true); |
|
483 | 483 | |
484 | 484 | // For BW compat will remove in future. |
485 | - if ( empty( $stripe_source_id ) ) { |
|
486 | - $stripe_source_id = get_post_meta( ( WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $subscription->id : $subscription->get_id() ), '_stripe_card_id', true ); |
|
485 | + if (empty($stripe_source_id)) { |
|
486 | + $stripe_source_id = get_post_meta((WC_Stripe_Helper::is_wc_lt('3.0') ? $subscription->id : $subscription->get_id()), '_stripe_card_id', true); |
|
487 | 487 | |
488 | 488 | // Take this opportunity to update the key name. |
489 | - WC_Stripe_Helper::is_wc_lt( '3.0' ) ? update_post_meta( $subscription->id, '_stripe_source_id', $stripe_source_id ) : update_post_meta( $subscription->get_id(), '_stripe_source_id', $stripe_source_id ); |
|
489 | + WC_Stripe_Helper::is_wc_lt('3.0') ? update_post_meta($subscription->id, '_stripe_source_id', $stripe_source_id) : update_post_meta($subscription->get_id(), '_stripe_source_id', $stripe_source_id); |
|
490 | 490 | } |
491 | 491 | |
492 | 492 | $stripe_customer = new WC_Stripe_Customer(); |
493 | - $stripe_customer_id = get_post_meta( ( WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $subscription->id : $subscription->get_id() ), '_stripe_customer_id', true ); |
|
493 | + $stripe_customer_id = get_post_meta((WC_Stripe_Helper::is_wc_lt('3.0') ? $subscription->id : $subscription->get_id()), '_stripe_customer_id', true); |
|
494 | 494 | |
495 | 495 | // If we couldn't find a Stripe customer linked to the subscription, fallback to the user meta data. |
496 | - if ( ! $stripe_customer_id || ! is_string( $stripe_customer_id ) ) { |
|
496 | + if ( ! $stripe_customer_id || ! is_string($stripe_customer_id)) { |
|
497 | 497 | $user_id = $customer_user; |
498 | - $stripe_customer_id = get_user_meta( $user_id, '_stripe_customer_id', true ); |
|
499 | - $stripe_source_id = get_user_meta( $user_id, '_stripe_source_id', true ); |
|
498 | + $stripe_customer_id = get_user_meta($user_id, '_stripe_customer_id', true); |
|
499 | + $stripe_source_id = get_user_meta($user_id, '_stripe_source_id', true); |
|
500 | 500 | |
501 | 501 | // For BW compat will remove in future. |
502 | - if ( empty( $stripe_source_id ) ) { |
|
503 | - $stripe_source_id = get_user_meta( $user_id, '_stripe_card_id', true ); |
|
502 | + if (empty($stripe_source_id)) { |
|
503 | + $stripe_source_id = get_user_meta($user_id, '_stripe_card_id', true); |
|
504 | 504 | |
505 | 505 | // Take this opportunity to update the key name. |
506 | - update_user_meta( $user_id, '_stripe_source_id', $stripe_source_id ); |
|
506 | + update_user_meta($user_id, '_stripe_source_id', $stripe_source_id); |
|
507 | 507 | } |
508 | 508 | } |
509 | 509 | |
510 | 510 | // If we couldn't find a Stripe customer linked to the account, fallback to the order meta data. |
511 | - if ( ( ! $stripe_customer_id || ! is_string( $stripe_customer_id ) ) && false !== $subscription->order ) { |
|
512 | - $stripe_customer_id = get_post_meta( ( WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $subscription->order->id : $subscription->get_parent_id() ), '_stripe_customer_id', true ); |
|
513 | - $stripe_source_id = get_post_meta( ( WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $subscription->order->id : $subscription->get_parent_id() ), '_stripe_source_id', true ); |
|
511 | + if (( ! $stripe_customer_id || ! is_string($stripe_customer_id)) && false !== $subscription->order) { |
|
512 | + $stripe_customer_id = get_post_meta((WC_Stripe_Helper::is_wc_lt('3.0') ? $subscription->order->id : $subscription->get_parent_id()), '_stripe_customer_id', true); |
|
513 | + $stripe_source_id = get_post_meta((WC_Stripe_Helper::is_wc_lt('3.0') ? $subscription->order->id : $subscription->get_parent_id()), '_stripe_source_id', true); |
|
514 | 514 | |
515 | 515 | // For BW compat will remove in future. |
516 | - if ( empty( $stripe_source_id ) ) { |
|
517 | - $stripe_source_id = get_post_meta( ( WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $subscription->order->id : $subscription->get_parent_id() ), '_stripe_card_id', true ); |
|
516 | + if (empty($stripe_source_id)) { |
|
517 | + $stripe_source_id = get_post_meta((WC_Stripe_Helper::is_wc_lt('3.0') ? $subscription->order->id : $subscription->get_parent_id()), '_stripe_card_id', true); |
|
518 | 518 | |
519 | 519 | // Take this opportunity to update the key name. |
520 | - WC_Stripe_Helper::is_wc_lt( '3.0' ) ? update_post_meta( $subscription->order->id, '_stripe_source_id', $stripe_source_id ) : update_post_meta( $subscription->get_parent_id(), '_stripe_source_id', $stripe_source_id ); |
|
520 | + WC_Stripe_Helper::is_wc_lt('3.0') ? update_post_meta($subscription->order->id, '_stripe_source_id', $stripe_source_id) : update_post_meta($subscription->get_parent_id(), '_stripe_source_id', $stripe_source_id); |
|
521 | 521 | } |
522 | 522 | } |
523 | 523 | |
524 | - $stripe_customer->set_id( $stripe_customer_id ); |
|
524 | + $stripe_customer->set_id($stripe_customer_id); |
|
525 | 525 | |
526 | 526 | $sources = $stripe_customer->get_sources(); |
527 | - $payment_method_to_display = __( 'N/A', 'woocommerce-gateway-stripe' ); |
|
527 | + $payment_method_to_display = __('N/A', 'woocommerce-gateway-stripe'); |
|
528 | 528 | |
529 | - if ( $sources ) { |
|
529 | + if ($sources) { |
|
530 | 530 | $card = false; |
531 | 531 | |
532 | - foreach ( $sources as $source ) { |
|
533 | - if ( isset( $source->type ) && 'card' === $source->type ) { |
|
532 | + foreach ($sources as $source) { |
|
533 | + if (isset($source->type) && 'card' === $source->type) { |
|
534 | 534 | $card = $source->card; |
535 | - } elseif ( isset( $source->object ) && 'card' === $source->object ) { |
|
535 | + } elseif (isset($source->object) && 'card' === $source->object) { |
|
536 | 536 | $card = $source; |
537 | 537 | } |
538 | 538 | |
539 | - if ( $source->id === $stripe_source_id ) { |
|
540 | - if ( $card ) { |
|
539 | + if ($source->id === $stripe_source_id) { |
|
540 | + if ($card) { |
|
541 | 541 | /* translators: 1) card brand 2) last 4 digits */ |
542 | - $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 ); |
|
542 | + $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); |
|
543 | 543 | } |
544 | 544 | |
545 | 545 | break; |
@@ -556,7 +556,7 @@ discard block |
||
556 | 556 | */ |
557 | 557 | public function remove_order_pay_var() { |
558 | 558 | global $wp; |
559 | - if ( isset( $_GET['wc-stripe-confirmation'] ) ) { |
|
559 | + if (isset($_GET['wc-stripe-confirmation'])) { |
|
560 | 560 | $this->order_pay_var = $wp->query_vars['order-pay']; |
561 | 561 | $wp->query_vars['order-pay'] = null; |
562 | 562 | } |
@@ -567,7 +567,7 @@ discard block |
||
567 | 567 | */ |
568 | 568 | public function restore_order_pay_var() { |
569 | 569 | global $wp; |
570 | - if ( isset( $this->order_pay_var ) ) { |
|
570 | + if (isset($this->order_pay_var)) { |
|
571 | 571 | $wp->query_vars['order-pay'] = $this->order_pay_var; |
572 | 572 | } |
573 | 573 | } |
@@ -578,13 +578,13 @@ discard block |
||
578 | 578 | * @param WC_Order $renewal_order The renewal order. |
579 | 579 | * @return boolean |
580 | 580 | */ |
581 | - public function has_authentication_already_failed( $renewal_order ) { |
|
582 | - $existing_intent = $this->get_intent_from_order( $renewal_order ); |
|
581 | + public function has_authentication_already_failed($renewal_order) { |
|
582 | + $existing_intent = $this->get_intent_from_order($renewal_order); |
|
583 | 583 | |
584 | 584 | if ( |
585 | 585 | ! $existing_intent |
586 | 586 | || 'requires_payment_method' !== $existing_intent->status |
587 | - || empty( $existing_intent->last_payment_error ) |
|
587 | + || empty($existing_intent->last_payment_error) |
|
588 | 588 | || 'authentication_required' !== $existing_intent->last_payment_error->code |
589 | 589 | ) { |
590 | 590 | return false; |
@@ -598,12 +598,12 @@ discard block |
||
598 | 598 | * |
599 | 599 | * @param WC_Order $renewal_order The order that is being renewed. |
600 | 600 | */ |
601 | - do_action( 'wc_gateway_stripe_process_payment_authentication_required', $renewal_order ); |
|
601 | + do_action('wc_gateway_stripe_process_payment_authentication_required', $renewal_order); |
|
602 | 602 | |
603 | 603 | // Fail the payment attempt (order would be currently pending because of retry rules). |
604 | - $charge = end( $existing_intent->charges->data ); |
|
604 | + $charge = end($existing_intent->charges->data); |
|
605 | 605 | $charge_id = $charge->id; |
606 | - $renewal_order->update_status( 'failed', sprintf( __( 'Stripe charge awaiting authentication by user: %s.', 'woocommerce-gateway-stripe' ), $charge_id ) ); |
|
606 | + $renewal_order->update_status('failed', sprintf(__('Stripe charge awaiting authentication by user: %s.', 'woocommerce-gateway-stripe'), $charge_id)); |
|
607 | 607 | |
608 | 608 | return true; |
609 | 609 | } |