@@ -1,10 +1,10 @@ discard block |
||
1 | 1 | <?php |
2 | 2 | |
3 | -if ( ! defined( 'ABSPATH' ) ) { |
|
3 | +if ( ! defined('ABSPATH')) { |
|
4 | 4 | exit; |
5 | 5 | } |
6 | 6 | |
7 | -if ( ! class_exists( 'WC_Stripe_Connect_REST_Oauth_Connect_Controller' ) ) { |
|
7 | +if ( ! class_exists('WC_Stripe_Connect_REST_Oauth_Connect_Controller')) { |
|
8 | 8 | /** |
9 | 9 | * Stripe Connect Oauth Connect controller class. |
10 | 10 | */ |
@@ -30,9 +30,9 @@ discard block |
||
30 | 30 | * @param WC_Stripe_Connect $connect stripe connect. |
31 | 31 | * @param WC_Stripe_Connect_API $api stripe connect api. |
32 | 32 | */ |
33 | - public function __construct( WC_Stripe_Connect $connect, WC_Stripe_Connect_API $api ) { |
|
33 | + public function __construct(WC_Stripe_Connect $connect, WC_Stripe_Connect_API $api) { |
|
34 | 34 | |
35 | - parent::__construct( $api ); |
|
35 | + parent::__construct($api); |
|
36 | 36 | |
37 | 37 | $this->connect = $connect; |
38 | 38 | } |
@@ -44,19 +44,19 @@ discard block |
||
44 | 44 | * |
45 | 45 | * @return array|WP_Error |
46 | 46 | */ |
47 | - public function post( $request ) { |
|
47 | + public function post($request) { |
|
48 | 48 | |
49 | 49 | $data = $request->get_json_params(); |
50 | - $response = $this->connect->connect_oauth( $data['state'], $data['code'] ); |
|
50 | + $response = $this->connect->connect_oauth($data['state'], $data['code']); |
|
51 | 51 | |
52 | - if ( is_wp_error( $response ) ) { |
|
52 | + if (is_wp_error($response)) { |
|
53 | 53 | |
54 | - WC_Stripe_Logger::log( $response, __CLASS__ ); |
|
54 | + WC_Stripe_Logger::log($response, __CLASS__); |
|
55 | 55 | |
56 | 56 | return new WP_Error( |
57 | 57 | $response->get_error_code(), |
58 | 58 | $response->get_error_message(), |
59 | - array( 'status' => 400 ) |
|
59 | + array('status' => 400) |
|
60 | 60 | ); |
61 | 61 | } |
62 | 62 |
@@ -1,10 +1,10 @@ discard block |
||
1 | 1 | <?php |
2 | 2 | |
3 | -if ( ! defined( 'ABSPATH' ) ) { |
|
3 | +if ( ! defined('ABSPATH')) { |
|
4 | 4 | exit; |
5 | 5 | } |
6 | 6 | |
7 | -if ( ! class_exists( 'WC_Stripe_Connect_REST_Oauth_Init_Controller' ) ) { |
|
7 | +if ( ! class_exists('WC_Stripe_Connect_REST_Oauth_Init_Controller')) { |
|
8 | 8 | /** |
9 | 9 | * Stripe Connect Oauth Init controller class. |
10 | 10 | */ |
@@ -30,9 +30,9 @@ discard block |
||
30 | 30 | * @param WC_Stripe_Connect $connect stripe connect. |
31 | 31 | * @param WC_Stripe_Connect_API $api stripe connect api. |
32 | 32 | */ |
33 | - public function __construct( WC_Stripe_Connect $connect, WC_Stripe_Connect_API $api ) { |
|
33 | + public function __construct(WC_Stripe_Connect $connect, WC_Stripe_Connect_API $api) { |
|
34 | 34 | |
35 | - parent::__construct( $api ); |
|
35 | + parent::__construct($api); |
|
36 | 36 | |
37 | 37 | $this->connect = $connect; |
38 | 38 | } |
@@ -44,19 +44,19 @@ discard block |
||
44 | 44 | * |
45 | 45 | * @return array|WP_Error |
46 | 46 | */ |
47 | - public function post( $request ) { |
|
47 | + public function post($request) { |
|
48 | 48 | |
49 | 49 | $data = $request->get_json_params(); |
50 | - $response = $this->connect->get_oauth_url( isset( $data['returnUrl'] ) ? $data['returnUrl'] : '' ); |
|
50 | + $response = $this->connect->get_oauth_url(isset($data['returnUrl']) ? $data['returnUrl'] : ''); |
|
51 | 51 | |
52 | - if ( is_wp_error( $response ) ) { |
|
52 | + if (is_wp_error($response)) { |
|
53 | 53 | |
54 | - WC_Stripe_Logger::log( $response, __CLASS__ ); |
|
54 | + WC_Stripe_Logger::log($response, __CLASS__); |
|
55 | 55 | |
56 | 56 | return new WP_Error( |
57 | 57 | $response->get_error_code(), |
58 | 58 | $response->get_error_message(), |
59 | - array( 'status' => 400 ) |
|
59 | + array('status' => 400) |
|
60 | 60 | ); |
61 | 61 | } |
62 | 62 |
@@ -1,28 +1,28 @@ |
||
1 | 1 | <?php |
2 | -$_tests_dir = getenv( 'WP_TESTS_DIR' ); |
|
3 | -if ( ! $_tests_dir ) { |
|
2 | +$_tests_dir = getenv('WP_TESTS_DIR'); |
|
3 | +if ( ! $_tests_dir) { |
|
4 | 4 | $_tests_dir = '/tmp/wordpress-tests-lib'; |
5 | 5 | } |
6 | 6 | |
7 | 7 | require_once $_tests_dir . '/includes/functions.php'; |
8 | 8 | |
9 | 9 | function _manually_load_plugin() { |
10 | - $plugin_dir = dirname( dirname( dirname( dirname( __FILE__ ) ) ) ) . '/'; |
|
10 | + $plugin_dir = dirname(dirname(dirname(dirname(__FILE__)))) . '/'; |
|
11 | 11 | require $plugin_dir . 'woocommerce/woocommerce.php'; |
12 | - require dirname( __FILE__ ) . '/setup.php'; |
|
12 | + require dirname(__FILE__) . '/setup.php'; |
|
13 | 13 | require $plugin_dir . 'woocommerce-gateway-stripe/woocommerce-gateway-stripe.php'; |
14 | 14 | } |
15 | 15 | |
16 | -tests_add_filter( 'muplugins_loaded', '_manually_load_plugin' ); |
|
16 | +tests_add_filter('muplugins_loaded', '_manually_load_plugin'); |
|
17 | 17 | |
18 | 18 | require $_tests_dir . '/includes/bootstrap.php'; |
19 | 19 | |
20 | -$wc_tests_framework_base_dir = dirname( dirname( dirname( dirname( __FILE__ ) ) ) ) . '/woocommerce/tests/framework/'; |
|
21 | -require_once( $wc_tests_framework_base_dir . 'class-wc-mock-session-handler.php' ); |
|
20 | +$wc_tests_framework_base_dir = dirname(dirname(dirname(dirname(__FILE__)))) . '/woocommerce/tests/framework/'; |
|
21 | +require_once($wc_tests_framework_base_dir . 'class-wc-mock-session-handler.php'); |
|
22 | 22 | //require_once( $wc_tests_framework_base_dir . 'class-wc-unit-test-case.php' ); |
23 | -require_once( $wc_tests_framework_base_dir . 'helpers/class-wc-helper-product.php' ); |
|
24 | -require_once( $wc_tests_framework_base_dir . 'helpers/class-wc-helper-coupon.php' ); |
|
25 | -require_once( $wc_tests_framework_base_dir . 'helpers/class-wc-helper-fee.php' ); |
|
26 | -require_once( $wc_tests_framework_base_dir . 'helpers/class-wc-helper-shipping.php' ); |
|
27 | -require_once( $wc_tests_framework_base_dir . 'helpers/class-wc-helper-customer.php' ); |
|
28 | -require_once( $wc_tests_framework_base_dir . 'helpers/class-wc-helper-order.php' ); |
|
23 | +require_once($wc_tests_framework_base_dir . 'helpers/class-wc-helper-product.php'); |
|
24 | +require_once($wc_tests_framework_base_dir . 'helpers/class-wc-helper-coupon.php'); |
|
25 | +require_once($wc_tests_framework_base_dir . 'helpers/class-wc-helper-fee.php'); |
|
26 | +require_once($wc_tests_framework_base_dir . 'helpers/class-wc-helper-shipping.php'); |
|
27 | +require_once($wc_tests_framework_base_dir . 'helpers/class-wc-helper-customer.php'); |
|
28 | +require_once($wc_tests_framework_base_dir . 'helpers/class-wc-helper-order.php'); |
@@ -2,4 +2,4 @@ |
||
2 | 2 | /** |
3 | 3 | * Set up shared by all tests. |
4 | 4 | */ |
5 | -update_option( 'woocommerce_default_country', 'US:CA' ); |
|
5 | +update_option('woocommerce_default_country', 'US:CA'); |
@@ -1,5 +1,5 @@ discard block |
||
1 | 1 | <?php |
2 | -if ( ! defined( 'ABSPATH' ) ) { |
|
2 | +if ( ! defined('ABSPATH')) { |
|
3 | 3 | exit; |
4 | 4 | } |
5 | 5 | |
@@ -85,9 +85,9 @@ discard block |
||
85 | 85 | public function __construct() { |
86 | 86 | $this->retry_interval = 1; |
87 | 87 | $this->id = 'stripe'; |
88 | - $this->method_title = __( 'Stripe', 'woocommerce-gateway-stripe' ); |
|
88 | + $this->method_title = __('Stripe', 'woocommerce-gateway-stripe'); |
|
89 | 89 | /* translators: 1) link to Stripe register page 2) link to Stripe api keys page */ |
90 | - $this->method_description = __( 'Stripe works by adding payment fields on the checkout and then sending the details to Stripe for verification.', 'woocommerce-gateway-stripe' ); |
|
90 | + $this->method_description = __('Stripe works by adding payment fields on the checkout and then sending the details to Stripe for verification.', 'woocommerce-gateway-stripe'); |
|
91 | 91 | $this->has_fields = true; |
92 | 92 | $this->supports = array( |
93 | 93 | 'products', |
@@ -114,40 +114,40 @@ discard block |
||
114 | 114 | $this->init_settings(); |
115 | 115 | |
116 | 116 | // Get setting values. |
117 | - $this->title = $this->get_option( 'title' ); |
|
118 | - $this->description = $this->get_option( 'description' ); |
|
119 | - $this->enabled = $this->get_option( 'enabled' ); |
|
120 | - $this->testmode = 'yes' === $this->get_option( 'testmode' ); |
|
121 | - $this->inline_cc_form = 'yes' === $this->get_option( 'inline_cc_form' ); |
|
122 | - $this->capture = 'yes' === $this->get_option( 'capture', 'yes' ); |
|
123 | - $this->statement_descriptor = WC_Stripe_Helper::clean_statement_descriptor( $this->get_option( 'statement_descriptor' ) ); |
|
124 | - $this->saved_cards = 'yes' === $this->get_option( 'saved_cards' ); |
|
125 | - $this->secret_key = $this->testmode ? $this->get_option( 'test_secret_key' ) : $this->get_option( 'secret_key' ); |
|
126 | - $this->publishable_key = $this->testmode ? $this->get_option( 'test_publishable_key' ) : $this->get_option( 'publishable_key' ); |
|
127 | - $this->payment_request = 'yes' === $this->get_option( 'payment_request', 'yes' ); |
|
128 | - |
|
129 | - WC_Stripe_API::set_secret_key( $this->secret_key ); |
|
117 | + $this->title = $this->get_option('title'); |
|
118 | + $this->description = $this->get_option('description'); |
|
119 | + $this->enabled = $this->get_option('enabled'); |
|
120 | + $this->testmode = 'yes' === $this->get_option('testmode'); |
|
121 | + $this->inline_cc_form = 'yes' === $this->get_option('inline_cc_form'); |
|
122 | + $this->capture = 'yes' === $this->get_option('capture', 'yes'); |
|
123 | + $this->statement_descriptor = WC_Stripe_Helper::clean_statement_descriptor($this->get_option('statement_descriptor')); |
|
124 | + $this->saved_cards = 'yes' === $this->get_option('saved_cards'); |
|
125 | + $this->secret_key = $this->testmode ? $this->get_option('test_secret_key') : $this->get_option('secret_key'); |
|
126 | + $this->publishable_key = $this->testmode ? $this->get_option('test_publishable_key') : $this->get_option('publishable_key'); |
|
127 | + $this->payment_request = 'yes' === $this->get_option('payment_request', 'yes'); |
|
128 | + |
|
129 | + WC_Stripe_API::set_secret_key($this->secret_key); |
|
130 | 130 | |
131 | 131 | // Hooks. |
132 | - add_action( 'wp_enqueue_scripts', array( $this, 'payment_scripts' ) ); |
|
133 | - add_action( 'admin_enqueue_scripts', array( $this, 'admin_scripts' ) ); |
|
134 | - add_action( 'woocommerce_update_options_payment_gateways_' . $this->id, array( $this, 'process_admin_options' ) ); |
|
135 | - add_action( 'woocommerce_admin_order_totals_after_total', array( $this, 'display_order_fee' ) ); |
|
136 | - add_action( 'woocommerce_admin_order_totals_after_total', array( $this, 'display_order_payout' ), 20 ); |
|
137 | - add_action( 'woocommerce_customer_save_address', array( $this, 'show_update_card_notice' ), 10, 2 ); |
|
138 | - add_filter( 'woocommerce_available_payment_gateways', array( $this, 'prepare_order_pay_page' ) ); |
|
139 | - add_action( 'woocommerce_account_view-order_endpoint', array( $this, 'check_intent_status_on_order_page' ), 1 ); |
|
140 | - add_filter( 'woocommerce_payment_successful_result', array( $this, 'modify_successful_payment_result' ), 99999, 2 ); |
|
141 | - add_action( 'set_logged_in_cookie', array( $this, 'set_cookie_on_current_request' ) ); |
|
142 | - add_filter( 'woocommerce_get_checkout_payment_url', array( $this, 'get_checkout_payment_url' ), 10, 2 ); |
|
132 | + add_action('wp_enqueue_scripts', array($this, 'payment_scripts')); |
|
133 | + add_action('admin_enqueue_scripts', array($this, 'admin_scripts')); |
|
134 | + add_action('woocommerce_update_options_payment_gateways_' . $this->id, array($this, 'process_admin_options')); |
|
135 | + add_action('woocommerce_admin_order_totals_after_total', array($this, 'display_order_fee')); |
|
136 | + add_action('woocommerce_admin_order_totals_after_total', array($this, 'display_order_payout'), 20); |
|
137 | + add_action('woocommerce_customer_save_address', array($this, 'show_update_card_notice'), 10, 2); |
|
138 | + add_filter('woocommerce_available_payment_gateways', array($this, 'prepare_order_pay_page')); |
|
139 | + add_action('woocommerce_account_view-order_endpoint', array($this, 'check_intent_status_on_order_page'), 1); |
|
140 | + add_filter('woocommerce_payment_successful_result', array($this, 'modify_successful_payment_result'), 99999, 2); |
|
141 | + add_action('set_logged_in_cookie', array($this, 'set_cookie_on_current_request')); |
|
142 | + add_filter('woocommerce_get_checkout_payment_url', array($this, 'get_checkout_payment_url'), 10, 2); |
|
143 | 143 | |
144 | 144 | // Note: display error is in the parent class. |
145 | - add_action( 'admin_notices', array( $this, 'display_errors' ), 9999 ); |
|
145 | + add_action('admin_notices', array($this, 'display_errors'), 9999); |
|
146 | 146 | |
147 | - if ( WC_Stripe_Helper::is_pre_orders_exists() ) { |
|
147 | + if (WC_Stripe_Helper::is_pre_orders_exists()) { |
|
148 | 148 | $this->pre_orders = new WC_Stripe_Pre_Orders_Compat(); |
149 | 149 | |
150 | - add_action( 'wc_pre_orders_process_pre_order_completion_payment_' . $this->id, array( $this->pre_orders, 'process_pre_order_release_payment' ) ); |
|
150 | + add_action('wc_pre_orders_process_pre_order_completion_payment_' . $this->id, array($this->pre_orders, 'process_pre_order_release_payment')); |
|
151 | 151 | } |
152 | 152 | } |
153 | 153 | |
@@ -157,7 +157,7 @@ discard block |
||
157 | 157 | * @since 4.0.2 |
158 | 158 | */ |
159 | 159 | public function is_available() { |
160 | - if ( is_add_payment_method_page() && ! $this->saved_cards ) { |
|
160 | + if (is_add_payment_method_page() && ! $this->saved_cards) { |
|
161 | 161 | return false; |
162 | 162 | } |
163 | 163 | |
@@ -171,13 +171,13 @@ discard block |
||
171 | 171 | * @param int $user_id The ID of the current user. |
172 | 172 | * @param string $load_address The address to load. |
173 | 173 | */ |
174 | - public function show_update_card_notice( $user_id, $load_address ) { |
|
175 | - if ( ! $this->saved_cards || ! WC_Stripe_Payment_Tokens::customer_has_saved_methods( $user_id ) || 'billing' !== $load_address ) { |
|
174 | + public function show_update_card_notice($user_id, $load_address) { |
|
175 | + if ( ! $this->saved_cards || ! WC_Stripe_Payment_Tokens::customer_has_saved_methods($user_id) || 'billing' !== $load_address) { |
|
176 | 176 | return; |
177 | 177 | } |
178 | 178 | |
179 | 179 | /* translators: 1) Opening anchor tag 2) closing anchor tag */ |
180 | - wc_add_notice( sprintf( __( 'If your billing address has been changed for saved payment methods, be sure to remove any %1$ssaved payment methods%2$s on file and re-add them.', 'woocommerce-gateway-stripe' ), '<a href="' . esc_url( wc_get_endpoint_url( 'payment-methods' ) ) . '" class="wc-stripe-update-card-notice" style="text-decoration:underline;">', '</a>' ), 'notice' ); |
|
180 | + wc_add_notice(sprintf(__('If your billing address has been changed for saved payment methods, be sure to remove any %1$ssaved payment methods%2$s on file and re-add them.', 'woocommerce-gateway-stripe'), '<a href="' . esc_url(wc_get_endpoint_url('payment-methods')) . '" class="wc-stripe-update-card-notice" style="text-decoration:underline;">', '</a>'), 'notice'); |
|
181 | 181 | } |
182 | 182 | |
183 | 183 | /** |
@@ -192,24 +192,24 @@ discard block |
||
192 | 192 | |
193 | 193 | $icons_str = ''; |
194 | 194 | |
195 | - $icons_str .= isset( $icons['visa'] ) ? $icons['visa'] : ''; |
|
196 | - $icons_str .= isset( $icons['amex'] ) ? $icons['amex'] : ''; |
|
197 | - $icons_str .= isset( $icons['mastercard'] ) ? $icons['mastercard'] : ''; |
|
195 | + $icons_str .= isset($icons['visa']) ? $icons['visa'] : ''; |
|
196 | + $icons_str .= isset($icons['amex']) ? $icons['amex'] : ''; |
|
197 | + $icons_str .= isset($icons['mastercard']) ? $icons['mastercard'] : ''; |
|
198 | 198 | |
199 | - if ( 'USD' === get_woocommerce_currency() ) { |
|
200 | - $icons_str .= isset( $icons['discover'] ) ? $icons['discover'] : ''; |
|
201 | - $icons_str .= isset( $icons['jcb'] ) ? $icons['jcb'] : ''; |
|
202 | - $icons_str .= isset( $icons['diners'] ) ? $icons['diners'] : ''; |
|
199 | + if ('USD' === get_woocommerce_currency()) { |
|
200 | + $icons_str .= isset($icons['discover']) ? $icons['discover'] : ''; |
|
201 | + $icons_str .= isset($icons['jcb']) ? $icons['jcb'] : ''; |
|
202 | + $icons_str .= isset($icons['diners']) ? $icons['diners'] : ''; |
|
203 | 203 | } |
204 | 204 | |
205 | - return apply_filters( 'woocommerce_gateway_icon', $icons_str, $this->id ); |
|
205 | + return apply_filters('woocommerce_gateway_icon', $icons_str, $this->id); |
|
206 | 206 | } |
207 | 207 | |
208 | 208 | /** |
209 | 209 | * Initialise Gateway Settings Form Fields |
210 | 210 | */ |
211 | 211 | public function init_form_fields() { |
212 | - $this->form_fields = require( dirname( __FILE__ ) . '/admin/stripe-settings.php' ); |
|
212 | + $this->form_fields = require(dirname(__FILE__) . '/admin/stripe-settings.php'); |
|
213 | 213 | } |
214 | 214 | |
215 | 215 | /** |
@@ -218,27 +218,27 @@ discard block |
||
218 | 218 | public function payment_fields() { |
219 | 219 | global $wp; |
220 | 220 | $user = wp_get_current_user(); |
221 | - $display_tokenization = $this->supports( 'tokenization' ) && is_checkout() && $this->saved_cards; |
|
221 | + $display_tokenization = $this->supports('tokenization') && is_checkout() && $this->saved_cards; |
|
222 | 222 | $total = WC()->cart->total; |
223 | 223 | $user_email = ''; |
224 | 224 | $description = $this->get_description(); |
225 | - $description = ! empty( $description ) ? $description : ''; |
|
225 | + $description = ! empty($description) ? $description : ''; |
|
226 | 226 | $firstname = ''; |
227 | 227 | $lastname = ''; |
228 | 228 | |
229 | 229 | // If paying from order, we need to get total from order not cart. |
230 | - if ( isset( $_GET['pay_for_order'] ) && ! empty( $_GET['key'] ) ) { // wpcs: csrf ok. |
|
231 | - $order = wc_get_order( wc_clean( $wp->query_vars['order-pay'] ) ); // wpcs: csrf ok, sanitization ok. |
|
230 | + if (isset($_GET['pay_for_order']) && ! empty($_GET['key'])) { // wpcs: csrf ok. |
|
231 | + $order = wc_get_order(wc_clean($wp->query_vars['order-pay'])); // wpcs: csrf ok, sanitization ok. |
|
232 | 232 | $total = $order->get_total(); |
233 | 233 | $user_email = $order->get_billing_email(); |
234 | 234 | } else { |
235 | - if ( $user->ID ) { |
|
236 | - $user_email = get_user_meta( $user->ID, 'billing_email', true ); |
|
235 | + if ($user->ID) { |
|
236 | + $user_email = get_user_meta($user->ID, 'billing_email', true); |
|
237 | 237 | $user_email = $user_email ? $user_email : $user->user_email; |
238 | 238 | } |
239 | 239 | } |
240 | 240 | |
241 | - if ( is_add_payment_method_page() ) { |
|
241 | + if (is_add_payment_method_page()) { |
|
242 | 242 | $firstname = $user->user_firstname; |
243 | 243 | $lastname = $user->user_lastname; |
244 | 244 | } |
@@ -247,33 +247,33 @@ discard block |
||
247 | 247 | |
248 | 248 | echo '<div |
249 | 249 | id="stripe-payment-data" |
250 | - data-email="' . esc_attr( $user_email ) . '" |
|
251 | - data-full-name="' . esc_attr( $firstname . ' ' . $lastname ) . '" |
|
252 | - data-currency="' . esc_attr( strtolower( get_woocommerce_currency() ) ) . '" |
|
250 | + data-email="' . esc_attr($user_email) . '" |
|
251 | + data-full-name="' . esc_attr($firstname . ' ' . $lastname) . '" |
|
252 | + data-currency="' . esc_attr(strtolower(get_woocommerce_currency())) . '" |
|
253 | 253 | >'; |
254 | 254 | |
255 | - if ( $this->testmode ) { |
|
255 | + if ($this->testmode) { |
|
256 | 256 | /* translators: link to Stripe testing page */ |
257 | - $description .= ' ' . sprintf( __( 'TEST MODE ENABLED. In test mode, you can use the card number 4242424242424242 with any CVC and a valid expiration date or check the <a href="%s" target="_blank">Testing Stripe documentation</a> for more card numbers.', 'woocommerce-gateway-stripe' ), 'https://stripe.com/docs/testing' ); |
|
257 | + $description .= ' ' . sprintf(__('TEST MODE ENABLED. In test mode, you can use the card number 4242424242424242 with any CVC and a valid expiration date or check the <a href="%s" target="_blank">Testing Stripe documentation</a> for more card numbers.', 'woocommerce-gateway-stripe'), 'https://stripe.com/docs/testing'); |
|
258 | 258 | } |
259 | 259 | |
260 | - $description = trim( $description ); |
|
260 | + $description = trim($description); |
|
261 | 261 | |
262 | - echo apply_filters( 'wc_stripe_description', wpautop( wp_kses_post( $description ) ), $this->id ); // wpcs: xss ok. |
|
262 | + echo apply_filters('wc_stripe_description', wpautop(wp_kses_post($description)), $this->id); // wpcs: xss ok. |
|
263 | 263 | |
264 | - if ( $display_tokenization ) { |
|
264 | + if ($display_tokenization) { |
|
265 | 265 | $this->tokenization_script(); |
266 | 266 | $this->saved_payment_methods(); |
267 | 267 | } |
268 | 268 | |
269 | 269 | $this->elements_form(); |
270 | 270 | |
271 | - if ( apply_filters( 'wc_stripe_display_save_payment_method_checkbox', $display_tokenization ) && ! is_add_payment_method_page() && ! isset( $_GET['change_payment_method'] ) ) { // wpcs: csrf ok. |
|
271 | + if (apply_filters('wc_stripe_display_save_payment_method_checkbox', $display_tokenization) && ! is_add_payment_method_page() && ! isset($_GET['change_payment_method'])) { // wpcs: csrf ok. |
|
272 | 272 | |
273 | 273 | $this->save_payment_method_checkbox(); |
274 | 274 | } |
275 | 275 | |
276 | - do_action( 'wc_stripe_cards_payment_fields', $this->id ); |
|
276 | + do_action('wc_stripe_cards_payment_fields', $this->id); |
|
277 | 277 | |
278 | 278 | echo '</div>'; |
279 | 279 | |
@@ -288,12 +288,12 @@ discard block |
||
288 | 288 | */ |
289 | 289 | public function elements_form() { |
290 | 290 | ?> |
291 | - <fieldset id="wc-<?php echo esc_attr( $this->id ); ?>-cc-form" class="wc-credit-card-form wc-payment-form" style="background:transparent;"> |
|
292 | - <?php do_action( 'woocommerce_credit_card_form_start', $this->id ); ?> |
|
291 | + <fieldset id="wc-<?php echo esc_attr($this->id); ?>-cc-form" class="wc-credit-card-form wc-payment-form" style="background:transparent;"> |
|
292 | + <?php do_action('woocommerce_credit_card_form_start', $this->id); ?> |
|
293 | 293 | |
294 | - <?php if ( $this->inline_cc_form ) { ?> |
|
294 | + <?php if ($this->inline_cc_form) { ?> |
|
295 | 295 | <label for="card-element"> |
296 | - <?php esc_html_e( 'Credit or debit card', 'woocommerce-gateway-stripe' ); ?> |
|
296 | + <?php esc_html_e('Credit or debit card', 'woocommerce-gateway-stripe'); ?> |
|
297 | 297 | </label> |
298 | 298 | |
299 | 299 | <div id="stripe-card-element" class="wc-stripe-elements-field"> |
@@ -301,7 +301,7 @@ discard block |
||
301 | 301 | </div> |
302 | 302 | <?php } else { ?> |
303 | 303 | <div class="form-row form-row-wide"> |
304 | - <label for="stripe-card-element"><?php esc_html_e( 'Card Number', 'woocommerce-gateway-stripe' ); ?> <span class="required">*</span></label> |
|
304 | + <label for="stripe-card-element"><?php esc_html_e('Card Number', 'woocommerce-gateway-stripe'); ?> <span class="required">*</span></label> |
|
305 | 305 | <div class="stripe-card-group"> |
306 | 306 | <div id="stripe-card-element" class="wc-stripe-elements-field"> |
307 | 307 | <!-- a Stripe Element will be inserted here. --> |
@@ -312,7 +312,7 @@ discard block |
||
312 | 312 | </div> |
313 | 313 | |
314 | 314 | <div class="form-row form-row-first"> |
315 | - <label for="stripe-exp-element"><?php esc_html_e( 'Expiry Date', 'woocommerce-gateway-stripe' ); ?> <span class="required">*</span></label> |
|
315 | + <label for="stripe-exp-element"><?php esc_html_e('Expiry Date', 'woocommerce-gateway-stripe'); ?> <span class="required">*</span></label> |
|
316 | 316 | |
317 | 317 | <div id="stripe-exp-element" class="wc-stripe-elements-field"> |
318 | 318 | <!-- a Stripe Element will be inserted here. --> |
@@ -320,7 +320,7 @@ discard block |
||
320 | 320 | </div> |
321 | 321 | |
322 | 322 | <div class="form-row form-row-last"> |
323 | - <label for="stripe-cvc-element"><?php esc_html_e( 'Card Code (CVC)', 'woocommerce-gateway-stripe' ); ?> <span class="required">*</span></label> |
|
323 | + <label for="stripe-cvc-element"><?php esc_html_e('Card Code (CVC)', 'woocommerce-gateway-stripe'); ?> <span class="required">*</span></label> |
|
324 | 324 | <div id="stripe-cvc-element" class="wc-stripe-elements-field"> |
325 | 325 | <!-- a Stripe Element will be inserted here. --> |
326 | 326 | </div> |
@@ -331,7 +331,7 @@ discard block |
||
331 | 331 | <!-- Used to display form errors --> |
332 | 332 | <div class="stripe-source-errors" role="alert"></div> |
333 | 333 | <br /> |
334 | - <?php do_action( 'woocommerce_credit_card_form_end', $this->id ); ?> |
|
334 | + <?php do_action('woocommerce_credit_card_form_end', $this->id); ?> |
|
335 | 335 | <div class="clear"></div> |
336 | 336 | </fieldset> |
337 | 337 | <?php |
@@ -344,13 +344,13 @@ discard block |
||
344 | 344 | * @version 3.1.0 |
345 | 345 | */ |
346 | 346 | public function admin_scripts() { |
347 | - if ( 'woocommerce_page_wc-settings' !== get_current_screen()->id ) { |
|
347 | + if ('woocommerce_page_wc-settings' !== get_current_screen()->id) { |
|
348 | 348 | return; |
349 | 349 | } |
350 | 350 | |
351 | - $suffix = defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG ? '' : '.min'; |
|
351 | + $suffix = defined('SCRIPT_DEBUG') && SCRIPT_DEBUG ? '' : '.min'; |
|
352 | 352 | |
353 | - wp_enqueue_script( 'woocommerce_stripe_admin', plugins_url( 'assets/js/stripe-admin' . $suffix . '.js', WC_STRIPE_MAIN_FILE ), array(), WC_STRIPE_VERSION, true ); |
|
353 | + wp_enqueue_script('woocommerce_stripe_admin', plugins_url('assets/js/stripe-admin' . $suffix . '.js', WC_STRIPE_MAIN_FILE), array(), WC_STRIPE_VERSION, true); |
|
354 | 354 | } |
355 | 355 | |
356 | 356 | /** |
@@ -367,54 +367,54 @@ discard block |
||
367 | 367 | ! is_product() |
368 | 368 | && ! is_cart() |
369 | 369 | && ! is_checkout() |
370 | - && ! isset( $_GET['pay_for_order'] ) // wpcs: csrf ok. |
|
370 | + && ! isset($_GET['pay_for_order']) // wpcs: csrf ok. |
|
371 | 371 | && ! is_add_payment_method_page() |
372 | - && ! isset( $_GET['change_payment_method'] ) // wpcs: csrf ok. |
|
373 | - && ! ( ! empty( get_query_var( 'view-subscription' ) ) && is_callable( 'WCS_Early_Renewal_Manager::is_early_renewal_via_modal_enabled' ) && WCS_Early_Renewal_Manager::is_early_renewal_via_modal_enabled() ) |
|
374 | - || ( is_order_received_page() ) |
|
372 | + && ! isset($_GET['change_payment_method']) // wpcs: csrf ok. |
|
373 | + && ! ( ! empty(get_query_var('view-subscription')) && is_callable('WCS_Early_Renewal_Manager::is_early_renewal_via_modal_enabled') && WCS_Early_Renewal_Manager::is_early_renewal_via_modal_enabled()) |
|
374 | + || (is_order_received_page()) |
|
375 | 375 | ) { |
376 | 376 | return; |
377 | 377 | } |
378 | 378 | |
379 | 379 | // If Stripe is not enabled bail. |
380 | - if ( 'no' === $this->enabled ) { |
|
380 | + if ('no' === $this->enabled) { |
|
381 | 381 | return; |
382 | 382 | } |
383 | 383 | |
384 | 384 | // If keys are not set bail. |
385 | - if ( ! $this->are_keys_set() ) { |
|
386 | - WC_Stripe_Logger::log( 'Keys are not set correctly.' ); |
|
385 | + if ( ! $this->are_keys_set()) { |
|
386 | + WC_Stripe_Logger::log('Keys are not set correctly.'); |
|
387 | 387 | return; |
388 | 388 | } |
389 | 389 | |
390 | 390 | // If no SSL bail. |
391 | - if ( ! $this->testmode && ! is_ssl() ) { |
|
392 | - WC_Stripe_Logger::log( 'Stripe live mode requires SSL.' ); |
|
391 | + if ( ! $this->testmode && ! is_ssl()) { |
|
392 | + WC_Stripe_Logger::log('Stripe live mode requires SSL.'); |
|
393 | 393 | return; |
394 | 394 | } |
395 | 395 | |
396 | 396 | $current_theme = wp_get_theme(); |
397 | 397 | |
398 | - $suffix = defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG ? '' : '.min'; |
|
398 | + $suffix = defined('SCRIPT_DEBUG') && SCRIPT_DEBUG ? '' : '.min'; |
|
399 | 399 | |
400 | - wp_register_style( 'stripe_styles', plugins_url( 'assets/css/stripe-styles.css', WC_STRIPE_MAIN_FILE ), array(), WC_STRIPE_VERSION ); |
|
401 | - wp_enqueue_style( 'stripe_styles' ); |
|
400 | + wp_register_style('stripe_styles', plugins_url('assets/css/stripe-styles.css', WC_STRIPE_MAIN_FILE), array(), WC_STRIPE_VERSION); |
|
401 | + wp_enqueue_style('stripe_styles'); |
|
402 | 402 | |
403 | - wp_register_script( 'stripe', 'https://js.stripe.com/v3/', '', '3.0', true ); |
|
404 | - wp_register_script( 'woocommerce_stripe', plugins_url( 'assets/js/stripe' . $suffix . '.js', WC_STRIPE_MAIN_FILE ), array( 'jquery-payment', 'stripe' ), WC_STRIPE_VERSION, true ); |
|
403 | + wp_register_script('stripe', 'https://js.stripe.com/v3/', '', '3.0', true); |
|
404 | + wp_register_script('woocommerce_stripe', plugins_url('assets/js/stripe' . $suffix . '.js', WC_STRIPE_MAIN_FILE), array('jquery-payment', 'stripe'), WC_STRIPE_VERSION, true); |
|
405 | 405 | |
406 | 406 | $stripe_params = array( |
407 | 407 | 'key' => $this->publishable_key, |
408 | - 'i18n_terms' => __( 'Please accept the terms and conditions first', 'woocommerce-gateway-stripe' ), |
|
409 | - 'i18n_required_fields' => __( 'Please fill in required checkout fields first', 'woocommerce-gateway-stripe' ), |
|
408 | + 'i18n_terms' => __('Please accept the terms and conditions first', 'woocommerce-gateway-stripe'), |
|
409 | + 'i18n_required_fields' => __('Please fill in required checkout fields first', 'woocommerce-gateway-stripe'), |
|
410 | 410 | ); |
411 | 411 | |
412 | 412 | // If we're on the pay page we need to pass stripe.js the address of the order. |
413 | - if ( isset( $_GET['pay_for_order'] ) && 'true' === $_GET['pay_for_order'] ) { // wpcs: csrf ok. |
|
414 | - $order_id = wc_clean( $wp->query_vars['order-pay'] ); // wpcs: csrf ok, sanitization ok, xss ok. |
|
415 | - $order = wc_get_order( $order_id ); |
|
413 | + if (isset($_GET['pay_for_order']) && 'true' === $_GET['pay_for_order']) { // wpcs: csrf ok. |
|
414 | + $order_id = wc_clean($wp->query_vars['order-pay']); // wpcs: csrf ok, sanitization ok, xss ok. |
|
415 | + $order = wc_get_order($order_id); |
|
416 | 416 | |
417 | - if ( is_a( $order, 'WC_Order' ) ) { |
|
417 | + if (is_a($order, 'WC_Order')) { |
|
418 | 418 | $stripe_params['billing_first_name'] = $order->get_billing_first_name(); |
419 | 419 | $stripe_params['billing_last_name'] = $order->get_billing_last_name(); |
420 | 420 | $stripe_params['billing_address_1'] = $order->get_billing_address_1(); |
@@ -429,40 +429,40 @@ discard block |
||
429 | 429 | $sepa_elements_options = apply_filters( |
430 | 430 | 'wc_stripe_sepa_elements_options', |
431 | 431 | array( |
432 | - 'supportedCountries' => array( 'SEPA' ), |
|
432 | + 'supportedCountries' => array('SEPA'), |
|
433 | 433 | 'placeholderCountry' => WC()->countries->get_base_country(), |
434 | - 'style' => array( 'base' => array( 'fontSize' => '15px' ) ), |
|
434 | + 'style' => array('base' => array('fontSize' => '15px')), |
|
435 | 435 | ) |
436 | 436 | ); |
437 | 437 | |
438 | - $stripe_params['no_prepaid_card_msg'] = __( 'Sorry, we\'re not accepting prepaid cards at this time. Your credit card has not been charged. Please try with alternative payment method.', 'woocommerce-gateway-stripe' ); |
|
439 | - $stripe_params['no_sepa_owner_msg'] = __( 'Please enter your IBAN account name.', 'woocommerce-gateway-stripe' ); |
|
440 | - $stripe_params['no_sepa_iban_msg'] = __( 'Please enter your IBAN account number.', 'woocommerce-gateway-stripe' ); |
|
441 | - $stripe_params['payment_intent_error'] = __( 'We couldn\'t initiate the payment. Please try again.', 'woocommerce-gateway-stripe' ); |
|
442 | - $stripe_params['sepa_mandate_notification'] = apply_filters( 'wc_stripe_sepa_mandate_notification', 'email' ); |
|
443 | - $stripe_params['allow_prepaid_card'] = apply_filters( 'wc_stripe_allow_prepaid_card', true ) ? 'yes' : 'no'; |
|
438 | + $stripe_params['no_prepaid_card_msg'] = __('Sorry, we\'re not accepting prepaid cards at this time. Your credit card has not been charged. Please try with alternative payment method.', 'woocommerce-gateway-stripe'); |
|
439 | + $stripe_params['no_sepa_owner_msg'] = __('Please enter your IBAN account name.', 'woocommerce-gateway-stripe'); |
|
440 | + $stripe_params['no_sepa_iban_msg'] = __('Please enter your IBAN account number.', 'woocommerce-gateway-stripe'); |
|
441 | + $stripe_params['payment_intent_error'] = __('We couldn\'t initiate the payment. Please try again.', 'woocommerce-gateway-stripe'); |
|
442 | + $stripe_params['sepa_mandate_notification'] = apply_filters('wc_stripe_sepa_mandate_notification', 'email'); |
|
443 | + $stripe_params['allow_prepaid_card'] = apply_filters('wc_stripe_allow_prepaid_card', true) ? 'yes' : 'no'; |
|
444 | 444 | $stripe_params['inline_cc_form'] = $this->inline_cc_form ? 'yes' : 'no'; |
445 | - $stripe_params['is_checkout'] = ( is_checkout() && empty( $_GET['pay_for_order'] ) ) ? 'yes' : 'no'; // wpcs: csrf ok. |
|
445 | + $stripe_params['is_checkout'] = (is_checkout() && empty($_GET['pay_for_order'])) ? 'yes' : 'no'; // wpcs: csrf ok. |
|
446 | 446 | $stripe_params['return_url'] = $this->get_stripe_return_url(); |
447 | - $stripe_params['ajaxurl'] = WC_AJAX::get_endpoint( '%%endpoint%%' ); |
|
448 | - $stripe_params['stripe_nonce'] = wp_create_nonce( '_wc_stripe_nonce' ); |
|
447 | + $stripe_params['ajaxurl'] = WC_AJAX::get_endpoint('%%endpoint%%'); |
|
448 | + $stripe_params['stripe_nonce'] = wp_create_nonce('_wc_stripe_nonce'); |
|
449 | 449 | $stripe_params['statement_descriptor'] = $this->statement_descriptor; |
450 | - $stripe_params['elements_options'] = apply_filters( 'wc_stripe_elements_options', array() ); |
|
450 | + $stripe_params['elements_options'] = apply_filters('wc_stripe_elements_options', array()); |
|
451 | 451 | $stripe_params['sepa_elements_options'] = $sepa_elements_options; |
452 | - $stripe_params['invalid_owner_name'] = __( 'Billing First Name and Last Name are required.', 'woocommerce-gateway-stripe' ); |
|
453 | - $stripe_params['is_change_payment_page'] = isset( $_GET['change_payment_method'] ) ? 'yes' : 'no'; // wpcs: csrf ok. |
|
454 | - $stripe_params['is_add_payment_page'] = is_wc_endpoint_url( 'add-payment-method' ) ? 'yes' : 'no'; |
|
455 | - $stripe_params['is_pay_for_order_page'] = is_wc_endpoint_url( 'order-pay' ) ? 'yes' : 'no'; |
|
456 | - $stripe_params['elements_styling'] = apply_filters( 'wc_stripe_elements_styling', false ); |
|
457 | - $stripe_params['elements_classes'] = apply_filters( 'wc_stripe_elements_classes', false ); |
|
452 | + $stripe_params['invalid_owner_name'] = __('Billing First Name and Last Name are required.', 'woocommerce-gateway-stripe'); |
|
453 | + $stripe_params['is_change_payment_page'] = isset($_GET['change_payment_method']) ? 'yes' : 'no'; // wpcs: csrf ok. |
|
454 | + $stripe_params['is_add_payment_page'] = is_wc_endpoint_url('add-payment-method') ? 'yes' : 'no'; |
|
455 | + $stripe_params['is_pay_for_order_page'] = is_wc_endpoint_url('order-pay') ? 'yes' : 'no'; |
|
456 | + $stripe_params['elements_styling'] = apply_filters('wc_stripe_elements_styling', false); |
|
457 | + $stripe_params['elements_classes'] = apply_filters('wc_stripe_elements_classes', false); |
|
458 | 458 | |
459 | 459 | // Merge localized messages to be use in JS. |
460 | - $stripe_params = array_merge( $stripe_params, WC_Stripe_Helper::get_localized_messages() ); |
|
460 | + $stripe_params = array_merge($stripe_params, WC_Stripe_Helper::get_localized_messages()); |
|
461 | 461 | |
462 | - wp_localize_script( 'woocommerce_stripe', 'wc_stripe_params', apply_filters( 'wc_stripe_params', $stripe_params ) ); |
|
462 | + wp_localize_script('woocommerce_stripe', 'wc_stripe_params', apply_filters('wc_stripe_params', $stripe_params)); |
|
463 | 463 | |
464 | 464 | $this->tokenization_script(); |
465 | - wp_enqueue_script( 'woocommerce_stripe' ); |
|
465 | + wp_enqueue_script('woocommerce_stripe'); |
|
466 | 466 | } |
467 | 467 | |
468 | 468 | /** |
@@ -473,14 +473,14 @@ discard block |
||
473 | 473 | * @param object $prepared_source The object with source details. |
474 | 474 | * @throws WC_Stripe_Exception An exception if the card is prepaid, but prepaid cards are not allowed. |
475 | 475 | */ |
476 | - public function maybe_disallow_prepaid_card( $prepared_source ) { |
|
476 | + public function maybe_disallow_prepaid_card($prepared_source) { |
|
477 | 477 | // Check if we don't allow prepaid credit cards. |
478 | - if ( apply_filters( 'wc_stripe_allow_prepaid_card', true ) || ! $this->is_prepaid_card( $prepared_source->source_object ) ) { |
|
478 | + if (apply_filters('wc_stripe_allow_prepaid_card', true) || ! $this->is_prepaid_card($prepared_source->source_object)) { |
|
479 | 479 | return; |
480 | 480 | } |
481 | 481 | |
482 | - $localized_message = __( 'Sorry, we\'re not accepting prepaid cards at this time. Your credit card has not been charged. Please try with alternative payment method.', 'woocommerce-gateway-stripe' ); |
|
483 | - throw new WC_Stripe_Exception( print_r( $prepared_source->source_object, true ), $localized_message ); |
|
482 | + $localized_message = __('Sorry, we\'re not accepting prepaid cards at this time. Your credit card has not been charged. Please try with alternative payment method.', 'woocommerce-gateway-stripe'); |
|
483 | + throw new WC_Stripe_Exception(print_r($prepared_source->source_object, true), $localized_message); |
|
484 | 484 | } |
485 | 485 | |
486 | 486 | /** |
@@ -490,10 +490,10 @@ discard block |
||
490 | 490 | * @param object $prepared_source The source that should be verified. |
491 | 491 | * @throws WC_Stripe_Exception An exception if the source ID is missing. |
492 | 492 | */ |
493 | - public function check_source( $prepared_source ) { |
|
494 | - if ( empty( $prepared_source->source ) ) { |
|
495 | - $localized_message = __( 'Payment processing failed. Please retry.', 'woocommerce-gateway-stripe' ); |
|
496 | - throw new WC_Stripe_Exception( print_r( $prepared_source, true ), $localized_message ); |
|
493 | + public function check_source($prepared_source) { |
|
494 | + if (empty($prepared_source->source)) { |
|
495 | + $localized_message = __('Payment processing failed. Please retry.', 'woocommerce-gateway-stripe'); |
|
496 | + throw new WC_Stripe_Exception(print_r($prepared_source, true), $localized_message); |
|
497 | 497 | } |
498 | 498 | } |
499 | 499 | |
@@ -505,13 +505,13 @@ discard block |
||
505 | 505 | * @param WC_Order $order The order those payment is being processed. |
506 | 506 | * @return bool A flag that indicates that the customer does not exist and should be removed. |
507 | 507 | */ |
508 | - public function maybe_remove_non_existent_customer( $error, $order ) { |
|
509 | - if ( ! $this->is_no_such_customer_error( $error ) ) { |
|
508 | + public function maybe_remove_non_existent_customer($error, $order) { |
|
509 | + if ( ! $this->is_no_such_customer_error($error)) { |
|
510 | 510 | return false; |
511 | 511 | } |
512 | 512 | |
513 | - delete_user_option( $order->get_customer_id(), '_stripe_customer_id' ); |
|
514 | - $order->delete_meta_data( '_stripe_customer_id' ); |
|
513 | + delete_user_option($order->get_customer_id(), '_stripe_customer_id'); |
|
514 | + $order->delete_meta_data('_stripe_customer_id'); |
|
515 | 515 | $order->save(); |
516 | 516 | |
517 | 517 | return true; |
@@ -526,15 +526,15 @@ discard block |
||
526 | 526 | * @param boolean $force_save_source Whether the payment source must be saved, like when dealing with a Subscription setup. |
527 | 527 | * @return array Redirection data for `process_payment`. |
528 | 528 | */ |
529 | - public function complete_free_order( $order, $prepared_source, $force_save_source ) { |
|
530 | - if ( $force_save_source ) { |
|
531 | - $intent_secret = $this->setup_intent( $order, $prepared_source ); |
|
529 | + public function complete_free_order($order, $prepared_source, $force_save_source) { |
|
530 | + if ($force_save_source) { |
|
531 | + $intent_secret = $this->setup_intent($order, $prepared_source); |
|
532 | 532 | |
533 | - if ( ! empty( $intent_secret ) ) { |
|
533 | + if ( ! empty($intent_secret)) { |
|
534 | 534 | // `get_return_url()` must be called immediately before returning a value. |
535 | 535 | return array( |
536 | 536 | 'result' => 'success', |
537 | - 'redirect' => $this->get_return_url( $order ), |
|
537 | + 'redirect' => $this->get_return_url($order), |
|
538 | 538 | 'setup_intent_secret' => $intent_secret, |
539 | 539 | ); |
540 | 540 | } |
@@ -548,7 +548,7 @@ discard block |
||
548 | 548 | // Return thank you page redirect. |
549 | 549 | return array( |
550 | 550 | 'result' => 'success', |
551 | - 'redirect' => $this->get_return_url( $order ), |
|
551 | + 'redirect' => $this->get_return_url($order), |
|
552 | 552 | ); |
553 | 553 | } |
554 | 554 | |
@@ -566,81 +566,81 @@ discard block |
||
566 | 566 | * @throws Exception If payment will not be accepted. |
567 | 567 | * @return array|void |
568 | 568 | */ |
569 | - public function process_payment( $order_id, $retry = true, $force_save_source = false, $previous_error = false, $use_order_source = false ) { |
|
569 | + public function process_payment($order_id, $retry = true, $force_save_source = false, $previous_error = false, $use_order_source = false) { |
|
570 | 570 | try { |
571 | - $order = wc_get_order( $order_id ); |
|
571 | + $order = wc_get_order($order_id); |
|
572 | 572 | |
573 | 573 | // ToDo: `process_pre_order` saves the source to the order for a later payment. |
574 | 574 | // This might not work well with PaymentIntents. |
575 | - if ( $this->maybe_process_pre_orders( $order_id ) ) { |
|
576 | - return $this->pre_orders->process_pre_order( $order_id ); |
|
575 | + if ($this->maybe_process_pre_orders($order_id)) { |
|
576 | + return $this->pre_orders->process_pre_order($order_id); |
|
577 | 577 | } |
578 | 578 | |
579 | 579 | // Check whether there is an existing intent. |
580 | - $intent = $this->get_intent_from_order( $order ); |
|
581 | - if ( isset( $intent->object ) && 'setup_intent' === $intent->object ) { |
|
580 | + $intent = $this->get_intent_from_order($order); |
|
581 | + if (isset($intent->object) && 'setup_intent' === $intent->object) { |
|
582 | 582 | $intent = false; // This function can only deal with *payment* intents |
583 | 583 | } |
584 | 584 | |
585 | 585 | $stripe_customer_id = null; |
586 | - if ( $intent && ! empty( $intent->customer ) ) { |
|
586 | + if ($intent && ! empty($intent->customer)) { |
|
587 | 587 | $stripe_customer_id = $intent->customer; |
588 | 588 | } |
589 | 589 | |
590 | 590 | // For some payments the source should already be present in the order. |
591 | - if ( $use_order_source ) { |
|
592 | - $prepared_source = $this->prepare_order_source( $order ); |
|
591 | + if ($use_order_source) { |
|
592 | + $prepared_source = $this->prepare_order_source($order); |
|
593 | 593 | } else { |
594 | - $prepared_source = $this->prepare_source( get_current_user_id(), $force_save_source, $stripe_customer_id ); |
|
594 | + $prepared_source = $this->prepare_source(get_current_user_id(), $force_save_source, $stripe_customer_id); |
|
595 | 595 | } |
596 | 596 | |
597 | - $this->maybe_disallow_prepaid_card( $prepared_source ); |
|
598 | - $this->check_source( $prepared_source ); |
|
599 | - $this->save_source_to_order( $order, $prepared_source ); |
|
597 | + $this->maybe_disallow_prepaid_card($prepared_source); |
|
598 | + $this->check_source($prepared_source); |
|
599 | + $this->save_source_to_order($order, $prepared_source); |
|
600 | 600 | |
601 | - if ( 0 >= $order->get_total() ) { |
|
602 | - return $this->complete_free_order( $order, $prepared_source, $force_save_source ); |
|
601 | + if (0 >= $order->get_total()) { |
|
602 | + return $this->complete_free_order($order, $prepared_source, $force_save_source); |
|
603 | 603 | } |
604 | 604 | |
605 | 605 | // This will throw exception if not valid. |
606 | - $this->validate_minimum_order_amount( $order ); |
|
606 | + $this->validate_minimum_order_amount($order); |
|
607 | 607 | |
608 | - WC_Stripe_Logger::log( "Info: Begin processing payment for order $order_id for the amount of {$order->get_total()}" ); |
|
608 | + WC_Stripe_Logger::log("Info: Begin processing payment for order $order_id for the amount of {$order->get_total()}"); |
|
609 | 609 | |
610 | - if ( $intent ) { |
|
611 | - $intent = $this->update_existing_intent( $intent, $order, $prepared_source ); |
|
610 | + if ($intent) { |
|
611 | + $intent = $this->update_existing_intent($intent, $order, $prepared_source); |
|
612 | 612 | } else { |
613 | - $intent = $this->create_intent( $order, $prepared_source ); |
|
613 | + $intent = $this->create_intent($order, $prepared_source); |
|
614 | 614 | } |
615 | 615 | |
616 | 616 | // Confirm the intent after locking the order to make sure webhooks will not interfere. |
617 | - if ( empty( $intent->error ) ) { |
|
618 | - $this->lock_order_payment( $order, $intent ); |
|
619 | - $intent = $this->confirm_intent( $intent, $order, $prepared_source ); |
|
617 | + if (empty($intent->error)) { |
|
618 | + $this->lock_order_payment($order, $intent); |
|
619 | + $intent = $this->confirm_intent($intent, $order, $prepared_source); |
|
620 | 620 | } |
621 | 621 | |
622 | - if ( ! empty( $intent->error ) ) { |
|
623 | - $this->maybe_remove_non_existent_customer( $intent->error, $order ); |
|
622 | + if ( ! empty($intent->error)) { |
|
623 | + $this->maybe_remove_non_existent_customer($intent->error, $order); |
|
624 | 624 | |
625 | 625 | // We want to retry. |
626 | - if ( $this->is_retryable_error( $intent->error ) ) { |
|
627 | - return $this->retry_after_error( $intent, $order, $retry, $force_save_source, $previous_error, $use_order_source ); |
|
626 | + if ($this->is_retryable_error($intent->error)) { |
|
627 | + return $this->retry_after_error($intent, $order, $retry, $force_save_source, $previous_error, $use_order_source); |
|
628 | 628 | } |
629 | 629 | |
630 | - $this->unlock_order_payment( $order ); |
|
631 | - $this->throw_localized_message( $intent, $order ); |
|
630 | + $this->unlock_order_payment($order); |
|
631 | + $this->throw_localized_message($intent, $order); |
|
632 | 632 | } |
633 | 633 | |
634 | - if ( ! empty( $intent ) ) { |
|
634 | + if ( ! empty($intent)) { |
|
635 | 635 | // Use the last charge within the intent to proceed. |
636 | - $response = end( $intent->charges->data ); |
|
636 | + $response = end($intent->charges->data); |
|
637 | 637 | |
638 | 638 | // If the intent requires a 3DS flow, redirect to it. |
639 | - if ( 'requires_action' === $intent->status ) { |
|
640 | - $this->unlock_order_payment( $order ); |
|
639 | + if ('requires_action' === $intent->status) { |
|
640 | + $this->unlock_order_payment($order); |
|
641 | 641 | |
642 | - if ( is_wc_endpoint_url( 'order-pay' ) ) { |
|
643 | - $redirect_url = add_query_arg( 'wc-stripe-confirmation', 1, $order->get_checkout_payment_url( false ) ); |
|
642 | + if (is_wc_endpoint_url('order-pay')) { |
|
643 | + $redirect_url = add_query_arg('wc-stripe-confirmation', 1, $order->get_checkout_payment_url(false)); |
|
644 | 644 | |
645 | 645 | return array( |
646 | 646 | 'result' => 'success', |
@@ -655,7 +655,7 @@ discard block |
||
655 | 655 | |
656 | 656 | return array( |
657 | 657 | 'result' => 'success', |
658 | - 'redirect' => $this->get_return_url( $order ), |
|
658 | + 'redirect' => $this->get_return_url($order), |
|
659 | 659 | 'payment_intent_secret' => $intent->client_secret, |
660 | 660 | ); |
661 | 661 | } |
@@ -663,30 +663,30 @@ discard block |
||
663 | 663 | } |
664 | 664 | |
665 | 665 | // Process valid response. |
666 | - $this->process_response( $response, $order ); |
|
666 | + $this->process_response($response, $order); |
|
667 | 667 | |
668 | 668 | // Remove cart. |
669 | - if ( isset( WC()->cart ) ) { |
|
669 | + if (isset(WC()->cart)) { |
|
670 | 670 | WC()->cart->empty_cart(); |
671 | 671 | } |
672 | 672 | |
673 | 673 | // Unlock the order. |
674 | - $this->unlock_order_payment( $order ); |
|
674 | + $this->unlock_order_payment($order); |
|
675 | 675 | |
676 | 676 | // Return thank you page redirect. |
677 | 677 | return array( |
678 | 678 | 'result' => 'success', |
679 | - 'redirect' => $this->get_return_url( $order ), |
|
679 | + 'redirect' => $this->get_return_url($order), |
|
680 | 680 | ); |
681 | 681 | |
682 | - } catch ( WC_Stripe_Exception $e ) { |
|
683 | - wc_add_notice( $e->getLocalizedMessage(), 'error' ); |
|
684 | - WC_Stripe_Logger::log( 'Error: ' . $e->getMessage() ); |
|
682 | + } catch (WC_Stripe_Exception $e) { |
|
683 | + wc_add_notice($e->getLocalizedMessage(), 'error'); |
|
684 | + WC_Stripe_Logger::log('Error: ' . $e->getMessage()); |
|
685 | 685 | |
686 | - do_action( 'wc_gateway_stripe_process_payment_error', $e, $order ); |
|
686 | + do_action('wc_gateway_stripe_process_payment_error', $e, $order); |
|
687 | 687 | |
688 | 688 | /* translators: error message */ |
689 | - $order->update_status( 'failed' ); |
|
689 | + $order->update_status('failed'); |
|
690 | 690 | |
691 | 691 | return array( |
692 | 692 | 'result' => 'fail', |
@@ -702,17 +702,17 @@ discard block |
||
702 | 702 | * |
703 | 703 | * @param int $order_id The ID of the order. |
704 | 704 | */ |
705 | - public function display_order_fee( $order_id ) { |
|
706 | - if ( apply_filters( 'wc_stripe_hide_display_order_fee', false, $order_id ) ) { |
|
705 | + public function display_order_fee($order_id) { |
|
706 | + if (apply_filters('wc_stripe_hide_display_order_fee', false, $order_id)) { |
|
707 | 707 | return; |
708 | 708 | } |
709 | 709 | |
710 | - $order = wc_get_order( $order_id ); |
|
710 | + $order = wc_get_order($order_id); |
|
711 | 711 | |
712 | - $fee = WC_Stripe_Helper::get_stripe_fee( $order ); |
|
713 | - $currency = WC_Stripe_Helper::get_stripe_currency( $order ); |
|
712 | + $fee = WC_Stripe_Helper::get_stripe_fee($order); |
|
713 | + $currency = WC_Stripe_Helper::get_stripe_currency($order); |
|
714 | 714 | |
715 | - if ( ! $fee || ! $currency ) { |
|
715 | + if ( ! $fee || ! $currency) { |
|
716 | 716 | return; |
717 | 717 | } |
718 | 718 | |
@@ -720,12 +720,12 @@ discard block |
||
720 | 720 | |
721 | 721 | <tr> |
722 | 722 | <td class="label stripe-fee"> |
723 | - <?php echo wc_help_tip( __( 'This represents the fee Stripe collects for the transaction.', 'woocommerce-gateway-stripe' ) ); // wpcs: xss ok. ?> |
|
724 | - <?php esc_html_e( 'Stripe Fee:', 'woocommerce-gateway-stripe' ); ?> |
|
723 | + <?php echo wc_help_tip(__('This represents the fee Stripe collects for the transaction.', 'woocommerce-gateway-stripe')); // wpcs: xss ok. ?> |
|
724 | + <?php esc_html_e('Stripe Fee:', 'woocommerce-gateway-stripe'); ?> |
|
725 | 725 | </td> |
726 | 726 | <td width="1%"></td> |
727 | 727 | <td class="total"> |
728 | - - <?php echo wc_price( $fee, array( 'currency' => $currency ) ); // wpcs: xss ok. ?> |
|
728 | + - <?php echo wc_price($fee, array('currency' => $currency)); // wpcs: xss ok. ?> |
|
729 | 729 | </td> |
730 | 730 | </tr> |
731 | 731 | |
@@ -739,17 +739,17 @@ discard block |
||
739 | 739 | * |
740 | 740 | * @param int $order_id The ID of the order. |
741 | 741 | */ |
742 | - public function display_order_payout( $order_id ) { |
|
743 | - if ( apply_filters( 'wc_stripe_hide_display_order_payout', false, $order_id ) ) { |
|
742 | + public function display_order_payout($order_id) { |
|
743 | + if (apply_filters('wc_stripe_hide_display_order_payout', false, $order_id)) { |
|
744 | 744 | return; |
745 | 745 | } |
746 | 746 | |
747 | - $order = wc_get_order( $order_id ); |
|
747 | + $order = wc_get_order($order_id); |
|
748 | 748 | |
749 | - $net = WC_Stripe_Helper::get_stripe_net( $order ); |
|
750 | - $currency = WC_Stripe_Helper::get_stripe_currency( $order ); |
|
749 | + $net = WC_Stripe_Helper::get_stripe_net($order); |
|
750 | + $currency = WC_Stripe_Helper::get_stripe_currency($order); |
|
751 | 751 | |
752 | - if ( ! $net || ! $currency ) { |
|
752 | + if ( ! $net || ! $currency) { |
|
753 | 753 | return; |
754 | 754 | } |
755 | 755 | |
@@ -757,12 +757,12 @@ discard block |
||
757 | 757 | |
758 | 758 | <tr> |
759 | 759 | <td class="label stripe-payout"> |
760 | - <?php echo wc_help_tip( __( 'This represents the net total that will be credited to your Stripe bank account. This may be in the currency that is set in your Stripe account.', 'woocommerce-gateway-stripe' ) ); // wpcs: xss ok. ?> |
|
761 | - <?php esc_html_e( 'Stripe Payout:', 'woocommerce-gateway-stripe' ); ?> |
|
760 | + <?php echo wc_help_tip(__('This represents the net total that will be credited to your Stripe bank account. This may be in the currency that is set in your Stripe account.', 'woocommerce-gateway-stripe')); // wpcs: xss ok. ?> |
|
761 | + <?php esc_html_e('Stripe Payout:', 'woocommerce-gateway-stripe'); ?> |
|
762 | 762 | </td> |
763 | 763 | <td width="1%"></td> |
764 | 764 | <td class="total"> |
765 | - <?php echo wc_price( $net, array( 'currency' => $currency ) ); // wpcs: xss ok. ?> |
|
765 | + <?php echo wc_price($net, array('currency' => $currency)); // wpcs: xss ok. ?> |
|
766 | 766 | </td> |
767 | 767 | </tr> |
768 | 768 | |
@@ -778,13 +778,13 @@ discard block |
||
778 | 778 | * |
779 | 779 | * @return string The localized error message. |
780 | 780 | */ |
781 | - public function get_localized_error_message_from_response( $response ) { |
|
781 | + public function get_localized_error_message_from_response($response) { |
|
782 | 782 | $localized_messages = WC_Stripe_Helper::get_localized_messages(); |
783 | 783 | |
784 | - if ( 'card_error' === $response->error->type ) { |
|
785 | - $localized_message = isset( $localized_messages[ $response->error->code ] ) ? $localized_messages[ $response->error->code ] : $response->error->message; |
|
784 | + if ('card_error' === $response->error->type) { |
|
785 | + $localized_message = isset($localized_messages[$response->error->code]) ? $localized_messages[$response->error->code] : $response->error->message; |
|
786 | 786 | } else { |
787 | - $localized_message = isset( $localized_messages[ $response->error->type ] ) ? $localized_messages[ $response->error->type ] : $response->error->message; |
|
787 | + $localized_message = isset($localized_messages[$response->error->type]) ? $localized_messages[$response->error->type] : $response->error->message; |
|
788 | 788 | } |
789 | 789 | |
790 | 790 | return $localized_message; |
@@ -798,12 +798,12 @@ discard block |
||
798 | 798 | * @param WC_Order $order The order to add a note to. |
799 | 799 | * @throws WC_Stripe_Exception An exception with the right message. |
800 | 800 | */ |
801 | - public function throw_localized_message( $response, $order ) { |
|
802 | - $localized_message = $this->get_localized_error_message_from_response( $response ); |
|
801 | + public function throw_localized_message($response, $order) { |
|
802 | + $localized_message = $this->get_localized_error_message_from_response($response); |
|
803 | 803 | |
804 | - $order->add_order_note( $localized_message ); |
|
804 | + $order->add_order_note($localized_message); |
|
805 | 805 | |
806 | - throw new WC_Stripe_Exception( print_r( $response, true ), $localized_message ); |
|
806 | + throw new WC_Stripe_Exception(print_r($response, true), $localized_message); |
|
807 | 807 | } |
808 | 808 | |
809 | 809 | /** |
@@ -819,22 +819,22 @@ discard block |
||
819 | 819 | * @throws WC_Stripe_Exception If the payment is not accepted. |
820 | 820 | * @return array|void |
821 | 821 | */ |
822 | - public function retry_after_error( $response, $order, $retry, $force_save_source, $previous_error, $use_order_source ) { |
|
823 | - if ( ! $retry ) { |
|
824 | - $localized_message = __( 'Sorry, we are unable to process your payment at this time. Please retry later.', 'woocommerce-gateway-stripe' ); |
|
825 | - $order->add_order_note( $localized_message ); |
|
826 | - throw new WC_Stripe_Exception( print_r( $response, true ), $localized_message ); // phpcs:ignore WordPress.PHP.DevelopmentFunctions. |
|
822 | + public function retry_after_error($response, $order, $retry, $force_save_source, $previous_error, $use_order_source) { |
|
823 | + if ( ! $retry) { |
|
824 | + $localized_message = __('Sorry, we are unable to process your payment at this time. Please retry later.', 'woocommerce-gateway-stripe'); |
|
825 | + $order->add_order_note($localized_message); |
|
826 | + throw new WC_Stripe_Exception(print_r($response, true), $localized_message); // phpcs:ignore WordPress.PHP.DevelopmentFunctions. |
|
827 | 827 | } |
828 | 828 | |
829 | 829 | // Don't do anymore retries after this. |
830 | - if ( 5 <= $this->retry_interval ) { |
|
831 | - return $this->process_payment( $order->get_id(), false, $force_save_source, $response->error, $previous_error ); |
|
830 | + if (5 <= $this->retry_interval) { |
|
831 | + return $this->process_payment($order->get_id(), false, $force_save_source, $response->error, $previous_error); |
|
832 | 832 | } |
833 | 833 | |
834 | - sleep( $this->retry_interval ); |
|
834 | + sleep($this->retry_interval); |
|
835 | 835 | $this->retry_interval++; |
836 | 836 | |
837 | - return $this->process_payment( $order->get_id(), true, $force_save_source, $response->error, $previous_error, $use_order_source ); |
|
837 | + return $this->process_payment($order->get_id(), true, $force_save_source, $response->error, $previous_error, $use_order_source); |
|
838 | 838 | } |
839 | 839 | |
840 | 840 | /** |
@@ -845,23 +845,23 @@ discard block |
||
845 | 845 | * @param WC_Payment_Gateway[] $gateways A list of all available gateways. |
846 | 846 | * @return WC_Payment_Gateway[] Either the same list or an empty one in the right conditions. |
847 | 847 | */ |
848 | - public function prepare_order_pay_page( $gateways ) { |
|
849 | - if ( ! is_wc_endpoint_url( 'order-pay' ) || ! isset( $_GET['wc-stripe-confirmation'] ) ) { // wpcs: csrf ok. |
|
848 | + public function prepare_order_pay_page($gateways) { |
|
849 | + if ( ! is_wc_endpoint_url('order-pay') || ! isset($_GET['wc-stripe-confirmation'])) { // wpcs: csrf ok. |
|
850 | 850 | return $gateways; |
851 | 851 | } |
852 | 852 | |
853 | 853 | try { |
854 | 854 | $this->prepare_intent_for_order_pay_page(); |
855 | - } catch ( WC_Stripe_Exception $e ) { |
|
855 | + } catch (WC_Stripe_Exception $e) { |
|
856 | 856 | // Just show the full order pay page if there was a problem preparing the Payment Intent |
857 | 857 | return $gateways; |
858 | 858 | } |
859 | 859 | |
860 | - add_filter( 'woocommerce_checkout_show_terms', '__return_false' ); |
|
861 | - add_filter( 'woocommerce_pay_order_button_html', '__return_false' ); |
|
862 | - add_filter( 'woocommerce_available_payment_gateways', '__return_empty_array' ); |
|
863 | - add_filter( 'woocommerce_no_available_payment_methods_message', array( $this, 'change_no_available_methods_message' ) ); |
|
864 | - add_action( 'woocommerce_pay_order_after_submit', array( $this, 'render_payment_intent_inputs' ) ); |
|
860 | + add_filter('woocommerce_checkout_show_terms', '__return_false'); |
|
861 | + add_filter('woocommerce_pay_order_button_html', '__return_false'); |
|
862 | + add_filter('woocommerce_available_payment_gateways', '__return_empty_array'); |
|
863 | + add_filter('woocommerce_no_available_payment_methods_message', array($this, 'change_no_available_methods_message')); |
|
864 | + add_action('woocommerce_pay_order_after_submit', array($this, 'render_payment_intent_inputs')); |
|
865 | 865 | |
866 | 866 | return array(); |
867 | 867 | } |
@@ -874,7 +874,7 @@ discard block |
||
874 | 874 | * @return string the new message. |
875 | 875 | */ |
876 | 876 | public function change_no_available_methods_message() { |
877 | - return wpautop( __( "Almost there!\n\nYour order has already been created, the only thing that still needs to be done is for you to authorize the payment with your bank.", 'woocommerce-gateway-stripe' ) ); |
|
877 | + return wpautop(__("Almost there!\n\nYour order has already been created, the only thing that still needs to be done is for you to authorize the payment with your bank.", 'woocommerce-gateway-stripe')); |
|
878 | 878 | } |
879 | 879 | |
880 | 880 | /** |
@@ -885,19 +885,19 @@ discard block |
||
885 | 885 | * @throws WC_Stripe_Exception |
886 | 886 | * @since 4.3 |
887 | 887 | */ |
888 | - public function prepare_intent_for_order_pay_page( $order = null ) { |
|
889 | - if ( ! isset( $order ) || empty( $order ) ) { |
|
890 | - $order = wc_get_order( absint( get_query_var( 'order-pay' ) ) ); |
|
888 | + public function prepare_intent_for_order_pay_page($order = null) { |
|
889 | + if ( ! isset($order) || empty($order)) { |
|
890 | + $order = wc_get_order(absint(get_query_var('order-pay'))); |
|
891 | 891 | } |
892 | - $intent = $this->get_intent_from_order( $order ); |
|
892 | + $intent = $this->get_intent_from_order($order); |
|
893 | 893 | |
894 | - if ( ! $intent ) { |
|
895 | - throw new WC_Stripe_Exception( 'Payment Intent not found', __( 'Payment Intent not found for order #' . $order->get_id(), 'woocommerce-gateway-stripe' ) ); |
|
894 | + if ( ! $intent) { |
|
895 | + throw new WC_Stripe_Exception('Payment Intent not found', __('Payment Intent not found for order #' . $order->get_id(), 'woocommerce-gateway-stripe')); |
|
896 | 896 | } |
897 | 897 | |
898 | - if ( 'requires_payment_method' === $intent->status && isset( $intent->last_payment_error ) |
|
899 | - && 'authentication_required' === $intent->last_payment_error->code ) { |
|
900 | - $level3_data = $this->get_level3_data_from_order( $order ); |
|
898 | + if ('requires_payment_method' === $intent->status && isset($intent->last_payment_error) |
|
899 | + && 'authentication_required' === $intent->last_payment_error->code) { |
|
900 | + $level3_data = $this->get_level3_data_from_order($order); |
|
901 | 901 | $intent = WC_Stripe_API::request_with_level3_data( |
902 | 902 | array( |
903 | 903 | 'payment_method' => $intent->last_payment_error->source->id, |
@@ -907,8 +907,8 @@ discard block |
||
907 | 907 | $order |
908 | 908 | ); |
909 | 909 | |
910 | - if ( isset( $intent->error ) ) { |
|
911 | - throw new WC_Stripe_Exception( print_r( $intent, true ), $intent->error->message ); |
|
910 | + if (isset($intent->error)) { |
|
911 | + throw new WC_Stripe_Exception(print_r($intent, true), $intent->error->message); |
|
912 | 912 | } |
913 | 913 | } |
914 | 914 | |
@@ -923,26 +923,26 @@ discard block |
||
923 | 923 | * @throws WC_Stripe_Exception |
924 | 924 | * @since 4.2 |
925 | 925 | */ |
926 | - public function render_payment_intent_inputs( $order = null ) { |
|
927 | - if ( ! isset( $order ) || empty( $order ) ) { |
|
928 | - $order = wc_get_order( absint( get_query_var( 'order-pay' ) ) ); |
|
926 | + public function render_payment_intent_inputs($order = null) { |
|
927 | + if ( ! isset($order) || empty($order)) { |
|
928 | + $order = wc_get_order(absint(get_query_var('order-pay'))); |
|
929 | 929 | } |
930 | - if ( ! isset( $this->order_pay_intent ) ) { |
|
931 | - $this->prepare_intent_for_order_pay_page( $order ); |
|
930 | + if ( ! isset($this->order_pay_intent)) { |
|
931 | + $this->prepare_intent_for_order_pay_page($order); |
|
932 | 932 | } |
933 | 933 | |
934 | 934 | $verification_url = add_query_arg( |
935 | 935 | array( |
936 | 936 | 'order' => $order->get_id(), |
937 | - 'nonce' => wp_create_nonce( 'wc_stripe_confirm_pi' ), |
|
938 | - 'redirect_to' => rawurlencode( $this->get_return_url( $order ) ), |
|
937 | + 'nonce' => wp_create_nonce('wc_stripe_confirm_pi'), |
|
938 | + 'redirect_to' => rawurlencode($this->get_return_url($order)), |
|
939 | 939 | 'is_pay_for_order' => true, |
940 | 940 | ), |
941 | - WC_AJAX::get_endpoint( 'wc_stripe_verify_intent' ) |
|
941 | + WC_AJAX::get_endpoint('wc_stripe_verify_intent') |
|
942 | 942 | ); |
943 | 943 | |
944 | - echo '<input type="hidden" id="stripe-intent-id" value="' . esc_attr( $this->order_pay_intent->client_secret ) . '" />'; |
|
945 | - echo '<input type="hidden" id="stripe-intent-return" value="' . esc_attr( $verification_url ) . '" />'; |
|
944 | + echo '<input type="hidden" id="stripe-intent-id" value="' . esc_attr($this->order_pay_intent->client_secret) . '" />'; |
|
945 | + echo '<input type="hidden" id="stripe-intent-return" value="' . esc_attr($verification_url) . '" />'; |
|
946 | 946 | } |
947 | 947 | |
948 | 948 | /** |
@@ -952,11 +952,11 @@ discard block |
||
952 | 952 | * @param WC_Payment_Token $token Payment Token. |
953 | 953 | * @return string Generated payment method HTML |
954 | 954 | */ |
955 | - public function get_saved_payment_method_option_html( $token ) { |
|
956 | - $html = parent::get_saved_payment_method_option_html( $token ); |
|
955 | + public function get_saved_payment_method_option_html($token) { |
|
956 | + $html = parent::get_saved_payment_method_option_html($token); |
|
957 | 957 | $error_wrapper = '<div class="stripe-source-errors" role="alert"></div>'; |
958 | 958 | |
959 | - return preg_replace( '~</(\w+)>\s*$~', "$error_wrapper</$1>", $html ); |
|
959 | + return preg_replace('~</(\w+)>\s*$~', "$error_wrapper</$1>", $html); |
|
960 | 960 | } |
961 | 961 | |
962 | 962 | /** |
@@ -966,18 +966,18 @@ discard block |
||
966 | 966 | * @since 4.2.0 |
967 | 967 | * @param int $order_id The ID that will be used for the thank you page. |
968 | 968 | */ |
969 | - public function check_intent_status_on_order_page( $order_id ) { |
|
970 | - if ( empty( $order_id ) || absint( $order_id ) <= 0 ) { |
|
969 | + public function check_intent_status_on_order_page($order_id) { |
|
970 | + if (empty($order_id) || absint($order_id) <= 0) { |
|
971 | 971 | return; |
972 | 972 | } |
973 | 973 | |
974 | - $order = wc_get_order( absint( $order_id ) ); |
|
974 | + $order = wc_get_order(absint($order_id)); |
|
975 | 975 | |
976 | - if ( ! $order ) { |
|
976 | + if ( ! $order) { |
|
977 | 977 | return; |
978 | 978 | } |
979 | 979 | |
980 | - $this->verify_intent_after_checkout( $order ); |
|
980 | + $this->verify_intent_after_checkout($order); |
|
981 | 981 | } |
982 | 982 | |
983 | 983 | /** |
@@ -991,8 +991,8 @@ discard block |
||
991 | 991 | * @param int $order_id The ID of the order which is being paid for. |
992 | 992 | * @return array |
993 | 993 | */ |
994 | - public function modify_successful_payment_result( $result, $order_id ) { |
|
995 | - if ( ! isset( $result['payment_intent_secret'] ) && ! isset( $result['setup_intent_secret'] ) ) { |
|
994 | + public function modify_successful_payment_result($result, $order_id) { |
|
995 | + if ( ! isset($result['payment_intent_secret']) && ! isset($result['setup_intent_secret'])) { |
|
996 | 996 | // Only redirects with intents need to be modified. |
997 | 997 | return $result; |
998 | 998 | } |
@@ -1001,16 +1001,16 @@ discard block |
||
1001 | 1001 | $verification_url = add_query_arg( |
1002 | 1002 | array( |
1003 | 1003 | 'order' => $order_id, |
1004 | - 'nonce' => wp_create_nonce( 'wc_stripe_confirm_pi' ), |
|
1005 | - 'redirect_to' => rawurlencode( $result['redirect'] ), |
|
1004 | + 'nonce' => wp_create_nonce('wc_stripe_confirm_pi'), |
|
1005 | + 'redirect_to' => rawurlencode($result['redirect']), |
|
1006 | 1006 | ), |
1007 | - WC_AJAX::get_endpoint( 'wc_stripe_verify_intent' ) |
|
1007 | + WC_AJAX::get_endpoint('wc_stripe_verify_intent') |
|
1008 | 1008 | ); |
1009 | 1009 | |
1010 | - if ( isset( $result['payment_intent_secret'] ) ) { |
|
1011 | - $redirect = sprintf( '#confirm-pi-%s:%s', $result['payment_intent_secret'], rawurlencode( $verification_url ) ); |
|
1012 | - } else if ( isset( $result['setup_intent_secret'] ) ) { |
|
1013 | - $redirect = sprintf( '#confirm-si-%s:%s', $result['setup_intent_secret'], rawurlencode( $verification_url ) ); |
|
1010 | + if (isset($result['payment_intent_secret'])) { |
|
1011 | + $redirect = sprintf('#confirm-pi-%s:%s', $result['payment_intent_secret'], rawurlencode($verification_url)); |
|
1012 | + } else if (isset($result['setup_intent_secret'])) { |
|
1013 | + $redirect = sprintf('#confirm-si-%s:%s', $result['setup_intent_secret'], rawurlencode($verification_url)); |
|
1014 | 1014 | } |
1015 | 1015 | |
1016 | 1016 | return array( |
@@ -1022,8 +1022,8 @@ discard block |
||
1022 | 1022 | /** |
1023 | 1023 | * Proceed with current request using new login session (to ensure consistent nonce). |
1024 | 1024 | */ |
1025 | - public function set_cookie_on_current_request( $cookie ) { |
|
1026 | - $_COOKIE[ LOGGED_IN_COOKIE ] = $cookie; |
|
1025 | + public function set_cookie_on_current_request($cookie) { |
|
1026 | + $_COOKIE[LOGGED_IN_COOKIE] = $cookie; |
|
1027 | 1027 | } |
1028 | 1028 | |
1029 | 1029 | /** |
@@ -1033,48 +1033,48 @@ discard block |
||
1033 | 1033 | * @since 4.2.0 |
1034 | 1034 | * @param WC_Order $order The order which is in a transitional state. |
1035 | 1035 | */ |
1036 | - public function verify_intent_after_checkout( $order ) { |
|
1036 | + public function verify_intent_after_checkout($order) { |
|
1037 | 1037 | $payment_method = $order->get_payment_method(); |
1038 | - if ( $payment_method !== $this->id ) { |
|
1038 | + if ($payment_method !== $this->id) { |
|
1039 | 1039 | // If this is not the payment method, an intent would not be available. |
1040 | 1040 | return; |
1041 | 1041 | } |
1042 | 1042 | |
1043 | - $intent = $this->get_intent_from_order( $order ); |
|
1044 | - if ( ! $intent ) { |
|
1043 | + $intent = $this->get_intent_from_order($order); |
|
1044 | + if ( ! $intent) { |
|
1045 | 1045 | // No intent, redirect to the order received page for further actions. |
1046 | 1046 | return; |
1047 | 1047 | } |
1048 | 1048 | |
1049 | 1049 | // A webhook might have modified or locked the order while the intent was retreived. This ensures we are reading the right status. |
1050 | - clean_post_cache( $order->get_id() ); |
|
1051 | - $order = wc_get_order( $order->get_id() ); |
|
1050 | + clean_post_cache($order->get_id()); |
|
1051 | + $order = wc_get_order($order->get_id()); |
|
1052 | 1052 | |
1053 | - if ( ! $order->has_status( array( 'pending', 'failed' ) ) ) { |
|
1053 | + if ( ! $order->has_status(array('pending', 'failed'))) { |
|
1054 | 1054 | // If payment has already been completed, this function is redundant. |
1055 | 1055 | return; |
1056 | 1056 | } |
1057 | 1057 | |
1058 | - if ( $this->lock_order_payment( $order, $intent ) ) { |
|
1058 | + if ($this->lock_order_payment($order, $intent)) { |
|
1059 | 1059 | return; |
1060 | 1060 | } |
1061 | 1061 | |
1062 | - if ( 'setup_intent' === $intent->object && 'succeeded' === $intent->status ) { |
|
1062 | + if ('setup_intent' === $intent->object && 'succeeded' === $intent->status) { |
|
1063 | 1063 | WC()->cart->empty_cart(); |
1064 | - if ( WC_Stripe_Helper::is_pre_orders_exists() && WC_Pre_Orders_Order::order_contains_pre_order( $order ) ) { |
|
1065 | - WC_Pre_Orders_Order::mark_order_as_pre_ordered( $order ); |
|
1064 | + if (WC_Stripe_Helper::is_pre_orders_exists() && WC_Pre_Orders_Order::order_contains_pre_order($order)) { |
|
1065 | + WC_Pre_Orders_Order::mark_order_as_pre_ordered($order); |
|
1066 | 1066 | } else { |
1067 | 1067 | $order->payment_complete(); |
1068 | 1068 | } |
1069 | - } else if ( 'succeeded' === $intent->status || 'requires_capture' === $intent->status ) { |
|
1069 | + } else if ('succeeded' === $intent->status || 'requires_capture' === $intent->status) { |
|
1070 | 1070 | // Proceed with the payment completion. |
1071 | - $this->handle_intent_verification_success( $order, $intent ); |
|
1072 | - } else if ( 'requires_payment_method' === $intent->status ) { |
|
1071 | + $this->handle_intent_verification_success($order, $intent); |
|
1072 | + } else if ('requires_payment_method' === $intent->status) { |
|
1073 | 1073 | // `requires_payment_method` means that SCA got denied for the current payment method. |
1074 | - $this->handle_intent_verification_failure( $order, $intent ); |
|
1074 | + $this->handle_intent_verification_failure($order, $intent); |
|
1075 | 1075 | } |
1076 | 1076 | |
1077 | - $this->unlock_order_payment( $order ); |
|
1077 | + $this->unlock_order_payment($order); |
|
1078 | 1078 | } |
1079 | 1079 | |
1080 | 1080 | /** |
@@ -1084,8 +1084,8 @@ discard block |
||
1084 | 1084 | * @param WC_Order $order The order whose verification succeeded. |
1085 | 1085 | * @param stdClass $intent The Payment Intent object. |
1086 | 1086 | */ |
1087 | - protected function handle_intent_verification_success( $order, $intent ) { |
|
1088 | - $this->process_response( end( $intent->charges->data ), $order ); |
|
1087 | + protected function handle_intent_verification_success($order, $intent) { |
|
1088 | + $this->process_response(end($intent->charges->data), $order); |
|
1089 | 1089 | } |
1090 | 1090 | |
1091 | 1091 | /** |
@@ -1095,8 +1095,8 @@ discard block |
||
1095 | 1095 | * @param WC_Order $order The order whose verification failed. |
1096 | 1096 | * @param stdClass $intent The Payment Intent object. |
1097 | 1097 | */ |
1098 | - protected function handle_intent_verification_failure( $order, $intent ) { |
|
1099 | - $this->failed_sca_auth( $order, $intent ); |
|
1098 | + protected function handle_intent_verification_failure($order, $intent) { |
|
1099 | + $this->failed_sca_auth($order, $intent); |
|
1100 | 1100 | } |
1101 | 1101 | |
1102 | 1102 | /** |
@@ -1106,18 +1106,18 @@ discard block |
||
1106 | 1106 | * @param WC_Order $order The order which should be checked. |
1107 | 1107 | * @param object $intent The intent, associated with the order. |
1108 | 1108 | */ |
1109 | - public function failed_sca_auth( $order, $intent ) { |
|
1109 | + public function failed_sca_auth($order, $intent) { |
|
1110 | 1110 | // If the order has already failed, do not repeat the same message. |
1111 | - if ( $order->has_status( 'failed' ) ) { |
|
1111 | + if ($order->has_status('failed')) { |
|
1112 | 1112 | return; |
1113 | 1113 | } |
1114 | 1114 | |
1115 | 1115 | // Load the right message and update the status. |
1116 | - $status_message = isset( $intent->last_payment_error ) |
|
1116 | + $status_message = isset($intent->last_payment_error) |
|
1117 | 1117 | /* translators: 1) The error message that was received from Stripe. */ |
1118 | - ? sprintf( __( 'Stripe SCA authentication failed. Reason: %s', 'woocommerce-gateway-stripe' ), $intent->last_payment_error->message ) |
|
1119 | - : __( 'Stripe SCA authentication failed.', 'woocommerce-gateway-stripe' ); |
|
1120 | - $order->update_status( 'failed', $status_message ); |
|
1118 | + ? sprintf(__('Stripe SCA authentication failed. Reason: %s', 'woocommerce-gateway-stripe'), $intent->last_payment_error->message) |
|
1119 | + : __('Stripe SCA authentication failed.', 'woocommerce-gateway-stripe'); |
|
1120 | + $order->update_status('failed', $status_message); |
|
1121 | 1121 | } |
1122 | 1122 | |
1123 | 1123 | /** |
@@ -1128,10 +1128,10 @@ discard block |
||
1128 | 1128 | * |
1129 | 1129 | * @return string Checkout URL for the given order. |
1130 | 1130 | */ |
1131 | - public function get_checkout_payment_url( $pay_url, $order ) { |
|
1131 | + public function get_checkout_payment_url($pay_url, $order) { |
|
1132 | 1132 | global $wp; |
1133 | - if ( isset( $_GET['wc-stripe-confirmation'] ) && isset( $wp->query_vars['order-pay'] ) && $wp->query_vars['order-pay'] == $order->get_id() ) { |
|
1134 | - $pay_url = add_query_arg( 'wc-stripe-confirmation', 1, $pay_url ); |
|
1133 | + if (isset($_GET['wc-stripe-confirmation']) && isset($wp->query_vars['order-pay']) && $wp->query_vars['order-pay'] == $order->get_id()) { |
|
1134 | + $pay_url = add_query_arg('wc-stripe-confirmation', 1, $pay_url); |
|
1135 | 1135 | } |
1136 | 1136 | return $pay_url; |
1137 | 1137 | } |
@@ -1141,63 +1141,63 @@ discard block |
||
1141 | 1141 | */ |
1142 | 1142 | public function process_admin_options() { |
1143 | 1143 | // Load all old values before the new settings get saved. |
1144 | - $old_publishable_key = $this->get_option( 'publishable_key' ); |
|
1145 | - $old_secret_key = $this->get_option( 'secret_key' ); |
|
1146 | - $old_test_publishable_key = $this->get_option( 'test_publishable_key' ); |
|
1147 | - $old_test_secret_key = $this->get_option( 'test_secret_key' ); |
|
1144 | + $old_publishable_key = $this->get_option('publishable_key'); |
|
1145 | + $old_secret_key = $this->get_option('secret_key'); |
|
1146 | + $old_test_publishable_key = $this->get_option('test_publishable_key'); |
|
1147 | + $old_test_secret_key = $this->get_option('test_secret_key'); |
|
1148 | 1148 | |
1149 | 1149 | parent::process_admin_options(); |
1150 | 1150 | |
1151 | 1151 | // Load all old values after the new settings have been saved. |
1152 | - $new_publishable_key = $this->get_option( 'publishable_key' ); |
|
1153 | - $new_secret_key = $this->get_option( 'secret_key' ); |
|
1154 | - $new_test_publishable_key = $this->get_option( 'test_publishable_key' ); |
|
1155 | - $new_test_secret_key = $this->get_option( 'test_secret_key' ); |
|
1152 | + $new_publishable_key = $this->get_option('publishable_key'); |
|
1153 | + $new_secret_key = $this->get_option('secret_key'); |
|
1154 | + $new_test_publishable_key = $this->get_option('test_publishable_key'); |
|
1155 | + $new_test_secret_key = $this->get_option('test_secret_key'); |
|
1156 | 1156 | |
1157 | 1157 | // Checks whether a value has transitioned from a non-empty value to a new one. |
1158 | - $has_changed = function( $old_value, $new_value ) { |
|
1159 | - return ! empty( $old_value ) && ( $old_value !== $new_value ); |
|
1158 | + $has_changed = function($old_value, $new_value) { |
|
1159 | + return ! empty($old_value) && ($old_value !== $new_value); |
|
1160 | 1160 | }; |
1161 | 1161 | |
1162 | 1162 | // Look for updates. |
1163 | 1163 | if ( |
1164 | - $has_changed( $old_publishable_key, $new_publishable_key ) |
|
1165 | - || $has_changed( $old_secret_key, $new_secret_key ) |
|
1166 | - || $has_changed( $old_test_publishable_key, $new_test_publishable_key ) |
|
1167 | - || $has_changed( $old_test_secret_key, $new_test_secret_key ) |
|
1164 | + $has_changed($old_publishable_key, $new_publishable_key) |
|
1165 | + || $has_changed($old_secret_key, $new_secret_key) |
|
1166 | + || $has_changed($old_test_publishable_key, $new_test_publishable_key) |
|
1167 | + || $has_changed($old_test_secret_key, $new_test_secret_key) |
|
1168 | 1168 | ) { |
1169 | - update_option( 'wc_stripe_show_changed_keys_notice', 'yes' ); |
|
1169 | + update_option('wc_stripe_show_changed_keys_notice', 'yes'); |
|
1170 | 1170 | } |
1171 | 1171 | } |
1172 | 1172 | |
1173 | - public function validate_publishable_key_field( $key, $value ) { |
|
1174 | - $value = $this->validate_text_field( $key, $value ); |
|
1175 | - if ( ! empty( $value ) && ! preg_match( '/^pk_live_/', $value ) ) { |
|
1176 | - throw new Exception( __( 'The "Live Publishable Key" should start with "pk_live", enter the correct key.', 'woocommerce-gateway-stripe' ) ); |
|
1173 | + public function validate_publishable_key_field($key, $value) { |
|
1174 | + $value = $this->validate_text_field($key, $value); |
|
1175 | + if ( ! empty($value) && ! preg_match('/^pk_live_/', $value)) { |
|
1176 | + throw new Exception(__('The "Live Publishable Key" should start with "pk_live", enter the correct key.', 'woocommerce-gateway-stripe')); |
|
1177 | 1177 | } |
1178 | 1178 | return $value; |
1179 | 1179 | } |
1180 | 1180 | |
1181 | - public function validate_secret_key_field( $key, $value ) { |
|
1182 | - $value = $this->validate_text_field( $key, $value ); |
|
1183 | - if ( ! empty( $value ) && ! preg_match( '/^[rs]k_live_/', $value ) ) { |
|
1184 | - throw new Exception( __( 'The "Live Secret Key" should start with "sk_live" or "rk_live", enter the correct key.', 'woocommerce-gateway-stripe' ) ); |
|
1181 | + public function validate_secret_key_field($key, $value) { |
|
1182 | + $value = $this->validate_text_field($key, $value); |
|
1183 | + if ( ! empty($value) && ! preg_match('/^[rs]k_live_/', $value)) { |
|
1184 | + throw new Exception(__('The "Live Secret Key" should start with "sk_live" or "rk_live", enter the correct key.', 'woocommerce-gateway-stripe')); |
|
1185 | 1185 | } |
1186 | 1186 | return $value; |
1187 | 1187 | } |
1188 | 1188 | |
1189 | - public function validate_test_publishable_key_field( $key, $value ) { |
|
1190 | - $value = $this->validate_text_field( $key, $value ); |
|
1191 | - if ( ! empty( $value ) && ! preg_match( '/^pk_test_/', $value ) ) { |
|
1192 | - throw new Exception( __( 'The "Test Publishable Key" should start with "pk_test", enter the correct key.', 'woocommerce-gateway-stripe' ) ); |
|
1189 | + public function validate_test_publishable_key_field($key, $value) { |
|
1190 | + $value = $this->validate_text_field($key, $value); |
|
1191 | + if ( ! empty($value) && ! preg_match('/^pk_test_/', $value)) { |
|
1192 | + throw new Exception(__('The "Test Publishable Key" should start with "pk_test", enter the correct key.', 'woocommerce-gateway-stripe')); |
|
1193 | 1193 | } |
1194 | 1194 | return $value; |
1195 | 1195 | } |
1196 | 1196 | |
1197 | - public function validate_test_secret_key_field( $key, $value ) { |
|
1198 | - $value = $this->validate_text_field( $key, $value ); |
|
1199 | - if ( ! empty( $value ) && ! preg_match( '/^[rs]k_test_/', $value ) ) { |
|
1200 | - throw new Exception( __( 'The "Test Secret Key" should start with "sk_test" or "rk_test", enter the correct key.', 'woocommerce-gateway-stripe' ) ); |
|
1197 | + public function validate_test_secret_key_field($key, $value) { |
|
1198 | + $value = $this->validate_text_field($key, $value); |
|
1199 | + if ( ! empty($value) && ! preg_match('/^[rs]k_test_/', $value)) { |
|
1200 | + throw new Exception(__('The "Test Secret Key" should start with "sk_test" or "rk_test", enter the correct key.', 'woocommerce-gateway-stripe')); |
|
1201 | 1201 | } |
1202 | 1202 | return $value; |
1203 | 1203 | } |
@@ -8,7 +8,7 @@ discard block |
||
8 | 8 | * @since 4.0.0 |
9 | 9 | */ |
10 | 10 | |
11 | -if ( ! defined( 'ABSPATH' ) ) { |
|
11 | +if ( ! defined('ABSPATH')) { |
|
12 | 12 | exit; |
13 | 13 | } |
14 | 14 | |
@@ -66,35 +66,35 @@ discard block |
||
66 | 66 | */ |
67 | 67 | public function __construct() { |
68 | 68 | self::$_this = $this; |
69 | - $this->stripe_settings = get_option( 'woocommerce_stripe_settings', array() ); |
|
70 | - $this->testmode = ( ! empty( $this->stripe_settings['testmode'] ) && 'yes' === $this->stripe_settings['testmode'] ) ? true : false; |
|
71 | - $this->publishable_key = ! empty( $this->stripe_settings['publishable_key'] ) ? $this->stripe_settings['publishable_key'] : ''; |
|
72 | - $this->secret_key = ! empty( $this->stripe_settings['secret_key'] ) ? $this->stripe_settings['secret_key'] : ''; |
|
73 | - $this->total_label = ! empty( $this->stripe_settings['statement_descriptor'] ) ? WC_Stripe_Helper::clean_statement_descriptor( $this->stripe_settings['statement_descriptor'] ) : ''; |
|
69 | + $this->stripe_settings = get_option('woocommerce_stripe_settings', array()); |
|
70 | + $this->testmode = ( ! empty($this->stripe_settings['testmode']) && 'yes' === $this->stripe_settings['testmode']) ? true : false; |
|
71 | + $this->publishable_key = ! empty($this->stripe_settings['publishable_key']) ? $this->stripe_settings['publishable_key'] : ''; |
|
72 | + $this->secret_key = ! empty($this->stripe_settings['secret_key']) ? $this->stripe_settings['secret_key'] : ''; |
|
73 | + $this->total_label = ! empty($this->stripe_settings['statement_descriptor']) ? WC_Stripe_Helper::clean_statement_descriptor($this->stripe_settings['statement_descriptor']) : ''; |
|
74 | 74 | |
75 | - if ( $this->testmode ) { |
|
76 | - $this->publishable_key = ! empty( $this->stripe_settings['test_publishable_key'] ) ? $this->stripe_settings['test_publishable_key'] : ''; |
|
77 | - $this->secret_key = ! empty( $this->stripe_settings['test_secret_key'] ) ? $this->stripe_settings['test_secret_key'] : ''; |
|
75 | + if ($this->testmode) { |
|
76 | + $this->publishable_key = ! empty($this->stripe_settings['test_publishable_key']) ? $this->stripe_settings['test_publishable_key'] : ''; |
|
77 | + $this->secret_key = ! empty($this->stripe_settings['test_secret_key']) ? $this->stripe_settings['test_secret_key'] : ''; |
|
78 | 78 | } |
79 | 79 | |
80 | - $this->total_label = str_replace( "'", '', $this->total_label ) . apply_filters( 'wc_stripe_payment_request_total_label_suffix', ' (via WooCommerce)' ); |
|
80 | + $this->total_label = str_replace("'", '', $this->total_label) . apply_filters('wc_stripe_payment_request_total_label_suffix', ' (via WooCommerce)'); |
|
81 | 81 | |
82 | 82 | // Checks if Stripe Gateway is enabled. |
83 | - if ( empty( $this->stripe_settings ) || ( isset( $this->stripe_settings['enabled'] ) && 'yes' !== $this->stripe_settings['enabled'] ) ) { |
|
83 | + if (empty($this->stripe_settings) || (isset($this->stripe_settings['enabled']) && 'yes' !== $this->stripe_settings['enabled'])) { |
|
84 | 84 | return; |
85 | 85 | } |
86 | 86 | |
87 | 87 | // Checks if Payment Request is enabled. |
88 | - if ( ! isset( $this->stripe_settings['payment_request'] ) || 'yes' !== $this->stripe_settings['payment_request'] ) { |
|
88 | + if ( ! isset($this->stripe_settings['payment_request']) || 'yes' !== $this->stripe_settings['payment_request']) { |
|
89 | 89 | return; |
90 | 90 | } |
91 | 91 | |
92 | 92 | // Don't load for change payment method page. |
93 | - if ( isset( $_GET['change_payment_method'] ) ) { |
|
93 | + if (isset($_GET['change_payment_method'])) { |
|
94 | 94 | return; |
95 | 95 | } |
96 | 96 | |
97 | - add_action( 'template_redirect', array( $this, 'set_session' ) ); |
|
97 | + add_action('template_redirect', array($this, 'set_session')); |
|
98 | 98 | $this->init(); |
99 | 99 | } |
100 | 100 | |
@@ -107,12 +107,12 @@ discard block |
||
107 | 107 | public function are_keys_set() { |
108 | 108 | // NOTE: updates to this function should be added to are_keys_set() |
109 | 109 | // in includes/abstracts/abstract-wc-stripe-payment-gateway.php |
110 | - if ( $this->testmode ) { |
|
111 | - return preg_match( '/^pk_test_/', $this->publishable_key ) |
|
112 | - && preg_match( '/^[rs]k_test_/', $this->secret_key ); |
|
110 | + if ($this->testmode) { |
|
111 | + return preg_match('/^pk_test_/', $this->publishable_key) |
|
112 | + && preg_match('/^[rs]k_test_/', $this->secret_key); |
|
113 | 113 | } else { |
114 | - return preg_match( '/^pk_live_/', $this->publishable_key ) |
|
115 | - && preg_match( '/^[rs]k_live_/', $this->secret_key ); |
|
114 | + return preg_match('/^pk_live_/', $this->publishable_key) |
|
115 | + && preg_match('/^[rs]k_live_/', $this->secret_key); |
|
116 | 116 | } |
117 | 117 | } |
118 | 118 | |
@@ -134,11 +134,11 @@ discard block |
||
134 | 134 | * @return void |
135 | 135 | */ |
136 | 136 | public function set_session() { |
137 | - if ( ! is_product() || ( isset( WC()->session ) && WC()->session->has_session() ) ) { |
|
137 | + if ( ! is_product() || (isset(WC()->session) && WC()->session->has_session())) { |
|
138 | 138 | return; |
139 | 139 | } |
140 | 140 | |
141 | - WC()->session->set_customer_session_cookie( true ); |
|
141 | + WC()->session->set_customer_session_cookie(true); |
|
142 | 142 | } |
143 | 143 | |
144 | 144 | /** |
@@ -149,30 +149,30 @@ discard block |
||
149 | 149 | * @return void |
150 | 150 | */ |
151 | 151 | public function init() { |
152 | - add_action( 'wp_enqueue_scripts', array( $this, 'scripts' ) ); |
|
152 | + add_action('wp_enqueue_scripts', array($this, 'scripts')); |
|
153 | 153 | |
154 | - add_action( 'woocommerce_after_add_to_cart_quantity', array( $this, 'display_payment_request_button_html' ), 1 ); |
|
155 | - add_action( 'woocommerce_after_add_to_cart_quantity', array( $this, 'display_payment_request_button_separator_html' ), 2 ); |
|
154 | + add_action('woocommerce_after_add_to_cart_quantity', array($this, 'display_payment_request_button_html'), 1); |
|
155 | + add_action('woocommerce_after_add_to_cart_quantity', array($this, 'display_payment_request_button_separator_html'), 2); |
|
156 | 156 | |
157 | - add_action( 'woocommerce_proceed_to_checkout', array( $this, 'display_payment_request_button_html' ), 1 ); |
|
158 | - add_action( 'woocommerce_proceed_to_checkout', array( $this, 'display_payment_request_button_separator_html' ), 2 ); |
|
157 | + add_action('woocommerce_proceed_to_checkout', array($this, 'display_payment_request_button_html'), 1); |
|
158 | + add_action('woocommerce_proceed_to_checkout', array($this, 'display_payment_request_button_separator_html'), 2); |
|
159 | 159 | |
160 | - add_action( 'woocommerce_checkout_before_customer_details', array( $this, 'display_payment_request_button_html' ), 1 ); |
|
161 | - add_action( 'woocommerce_checkout_before_customer_details', array( $this, 'display_payment_request_button_separator_html' ), 2 ); |
|
160 | + add_action('woocommerce_checkout_before_customer_details', array($this, 'display_payment_request_button_html'), 1); |
|
161 | + add_action('woocommerce_checkout_before_customer_details', array($this, 'display_payment_request_button_separator_html'), 2); |
|
162 | 162 | |
163 | - add_action( 'wc_ajax_wc_stripe_get_cart_details', array( $this, 'ajax_get_cart_details' ) ); |
|
164 | - add_action( 'wc_ajax_wc_stripe_get_shipping_options', array( $this, 'ajax_get_shipping_options' ) ); |
|
165 | - add_action( 'wc_ajax_wc_stripe_update_shipping_method', array( $this, 'ajax_update_shipping_method' ) ); |
|
166 | - add_action( 'wc_ajax_wc_stripe_create_order', array( $this, 'ajax_create_order' ) ); |
|
167 | - add_action( 'wc_ajax_wc_stripe_add_to_cart', array( $this, 'ajax_add_to_cart' ) ); |
|
168 | - add_action( 'wc_ajax_wc_stripe_get_selected_product_data', array( $this, 'ajax_get_selected_product_data' ) ); |
|
169 | - add_action( 'wc_ajax_wc_stripe_clear_cart', array( $this, 'ajax_clear_cart' ) ); |
|
170 | - add_action( 'wc_ajax_wc_stripe_log_errors', array( $this, 'ajax_log_errors' ) ); |
|
163 | + add_action('wc_ajax_wc_stripe_get_cart_details', array($this, 'ajax_get_cart_details')); |
|
164 | + add_action('wc_ajax_wc_stripe_get_shipping_options', array($this, 'ajax_get_shipping_options')); |
|
165 | + add_action('wc_ajax_wc_stripe_update_shipping_method', array($this, 'ajax_update_shipping_method')); |
|
166 | + add_action('wc_ajax_wc_stripe_create_order', array($this, 'ajax_create_order')); |
|
167 | + add_action('wc_ajax_wc_stripe_add_to_cart', array($this, 'ajax_add_to_cart')); |
|
168 | + add_action('wc_ajax_wc_stripe_get_selected_product_data', array($this, 'ajax_get_selected_product_data')); |
|
169 | + add_action('wc_ajax_wc_stripe_clear_cart', array($this, 'ajax_clear_cart')); |
|
170 | + add_action('wc_ajax_wc_stripe_log_errors', array($this, 'ajax_log_errors')); |
|
171 | 171 | |
172 | - add_filter( 'woocommerce_gateway_title', array( $this, 'filter_gateway_title' ), 10, 2 ); |
|
173 | - add_filter( 'woocommerce_validate_postcode', array( $this, 'postal_code_validation' ), 10, 3 ); |
|
172 | + add_filter('woocommerce_gateway_title', array($this, 'filter_gateway_title'), 10, 2); |
|
173 | + add_filter('woocommerce_validate_postcode', array($this, 'postal_code_validation'), 10, 3); |
|
174 | 174 | |
175 | - add_action( 'woocommerce_checkout_order_processed', array( $this, 'add_order_meta' ), 10, 2 ); |
|
175 | + add_action('woocommerce_checkout_order_processed', array($this, 'add_order_meta'), 10, 2); |
|
176 | 176 | } |
177 | 177 | |
178 | 178 | /** |
@@ -183,7 +183,7 @@ discard block |
||
183 | 183 | * @return string |
184 | 184 | */ |
185 | 185 | public function get_button_type() { |
186 | - return isset( $this->stripe_settings['payment_request_button_type'] ) ? $this->stripe_settings['payment_request_button_type'] : 'default'; |
|
186 | + return isset($this->stripe_settings['payment_request_button_type']) ? $this->stripe_settings['payment_request_button_type'] : 'default'; |
|
187 | 187 | } |
188 | 188 | |
189 | 189 | /** |
@@ -194,7 +194,7 @@ discard block |
||
194 | 194 | * @return string |
195 | 195 | */ |
196 | 196 | public function get_button_theme() { |
197 | - return isset( $this->stripe_settings['payment_request_button_theme'] ) ? $this->stripe_settings['payment_request_button_theme'] : 'dark'; |
|
197 | + return isset($this->stripe_settings['payment_request_button_theme']) ? $this->stripe_settings['payment_request_button_theme'] : 'dark'; |
|
198 | 198 | } |
199 | 199 | |
200 | 200 | /** |
@@ -205,7 +205,7 @@ discard block |
||
205 | 205 | * @return string |
206 | 206 | */ |
207 | 207 | public function get_button_height() { |
208 | - return isset( $this->stripe_settings['payment_request_button_height'] ) ? str_replace( 'px', '', $this->stripe_settings['payment_request_button_height'] ) : '64'; |
|
208 | + return isset($this->stripe_settings['payment_request_button_height']) ? str_replace('px', '', $this->stripe_settings['payment_request_button_height']) : '64'; |
|
209 | 209 | } |
210 | 210 | |
211 | 211 | /** |
@@ -227,7 +227,7 @@ discard block |
||
227 | 227 | * @return string |
228 | 228 | */ |
229 | 229 | public function get_button_branded_type() { |
230 | - return isset( $this->stripe_settings['payment_request_button_branded_type'] ) ? $this->stripe_settings['payment_request_button_branded_type'] : 'default'; |
|
230 | + return isset($this->stripe_settings['payment_request_button_branded_type']) ? $this->stripe_settings['payment_request_button_branded_type'] : 'default'; |
|
231 | 231 | } |
232 | 232 | |
233 | 233 | /** |
@@ -260,7 +260,7 @@ discard block |
||
260 | 260 | * @return string |
261 | 261 | */ |
262 | 262 | public function get_button_label() { |
263 | - return isset( $this->stripe_settings['payment_request_button_label'] ) ? $this->stripe_settings['payment_request_button_label'] : 'Buy now'; |
|
263 | + return isset($this->stripe_settings['payment_request_button_label']) ? $this->stripe_settings['payment_request_button_label'] : 'Buy now'; |
|
264 | 264 | } |
265 | 265 | |
266 | 266 | /** |
@@ -271,22 +271,22 @@ discard block |
||
271 | 271 | * @return mixed Returns false if not on a product page, the product information otherwise. |
272 | 272 | */ |
273 | 273 | public function get_product_data() { |
274 | - if ( ! is_product() ) { |
|
274 | + if ( ! is_product()) { |
|
275 | 275 | return false; |
276 | 276 | } |
277 | 277 | |
278 | 278 | global $post; |
279 | 279 | |
280 | - $product = wc_get_product( $post->ID ); |
|
280 | + $product = wc_get_product($post->ID); |
|
281 | 281 | |
282 | - if ( 'variable' === $product->get_type() ) { |
|
283 | - $attributes = wc_clean( wp_unslash( $_GET ) ); |
|
282 | + if ('variable' === $product->get_type()) { |
|
283 | + $attributes = wc_clean(wp_unslash($_GET)); |
|
284 | 284 | |
285 | - $data_store = WC_Data_Store::load( 'product' ); |
|
286 | - $variation_id = $data_store->find_matching_product_variation( $product, $attributes ); |
|
285 | + $data_store = WC_Data_Store::load('product'); |
|
286 | + $variation_id = $data_store->find_matching_product_variation($product, $attributes); |
|
287 | 287 | |
288 | - if ( ! empty( $variation_id ) ) { |
|
289 | - $product = wc_get_product( $variation_id ); |
|
288 | + if ( ! empty($variation_id)) { |
|
289 | + $product = wc_get_product($variation_id); |
|
290 | 290 | } |
291 | 291 | } |
292 | 292 | |
@@ -295,27 +295,27 @@ discard block |
||
295 | 295 | |
296 | 296 | $items[] = array( |
297 | 297 | 'label' => $product->get_name(), |
298 | - 'amount' => WC_Stripe_Helper::get_stripe_amount( $product->get_price() ), |
|
298 | + 'amount' => WC_Stripe_Helper::get_stripe_amount($product->get_price()), |
|
299 | 299 | ); |
300 | 300 | |
301 | - if ( wc_tax_enabled() ) { |
|
301 | + if (wc_tax_enabled()) { |
|
302 | 302 | $items[] = array( |
303 | - 'label' => __( 'Tax', 'woocommerce-gateway-stripe' ), |
|
303 | + 'label' => __('Tax', 'woocommerce-gateway-stripe'), |
|
304 | 304 | 'amount' => 0, |
305 | 305 | 'pending' => true, |
306 | 306 | ); |
307 | 307 | } |
308 | 308 | |
309 | - if ( wc_shipping_enabled() && $product->needs_shipping() ) { |
|
309 | + if (wc_shipping_enabled() && $product->needs_shipping()) { |
|
310 | 310 | $items[] = array( |
311 | - 'label' => __( 'Shipping', 'woocommerce-gateway-stripe' ), |
|
311 | + 'label' => __('Shipping', 'woocommerce-gateway-stripe'), |
|
312 | 312 | 'amount' => 0, |
313 | 313 | 'pending' => true, |
314 | 314 | ); |
315 | 315 | |
316 | 316 | $data['shippingOptions'] = array( |
317 | 317 | 'id' => 'pending', |
318 | - 'label' => __( 'Pending', 'woocommerce-gateway-stripe' ), |
|
318 | + 'label' => __('Pending', 'woocommerce-gateway-stripe'), |
|
319 | 319 | 'detail' => '', |
320 | 320 | 'amount' => 0, |
321 | 321 | ); |
@@ -323,36 +323,36 @@ discard block |
||
323 | 323 | |
324 | 324 | $data['displayItems'] = $items; |
325 | 325 | $data['total'] = array( |
326 | - 'label' => apply_filters( 'wc_stripe_payment_request_total_label', $this->total_label ), |
|
327 | - 'amount' => WC_Stripe_Helper::get_stripe_amount( $product->get_price() ), |
|
326 | + 'label' => apply_filters('wc_stripe_payment_request_total_label', $this->total_label), |
|
327 | + 'amount' => WC_Stripe_Helper::get_stripe_amount($product->get_price()), |
|
328 | 328 | 'pending' => true, |
329 | 329 | ); |
330 | 330 | |
331 | - $data['requestShipping'] = ( wc_shipping_enabled() && $product->needs_shipping() ); |
|
332 | - $data['currency'] = strtolower( get_woocommerce_currency() ); |
|
333 | - $data['country_code'] = substr( get_option( 'woocommerce_default_country' ), 0, 2 ); |
|
331 | + $data['requestShipping'] = (wc_shipping_enabled() && $product->needs_shipping()); |
|
332 | + $data['currency'] = strtolower(get_woocommerce_currency()); |
|
333 | + $data['country_code'] = substr(get_option('woocommerce_default_country'), 0, 2); |
|
334 | 334 | |
335 | - return apply_filters( 'wc_stripe_payment_request_product_data', $data, $product ); |
|
335 | + return apply_filters('wc_stripe_payment_request_product_data', $data, $product); |
|
336 | 336 | } |
337 | 337 | |
338 | 338 | /** |
339 | 339 | * Filters the gateway title to reflect Payment Request type |
340 | 340 | */ |
341 | - public function filter_gateway_title( $title, $id ) { |
|
341 | + public function filter_gateway_title($title, $id) { |
|
342 | 342 | global $post; |
343 | 343 | |
344 | - if ( ! is_object( $post ) ) { |
|
344 | + if ( ! is_object($post)) { |
|
345 | 345 | return $title; |
346 | 346 | } |
347 | 347 | |
348 | - $order = wc_get_order( $post->ID ); |
|
349 | - $method_title = is_object( $order ) ? $order->get_payment_method_title() : ''; |
|
348 | + $order = wc_get_order($post->ID); |
|
349 | + $method_title = is_object($order) ? $order->get_payment_method_title() : ''; |
|
350 | 350 | |
351 | - if ( 'stripe' === $id && ! empty( $method_title ) && 'Apple Pay (Stripe)' === $method_title ) { |
|
351 | + if ('stripe' === $id && ! empty($method_title) && 'Apple Pay (Stripe)' === $method_title) { |
|
352 | 352 | return $method_title; |
353 | 353 | } |
354 | 354 | |
355 | - if ( 'stripe' === $id && ! empty( $method_title ) && 'Chrome Payment Request (Stripe)' === $method_title ) { |
|
355 | + if ('stripe' === $id && ! empty($method_title) && 'Chrome Payment Request (Stripe)' === $method_title) { |
|
356 | 356 | return $method_title; |
357 | 357 | } |
358 | 358 | |
@@ -365,16 +365,16 @@ discard block |
||
365 | 365 | * @since 3.1.4 |
366 | 366 | * @version 4.0.0 |
367 | 367 | */ |
368 | - public function postal_code_validation( $valid, $postcode, $country ) { |
|
368 | + public function postal_code_validation($valid, $postcode, $country) { |
|
369 | 369 | $gateways = WC()->payment_gateways->get_available_payment_gateways(); |
370 | 370 | |
371 | - if ( ! isset( $gateways['stripe'] ) ) { |
|
371 | + if ( ! isset($gateways['stripe'])) { |
|
372 | 372 | return $valid; |
373 | 373 | } |
374 | 374 | |
375 | - $payment_request_type = isset( $_POST['payment_request_type'] ) ? wc_clean( $_POST['payment_request_type'] ) : ''; |
|
375 | + $payment_request_type = isset($_POST['payment_request_type']) ? wc_clean($_POST['payment_request_type']) : ''; |
|
376 | 376 | |
377 | - if ( 'apple_pay' !== $payment_request_type ) { |
|
377 | + if ('apple_pay' !== $payment_request_type) { |
|
378 | 378 | return $valid; |
379 | 379 | } |
380 | 380 | |
@@ -384,7 +384,7 @@ discard block |
||
384 | 384 | * the order and not let it go through. The remedy for now is just to remove this validation. |
385 | 385 | * Note that this only works with shipping providers that don't validate full postal codes. |
386 | 386 | */ |
387 | - if ( 'GB' === $country || 'CA' === $country ) { |
|
387 | + if ('GB' === $country || 'CA' === $country) { |
|
388 | 388 | return true; |
389 | 389 | } |
390 | 390 | |
@@ -401,22 +401,22 @@ discard block |
||
401 | 401 | * @version 4.0.0 |
402 | 402 | * @return void |
403 | 403 | */ |
404 | - public function add_order_meta( $order_id, $posted_data ) { |
|
405 | - if ( empty( $_POST['payment_request_type'] ) ) { |
|
404 | + public function add_order_meta($order_id, $posted_data) { |
|
405 | + if (empty($_POST['payment_request_type'])) { |
|
406 | 406 | return; |
407 | 407 | } |
408 | 408 | |
409 | - $order = wc_get_order( $order_id ); |
|
409 | + $order = wc_get_order($order_id); |
|
410 | 410 | |
411 | - $payment_request_type = wc_clean( $_POST['payment_request_type'] ); |
|
411 | + $payment_request_type = wc_clean($_POST['payment_request_type']); |
|
412 | 412 | |
413 | - if ( 'apple_pay' === $payment_request_type ) { |
|
414 | - $order->set_payment_method_title( 'Apple Pay (Stripe)' ); |
|
413 | + if ('apple_pay' === $payment_request_type) { |
|
414 | + $order->set_payment_method_title('Apple Pay (Stripe)'); |
|
415 | 415 | $order->save(); |
416 | 416 | } |
417 | 417 | |
418 | - if ( 'payment_request_api' === $payment_request_type ) { |
|
419 | - $order->set_payment_method_title( 'Chrome Payment Request (Stripe)' ); |
|
418 | + if ('payment_request_api' === $payment_request_type) { |
|
419 | + $order->set_payment_method_title('Chrome Payment Request (Stripe)'); |
|
420 | 420 | $order->save(); |
421 | 421 | } |
422 | 422 | } |
@@ -454,20 +454,20 @@ discard block |
||
454 | 454 | * @return boolean |
455 | 455 | */ |
456 | 456 | public function allowed_items_in_cart() { |
457 | - foreach ( WC()->cart->get_cart() as $cart_item_key => $cart_item ) { |
|
458 | - $_product = apply_filters( 'woocommerce_cart_item_product', $cart_item['data'], $cart_item, $cart_item_key ); |
|
457 | + foreach (WC()->cart->get_cart() as $cart_item_key => $cart_item) { |
|
458 | + $_product = apply_filters('woocommerce_cart_item_product', $cart_item['data'], $cart_item, $cart_item_key); |
|
459 | 459 | |
460 | - if ( ! in_array( $_product->get_type(), $this->supported_product_types() ) ) { |
|
460 | + if ( ! in_array($_product->get_type(), $this->supported_product_types())) { |
|
461 | 461 | return false; |
462 | 462 | } |
463 | 463 | |
464 | 464 | // Trial subscriptions with shipping are not supported |
465 | - if ( class_exists( 'WC_Subscriptions_Order' ) && WC_Subscriptions_Cart::cart_contains_subscription() && $_product->needs_shipping() && WC_Subscriptions_Product::get_trial_length( $_product ) > 0 ) { |
|
465 | + if (class_exists('WC_Subscriptions_Order') && WC_Subscriptions_Cart::cart_contains_subscription() && $_product->needs_shipping() && WC_Subscriptions_Product::get_trial_length($_product) > 0) { |
|
466 | 466 | return false; |
467 | 467 | } |
468 | 468 | |
469 | 469 | // Pre Orders compatbility where we don't support charge upon release. |
470 | - if ( class_exists( 'WC_Pre_Orders_Order' ) && WC_Pre_Orders_Cart::cart_contains_pre_order() && WC_Pre_Orders_Product::product_is_charged_upon_release( WC_Pre_Orders_Cart::get_pre_order_product() ) ) { |
|
470 | + if (class_exists('WC_Pre_Orders_Order') && WC_Pre_Orders_Cart::cart_contains_pre_order() && WC_Pre_Orders_Product::product_is_charged_upon_release(WC_Pre_Orders_Cart::get_pre_order_product())) { |
|
471 | 471 | return false; |
472 | 472 | } |
473 | 473 | } |
@@ -483,61 +483,61 @@ discard block |
||
483 | 483 | */ |
484 | 484 | public function scripts() { |
485 | 485 | // If keys are not set bail. |
486 | - if ( ! $this->are_keys_set() ) { |
|
487 | - WC_Stripe_Logger::log( 'Keys are not set correctly.' ); |
|
486 | + if ( ! $this->are_keys_set()) { |
|
487 | + WC_Stripe_Logger::log('Keys are not set correctly.'); |
|
488 | 488 | return; |
489 | 489 | } |
490 | 490 | |
491 | 491 | // If no SSL bail. |
492 | - if ( ! $this->testmode && ! is_ssl() ) { |
|
493 | - WC_Stripe_Logger::log( 'Stripe Payment Request live mode requires SSL.' ); |
|
492 | + if ( ! $this->testmode && ! is_ssl()) { |
|
493 | + WC_Stripe_Logger::log('Stripe Payment Request live mode requires SSL.'); |
|
494 | 494 | return; |
495 | 495 | } |
496 | 496 | |
497 | - if ( ! is_product() && ! is_cart() && ! is_checkout() && ! isset( $_GET['pay_for_order'] ) ) { |
|
497 | + if ( ! is_product() && ! is_cart() && ! is_checkout() && ! isset($_GET['pay_for_order'])) { |
|
498 | 498 | return; |
499 | 499 | } |
500 | 500 | |
501 | - if ( is_product() && ! $this->should_show_payment_button_on_product_page() ) { |
|
501 | + if (is_product() && ! $this->should_show_payment_button_on_product_page()) { |
|
502 | 502 | return; |
503 | 503 | } |
504 | 504 | |
505 | - $suffix = defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG ? '' : '.min'; |
|
505 | + $suffix = defined('SCRIPT_DEBUG') && SCRIPT_DEBUG ? '' : '.min'; |
|
506 | 506 | |
507 | 507 | $stripe_params = array( |
508 | - 'ajax_url' => WC_AJAX::get_endpoint( '%%endpoint%%' ), |
|
508 | + 'ajax_url' => WC_AJAX::get_endpoint('%%endpoint%%'), |
|
509 | 509 | 'stripe' => array( |
510 | 510 | 'key' => $this->publishable_key, |
511 | - 'allow_prepaid_card' => apply_filters( 'wc_stripe_allow_prepaid_card', true ) ? 'yes' : 'no', |
|
511 | + 'allow_prepaid_card' => apply_filters('wc_stripe_allow_prepaid_card', true) ? 'yes' : 'no', |
|
512 | 512 | ), |
513 | 513 | 'nonce' => array( |
514 | - 'payment' => wp_create_nonce( 'wc-stripe-payment-request' ), |
|
515 | - 'shipping' => wp_create_nonce( 'wc-stripe-payment-request-shipping' ), |
|
516 | - 'update_shipping' => wp_create_nonce( 'wc-stripe-update-shipping-method' ), |
|
517 | - 'checkout' => wp_create_nonce( 'woocommerce-process_checkout' ), |
|
518 | - 'add_to_cart' => wp_create_nonce( 'wc-stripe-add-to-cart' ), |
|
519 | - 'get_selected_product_data' => wp_create_nonce( 'wc-stripe-get-selected-product-data' ), |
|
520 | - 'log_errors' => wp_create_nonce( 'wc-stripe-log-errors' ), |
|
521 | - 'clear_cart' => wp_create_nonce( 'wc-stripe-clear-cart' ), |
|
514 | + 'payment' => wp_create_nonce('wc-stripe-payment-request'), |
|
515 | + 'shipping' => wp_create_nonce('wc-stripe-payment-request-shipping'), |
|
516 | + 'update_shipping' => wp_create_nonce('wc-stripe-update-shipping-method'), |
|
517 | + 'checkout' => wp_create_nonce('woocommerce-process_checkout'), |
|
518 | + 'add_to_cart' => wp_create_nonce('wc-stripe-add-to-cart'), |
|
519 | + 'get_selected_product_data' => wp_create_nonce('wc-stripe-get-selected-product-data'), |
|
520 | + 'log_errors' => wp_create_nonce('wc-stripe-log-errors'), |
|
521 | + 'clear_cart' => wp_create_nonce('wc-stripe-clear-cart'), |
|
522 | 522 | ), |
523 | 523 | 'i18n' => array( |
524 | - 'no_prepaid_card' => __( 'Sorry, we\'re not accepting prepaid cards at this time.', 'woocommerce-gateway-stripe' ), |
|
524 | + 'no_prepaid_card' => __('Sorry, we\'re not accepting prepaid cards at this time.', 'woocommerce-gateway-stripe'), |
|
525 | 525 | /* translators: Do not translate the [option] placeholder */ |
526 | - 'unknown_shipping' => __( 'Unknown shipping option "[option]".', 'woocommerce-gateway-stripe' ), |
|
526 | + 'unknown_shipping' => __('Unknown shipping option "[option]".', 'woocommerce-gateway-stripe'), |
|
527 | 527 | ), |
528 | 528 | 'checkout' => array( |
529 | 529 | 'url' => wc_get_checkout_url(), |
530 | - 'currency_code' => strtolower( get_woocommerce_currency() ), |
|
531 | - 'country_code' => substr( get_option( 'woocommerce_default_country' ), 0, 2 ), |
|
530 | + 'currency_code' => strtolower(get_woocommerce_currency()), |
|
531 | + 'country_code' => substr(get_option('woocommerce_default_country'), 0, 2), |
|
532 | 532 | 'needs_shipping' => WC()->cart->needs_shipping() ? 'yes' : 'no', |
533 | 533 | // Defaults to 'required' to match how core initializes this option. |
534 | - 'needs_payer_phone' => 'required' === get_option( 'woocommerce_checkout_phone_field', 'required' ), |
|
534 | + 'needs_payer_phone' => 'required' === get_option('woocommerce_checkout_phone_field', 'required'), |
|
535 | 535 | ), |
536 | 536 | 'button' => array( |
537 | 537 | 'type' => $this->get_button_type(), |
538 | 538 | 'theme' => $this->get_button_theme(), |
539 | 539 | 'height' => $this->get_button_height(), |
540 | - 'locale' => apply_filters( 'wc_stripe_payment_request_button_locale', substr( get_locale(), 0, 2 ) ), // Default format is en_US. |
|
540 | + 'locale' => apply_filters('wc_stripe_payment_request_button_locale', substr(get_locale(), 0, 2)), // Default format is en_US. |
|
541 | 541 | 'is_custom' => $this->is_custom_button(), |
542 | 542 | 'is_branded' => $this->is_branded_button(), |
543 | 543 | 'css_selector' => $this->custom_button_selector(), |
@@ -547,15 +547,15 @@ discard block |
||
547 | 547 | 'product' => $this->get_product_data(), |
548 | 548 | ); |
549 | 549 | |
550 | - wp_register_script( 'stripe', 'https://js.stripe.com/v3/', '', '3.0', true ); |
|
551 | - wp_register_script( 'wc_stripe_payment_request', plugins_url( 'assets/js/stripe-payment-request' . $suffix . '.js', WC_STRIPE_MAIN_FILE ), array( 'jquery', 'stripe' ), WC_STRIPE_VERSION, true ); |
|
550 | + wp_register_script('stripe', 'https://js.stripe.com/v3/', '', '3.0', true); |
|
551 | + wp_register_script('wc_stripe_payment_request', plugins_url('assets/js/stripe-payment-request' . $suffix . '.js', WC_STRIPE_MAIN_FILE), array('jquery', 'stripe'), WC_STRIPE_VERSION, true); |
|
552 | 552 | |
553 | - wp_localize_script( 'wc_stripe_payment_request', 'wc_stripe_payment_request_params', apply_filters( 'wc_stripe_payment_request_params', $stripe_params ) ); |
|
553 | + wp_localize_script('wc_stripe_payment_request', 'wc_stripe_payment_request_params', apply_filters('wc_stripe_payment_request_params', $stripe_params)); |
|
554 | 554 | |
555 | - wp_enqueue_script( 'wc_stripe_payment_request' ); |
|
555 | + wp_enqueue_script('wc_stripe_payment_request'); |
|
556 | 556 | |
557 | 557 | $gateways = WC()->payment_gateways->get_available_payment_gateways(); |
558 | - if ( isset( $gateways['stripe'] ) ) { |
|
558 | + if (isset($gateways['stripe'])) { |
|
559 | 559 | $gateways['stripe']->payment_scripts(); |
560 | 560 | } |
561 | 561 | } |
@@ -571,31 +571,31 @@ discard block |
||
571 | 571 | |
572 | 572 | $gateways = WC()->payment_gateways->get_available_payment_gateways(); |
573 | 573 | |
574 | - if ( ! isset( $gateways['stripe'] ) ) { |
|
574 | + if ( ! isset($gateways['stripe'])) { |
|
575 | 575 | return; |
576 | 576 | } |
577 | 577 | |
578 | - if ( ! is_cart() && ! is_checkout() && ! is_product() && ! isset( $_GET['pay_for_order'] ) ) { |
|
578 | + if ( ! is_cart() && ! is_checkout() && ! is_product() && ! isset($_GET['pay_for_order'])) { |
|
579 | 579 | return; |
580 | 580 | } |
581 | 581 | |
582 | - if ( is_checkout() && ! apply_filters( 'wc_stripe_show_payment_request_on_checkout', false, $post ) ) { |
|
582 | + if (is_checkout() && ! apply_filters('wc_stripe_show_payment_request_on_checkout', false, $post)) { |
|
583 | 583 | return; |
584 | 584 | } |
585 | 585 | |
586 | - if ( is_product() && ! $this->should_show_payment_button_on_product_page() ) { |
|
586 | + if (is_product() && ! $this->should_show_payment_button_on_product_page()) { |
|
587 | 587 | return; |
588 | - } else if ( ! $this->should_show_payment_button_on_cart() ) { |
|
588 | + } else if ( ! $this->should_show_payment_button_on_cart()) { |
|
589 | 589 | return; |
590 | 590 | } |
591 | 591 | ?> |
592 | 592 | <div id="wc-stripe-payment-request-wrapper" style="clear:both;padding-top:1.5em;display:none;"> |
593 | 593 | <div id="wc-stripe-payment-request-button"> |
594 | 594 | <?php |
595 | - if ( $this->is_custom_button() ) { |
|
596 | - $label = esc_html( $this->get_button_label() ); |
|
597 | - $class_name = esc_attr( 'button ' . $this->get_button_theme() ); |
|
598 | - $style = esc_attr( 'height:' . $this->get_button_height() . 'px;' ); |
|
595 | + if ($this->is_custom_button()) { |
|
596 | + $label = esc_html($this->get_button_label()); |
|
597 | + $class_name = esc_attr('button ' . $this->get_button_theme()); |
|
598 | + $style = esc_attr('height:' . $this->get_button_height() . 'px;'); |
|
599 | 599 | echo "<button id=\"wc-stripe-custom-button\" class=\"$class_name\" style=\"$style\"> $label </button>"; |
600 | 600 | } |
601 | 601 | ?> |
@@ -616,25 +616,25 @@ discard block |
||
616 | 616 | |
617 | 617 | $gateways = WC()->payment_gateways->get_available_payment_gateways(); |
618 | 618 | |
619 | - if ( ! isset( $gateways['stripe'] ) ) { |
|
619 | + if ( ! isset($gateways['stripe'])) { |
|
620 | 620 | return; |
621 | 621 | } |
622 | 622 | |
623 | - if ( ! is_cart() && ! is_checkout() && ! is_product() && ! isset( $_GET['pay_for_order'] ) ) { |
|
623 | + if ( ! is_cart() && ! is_checkout() && ! is_product() && ! isset($_GET['pay_for_order'])) { |
|
624 | 624 | return; |
625 | 625 | } |
626 | 626 | |
627 | - if ( is_checkout() && ! apply_filters( 'wc_stripe_show_payment_request_on_checkout', false, $post ) ) { |
|
627 | + if (is_checkout() && ! apply_filters('wc_stripe_show_payment_request_on_checkout', false, $post)) { |
|
628 | 628 | return; |
629 | 629 | } |
630 | 630 | |
631 | - if ( is_product() && ! $this->should_show_payment_button_on_product_page() ) { |
|
631 | + if (is_product() && ! $this->should_show_payment_button_on_product_page()) { |
|
632 | 632 | return; |
633 | - } else if ( ! $this->should_show_payment_button_on_cart() ) { |
|
633 | + } else if ( ! $this->should_show_payment_button_on_cart()) { |
|
634 | 634 | return; |
635 | 635 | } |
636 | 636 | ?> |
637 | - <p id="wc-stripe-payment-request-button-separator" style="margin-top:1.5em;text-align:center;display:none;">— <?php esc_html_e( 'OR', 'woocommerce-gateway-stripe' ); ?> —</p> |
|
637 | + <p id="wc-stripe-payment-request-button-separator" style="margin-top:1.5em;text-align:center;display:none;">— <?php esc_html_e('OR', 'woocommerce-gateway-stripe'); ?> —</p> |
|
638 | 638 | <?php |
639 | 639 | } |
640 | 640 | |
@@ -645,11 +645,11 @@ discard block |
||
645 | 645 | * @return boolean |
646 | 646 | */ |
647 | 647 | private function should_show_payment_button_on_cart() { |
648 | - if ( ! apply_filters( 'wc_stripe_show_payment_request_on_cart', true ) ) { |
|
648 | + if ( ! apply_filters('wc_stripe_show_payment_request_on_cart', true)) { |
|
649 | 649 | return false; |
650 | 650 | } |
651 | - if ( ! $this->allowed_items_in_cart() ) { |
|
652 | - WC_Stripe_Logger::log( 'Items in the cart has unsupported product type ( Payment Request button disabled )' ); |
|
651 | + if ( ! $this->allowed_items_in_cart()) { |
|
652 | + WC_Stripe_Logger::log('Items in the cart has unsupported product type ( Payment Request button disabled )'); |
|
653 | 653 | return false; |
654 | 654 | } |
655 | 655 | return true; |
@@ -664,32 +664,32 @@ discard block |
||
664 | 664 | private function should_show_payment_button_on_product_page() { |
665 | 665 | global $post; |
666 | 666 | |
667 | - $product = wc_get_product( $post->ID ); |
|
667 | + $product = wc_get_product($post->ID); |
|
668 | 668 | |
669 | - if ( apply_filters( 'wc_stripe_hide_payment_request_on_product_page', false, $post ) ) { |
|
669 | + if (apply_filters('wc_stripe_hide_payment_request_on_product_page', false, $post)) { |
|
670 | 670 | return false; |
671 | 671 | } |
672 | 672 | |
673 | - if ( ! is_object( $product ) || ! in_array( $product->get_type(), $this->supported_product_types() ) ) { |
|
673 | + if ( ! is_object($product) || ! in_array($product->get_type(), $this->supported_product_types())) { |
|
674 | 674 | return false; |
675 | 675 | } |
676 | 676 | |
677 | 677 | // Trial subscriptions with shipping are not supported |
678 | - if ( class_exists( 'WC_Subscriptions_Order' ) && $product->needs_shipping() && WC_Subscriptions_Product::get_trial_length( $product ) > 0 ) { |
|
678 | + if (class_exists('WC_Subscriptions_Order') && $product->needs_shipping() && WC_Subscriptions_Product::get_trial_length($product) > 0) { |
|
679 | 679 | return false; |
680 | 680 | } |
681 | 681 | |
682 | 682 | // Pre Orders charge upon release not supported. |
683 | - if ( class_exists( 'WC_Pre_Orders_Order' ) && WC_Pre_Orders_Product::product_is_charged_upon_release( $product ) ) { |
|
684 | - WC_Stripe_Logger::log( 'Pre Order charge upon release is not supported. ( Payment Request button disabled )' ); |
|
683 | + if (class_exists('WC_Pre_Orders_Order') && WC_Pre_Orders_Product::product_is_charged_upon_release($product)) { |
|
684 | + WC_Stripe_Logger::log('Pre Order charge upon release is not supported. ( Payment Request button disabled )'); |
|
685 | 685 | return false; |
686 | 686 | } |
687 | 687 | |
688 | 688 | // File upload addon not supported |
689 | - if ( class_exists( 'WC_Product_Addons_Helper' ) ) { |
|
690 | - $product_addons = WC_Product_Addons_Helper::get_product_addons( $product->get_id() ); |
|
691 | - foreach ( $product_addons as $addon ) { |
|
692 | - if ( 'file_upload' === $addon['type'] ) { |
|
689 | + if (class_exists('WC_Product_Addons_Helper')) { |
|
690 | + $product_addons = WC_Product_Addons_Helper::get_product_addons($product->get_id()); |
|
691 | + foreach ($product_addons as $addon) { |
|
692 | + if ('file_upload' === $addon['type']) { |
|
693 | 693 | return false; |
694 | 694 | } |
695 | 695 | } |
@@ -705,11 +705,11 @@ discard block |
||
705 | 705 | * @version 4.0.0 |
706 | 706 | */ |
707 | 707 | public function ajax_log_errors() { |
708 | - check_ajax_referer( 'wc-stripe-log-errors', 'security' ); |
|
708 | + check_ajax_referer('wc-stripe-log-errors', 'security'); |
|
709 | 709 | |
710 | - $errors = wc_clean( stripslashes( $_POST['errors'] ) ); |
|
710 | + $errors = wc_clean(stripslashes($_POST['errors'])); |
|
711 | 711 | |
712 | - WC_Stripe_Logger::log( $errors ); |
|
712 | + WC_Stripe_Logger::log($errors); |
|
713 | 713 | |
714 | 714 | exit; |
715 | 715 | } |
@@ -721,7 +721,7 @@ discard block |
||
721 | 721 | * @version 4.0.0 |
722 | 722 | */ |
723 | 723 | public function ajax_clear_cart() { |
724 | - check_ajax_referer( 'wc-stripe-clear-cart', 'security' ); |
|
724 | + check_ajax_referer('wc-stripe-clear-cart', 'security'); |
|
725 | 725 | |
726 | 726 | WC()->cart->empty_cart(); |
727 | 727 | exit; |
@@ -731,10 +731,10 @@ discard block |
||
731 | 731 | * Get cart details. |
732 | 732 | */ |
733 | 733 | public function ajax_get_cart_details() { |
734 | - check_ajax_referer( 'wc-stripe-payment-request', 'security' ); |
|
734 | + check_ajax_referer('wc-stripe-payment-request', 'security'); |
|
735 | 735 | |
736 | - if ( ! defined( 'WOOCOMMERCE_CART' ) ) { |
|
737 | - define( 'WOOCOMMERCE_CART', true ); |
|
736 | + if ( ! defined('WOOCOMMERCE_CART')) { |
|
737 | + define('WOOCOMMERCE_CART', true); |
|
738 | 738 | } |
739 | 739 | |
740 | 740 | WC()->cart->calculate_totals(); |
@@ -745,14 +745,14 @@ discard block |
||
745 | 745 | $data = array( |
746 | 746 | 'shipping_required' => WC()->cart->needs_shipping(), |
747 | 747 | 'order_data' => array( |
748 | - 'currency' => strtolower( $currency ), |
|
749 | - 'country_code' => substr( get_option( 'woocommerce_default_country' ), 0, 2 ), |
|
748 | + 'currency' => strtolower($currency), |
|
749 | + 'country_code' => substr(get_option('woocommerce_default_country'), 0, 2), |
|
750 | 750 | ), |
751 | 751 | ); |
752 | 752 | |
753 | 753 | $data['order_data'] += $this->build_display_items(); |
754 | 754 | |
755 | - wp_send_json( $data ); |
|
755 | + wp_send_json($data); |
|
756 | 756 | } |
757 | 757 | |
758 | 758 | /** |
@@ -763,7 +763,7 @@ discard block |
||
763 | 763 | * @see WC_Shipping::get_packages(). |
764 | 764 | */ |
765 | 765 | public function ajax_get_shipping_options() { |
766 | - check_ajax_referer( 'wc-stripe-payment-request-shipping', 'security' ); |
|
766 | + check_ajax_referer('wc-stripe-payment-request-shipping', 'security'); |
|
767 | 767 | |
768 | 768 | $shipping_address = filter_input_array( |
769 | 769 | INPUT_POST, |
@@ -776,11 +776,11 @@ discard block |
||
776 | 776 | 'address_2' => FILTER_SANITIZE_STRING, |
777 | 777 | ) |
778 | 778 | ); |
779 | - $product_view_options = filter_input_array( INPUT_POST, [ 'is_product_page' => FILTER_SANITIZE_STRING ] ); |
|
780 | - $should_show_itemized_view = ! isset( $product_view_options['is_product_page'] ) ?: filter_var( $product_view_options['is_product_page'], FILTER_VALIDATE_BOOLEAN ); |
|
779 | + $product_view_options = filter_input_array(INPUT_POST, ['is_product_page' => FILTER_SANITIZE_STRING]); |
|
780 | + $should_show_itemized_view = ! isset($product_view_options['is_product_page']) ?: filter_var($product_view_options['is_product_page'], FILTER_VALIDATE_BOOLEAN); |
|
781 | 781 | |
782 | - $data = $this->get_shipping_options( $shipping_address, $should_show_itemized_view ); |
|
783 | - wp_send_json( $data ); |
|
782 | + $data = $this->get_shipping_options($shipping_address, $should_show_itemized_view); |
|
783 | + wp_send_json($data); |
|
784 | 784 | } |
785 | 785 | |
786 | 786 | /** |
@@ -792,66 +792,66 @@ discard block |
||
792 | 792 | * @return array Shipping options data. |
793 | 793 | * phpcs:ignore Squiz.Commenting.FunctionCommentThrowTag |
794 | 794 | */ |
795 | - public function get_shipping_options( $shipping_address, $itemized_display_items = false ) { |
|
795 | + public function get_shipping_options($shipping_address, $itemized_display_items = false) { |
|
796 | 796 | try { |
797 | 797 | // Set the shipping options. |
798 | 798 | $data = array(); |
799 | 799 | |
800 | 800 | // Remember current shipping method before resetting. |
801 | - $chosen_shipping_methods = WC()->session->get( 'chosen_shipping_methods' ); |
|
802 | - $this->calculate_shipping( apply_filters( 'wc_stripe_payment_request_shipping_posted_values', $shipping_address ) ); |
|
801 | + $chosen_shipping_methods = WC()->session->get('chosen_shipping_methods'); |
|
802 | + $this->calculate_shipping(apply_filters('wc_stripe_payment_request_shipping_posted_values', $shipping_address)); |
|
803 | 803 | |
804 | 804 | $packages = WC()->shipping->get_packages(); |
805 | 805 | |
806 | - if ( ! empty( $packages ) && WC()->customer->has_calculated_shipping() ) { |
|
807 | - foreach ( $packages as $package_key => $package ) { |
|
808 | - if ( empty( $package['rates'] ) ) { |
|
809 | - throw new Exception( __( 'Unable to find shipping method for address.', 'woocommerce-gateway-stripe' ) ); |
|
806 | + if ( ! empty($packages) && WC()->customer->has_calculated_shipping()) { |
|
807 | + foreach ($packages as $package_key => $package) { |
|
808 | + if (empty($package['rates'])) { |
|
809 | + throw new Exception(__('Unable to find shipping method for address.', 'woocommerce-gateway-stripe')); |
|
810 | 810 | } |
811 | 811 | |
812 | - foreach ( $package['rates'] as $key => $rate ) { |
|
812 | + foreach ($package['rates'] as $key => $rate) { |
|
813 | 813 | $data['shipping_options'][] = array( |
814 | 814 | 'id' => $rate->id, |
815 | 815 | 'label' => $rate->label, |
816 | 816 | 'detail' => '', |
817 | - 'amount' => WC_Stripe_Helper::get_stripe_amount( $rate->cost ), |
|
817 | + 'amount' => WC_Stripe_Helper::get_stripe_amount($rate->cost), |
|
818 | 818 | ); |
819 | 819 | } |
820 | 820 | } |
821 | 821 | } else { |
822 | - throw new Exception( __( 'Unable to find shipping method for address.', 'woocommerce-gateway-stripe' ) ); |
|
822 | + throw new Exception(__('Unable to find shipping method for address.', 'woocommerce-gateway-stripe')); |
|
823 | 823 | } |
824 | 824 | |
825 | 825 | // The first shipping option is automatically applied on the client. |
826 | 826 | // Keep chosen shipping method by sorting shipping options if the method still available for new address. |
827 | 827 | // Fallback to the first available shipping method. |
828 | - if ( isset( $data['shipping_options'][0] ) ) { |
|
829 | - if ( isset( $chosen_shipping_methods[0] ) ) { |
|
828 | + if (isset($data['shipping_options'][0])) { |
|
829 | + if (isset($chosen_shipping_methods[0])) { |
|
830 | 830 | $chosen_method_id = $chosen_shipping_methods[0]; |
831 | - $compare_shipping_options = function ( $a, $b ) use ( $chosen_method_id ) { |
|
832 | - if ( $a['id'] === $chosen_method_id ) { |
|
831 | + $compare_shipping_options = function($a, $b) use ($chosen_method_id) { |
|
832 | + if ($a['id'] === $chosen_method_id) { |
|
833 | 833 | return -1; |
834 | 834 | } |
835 | 835 | |
836 | - if ( $b['id'] === $chosen_method_id ) { |
|
836 | + if ($b['id'] === $chosen_method_id) { |
|
837 | 837 | return 1; |
838 | 838 | } |
839 | 839 | |
840 | 840 | return 0; |
841 | 841 | }; |
842 | - usort( $data['shipping_options'], $compare_shipping_options ); |
|
842 | + usort($data['shipping_options'], $compare_shipping_options); |
|
843 | 843 | } |
844 | 844 | |
845 | 845 | $first_shipping_method_id = $data['shipping_options'][0]['id']; |
846 | - $this->update_shipping_method( [ $first_shipping_method_id ] ); |
|
846 | + $this->update_shipping_method([$first_shipping_method_id]); |
|
847 | 847 | } |
848 | 848 | |
849 | 849 | WC()->cart->calculate_totals(); |
850 | 850 | |
851 | - $data += $this->build_display_items( $itemized_display_items ); |
|
851 | + $data += $this->build_display_items($itemized_display_items); |
|
852 | 852 | $data['result'] = 'success'; |
853 | - } catch ( Exception $e ) { |
|
854 | - $data += $this->build_display_items( $itemized_display_items ); |
|
853 | + } catch (Exception $e) { |
|
854 | + $data += $this->build_display_items($itemized_display_items); |
|
855 | 855 | $data['result'] = 'invalid_shipping_address'; |
856 | 856 | } |
857 | 857 | |
@@ -862,25 +862,25 @@ discard block |
||
862 | 862 | * Update shipping method. |
863 | 863 | */ |
864 | 864 | public function ajax_update_shipping_method() { |
865 | - check_ajax_referer( 'wc-stripe-update-shipping-method', 'security' ); |
|
865 | + check_ajax_referer('wc-stripe-update-shipping-method', 'security'); |
|
866 | 866 | |
867 | - if ( ! defined( 'WOOCOMMERCE_CART' ) ) { |
|
868 | - define( 'WOOCOMMERCE_CART', true ); |
|
867 | + if ( ! defined('WOOCOMMERCE_CART')) { |
|
868 | + define('WOOCOMMERCE_CART', true); |
|
869 | 869 | } |
870 | 870 | |
871 | - $shipping_methods = filter_input( INPUT_POST, 'shipping_method', FILTER_DEFAULT, FILTER_REQUIRE_ARRAY ); |
|
872 | - $this->update_shipping_method( $shipping_methods ); |
|
871 | + $shipping_methods = filter_input(INPUT_POST, 'shipping_method', FILTER_DEFAULT, FILTER_REQUIRE_ARRAY); |
|
872 | + $this->update_shipping_method($shipping_methods); |
|
873 | 873 | |
874 | 874 | WC()->cart->calculate_totals(); |
875 | 875 | |
876 | - $product_view_options = filter_input_array( INPUT_POST, [ 'is_product_page' => FILTER_SANITIZE_STRING ] ); |
|
877 | - $should_show_itemized_view = ! isset( $product_view_options['is_product_page'] ) ?: filter_var( $product_view_options['is_product_page'], FILTER_VALIDATE_BOOLEAN ); |
|
876 | + $product_view_options = filter_input_array(INPUT_POST, ['is_product_page' => FILTER_SANITIZE_STRING]); |
|
877 | + $should_show_itemized_view = ! isset($product_view_options['is_product_page']) ?: filter_var($product_view_options['is_product_page'], FILTER_VALIDATE_BOOLEAN); |
|
878 | 878 | |
879 | 879 | $data = array(); |
880 | - $data += $this->build_display_items( $should_show_itemized_view ); |
|
880 | + $data += $this->build_display_items($should_show_itemized_view); |
|
881 | 881 | $data['result'] = 'success'; |
882 | 882 | |
883 | - wp_send_json( $data ); |
|
883 | + wp_send_json($data); |
|
884 | 884 | } |
885 | 885 | |
886 | 886 | /** |
@@ -888,16 +888,16 @@ discard block |
||
888 | 888 | * |
889 | 889 | * @param array $shipping_methods Array of selected shipping methods ids. |
890 | 890 | */ |
891 | - public function update_shipping_method( $shipping_methods ) { |
|
892 | - $chosen_shipping_methods = WC()->session->get( 'chosen_shipping_methods' ); |
|
891 | + public function update_shipping_method($shipping_methods) { |
|
892 | + $chosen_shipping_methods = WC()->session->get('chosen_shipping_methods'); |
|
893 | 893 | |
894 | - if ( is_array( $shipping_methods ) ) { |
|
895 | - foreach ( $shipping_methods as $i => $value ) { |
|
896 | - $chosen_shipping_methods[ $i ] = wc_clean( $value ); |
|
894 | + if (is_array($shipping_methods)) { |
|
895 | + foreach ($shipping_methods as $i => $value) { |
|
896 | + $chosen_shipping_methods[$i] = wc_clean($value); |
|
897 | 897 | } |
898 | 898 | } |
899 | 899 | |
900 | - WC()->session->set( 'chosen_shipping_methods', $chosen_shipping_methods ); |
|
900 | + WC()->session->set('chosen_shipping_methods', $chosen_shipping_methods); |
|
901 | 901 | } |
902 | 902 | |
903 | 903 | /** |
@@ -908,38 +908,38 @@ discard block |
||
908 | 908 | * @return array $data |
909 | 909 | */ |
910 | 910 | public function ajax_get_selected_product_data() { |
911 | - check_ajax_referer( 'wc-stripe-get-selected-product-data', 'security' ); |
|
911 | + check_ajax_referer('wc-stripe-get-selected-product-data', 'security'); |
|
912 | 912 | |
913 | 913 | try { |
914 | - $product_id = absint( $_POST['product_id'] ); |
|
915 | - $qty = ! isset( $_POST['qty'] ) ? 1 : apply_filters( 'woocommerce_add_to_cart_quantity', absint( $_POST['qty'] ), $product_id ); |
|
916 | - $addon_value = isset( $_POST['addon_value'] ) ? max( floatval( $_POST['addon_value'] ), 0 ) : 0; |
|
917 | - $product = wc_get_product( $product_id ); |
|
914 | + $product_id = absint($_POST['product_id']); |
|
915 | + $qty = ! isset($_POST['qty']) ? 1 : apply_filters('woocommerce_add_to_cart_quantity', absint($_POST['qty']), $product_id); |
|
916 | + $addon_value = isset($_POST['addon_value']) ? max(floatval($_POST['addon_value']), 0) : 0; |
|
917 | + $product = wc_get_product($product_id); |
|
918 | 918 | $variation_id = null; |
919 | 919 | |
920 | - if ( ! is_a( $product, 'WC_Product' ) ) { |
|
921 | - throw new Exception( sprintf( __( 'Product with the ID (%d) cannot be found.', 'woocommerce-gateway-stripe' ), $product_id ) ); |
|
920 | + if ( ! is_a($product, 'WC_Product')) { |
|
921 | + throw new Exception(sprintf(__('Product with the ID (%d) cannot be found.', 'woocommerce-gateway-stripe'), $product_id)); |
|
922 | 922 | } |
923 | 923 | |
924 | - if ( 'variable' === $product->get_type() && isset( $_POST['attributes'] ) ) { |
|
925 | - $attributes = wc_clean( wp_unslash( $_POST['attributes'] ) ); |
|
924 | + if ('variable' === $product->get_type() && isset($_POST['attributes'])) { |
|
925 | + $attributes = wc_clean(wp_unslash($_POST['attributes'])); |
|
926 | 926 | |
927 | - $data_store = WC_Data_Store::load( 'product' ); |
|
928 | - $variation_id = $data_store->find_matching_product_variation( $product, $attributes ); |
|
927 | + $data_store = WC_Data_Store::load('product'); |
|
928 | + $variation_id = $data_store->find_matching_product_variation($product, $attributes); |
|
929 | 929 | |
930 | - if ( ! empty( $variation_id ) ) { |
|
931 | - $product = wc_get_product( $variation_id ); |
|
930 | + if ( ! empty($variation_id)) { |
|
931 | + $product = wc_get_product($variation_id); |
|
932 | 932 | } |
933 | 933 | } |
934 | 934 | |
935 | 935 | // Force quantity to 1 if sold individually and check for existing item in cart. |
936 | - if ( $product->is_sold_individually() ) { |
|
937 | - $qty = apply_filters( 'wc_stripe_payment_request_add_to_cart_sold_individually_quantity', 1, $qty, $product_id, $variation_id ); |
|
936 | + if ($product->is_sold_individually()) { |
|
937 | + $qty = apply_filters('wc_stripe_payment_request_add_to_cart_sold_individually_quantity', 1, $qty, $product_id, $variation_id); |
|
938 | 938 | } |
939 | 939 | |
940 | - if ( ! $product->has_enough_stock( $qty ) ) { |
|
940 | + if ( ! $product->has_enough_stock($qty)) { |
|
941 | 941 | /* translators: 1: product name 2: quantity in stock */ |
942 | - throw new Exception( sprintf( __( 'You cannot add that amount of "%1$s"; to the cart because there is not enough stock (%2$s remaining).', 'woocommerce-gateway-stripe' ), $product->get_name(), wc_format_stock_quantity_for_display( $product->get_stock_quantity(), $product ) ) ); |
|
942 | + throw new Exception(sprintf(__('You cannot add that amount of "%1$s"; to the cart because there is not enough stock (%2$s remaining).', 'woocommerce-gateway-stripe'), $product->get_name(), wc_format_stock_quantity_for_display($product->get_stock_quantity(), $product))); |
|
943 | 943 | } |
944 | 944 | |
945 | 945 | $total = $qty * $product->get_price() + $addon_value; |
@@ -951,27 +951,27 @@ discard block |
||
951 | 951 | |
952 | 952 | $items[] = array( |
953 | 953 | 'label' => $product->get_name() . $quantity_label, |
954 | - 'amount' => WC_Stripe_Helper::get_stripe_amount( $total ), |
|
954 | + 'amount' => WC_Stripe_Helper::get_stripe_amount($total), |
|
955 | 955 | ); |
956 | 956 | |
957 | - if ( wc_tax_enabled() ) { |
|
957 | + if (wc_tax_enabled()) { |
|
958 | 958 | $items[] = array( |
959 | - 'label' => __( 'Tax', 'woocommerce-gateway-stripe' ), |
|
959 | + 'label' => __('Tax', 'woocommerce-gateway-stripe'), |
|
960 | 960 | 'amount' => 0, |
961 | 961 | 'pending' => true, |
962 | 962 | ); |
963 | 963 | } |
964 | 964 | |
965 | - if ( wc_shipping_enabled() && $product->needs_shipping() ) { |
|
965 | + if (wc_shipping_enabled() && $product->needs_shipping()) { |
|
966 | 966 | $items[] = array( |
967 | - 'label' => __( 'Shipping', 'woocommerce-gateway-stripe' ), |
|
967 | + 'label' => __('Shipping', 'woocommerce-gateway-stripe'), |
|
968 | 968 | 'amount' => 0, |
969 | 969 | 'pending' => true, |
970 | 970 | ); |
971 | 971 | |
972 | 972 | $data['shippingOptions'] = array( |
973 | 973 | 'id' => 'pending', |
974 | - 'label' => __( 'Pending', 'woocommerce-gateway-stripe' ), |
|
974 | + 'label' => __('Pending', 'woocommerce-gateway-stripe'), |
|
975 | 975 | 'detail' => '', |
976 | 976 | 'amount' => 0, |
977 | 977 | ); |
@@ -980,17 +980,17 @@ discard block |
||
980 | 980 | $data['displayItems'] = $items; |
981 | 981 | $data['total'] = array( |
982 | 982 | 'label' => $this->total_label, |
983 | - 'amount' => WC_Stripe_Helper::get_stripe_amount( $total ), |
|
983 | + 'amount' => WC_Stripe_Helper::get_stripe_amount($total), |
|
984 | 984 | 'pending' => true, |
985 | 985 | ); |
986 | 986 | |
987 | - $data['requestShipping'] = ( wc_shipping_enabled() && $product->needs_shipping() ); |
|
988 | - $data['currency'] = strtolower( get_woocommerce_currency() ); |
|
989 | - $data['country_code'] = substr( get_option( 'woocommerce_default_country' ), 0, 2 ); |
|
987 | + $data['requestShipping'] = (wc_shipping_enabled() && $product->needs_shipping()); |
|
988 | + $data['currency'] = strtolower(get_woocommerce_currency()); |
|
989 | + $data['country_code'] = substr(get_option('woocommerce_default_country'), 0, 2); |
|
990 | 990 | |
991 | - wp_send_json( $data ); |
|
992 | - } catch ( Exception $e ) { |
|
993 | - wp_send_json( array( 'error' => wp_strip_all_tags( $e->getMessage() ) ) ); |
|
991 | + wp_send_json($data); |
|
992 | + } catch (Exception $e) { |
|
993 | + wp_send_json(array('error' => wp_strip_all_tags($e->getMessage()))); |
|
994 | 994 | } |
995 | 995 | } |
996 | 996 | |
@@ -1002,33 +1002,33 @@ discard block |
||
1002 | 1002 | * @return array $data |
1003 | 1003 | */ |
1004 | 1004 | public function ajax_add_to_cart() { |
1005 | - check_ajax_referer( 'wc-stripe-add-to-cart', 'security' ); |
|
1005 | + check_ajax_referer('wc-stripe-add-to-cart', 'security'); |
|
1006 | 1006 | |
1007 | - if ( ! defined( 'WOOCOMMERCE_CART' ) ) { |
|
1008 | - define( 'WOOCOMMERCE_CART', true ); |
|
1007 | + if ( ! defined('WOOCOMMERCE_CART')) { |
|
1008 | + define('WOOCOMMERCE_CART', true); |
|
1009 | 1009 | } |
1010 | 1010 | |
1011 | 1011 | WC()->shipping->reset_shipping(); |
1012 | 1012 | |
1013 | - $product_id = absint( $_POST['product_id'] ); |
|
1014 | - $qty = ! isset( $_POST['qty'] ) ? 1 : absint( $_POST['qty'] ); |
|
1015 | - $product = wc_get_product( $product_id ); |
|
1013 | + $product_id = absint($_POST['product_id']); |
|
1014 | + $qty = ! isset($_POST['qty']) ? 1 : absint($_POST['qty']); |
|
1015 | + $product = wc_get_product($product_id); |
|
1016 | 1016 | $product_type = $product->get_type(); |
1017 | 1017 | |
1018 | 1018 | // First empty the cart to prevent wrong calculation. |
1019 | 1019 | WC()->cart->empty_cart(); |
1020 | 1020 | |
1021 | - if ( ( 'variable' === $product_type || 'variable-subscription' === $product_type ) && isset( $_POST['attributes'] ) ) { |
|
1022 | - $attributes = wc_clean( wp_unslash( $_POST['attributes'] ) ); |
|
1021 | + if (('variable' === $product_type || 'variable-subscription' === $product_type) && isset($_POST['attributes'])) { |
|
1022 | + $attributes = wc_clean(wp_unslash($_POST['attributes'])); |
|
1023 | 1023 | |
1024 | - $data_store = WC_Data_Store::load( 'product' ); |
|
1025 | - $variation_id = $data_store->find_matching_product_variation( $product, $attributes ); |
|
1024 | + $data_store = WC_Data_Store::load('product'); |
|
1025 | + $variation_id = $data_store->find_matching_product_variation($product, $attributes); |
|
1026 | 1026 | |
1027 | - WC()->cart->add_to_cart( $product->get_id(), $qty, $variation_id, $attributes ); |
|
1027 | + WC()->cart->add_to_cart($product->get_id(), $qty, $variation_id, $attributes); |
|
1028 | 1028 | } |
1029 | 1029 | |
1030 | - if ( 'simple' === $product_type || 'subscription' === $product_type ) { |
|
1031 | - WC()->cart->add_to_cart( $product->get_id(), $qty ); |
|
1030 | + if ('simple' === $product_type || 'subscription' === $product_type) { |
|
1031 | + WC()->cart->add_to_cart($product->get_id(), $qty); |
|
1032 | 1032 | } |
1033 | 1033 | |
1034 | 1034 | WC()->cart->calculate_totals(); |
@@ -1037,7 +1037,7 @@ discard block |
||
1037 | 1037 | $data += $this->build_display_items(); |
1038 | 1038 | $data['result'] = 'success'; |
1039 | 1039 | |
1040 | - wp_send_json( $data ); |
|
1040 | + wp_send_json($data); |
|
1041 | 1041 | } |
1042 | 1042 | |
1043 | 1043 | /** |
@@ -1050,31 +1050,31 @@ discard block |
||
1050 | 1050 | * @version 4.0.0 |
1051 | 1051 | */ |
1052 | 1052 | public function normalize_state() { |
1053 | - $billing_country = ! empty( $_POST['billing_country'] ) ? wc_clean( $_POST['billing_country'] ) : ''; |
|
1054 | - $shipping_country = ! empty( $_POST['shipping_country'] ) ? wc_clean( $_POST['shipping_country'] ) : ''; |
|
1055 | - $billing_state = ! empty( $_POST['billing_state'] ) ? wc_clean( $_POST['billing_state'] ) : ''; |
|
1056 | - $shipping_state = ! empty( $_POST['shipping_state'] ) ? wc_clean( $_POST['shipping_state'] ) : ''; |
|
1053 | + $billing_country = ! empty($_POST['billing_country']) ? wc_clean($_POST['billing_country']) : ''; |
|
1054 | + $shipping_country = ! empty($_POST['shipping_country']) ? wc_clean($_POST['shipping_country']) : ''; |
|
1055 | + $billing_state = ! empty($_POST['billing_state']) ? wc_clean($_POST['billing_state']) : ''; |
|
1056 | + $shipping_state = ! empty($_POST['shipping_state']) ? wc_clean($_POST['shipping_state']) : ''; |
|
1057 | 1057 | |
1058 | - if ( $billing_state && $billing_country ) { |
|
1059 | - $valid_states = WC()->countries->get_states( $billing_country ); |
|
1058 | + if ($billing_state && $billing_country) { |
|
1059 | + $valid_states = WC()->countries->get_states($billing_country); |
|
1060 | 1060 | |
1061 | 1061 | // Valid states found for country. |
1062 | - if ( ! empty( $valid_states ) && is_array( $valid_states ) && sizeof( $valid_states ) > 0 ) { |
|
1063 | - foreach ( $valid_states as $state_abbr => $state ) { |
|
1064 | - if ( preg_match( '/' . preg_quote( $state ) . '/i', $billing_state ) ) { |
|
1062 | + if ( ! empty($valid_states) && is_array($valid_states) && sizeof($valid_states) > 0) { |
|
1063 | + foreach ($valid_states as $state_abbr => $state) { |
|
1064 | + if (preg_match('/' . preg_quote($state) . '/i', $billing_state)) { |
|
1065 | 1065 | $_POST['billing_state'] = $state_abbr; |
1066 | 1066 | } |
1067 | 1067 | } |
1068 | 1068 | } |
1069 | 1069 | } |
1070 | 1070 | |
1071 | - if ( $shipping_state && $shipping_country ) { |
|
1072 | - $valid_states = WC()->countries->get_states( $shipping_country ); |
|
1071 | + if ($shipping_state && $shipping_country) { |
|
1072 | + $valid_states = WC()->countries->get_states($shipping_country); |
|
1073 | 1073 | |
1074 | 1074 | // Valid states found for country. |
1075 | - if ( ! empty( $valid_states ) && is_array( $valid_states ) && sizeof( $valid_states ) > 0 ) { |
|
1076 | - foreach ( $valid_states as $state_abbr => $state ) { |
|
1077 | - if ( preg_match( '/' . preg_quote( $state ) . '/i', $shipping_state ) ) { |
|
1075 | + if ( ! empty($valid_states) && is_array($valid_states) && sizeof($valid_states) > 0) { |
|
1076 | + foreach ($valid_states as $state_abbr => $state) { |
|
1077 | + if (preg_match('/' . preg_quote($state) . '/i', $shipping_state)) { |
|
1078 | 1078 | $_POST['shipping_state'] = $state_abbr; |
1079 | 1079 | } |
1080 | 1080 | } |
@@ -1089,19 +1089,19 @@ discard block |
||
1089 | 1089 | * @version 4.0.0 |
1090 | 1090 | */ |
1091 | 1091 | public function ajax_create_order() { |
1092 | - if ( WC()->cart->is_empty() ) { |
|
1093 | - wp_send_json_error( __( 'Empty cart', 'woocommerce-gateway-stripe' ) ); |
|
1092 | + if (WC()->cart->is_empty()) { |
|
1093 | + wp_send_json_error(__('Empty cart', 'woocommerce-gateway-stripe')); |
|
1094 | 1094 | } |
1095 | 1095 | |
1096 | - if ( ! defined( 'WOOCOMMERCE_CHECKOUT' ) ) { |
|
1097 | - define( 'WOOCOMMERCE_CHECKOUT', true ); |
|
1096 | + if ( ! defined('WOOCOMMERCE_CHECKOUT')) { |
|
1097 | + define('WOOCOMMERCE_CHECKOUT', true); |
|
1098 | 1098 | } |
1099 | 1099 | |
1100 | 1100 | $this->normalize_state(); |
1101 | 1101 | |
1102 | 1102 | WC()->checkout()->process_checkout(); |
1103 | 1103 | |
1104 | - die( 0 ); |
|
1104 | + die(0); |
|
1105 | 1105 | } |
1106 | 1106 | |
1107 | 1107 | /** |
@@ -1112,38 +1112,38 @@ discard block |
||
1112 | 1112 | * @since 3.1.0 |
1113 | 1113 | * @version 4.0.0 |
1114 | 1114 | */ |
1115 | - protected function calculate_shipping( $address = array() ) { |
|
1115 | + protected function calculate_shipping($address = array()) { |
|
1116 | 1116 | $country = $address['country']; |
1117 | 1117 | $state = $address['state']; |
1118 | 1118 | $postcode = $address['postcode']; |
1119 | 1119 | $city = $address['city']; |
1120 | 1120 | $address_1 = $address['address']; |
1121 | 1121 | $address_2 = $address['address_2']; |
1122 | - $wc_states = WC()->countries->get_states( $country ); |
|
1122 | + $wc_states = WC()->countries->get_states($country); |
|
1123 | 1123 | |
1124 | 1124 | /** |
1125 | 1125 | * In some versions of Chrome, state can be a full name. So we need |
1126 | 1126 | * to convert that to abbreviation as WC is expecting that. |
1127 | 1127 | */ |
1128 | - if ( 2 < strlen( $state ) && ! empty( $wc_states ) && ! isset( $wc_states[ $state ] ) ) { |
|
1129 | - $state = array_search( ucwords( strtolower( $state ) ), $wc_states, true ); |
|
1128 | + if (2 < strlen($state) && ! empty($wc_states) && ! isset($wc_states[$state])) { |
|
1129 | + $state = array_search(ucwords(strtolower($state)), $wc_states, true); |
|
1130 | 1130 | } |
1131 | 1131 | |
1132 | 1132 | WC()->shipping->reset_shipping(); |
1133 | 1133 | |
1134 | - if ( $postcode && WC_Validation::is_postcode( $postcode, $country ) ) { |
|
1135 | - $postcode = wc_format_postcode( $postcode, $country ); |
|
1134 | + if ($postcode && WC_Validation::is_postcode($postcode, $country)) { |
|
1135 | + $postcode = wc_format_postcode($postcode, $country); |
|
1136 | 1136 | } |
1137 | 1137 | |
1138 | - if ( $country ) { |
|
1139 | - WC()->customer->set_location( $country, $state, $postcode, $city ); |
|
1140 | - WC()->customer->set_shipping_location( $country, $state, $postcode, $city ); |
|
1138 | + if ($country) { |
|
1139 | + WC()->customer->set_location($country, $state, $postcode, $city); |
|
1140 | + WC()->customer->set_shipping_location($country, $state, $postcode, $city); |
|
1141 | 1141 | } else { |
1142 | 1142 | WC()->customer->set_billing_address_to_base(); |
1143 | 1143 | WC()->customer->set_shipping_address_to_base(); |
1144 | 1144 | } |
1145 | 1145 | |
1146 | - WC()->customer->set_calculated_shipping( true ); |
|
1146 | + WC()->customer->set_calculated_shipping(true); |
|
1147 | 1147 | WC()->customer->save(); |
1148 | 1148 | |
1149 | 1149 | $packages = array(); |
@@ -1159,17 +1159,17 @@ discard block |
||
1159 | 1159 | $packages[0]['destination']['address'] = $address_1; |
1160 | 1160 | $packages[0]['destination']['address_2'] = $address_2; |
1161 | 1161 | |
1162 | - foreach ( WC()->cart->get_cart() as $item ) { |
|
1163 | - if ( $item['data']->needs_shipping() ) { |
|
1164 | - if ( isset( $item['line_total'] ) ) { |
|
1162 | + foreach (WC()->cart->get_cart() as $item) { |
|
1163 | + if ($item['data']->needs_shipping()) { |
|
1164 | + if (isset($item['line_total'])) { |
|
1165 | 1165 | $packages[0]['contents_cost'] += $item['line_total']; |
1166 | 1166 | } |
1167 | 1167 | } |
1168 | 1168 | } |
1169 | 1169 | |
1170 | - $packages = apply_filters( 'woocommerce_cart_shipping_packages', $packages ); |
|
1170 | + $packages = apply_filters('woocommerce_cart_shipping_packages', $packages); |
|
1171 | 1171 | |
1172 | - WC()->shipping->calculate_shipping( $packages ); |
|
1172 | + WC()->shipping->calculate_shipping($packages); |
|
1173 | 1173 | } |
1174 | 1174 | |
1175 | 1175 | /** |
@@ -1178,19 +1178,19 @@ discard block |
||
1178 | 1178 | * @since 3.1.0 |
1179 | 1179 | * @version 4.0.0 |
1180 | 1180 | */ |
1181 | - protected function build_shipping_methods( $shipping_methods ) { |
|
1182 | - if ( empty( $shipping_methods ) ) { |
|
1181 | + protected function build_shipping_methods($shipping_methods) { |
|
1182 | + if (empty($shipping_methods)) { |
|
1183 | 1183 | return array(); |
1184 | 1184 | } |
1185 | 1185 | |
1186 | 1186 | $shipping = array(); |
1187 | 1187 | |
1188 | - foreach ( $shipping_methods as $method ) { |
|
1188 | + foreach ($shipping_methods as $method) { |
|
1189 | 1189 | $shipping[] = array( |
1190 | 1190 | 'id' => $method['id'], |
1191 | 1191 | 'label' => $method['label'], |
1192 | 1192 | 'detail' => '', |
1193 | - 'amount' => WC_Stripe_Helper::get_stripe_amount( $method['amount']['value'] ), |
|
1193 | + 'amount' => WC_Stripe_Helper::get_stripe_amount($method['amount']['value']), |
|
1194 | 1194 | ); |
1195 | 1195 | } |
1196 | 1196 | |
@@ -1203,9 +1203,9 @@ discard block |
||
1203 | 1203 | * @since 3.1.0 |
1204 | 1204 | * @version 4.0.0 |
1205 | 1205 | */ |
1206 | - protected function build_display_items( $itemized_display_items = false ) { |
|
1207 | - if ( ! defined( 'WOOCOMMERCE_CART' ) ) { |
|
1208 | - define( 'WOOCOMMERCE_CART', true ); |
|
1206 | + protected function build_display_items($itemized_display_items = false) { |
|
1207 | + if ( ! defined('WOOCOMMERCE_CART')) { |
|
1208 | + define('WOOCOMMERCE_CART', true); |
|
1209 | 1209 | } |
1210 | 1210 | |
1211 | 1211 | $items = array(); |
@@ -1213,8 +1213,8 @@ discard block |
||
1213 | 1213 | $discounts = 0; |
1214 | 1214 | |
1215 | 1215 | // Default show only subtotal instead of itemization. |
1216 | - if ( ! apply_filters( 'wc_stripe_payment_request_hide_itemization', true ) || $itemized_display_items ) { |
|
1217 | - foreach ( WC()->cart->get_cart() as $cart_item_key => $cart_item ) { |
|
1216 | + if ( ! apply_filters('wc_stripe_payment_request_hide_itemization', true) || $itemized_display_items) { |
|
1217 | + foreach (WC()->cart->get_cart() as $cart_item_key => $cart_item) { |
|
1218 | 1218 | $amount = $cart_item['line_subtotal']; |
1219 | 1219 | $subtotal += $cart_item['line_subtotal']; |
1220 | 1220 | $quantity_label = 1 < $cart_item['quantity'] ? ' (x' . $cart_item['quantity'] . ')' : ''; |
@@ -1223,61 +1223,61 @@ discard block |
||
1223 | 1223 | |
1224 | 1224 | $item = array( |
1225 | 1225 | 'label' => $product_name . $quantity_label, |
1226 | - 'amount' => WC_Stripe_Helper::get_stripe_amount( $amount ), |
|
1226 | + 'amount' => WC_Stripe_Helper::get_stripe_amount($amount), |
|
1227 | 1227 | ); |
1228 | 1228 | |
1229 | 1229 | $items[] = $item; |
1230 | 1230 | } |
1231 | 1231 | } |
1232 | 1232 | |
1233 | - if ( version_compare( WC_VERSION, '3.2', '<' ) ) { |
|
1234 | - $discounts = wc_format_decimal( WC()->cart->get_cart_discount_total(), WC()->cart->dp ); |
|
1233 | + if (version_compare(WC_VERSION, '3.2', '<')) { |
|
1234 | + $discounts = wc_format_decimal(WC()->cart->get_cart_discount_total(), WC()->cart->dp); |
|
1235 | 1235 | } else { |
1236 | - $applied_coupons = array_values( WC()->cart->get_coupon_discount_totals() ); |
|
1236 | + $applied_coupons = array_values(WC()->cart->get_coupon_discount_totals()); |
|
1237 | 1237 | |
1238 | - foreach ( $applied_coupons as $amount ) { |
|
1238 | + foreach ($applied_coupons as $amount) { |
|
1239 | 1239 | $discounts += (float) $amount; |
1240 | 1240 | } |
1241 | 1241 | } |
1242 | 1242 | |
1243 | - $discounts = wc_format_decimal( $discounts, WC()->cart->dp ); |
|
1244 | - $tax = wc_format_decimal( WC()->cart->tax_total + WC()->cart->shipping_tax_total, WC()->cart->dp ); |
|
1245 | - $shipping = wc_format_decimal( WC()->cart->shipping_total, WC()->cart->dp ); |
|
1246 | - $items_total = wc_format_decimal( WC()->cart->cart_contents_total, WC()->cart->dp ) + $discounts; |
|
1247 | - $order_total = version_compare( WC_VERSION, '3.2', '<' ) ? wc_format_decimal( $items_total + $tax + $shipping - $discounts, WC()->cart->dp ) : WC()->cart->get_total( false ); |
|
1243 | + $discounts = wc_format_decimal($discounts, WC()->cart->dp); |
|
1244 | + $tax = wc_format_decimal(WC()->cart->tax_total + WC()->cart->shipping_tax_total, WC()->cart->dp); |
|
1245 | + $shipping = wc_format_decimal(WC()->cart->shipping_total, WC()->cart->dp); |
|
1246 | + $items_total = wc_format_decimal(WC()->cart->cart_contents_total, WC()->cart->dp) + $discounts; |
|
1247 | + $order_total = version_compare(WC_VERSION, '3.2', '<') ? wc_format_decimal($items_total + $tax + $shipping - $discounts, WC()->cart->dp) : WC()->cart->get_total(false); |
|
1248 | 1248 | |
1249 | - if ( wc_tax_enabled() ) { |
|
1249 | + if (wc_tax_enabled()) { |
|
1250 | 1250 | $items[] = array( |
1251 | - 'label' => esc_html( __( 'Tax', 'woocommerce-gateway-stripe' ) ), |
|
1252 | - 'amount' => WC_Stripe_Helper::get_stripe_amount( $tax ), |
|
1251 | + 'label' => esc_html(__('Tax', 'woocommerce-gateway-stripe')), |
|
1252 | + 'amount' => WC_Stripe_Helper::get_stripe_amount($tax), |
|
1253 | 1253 | ); |
1254 | 1254 | } |
1255 | 1255 | |
1256 | - if ( WC()->cart->needs_shipping() ) { |
|
1256 | + if (WC()->cart->needs_shipping()) { |
|
1257 | 1257 | $items[] = array( |
1258 | - 'label' => esc_html( __( 'Shipping', 'woocommerce-gateway-stripe' ) ), |
|
1259 | - 'amount' => WC_Stripe_Helper::get_stripe_amount( $shipping ), |
|
1258 | + 'label' => esc_html(__('Shipping', 'woocommerce-gateway-stripe')), |
|
1259 | + 'amount' => WC_Stripe_Helper::get_stripe_amount($shipping), |
|
1260 | 1260 | ); |
1261 | 1261 | } |
1262 | 1262 | |
1263 | - if ( WC()->cart->has_discount() ) { |
|
1263 | + if (WC()->cart->has_discount()) { |
|
1264 | 1264 | $items[] = array( |
1265 | - 'label' => esc_html( __( 'Discount', 'woocommerce-gateway-stripe' ) ), |
|
1266 | - 'amount' => WC_Stripe_Helper::get_stripe_amount( $discounts ), |
|
1265 | + 'label' => esc_html(__('Discount', 'woocommerce-gateway-stripe')), |
|
1266 | + 'amount' => WC_Stripe_Helper::get_stripe_amount($discounts), |
|
1267 | 1267 | ); |
1268 | 1268 | } |
1269 | 1269 | |
1270 | - if ( version_compare( WC_VERSION, '3.2', '<' ) ) { |
|
1270 | + if (version_compare(WC_VERSION, '3.2', '<')) { |
|
1271 | 1271 | $cart_fees = WC()->cart->fees; |
1272 | 1272 | } else { |
1273 | 1273 | $cart_fees = WC()->cart->get_fees(); |
1274 | 1274 | } |
1275 | 1275 | |
1276 | 1276 | // Include fees and taxes as display items. |
1277 | - foreach ( $cart_fees as $key => $fee ) { |
|
1277 | + foreach ($cart_fees as $key => $fee) { |
|
1278 | 1278 | $items[] = array( |
1279 | 1279 | 'label' => $fee->name, |
1280 | - 'amount' => WC_Stripe_Helper::get_stripe_amount( $fee->amount ), |
|
1280 | + 'amount' => WC_Stripe_Helper::get_stripe_amount($fee->amount), |
|
1281 | 1281 | ); |
1282 | 1282 | } |
1283 | 1283 | |
@@ -1285,7 +1285,7 @@ discard block |
||
1285 | 1285 | 'displayItems' => $items, |
1286 | 1286 | 'total' => array( |
1287 | 1287 | 'label' => $this->total_label, |
1288 | - 'amount' => max( 0, apply_filters( 'woocommerce_stripe_calculated_total', WC_Stripe_Helper::get_stripe_amount( $order_total ), $order_total, WC()->cart ) ), |
|
1288 | + 'amount' => max(0, apply_filters('woocommerce_stripe_calculated_total', WC_Stripe_Helper::get_stripe_amount($order_total), $order_total, WC()->cart)), |
|
1289 | 1289 | 'pending' => false, |
1290 | 1290 | ), |
1291 | 1291 | ); |
@@ -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 | /** |
@@ -83,20 +83,20 @@ discard block |
||
83 | 83 | * @since 4.1.11 |
84 | 84 | */ |
85 | 85 | public function display_update_subs_payment_checkout() { |
86 | - $subs_statuses = apply_filters( 'wc_stripe_update_subs_payment_method_card_statuses', array( 'active' ) ); |
|
86 | + $subs_statuses = apply_filters('wc_stripe_update_subs_payment_method_card_statuses', array('active')); |
|
87 | 87 | if ( |
88 | - apply_filters( 'wc_stripe_display_update_subs_payment_method_card_checkbox', true ) && |
|
89 | - wcs_user_has_subscription( get_current_user_id(), '', $subs_statuses ) && |
|
88 | + apply_filters('wc_stripe_display_update_subs_payment_method_card_checkbox', true) && |
|
89 | + wcs_user_has_subscription(get_current_user_id(), '', $subs_statuses) && |
|
90 | 90 | is_add_payment_method_page() |
91 | 91 | ) { |
92 | - $label = esc_html( apply_filters( 'wc_stripe_save_to_subs_text', __( 'Update the Payment Method used for all of my active subscriptions.', 'woocommerce-gateway-stripe' ) ) ); |
|
93 | - $id = sprintf( 'wc-%1$s-update-subs-payment-method-card', $this->id ); |
|
92 | + $label = esc_html(apply_filters('wc_stripe_save_to_subs_text', __('Update the Payment Method used for all of my active subscriptions.', 'woocommerce-gateway-stripe'))); |
|
93 | + $id = sprintf('wc-%1$s-update-subs-payment-method-card', $this->id); |
|
94 | 94 | woocommerce_form_field( |
95 | 95 | $id, |
96 | 96 | array( |
97 | 97 | 'type' => 'checkbox', |
98 | 98 | 'label' => $label, |
99 | - 'default' => apply_filters( 'wc_stripe_save_to_subs_checked', false ), |
|
99 | + 'default' => apply_filters('wc_stripe_save_to_subs_checked', false), |
|
100 | 100 | ) |
101 | 101 | ); |
102 | 102 | } |
@@ -109,19 +109,19 @@ discard block |
||
109 | 109 | * @param string $source_id |
110 | 110 | * @param object $source_object |
111 | 111 | */ |
112 | - public function handle_add_payment_method_success( $source_id, $source_object ) { |
|
113 | - if ( isset( $_POST[ 'wc-' . $this->id . '-update-subs-payment-method-card' ] ) ) { |
|
112 | + public function handle_add_payment_method_success($source_id, $source_object) { |
|
113 | + if (isset($_POST['wc-' . $this->id . '-update-subs-payment-method-card'])) { |
|
114 | 114 | $all_subs = wcs_get_users_subscriptions(); |
115 | - $subs_statuses = apply_filters( 'wc_stripe_update_subs_payment_method_card_statuses', array( 'active' ) ); |
|
116 | - $stripe_customer = new WC_Stripe_Customer( get_current_user_id() ); |
|
117 | - |
|
118 | - if ( ! empty( $all_subs ) ) { |
|
119 | - foreach ( $all_subs as $sub ) { |
|
120 | - if ( $sub->has_status( $subs_statuses ) ) { |
|
121 | - update_post_meta( $sub->get_id(), '_stripe_source_id', $source_id ); |
|
122 | - update_post_meta( $sub->get_id(), '_stripe_customer_id', $stripe_customer->get_id() ); |
|
123 | - update_post_meta( $sub->get_id(), '_payment_method', $this->id ); |
|
124 | - update_post_meta( $sub->get_id(), '_payment_method_title', $this->method_title ); |
|
115 | + $subs_statuses = apply_filters('wc_stripe_update_subs_payment_method_card_statuses', array('active')); |
|
116 | + $stripe_customer = new WC_Stripe_Customer(get_current_user_id()); |
|
117 | + |
|
118 | + if ( ! empty($all_subs)) { |
|
119 | + foreach ($all_subs as $sub) { |
|
120 | + if ($sub->has_status($subs_statuses)) { |
|
121 | + update_post_meta($sub->get_id(), '_stripe_source_id', $source_id); |
|
122 | + update_post_meta($sub->get_id(), '_stripe_customer_id', $stripe_customer->get_id()); |
|
123 | + update_post_meta($sub->get_id(), '_payment_method', $this->id); |
|
124 | + update_post_meta($sub->get_id(), '_payment_method_title', $this->method_title); |
|
125 | 125 | } |
126 | 126 | } |
127 | 127 | } |
@@ -135,24 +135,24 @@ discard block |
||
135 | 135 | * @since 4.1.11 Remove 3DS check as it is not needed. |
136 | 136 | * @param int $order_id |
137 | 137 | */ |
138 | - public function change_subs_payment_method( $order_id ) { |
|
138 | + public function change_subs_payment_method($order_id) { |
|
139 | 139 | try { |
140 | - $subscription = wc_get_order( $order_id ); |
|
141 | - $prepared_source = $this->prepare_source( get_current_user_id(), true ); |
|
140 | + $subscription = wc_get_order($order_id); |
|
141 | + $prepared_source = $this->prepare_source(get_current_user_id(), true); |
|
142 | 142 | |
143 | - $this->maybe_disallow_prepaid_card( $prepared_source ); |
|
144 | - $this->check_source( $prepared_source ); |
|
145 | - $this->save_source_to_order( $subscription, $prepared_source ); |
|
143 | + $this->maybe_disallow_prepaid_card($prepared_source); |
|
144 | + $this->check_source($prepared_source); |
|
145 | + $this->save_source_to_order($subscription, $prepared_source); |
|
146 | 146 | |
147 | - do_action( 'wc_stripe_change_subs_payment_method_success', $prepared_source->source, $prepared_source ); |
|
147 | + do_action('wc_stripe_change_subs_payment_method_success', $prepared_source->source, $prepared_source); |
|
148 | 148 | |
149 | 149 | return array( |
150 | 150 | 'result' => 'success', |
151 | - 'redirect' => $this->get_return_url( $subscription ), |
|
151 | + 'redirect' => $this->get_return_url($subscription), |
|
152 | 152 | ); |
153 | - } catch ( WC_Stripe_Exception $e ) { |
|
154 | - wc_add_notice( $e->getLocalizedMessage(), 'error' ); |
|
155 | - WC_Stripe_Logger::log( 'Error: ' . $e->getMessage() ); |
|
153 | + } catch (WC_Stripe_Exception $e) { |
|
154 | + wc_add_notice($e->getLocalizedMessage(), 'error'); |
|
155 | + WC_Stripe_Logger::log('Error: ' . $e->getMessage()); |
|
156 | 156 | } |
157 | 157 | } |
158 | 158 | |
@@ -161,16 +161,16 @@ discard block |
||
161 | 161 | * @param int $order_id |
162 | 162 | * @return array |
163 | 163 | */ |
164 | - public function process_payment( $order_id, $retry = true, $force_save_source = false, $previous_error = false, $use_order_source = false ) { |
|
165 | - if ( $this->has_subscription( $order_id ) ) { |
|
166 | - if ( $this->is_subs_change_payment() ) { |
|
167 | - return $this->change_subs_payment_method( $order_id ); |
|
164 | + public function process_payment($order_id, $retry = true, $force_save_source = false, $previous_error = false, $use_order_source = false) { |
|
165 | + if ($this->has_subscription($order_id)) { |
|
166 | + if ($this->is_subs_change_payment()) { |
|
167 | + return $this->change_subs_payment_method($order_id); |
|
168 | 168 | } |
169 | 169 | |
170 | 170 | // Regular payment with force customer enabled |
171 | - return parent::process_payment( $order_id, $retry, true, $previous_error, $use_order_source ); |
|
171 | + return parent::process_payment($order_id, $retry, true, $previous_error, $use_order_source); |
|
172 | 172 | } else { |
173 | - return parent::process_payment( $order_id, $retry, $force_save_source, $previous_error, $use_order_source ); |
|
173 | + return parent::process_payment($order_id, $retry, $force_save_source, $previous_error, $use_order_source); |
|
174 | 174 | } |
175 | 175 | } |
176 | 176 | |
@@ -182,11 +182,11 @@ discard block |
||
182 | 182 | * @param object $prepared_source The source that is used for the payment. |
183 | 183 | * @return array The arguments for the request. |
184 | 184 | */ |
185 | - public function generate_create_intent_request( $order, $prepared_source ) { |
|
186 | - $request = parent::generate_create_intent_request( $order, $prepared_source ); |
|
185 | + public function generate_create_intent_request($order, $prepared_source) { |
|
186 | + $request = parent::generate_create_intent_request($order, $prepared_source); |
|
187 | 187 | |
188 | 188 | // Non-subscription orders do not need any additional parameters. |
189 | - if ( ! $this->has_subscription( $order ) ) { |
|
189 | + if ( ! $this->has_subscription($order)) { |
|
190 | 190 | return $request; |
191 | 191 | } |
192 | 192 | |
@@ -202,8 +202,8 @@ discard block |
||
202 | 202 | * @param $amount_to_charge float The amount to charge. |
203 | 203 | * @param $renewal_order WC_Order A WC_Order object created to record the renewal payment. |
204 | 204 | */ |
205 | - public function scheduled_subscription_payment( $amount_to_charge, $renewal_order ) { |
|
206 | - $this->process_subscription_payment( $amount_to_charge, $renewal_order, true, false ); |
|
205 | + public function scheduled_subscription_payment($amount_to_charge, $renewal_order) { |
|
206 | + $this->process_subscription_payment($amount_to_charge, $renewal_order, true, false); |
|
207 | 207 | } |
208 | 208 | |
209 | 209 | /** |
@@ -217,11 +217,11 @@ discard block |
||
217 | 217 | * @param bool $retry Should we retry the process? |
218 | 218 | * @param object $previous_error |
219 | 219 | */ |
220 | - public function process_subscription_payment( $amount = 0.0, $renewal_order, $retry = true, $previous_error ) { |
|
220 | + public function process_subscription_payment($amount = 0.0, $renewal_order, $retry = true, $previous_error) { |
|
221 | 221 | try { |
222 | - if ( $amount * 100 < WC_Stripe_Helper::get_minimum_amount() ) { |
|
222 | + if ($amount * 100 < WC_Stripe_Helper::get_minimum_amount()) { |
|
223 | 223 | /* translators: minimum amount */ |
224 | - $message = sprintf( __( 'Sorry, the minimum allowed order total is %1$s to use this payment method.', 'woocommerce-gateway-stripe' ), wc_price( WC_Stripe_Helper::get_minimum_amount() / 100 ) ); |
|
224 | + $message = sprintf(__('Sorry, the minimum allowed order total is %1$s to use this payment method.', 'woocommerce-gateway-stripe'), wc_price(WC_Stripe_Helper::get_minimum_amount() / 100)); |
|
225 | 225 | throw new WC_Stripe_Exception( |
226 | 226 | 'Error while processing renewal order ' . $renewal_order->get_id() . ' : ' . $message, |
227 | 227 | $message |
@@ -230,141 +230,141 @@ discard block |
||
230 | 230 | |
231 | 231 | $order_id = $renewal_order->get_id(); |
232 | 232 | |
233 | - $this->ensure_subscription_has_customer_id( $order_id ); |
|
233 | + $this->ensure_subscription_has_customer_id($order_id); |
|
234 | 234 | |
235 | 235 | // Unlike regular off-session subscription payments, early renewals are treated as on-session payments, involving the customer. |
236 | - if ( isset( $_REQUEST['process_early_renewal'] ) ) { // wpcs: csrf ok. |
|
237 | - $response = parent::process_payment( $order_id, true, false, $previous_error, true ); |
|
236 | + if (isset($_REQUEST['process_early_renewal'])) { // wpcs: csrf ok. |
|
237 | + $response = parent::process_payment($order_id, true, false, $previous_error, true); |
|
238 | 238 | |
239 | - if( 'success' === $response['result'] && isset( $response['payment_intent_secret'] ) ) { |
|
239 | + if ('success' === $response['result'] && isset($response['payment_intent_secret'])) { |
|
240 | 240 | $verification_url = add_query_arg( |
241 | 241 | array( |
242 | 242 | 'order' => $order_id, |
243 | - 'nonce' => wp_create_nonce( 'wc_stripe_confirm_pi' ), |
|
244 | - 'redirect_to' => remove_query_arg( array( 'process_early_renewal', 'subscription_id', 'wcs_nonce' ) ), |
|
243 | + 'nonce' => wp_create_nonce('wc_stripe_confirm_pi'), |
|
244 | + 'redirect_to' => remove_query_arg(array('process_early_renewal', 'subscription_id', 'wcs_nonce')), |
|
245 | 245 | 'early_renewal' => true, |
246 | 246 | ), |
247 | - WC_AJAX::get_endpoint( 'wc_stripe_verify_intent' ) |
|
247 | + WC_AJAX::get_endpoint('wc_stripe_verify_intent') |
|
248 | 248 | ); |
249 | 249 | |
250 | - echo wp_json_encode( array( |
|
250 | + echo wp_json_encode(array( |
|
251 | 251 | 'stripe_sca_required' => true, |
252 | 252 | 'intent_secret' => $response['payment_intent_secret'], |
253 | 253 | 'redirect_url' => $verification_url, |
254 | - ) ); |
|
254 | + )); |
|
255 | 255 | |
256 | 256 | exit; |
257 | 257 | } |
258 | 258 | |
259 | 259 | // Hijack all other redirects in order to do the redirection in JavaScript. |
260 | - add_action( 'wp_redirect', array( $this, 'redirect_after_early_renewal' ), 100 ); |
|
260 | + add_action('wp_redirect', array($this, 'redirect_after_early_renewal'), 100); |
|
261 | 261 | |
262 | 262 | return; |
263 | 263 | } |
264 | 264 | |
265 | 265 | // Check for an existing intent, which is associated with the order. |
266 | - if ( $this->has_authentication_already_failed( $renewal_order ) ) { |
|
266 | + if ($this->has_authentication_already_failed($renewal_order)) { |
|
267 | 267 | return; |
268 | 268 | } |
269 | 269 | |
270 | 270 | // Get source from order |
271 | - $prepared_source = $this->prepare_order_source( $renewal_order ); |
|
271 | + $prepared_source = $this->prepare_order_source($renewal_order); |
|
272 | 272 | $source_object = $prepared_source->source_object; |
273 | 273 | |
274 | - if ( ! $prepared_source->customer ) { |
|
274 | + if ( ! $prepared_source->customer) { |
|
275 | 275 | throw new WC_Stripe_Exception( |
276 | 276 | 'Failed to process renewal for order ' . $renewal_order->get_id() . '. Stripe customer id is missing in the order', |
277 | - __( 'Customer not found', 'woocommerce-gateway-stripe' ) |
|
277 | + __('Customer not found', 'woocommerce-gateway-stripe') |
|
278 | 278 | ); |
279 | 279 | } |
280 | 280 | |
281 | - WC_Stripe_Logger::log( "Info: Begin processing subscription payment for order {$order_id} for the amount of {$amount}" ); |
|
281 | + WC_Stripe_Logger::log("Info: Begin processing subscription payment for order {$order_id} for the amount of {$amount}"); |
|
282 | 282 | |
283 | 283 | /* If we're doing a retry and source is chargeable, we need to pass |
284 | 284 | * a different idempotency key and retry for success. |
285 | 285 | */ |
286 | - if ( is_object( $source_object ) && empty( $source_object->error ) && $this->need_update_idempotency_key( $source_object, $previous_error ) ) { |
|
287 | - add_filter( 'wc_stripe_idempotency_key', array( $this, 'change_idempotency_key' ), 10, 2 ); |
|
286 | + if (is_object($source_object) && empty($source_object->error) && $this->need_update_idempotency_key($source_object, $previous_error)) { |
|
287 | + add_filter('wc_stripe_idempotency_key', array($this, 'change_idempotency_key'), 10, 2); |
|
288 | 288 | } |
289 | 289 | |
290 | - 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 ) ) { |
|
290 | + 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)) { |
|
291 | 291 | // Passing empty source will charge customer default. |
292 | 292 | $prepared_source->source = ''; |
293 | 293 | } |
294 | 294 | |
295 | - $this->lock_order_payment( $renewal_order ); |
|
295 | + $this->lock_order_payment($renewal_order); |
|
296 | 296 | |
297 | - $response = $this->create_and_confirm_intent_for_off_session( $renewal_order, $prepared_source, $amount ); |
|
298 | - $is_authentication_required = $this->is_authentication_required_for_payment( $response ); |
|
297 | + $response = $this->create_and_confirm_intent_for_off_session($renewal_order, $prepared_source, $amount); |
|
298 | + $is_authentication_required = $this->is_authentication_required_for_payment($response); |
|
299 | 299 | |
300 | 300 | // It's only a failed payment if it's an error and it's not of the type 'authentication_required'. |
301 | 301 | // If it's 'authentication_required', then we should email the user and ask them to authenticate. |
302 | - if ( ! empty( $response->error ) && ! $is_authentication_required ) { |
|
302 | + if ( ! empty($response->error) && ! $is_authentication_required) { |
|
303 | 303 | // We want to retry. |
304 | - if ( $this->is_retryable_error( $response->error ) ) { |
|
305 | - if ( $retry ) { |
|
304 | + if ($this->is_retryable_error($response->error)) { |
|
305 | + if ($retry) { |
|
306 | 306 | // Don't do anymore retries after this. |
307 | - if ( 5 <= $this->retry_interval ) { |
|
308 | - return $this->process_subscription_payment( $amount, $renewal_order, false, $response->error ); |
|
307 | + if (5 <= $this->retry_interval) { |
|
308 | + return $this->process_subscription_payment($amount, $renewal_order, false, $response->error); |
|
309 | 309 | } |
310 | 310 | |
311 | - sleep( $this->retry_interval ); |
|
311 | + sleep($this->retry_interval); |
|
312 | 312 | |
313 | 313 | $this->retry_interval++; |
314 | 314 | |
315 | - return $this->process_subscription_payment( $amount, $renewal_order, true, $response->error ); |
|
315 | + return $this->process_subscription_payment($amount, $renewal_order, true, $response->error); |
|
316 | 316 | } else { |
317 | - $localized_message = __( 'Sorry, we are unable to process your payment at this time. Please retry later.', 'woocommerce-gateway-stripe' ); |
|
318 | - $renewal_order->add_order_note( $localized_message ); |
|
319 | - throw new WC_Stripe_Exception( print_r( $response, true ), $localized_message ); |
|
317 | + $localized_message = __('Sorry, we are unable to process your payment at this time. Please retry later.', 'woocommerce-gateway-stripe'); |
|
318 | + $renewal_order->add_order_note($localized_message); |
|
319 | + throw new WC_Stripe_Exception(print_r($response, true), $localized_message); |
|
320 | 320 | } |
321 | 321 | } |
322 | 322 | |
323 | 323 | $localized_messages = WC_Stripe_Helper::get_localized_messages(); |
324 | 324 | |
325 | - if ( 'card_error' === $response->error->type ) { |
|
326 | - $localized_message = isset( $localized_messages[ $response->error->code ] ) ? $localized_messages[ $response->error->code ] : $response->error->message; |
|
325 | + if ('card_error' === $response->error->type) { |
|
326 | + $localized_message = isset($localized_messages[$response->error->code]) ? $localized_messages[$response->error->code] : $response->error->message; |
|
327 | 327 | } else { |
328 | - $localized_message = isset( $localized_messages[ $response->error->type ] ) ? $localized_messages[ $response->error->type ] : $response->error->message; |
|
328 | + $localized_message = isset($localized_messages[$response->error->type]) ? $localized_messages[$response->error->type] : $response->error->message; |
|
329 | 329 | } |
330 | 330 | |
331 | - $renewal_order->add_order_note( $localized_message ); |
|
331 | + $renewal_order->add_order_note($localized_message); |
|
332 | 332 | |
333 | - throw new WC_Stripe_Exception( print_r( $response, true ), $localized_message ); |
|
333 | + throw new WC_Stripe_Exception(print_r($response, true), $localized_message); |
|
334 | 334 | } |
335 | 335 | |
336 | 336 | // Either the charge was successfully captured, or it requires further authentication. |
337 | 337 | |
338 | - if ( $is_authentication_required ) { |
|
339 | - do_action( 'wc_gateway_stripe_process_payment_authentication_required', $renewal_order, $response ); |
|
338 | + if ($is_authentication_required) { |
|
339 | + do_action('wc_gateway_stripe_process_payment_authentication_required', $renewal_order, $response); |
|
340 | 340 | |
341 | - $error_message = __( 'This transaction requires authentication.', 'woocommerce-gateway-stripe' ); |
|
342 | - $renewal_order->add_order_note( $error_message ); |
|
341 | + $error_message = __('This transaction requires authentication.', 'woocommerce-gateway-stripe'); |
|
342 | + $renewal_order->add_order_note($error_message); |
|
343 | 343 | |
344 | - $charge = end( $response->error->payment_intent->charges->data ); |
|
344 | + $charge = end($response->error->payment_intent->charges->data); |
|
345 | 345 | $id = $charge->id; |
346 | 346 | $order_id = $renewal_order->get_id(); |
347 | 347 | |
348 | - $renewal_order->set_transaction_id( $id ); |
|
349 | - $renewal_order->update_status( 'failed', sprintf( __( 'Stripe charge awaiting authentication by user: %s.', 'woocommerce-gateway-stripe' ), $id ) ); |
|
350 | - if ( is_callable( array( $renewal_order, 'save' ) ) ) { |
|
348 | + $renewal_order->set_transaction_id($id); |
|
349 | + $renewal_order->update_status('failed', sprintf(__('Stripe charge awaiting authentication by user: %s.', 'woocommerce-gateway-stripe'), $id)); |
|
350 | + if (is_callable(array($renewal_order, 'save'))) { |
|
351 | 351 | $renewal_order->save(); |
352 | 352 | } |
353 | 353 | } else { |
354 | 354 | // The charge was successfully captured |
355 | - do_action( 'wc_gateway_stripe_process_payment', $response, $renewal_order ); |
|
355 | + do_action('wc_gateway_stripe_process_payment', $response, $renewal_order); |
|
356 | 356 | |
357 | - $this->process_response( end( $response->charges->data ), $renewal_order ); |
|
357 | + $this->process_response(end($response->charges->data), $renewal_order); |
|
358 | 358 | } |
359 | 359 | |
360 | - $this->unlock_order_payment( $renewal_order ); |
|
361 | - } catch ( WC_Stripe_Exception $e ) { |
|
362 | - WC_Stripe_Logger::log( 'Error: ' . $e->getMessage() ); |
|
360 | + $this->unlock_order_payment($renewal_order); |
|
361 | + } catch (WC_Stripe_Exception $e) { |
|
362 | + WC_Stripe_Logger::log('Error: ' . $e->getMessage()); |
|
363 | 363 | |
364 | - do_action( 'wc_gateway_stripe_process_payment_error', $e, $renewal_order ); |
|
364 | + do_action('wc_gateway_stripe_process_payment_error', $e, $renewal_order); |
|
365 | 365 | |
366 | 366 | /* translators: error message */ |
367 | - $renewal_order->update_status( 'failed' ); |
|
367 | + $renewal_order->update_status('failed'); |
|
368 | 368 | } |
369 | 369 | } |
370 | 370 | |
@@ -374,24 +374,24 @@ discard block |
||
374 | 374 | * @since 3.1.0 |
375 | 375 | * @version 4.0.0 |
376 | 376 | */ |
377 | - public function save_source_to_order( $order, $source ) { |
|
378 | - parent::save_source_to_order( $order, $source ); |
|
377 | + public function save_source_to_order($order, $source) { |
|
378 | + parent::save_source_to_order($order, $source); |
|
379 | 379 | |
380 | 380 | $order_id = $order->get_id(); |
381 | 381 | |
382 | 382 | // Also store it on the subscriptions being purchased or paid for in the order |
383 | - if ( function_exists( 'wcs_order_contains_subscription' ) && wcs_order_contains_subscription( $order_id ) ) { |
|
384 | - $subscriptions = wcs_get_subscriptions_for_order( $order_id ); |
|
385 | - } elseif ( function_exists( 'wcs_order_contains_renewal' ) && wcs_order_contains_renewal( $order_id ) ) { |
|
386 | - $subscriptions = wcs_get_subscriptions_for_renewal_order( $order_id ); |
|
383 | + if (function_exists('wcs_order_contains_subscription') && wcs_order_contains_subscription($order_id)) { |
|
384 | + $subscriptions = wcs_get_subscriptions_for_order($order_id); |
|
385 | + } elseif (function_exists('wcs_order_contains_renewal') && wcs_order_contains_renewal($order_id)) { |
|
386 | + $subscriptions = wcs_get_subscriptions_for_renewal_order($order_id); |
|
387 | 387 | } else { |
388 | 388 | $subscriptions = array(); |
389 | 389 | } |
390 | 390 | |
391 | - foreach ( $subscriptions as $subscription ) { |
|
391 | + foreach ($subscriptions as $subscription) { |
|
392 | 392 | $subscription_id = $subscription->get_id(); |
393 | - update_post_meta( $subscription_id, '_stripe_customer_id', $source->customer ); |
|
394 | - update_post_meta( $subscription_id, '_stripe_source_id', $source->source ); |
|
393 | + update_post_meta($subscription_id, '_stripe_customer_id', $source->customer); |
|
394 | + update_post_meta($subscription_id, '_stripe_source_id', $source->source); |
|
395 | 395 | } |
396 | 396 | } |
397 | 397 | |
@@ -399,26 +399,26 @@ discard block |
||
399 | 399 | * Don't transfer Stripe customer/token meta to resubscribe orders. |
400 | 400 | * @param int $resubscribe_order The order created for the customer to resubscribe to the old expired/cancelled subscription |
401 | 401 | */ |
402 | - public function delete_resubscribe_meta( $resubscribe_order ) { |
|
403 | - delete_post_meta( $resubscribe_order->get_id(), '_stripe_customer_id' ); |
|
404 | - delete_post_meta( $resubscribe_order->get_id(), '_stripe_source_id' ); |
|
402 | + public function delete_resubscribe_meta($resubscribe_order) { |
|
403 | + delete_post_meta($resubscribe_order->get_id(), '_stripe_customer_id'); |
|
404 | + delete_post_meta($resubscribe_order->get_id(), '_stripe_source_id'); |
|
405 | 405 | // For BW compat will remove in future |
406 | - delete_post_meta( $resubscribe_order->get_id(), '_stripe_card_id' ); |
|
406 | + delete_post_meta($resubscribe_order->get_id(), '_stripe_card_id'); |
|
407 | 407 | // delete payment intent ID |
408 | - delete_post_meta( $resubscribe_order->get_id(), '_stripe_intent_id' ); |
|
409 | - $this->delete_renewal_meta( $resubscribe_order ); |
|
408 | + delete_post_meta($resubscribe_order->get_id(), '_stripe_intent_id'); |
|
409 | + $this->delete_renewal_meta($resubscribe_order); |
|
410 | 410 | } |
411 | 411 | |
412 | 412 | /** |
413 | 413 | * Don't transfer Stripe fee/ID meta to renewal orders. |
414 | 414 | * @param int $resubscribe_order The order created for the customer to resubscribe to the old expired/cancelled subscription |
415 | 415 | */ |
416 | - public function delete_renewal_meta( $renewal_order ) { |
|
417 | - WC_Stripe_Helper::delete_stripe_fee( $renewal_order ); |
|
418 | - WC_Stripe_Helper::delete_stripe_net( $renewal_order ); |
|
416 | + public function delete_renewal_meta($renewal_order) { |
|
417 | + WC_Stripe_Helper::delete_stripe_fee($renewal_order); |
|
418 | + WC_Stripe_Helper::delete_stripe_net($renewal_order); |
|
419 | 419 | |
420 | 420 | // delete payment intent ID |
421 | - delete_post_meta( $renewal_order->get_id(), '_stripe_intent_id' ); |
|
421 | + delete_post_meta($renewal_order->get_id(), '_stripe_intent_id'); |
|
422 | 422 | |
423 | 423 | return $renewal_order; |
424 | 424 | } |
@@ -432,9 +432,9 @@ discard block |
||
432 | 432 | * @param WC_Order $renewal_order The order which recorded the successful payment (to make up for the failed automatic payment). |
433 | 433 | * @return void |
434 | 434 | */ |
435 | - public function update_failing_payment_method( $subscription, $renewal_order ) { |
|
436 | - update_post_meta( $subscription->get_id(), '_stripe_customer_id', $renewal_order->get_meta( '_stripe_customer_id', true ) ); |
|
437 | - update_post_meta( $subscription->get_id(), '_stripe_source_id', $renewal_order->get_meta( '_stripe_source_id', true ) ); |
|
435 | + public function update_failing_payment_method($subscription, $renewal_order) { |
|
436 | + update_post_meta($subscription->get_id(), '_stripe_customer_id', $renewal_order->get_meta('_stripe_customer_id', true)); |
|
437 | + update_post_meta($subscription->get_id(), '_stripe_source_id', $renewal_order->get_meta('_stripe_source_id', true)); |
|
438 | 438 | } |
439 | 439 | |
440 | 440 | /** |
@@ -446,23 +446,23 @@ discard block |
||
446 | 446 | * @param WC_Subscription $subscription An instance of a subscription object |
447 | 447 | * @return array |
448 | 448 | */ |
449 | - public function add_subscription_payment_meta( $payment_meta, $subscription ) { |
|
449 | + public function add_subscription_payment_meta($payment_meta, $subscription) { |
|
450 | 450 | $subscription_id = $subscription->get_id(); |
451 | - $source_id = get_post_meta( $subscription_id, '_stripe_source_id', true ); |
|
451 | + $source_id = get_post_meta($subscription_id, '_stripe_source_id', true); |
|
452 | 452 | |
453 | 453 | // For BW compat will remove in future. |
454 | - if ( empty( $source_id ) ) { |
|
455 | - $source_id = get_post_meta( $subscription_id, '_stripe_card_id', true ); |
|
454 | + if (empty($source_id)) { |
|
455 | + $source_id = get_post_meta($subscription_id, '_stripe_card_id', true); |
|
456 | 456 | |
457 | 457 | // Take this opportunity to update the key name. |
458 | - update_post_meta( $subscription_id, '_stripe_source_id', $source_id ); |
|
459 | - delete_post_meta( $subscription_id, '_stripe_card_id', $source_id ); |
|
458 | + update_post_meta($subscription_id, '_stripe_source_id', $source_id); |
|
459 | + delete_post_meta($subscription_id, '_stripe_card_id', $source_id); |
|
460 | 460 | } |
461 | 461 | |
462 | - $payment_meta[ $this->id ] = array( |
|
462 | + $payment_meta[$this->id] = array( |
|
463 | 463 | 'post_meta' => array( |
464 | 464 | '_stripe_customer_id' => array( |
465 | - 'value' => get_post_meta( $subscription_id, '_stripe_customer_id', true ), |
|
465 | + 'value' => get_post_meta($subscription_id, '_stripe_customer_id', true), |
|
466 | 466 | 'label' => 'Stripe Customer ID', |
467 | 467 | ), |
468 | 468 | '_stripe_source_id' => array( |
@@ -485,27 +485,27 @@ discard block |
||
485 | 485 | * @param array $payment_meta associative array of meta data required for automatic payments |
486 | 486 | * @return array |
487 | 487 | */ |
488 | - public function validate_subscription_payment_meta( $payment_method_id, $payment_meta ) { |
|
489 | - if ( $this->id === $payment_method_id ) { |
|
488 | + public function validate_subscription_payment_meta($payment_method_id, $payment_meta) { |
|
489 | + if ($this->id === $payment_method_id) { |
|
490 | 490 | |
491 | - if ( ! isset( $payment_meta['post_meta']['_stripe_customer_id']['value'] ) || empty( $payment_meta['post_meta']['_stripe_customer_id']['value'] ) ) { |
|
491 | + if ( ! isset($payment_meta['post_meta']['_stripe_customer_id']['value']) || empty($payment_meta['post_meta']['_stripe_customer_id']['value'])) { |
|
492 | 492 | |
493 | 493 | // Allow empty stripe customer id during subscription renewal. It will be added when processing payment if required. |
494 | - if ( ! isset( $_POST['wc_order_action'] ) || 'wcs_process_renewal' !== $_POST['wc_order_action'] ) { |
|
495 | - throw new Exception( __( 'A "Stripe Customer ID" value is required.', 'woocommerce-gateway-stripe' ) ); |
|
494 | + if ( ! isset($_POST['wc_order_action']) || 'wcs_process_renewal' !== $_POST['wc_order_action']) { |
|
495 | + throw new Exception(__('A "Stripe Customer ID" value is required.', 'woocommerce-gateway-stripe')); |
|
496 | 496 | } |
497 | - } elseif ( 0 !== strpos( $payment_meta['post_meta']['_stripe_customer_id']['value'], 'cus_' ) ) { |
|
498 | - throw new Exception( __( 'Invalid customer ID. A valid "Stripe Customer ID" must begin with "cus_".', 'woocommerce-gateway-stripe' ) ); |
|
497 | + } elseif (0 !== strpos($payment_meta['post_meta']['_stripe_customer_id']['value'], 'cus_')) { |
|
498 | + throw new Exception(__('Invalid customer ID. A valid "Stripe Customer ID" must begin with "cus_".', 'woocommerce-gateway-stripe')); |
|
499 | 499 | } |
500 | 500 | |
501 | 501 | if ( |
502 | - ! empty( $payment_meta['post_meta']['_stripe_source_id']['value'] ) && ( |
|
503 | - 0 !== strpos( $payment_meta['post_meta']['_stripe_source_id']['value'], 'card_' ) |
|
504 | - && 0 !== strpos( $payment_meta['post_meta']['_stripe_source_id']['value'], 'src_' ) |
|
505 | - && 0 !== strpos( $payment_meta['post_meta']['_stripe_source_id']['value'], 'pm_' ) |
|
502 | + ! empty($payment_meta['post_meta']['_stripe_source_id']['value']) && ( |
|
503 | + 0 !== strpos($payment_meta['post_meta']['_stripe_source_id']['value'], 'card_') |
|
504 | + && 0 !== strpos($payment_meta['post_meta']['_stripe_source_id']['value'], 'src_') |
|
505 | + && 0 !== strpos($payment_meta['post_meta']['_stripe_source_id']['value'], 'pm_') |
|
506 | 506 | ) |
507 | 507 | ) { |
508 | - throw new Exception( __( 'Invalid source ID. A valid source "Stripe Source ID" must begin with "src_", "pm_", or "card_".', 'woocommerce-gateway-stripe' ) ); |
|
508 | + throw new Exception(__('Invalid source ID. A valid source "Stripe Source ID" must begin with "src_", "pm_", or "card_".', 'woocommerce-gateway-stripe')); |
|
509 | 509 | } |
510 | 510 | } |
511 | 511 | } |
@@ -518,75 +518,75 @@ discard block |
||
518 | 518 | * @param WC_Subscription $subscription the subscription details |
519 | 519 | * @return string the subscription payment method |
520 | 520 | */ |
521 | - public function maybe_render_subscription_payment_method( $payment_method_to_display, $subscription ) { |
|
521 | + public function maybe_render_subscription_payment_method($payment_method_to_display, $subscription) { |
|
522 | 522 | $customer_user = $subscription->get_customer_id(); |
523 | 523 | |
524 | 524 | // bail for other payment methods |
525 | - if ( $subscription->get_payment_method() !== $this->id || ! $customer_user ) { |
|
525 | + if ($subscription->get_payment_method() !== $this->id || ! $customer_user) { |
|
526 | 526 | return $payment_method_to_display; |
527 | 527 | } |
528 | 528 | |
529 | - $stripe_source_id = get_post_meta( $subscription->get_id(), '_stripe_source_id', true ); |
|
529 | + $stripe_source_id = get_post_meta($subscription->get_id(), '_stripe_source_id', true); |
|
530 | 530 | |
531 | 531 | // For BW compat will remove in future. |
532 | - if ( empty( $stripe_source_id ) ) { |
|
533 | - $stripe_source_id = get_post_meta( $subscription->get_id(), '_stripe_card_id', true ); |
|
532 | + if (empty($stripe_source_id)) { |
|
533 | + $stripe_source_id = get_post_meta($subscription->get_id(), '_stripe_card_id', true); |
|
534 | 534 | |
535 | 535 | // Take this opportunity to update the key name. |
536 | - update_post_meta( $subscription->get_id(), '_stripe_source_id', $stripe_source_id ); |
|
536 | + update_post_meta($subscription->get_id(), '_stripe_source_id', $stripe_source_id); |
|
537 | 537 | } |
538 | 538 | |
539 | 539 | $stripe_customer = new WC_Stripe_Customer(); |
540 | - $stripe_customer_id = get_post_meta( $subscription->get_id(), '_stripe_customer_id', true ); |
|
540 | + $stripe_customer_id = get_post_meta($subscription->get_id(), '_stripe_customer_id', true); |
|
541 | 541 | |
542 | 542 | // If we couldn't find a Stripe customer linked to the subscription, fallback to the user meta data. |
543 | - if ( ! $stripe_customer_id || ! is_string( $stripe_customer_id ) ) { |
|
543 | + if ( ! $stripe_customer_id || ! is_string($stripe_customer_id)) { |
|
544 | 544 | $user_id = $customer_user; |
545 | - $stripe_customer_id = get_user_option( '_stripe_customer_id', $user_id ); |
|
546 | - $stripe_source_id = get_user_option( '_stripe_source_id', $user_id ); |
|
545 | + $stripe_customer_id = get_user_option('_stripe_customer_id', $user_id); |
|
546 | + $stripe_source_id = get_user_option('_stripe_source_id', $user_id); |
|
547 | 547 | |
548 | 548 | // For BW compat will remove in future. |
549 | - if ( empty( $stripe_source_id ) ) { |
|
550 | - $stripe_source_id = get_user_option( '_stripe_card_id', $user_id ); |
|
549 | + if (empty($stripe_source_id)) { |
|
550 | + $stripe_source_id = get_user_option('_stripe_card_id', $user_id); |
|
551 | 551 | |
552 | 552 | // Take this opportunity to update the key name. |
553 | - update_user_option( $user_id, '_stripe_source_id', $stripe_source_id, false ); |
|
553 | + update_user_option($user_id, '_stripe_source_id', $stripe_source_id, false); |
|
554 | 554 | } |
555 | 555 | } |
556 | 556 | |
557 | 557 | // If we couldn't find a Stripe customer linked to the account, fallback to the order meta data. |
558 | - if ( ( ! $stripe_customer_id || ! is_string( $stripe_customer_id ) ) && false !== $subscription->order ) { |
|
559 | - $stripe_customer_id = get_post_meta( $subscription->get_parent_id(), '_stripe_customer_id', true ); |
|
560 | - $stripe_source_id = get_post_meta( $subscription->get_parent_id(), '_stripe_source_id', true ); |
|
558 | + if (( ! $stripe_customer_id || ! is_string($stripe_customer_id)) && false !== $subscription->order) { |
|
559 | + $stripe_customer_id = get_post_meta($subscription->get_parent_id(), '_stripe_customer_id', true); |
|
560 | + $stripe_source_id = get_post_meta($subscription->get_parent_id(), '_stripe_source_id', true); |
|
561 | 561 | |
562 | 562 | // For BW compat will remove in future. |
563 | - if ( empty( $stripe_source_id ) ) { |
|
564 | - $stripe_source_id = get_post_meta( $subscription->get_parent_id(), '_stripe_card_id', true ); |
|
563 | + if (empty($stripe_source_id)) { |
|
564 | + $stripe_source_id = get_post_meta($subscription->get_parent_id(), '_stripe_card_id', true); |
|
565 | 565 | |
566 | 566 | // Take this opportunity to update the key name. |
567 | - update_post_meta( $subscription->get_parent_id(), '_stripe_source_id', $stripe_source_id ); |
|
567 | + update_post_meta($subscription->get_parent_id(), '_stripe_source_id', $stripe_source_id); |
|
568 | 568 | } |
569 | 569 | } |
570 | 570 | |
571 | - $stripe_customer->set_id( $stripe_customer_id ); |
|
571 | + $stripe_customer->set_id($stripe_customer_id); |
|
572 | 572 | |
573 | 573 | $sources = $stripe_customer->get_sources(); |
574 | - $payment_method_to_display = __( 'N/A', 'woocommerce-gateway-stripe' ); |
|
574 | + $payment_method_to_display = __('N/A', 'woocommerce-gateway-stripe'); |
|
575 | 575 | |
576 | - if ( $sources ) { |
|
576 | + if ($sources) { |
|
577 | 577 | $card = false; |
578 | 578 | |
579 | - foreach ( $sources as $source ) { |
|
580 | - if ( isset( $source->type ) && 'card' === $source->type ) { |
|
579 | + foreach ($sources as $source) { |
|
580 | + if (isset($source->type) && 'card' === $source->type) { |
|
581 | 581 | $card = $source->card; |
582 | - } elseif ( isset( $source->object ) && 'card' === $source->object ) { |
|
582 | + } elseif (isset($source->object) && 'card' === $source->object) { |
|
583 | 583 | $card = $source; |
584 | 584 | } |
585 | 585 | |
586 | - if ( $source->id === $stripe_source_id ) { |
|
587 | - if ( $card ) { |
|
586 | + if ($source->id === $stripe_source_id) { |
|
587 | + if ($card) { |
|
588 | 588 | /* translators: 1) card brand 2) last 4 digits */ |
589 | - $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 ); |
|
589 | + $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); |
|
590 | 590 | } |
591 | 591 | |
592 | 592 | break; |
@@ -603,7 +603,7 @@ discard block |
||
603 | 603 | */ |
604 | 604 | public function remove_order_pay_var() { |
605 | 605 | global $wp; |
606 | - if ( isset( $_GET['wc-stripe-confirmation'] ) ) { |
|
606 | + if (isset($_GET['wc-stripe-confirmation'])) { |
|
607 | 607 | $this->order_pay_var = $wp->query_vars['order-pay']; |
608 | 608 | $wp->query_vars['order-pay'] = null; |
609 | 609 | } |
@@ -614,7 +614,7 @@ discard block |
||
614 | 614 | */ |
615 | 615 | public function restore_order_pay_var() { |
616 | 616 | global $wp; |
617 | - if ( isset( $this->order_pay_var ) ) { |
|
617 | + if (isset($this->order_pay_var)) { |
|
618 | 618 | $wp->query_vars['order-pay'] = $this->order_pay_var; |
619 | 619 | } |
620 | 620 | } |
@@ -625,13 +625,13 @@ discard block |
||
625 | 625 | * @param WC_Order $renewal_order The renewal order. |
626 | 626 | * @return boolean |
627 | 627 | */ |
628 | - public function has_authentication_already_failed( $renewal_order ) { |
|
629 | - $existing_intent = $this->get_intent_from_order( $renewal_order ); |
|
628 | + public function has_authentication_already_failed($renewal_order) { |
|
629 | + $existing_intent = $this->get_intent_from_order($renewal_order); |
|
630 | 630 | |
631 | 631 | if ( |
632 | 632 | ! $existing_intent |
633 | 633 | || 'requires_payment_method' !== $existing_intent->status |
634 | - || empty( $existing_intent->last_payment_error ) |
|
634 | + || empty($existing_intent->last_payment_error) |
|
635 | 635 | || 'authentication_required' !== $existing_intent->last_payment_error->code |
636 | 636 | ) { |
637 | 637 | return false; |
@@ -645,12 +645,12 @@ discard block |
||
645 | 645 | * |
646 | 646 | * @param WC_Order $renewal_order The order that is being renewed. |
647 | 647 | */ |
648 | - do_action( 'wc_gateway_stripe_process_payment_authentication_required', $renewal_order ); |
|
648 | + do_action('wc_gateway_stripe_process_payment_authentication_required', $renewal_order); |
|
649 | 649 | |
650 | 650 | // Fail the payment attempt (order would be currently pending because of retry rules). |
651 | - $charge = end( $existing_intent->charges->data ); |
|
651 | + $charge = end($existing_intent->charges->data); |
|
652 | 652 | $charge_id = $charge->id; |
653 | - $renewal_order->update_status( 'failed', sprintf( __( 'Stripe charge awaiting authentication by user: %s.', 'woocommerce-gateway-stripe' ), $charge_id ) ); |
|
653 | + $renewal_order->update_status('failed', sprintf(__('Stripe charge awaiting authentication by user: %s.', 'woocommerce-gateway-stripe'), $charge_id)); |
|
654 | 654 | |
655 | 655 | return true; |
656 | 656 | } |
@@ -661,7 +661,7 @@ discard block |
||
661 | 661 | * @param string $url The URL that Subscriptions attempts a redirect to. |
662 | 662 | * @return void |
663 | 663 | */ |
664 | - public function redirect_after_early_renewal( $url ) { |
|
664 | + public function redirect_after_early_renewal($url) { |
|
665 | 665 | echo wp_json_encode( |
666 | 666 | array( |
667 | 667 | 'stripe_sca_required' => false, |
@@ -678,12 +678,12 @@ discard block |
||
678 | 678 | * @param WC_Order $order The renewal order. |
679 | 679 | * @param stdClass $intent The Payment Intent object. |
680 | 680 | */ |
681 | - protected function handle_intent_verification_success( $order, $intent ) { |
|
682 | - parent::handle_intent_verification_success( $order, $intent ); |
|
681 | + protected function handle_intent_verification_success($order, $intent) { |
|
682 | + parent::handle_intent_verification_success($order, $intent); |
|
683 | 683 | |
684 | - if ( isset( $_GET['early_renewal'] ) ) { // wpcs: csrf ok. |
|
685 | - wcs_update_dates_after_early_renewal( wcs_get_subscription( $order->get_meta( '_subscription_renewal' ) ), $order ); |
|
686 | - wc_add_notice( __( 'Your early renewal order was successful.', 'woocommerce-gateway-stripe' ), 'success' ); |
|
684 | + if (isset($_GET['early_renewal'])) { // wpcs: csrf ok. |
|
685 | + wcs_update_dates_after_early_renewal(wcs_get_subscription($order->get_meta('_subscription_renewal')), $order); |
|
686 | + wc_add_notice(__('Your early renewal order was successful.', 'woocommerce-gateway-stripe'), 'success'); |
|
687 | 687 | } |
688 | 688 | } |
689 | 689 | |
@@ -693,12 +693,12 @@ discard block |
||
693 | 693 | * @param WC_Order $order The renewal order. |
694 | 694 | * @param stdClass $intent The Payment Intent object (unused). |
695 | 695 | */ |
696 | - protected function handle_intent_verification_failure( $order, $intent ) { |
|
697 | - if ( isset( $_GET['early_renewal'] ) ) { |
|
698 | - $order->delete( true ); |
|
699 | - wc_add_notice( __( 'Payment authorization for the renewal order was unsuccessful, please try again.', 'woocommerce-gateway-stripe' ), 'error' ); |
|
700 | - $renewal_url = wcs_get_early_renewal_url( wcs_get_subscription( $order->get_meta( '_subscription_renewal' ) ) ); |
|
701 | - wp_redirect( $renewal_url ); exit; |
|
696 | + protected function handle_intent_verification_failure($order, $intent) { |
|
697 | + if (isset($_GET['early_renewal'])) { |
|
698 | + $order->delete(true); |
|
699 | + wc_add_notice(__('Payment authorization for the renewal order was unsuccessful, please try again.', 'woocommerce-gateway-stripe'), 'error'); |
|
700 | + $renewal_url = wcs_get_early_renewal_url(wcs_get_subscription($order->get_meta('_subscription_renewal'))); |
|
701 | + wp_redirect($renewal_url); exit; |
|
702 | 702 | } |
703 | 703 | } |
704 | 704 | } |
@@ -5,7 +5,7 @@ discard block |
||
5 | 5 | * @since 4.0.6 |
6 | 6 | */ |
7 | 7 | |
8 | -if ( ! defined( 'ABSPATH' ) ) { |
|
8 | +if ( ! defined('ABSPATH')) { |
|
9 | 9 | exit; |
10 | 10 | } |
11 | 11 | |
@@ -53,23 +53,23 @@ discard block |
||
53 | 53 | public $apple_pay_verify_notice; |
54 | 54 | |
55 | 55 | public function __construct() { |
56 | - add_action( 'woocommerce_stripe_updated', array( $this, 'verify_domain_if_needed' ) ); |
|
57 | - add_action( 'update_option_woocommerce_stripe_settings', array( $this, 'verify_domain_on_new_secret_key' ), 10, 2 ); |
|
56 | + add_action('woocommerce_stripe_updated', array($this, 'verify_domain_if_needed')); |
|
57 | + add_action('update_option_woocommerce_stripe_settings', array($this, 'verify_domain_on_new_secret_key'), 10, 2); |
|
58 | 58 | |
59 | - $this->stripe_settings = get_option( 'woocommerce_stripe_settings', array() ); |
|
60 | - $this->stripe_enabled = $this->get_option( 'enabled' ); |
|
61 | - $this->payment_request = 'yes' === $this->get_option( 'payment_request', 'yes' ); |
|
62 | - $this->apple_pay_domain_set = 'yes' === $this->get_option( 'apple_pay_domain_set', 'no' ); |
|
59 | + $this->stripe_settings = get_option('woocommerce_stripe_settings', array()); |
|
60 | + $this->stripe_enabled = $this->get_option('enabled'); |
|
61 | + $this->payment_request = 'yes' === $this->get_option('payment_request', 'yes'); |
|
62 | + $this->apple_pay_domain_set = 'yes' === $this->get_option('apple_pay_domain_set', 'no'); |
|
63 | 63 | $this->apple_pay_verify_notice = ''; |
64 | 64 | $this->secret_key = $this->get_secret_key(); |
65 | 65 | |
66 | - if ( empty( $this->stripe_settings ) ) { |
|
66 | + if (empty($this->stripe_settings)) { |
|
67 | 67 | return; |
68 | 68 | } |
69 | 69 | |
70 | 70 | $this->init_apple_pay(); |
71 | 71 | |
72 | - add_action( 'admin_notices', array( $this, 'admin_notices' ) ); |
|
72 | + add_action('admin_notices', array($this, 'admin_notices')); |
|
73 | 73 | } |
74 | 74 | |
75 | 75 | /** |
@@ -80,13 +80,13 @@ discard block |
||
80 | 80 | * @param string default |
81 | 81 | * @return string $setting_value |
82 | 82 | */ |
83 | - public function get_option( $setting = '', $default = '' ) { |
|
84 | - if ( empty( $this->stripe_settings ) ) { |
|
83 | + public function get_option($setting = '', $default = '') { |
|
84 | + if (empty($this->stripe_settings)) { |
|
85 | 85 | return $default; |
86 | 86 | } |
87 | 87 | |
88 | - if ( ! empty( $this->stripe_settings[ $setting ] ) ) { |
|
89 | - return $this->stripe_settings[ $setting ]; |
|
88 | + if ( ! empty($this->stripe_settings[$setting])) { |
|
89 | + return $this->stripe_settings[$setting]; |
|
90 | 90 | } |
91 | 91 | |
92 | 92 | return $default; |
@@ -99,8 +99,8 @@ discard block |
||
99 | 99 | * @return string Secret key. |
100 | 100 | */ |
101 | 101 | private function get_secret_key() { |
102 | - $testmode = 'yes' === $this->get_option( 'testmode', 'no' ); |
|
103 | - return $testmode ? $this->get_option( 'test_secret_key' ) : $this->get_option( 'secret_key' ); |
|
102 | + $testmode = 'yes' === $this->get_option('testmode', 'no'); |
|
103 | + return $testmode ? $this->get_option('test_secret_key') : $this->get_option('secret_key'); |
|
104 | 104 | } |
105 | 105 | |
106 | 106 | /** |
@@ -112,9 +112,9 @@ discard block |
||
112 | 112 | public function init_apple_pay() { |
113 | 113 | if ( |
114 | 114 | is_admin() && |
115 | - isset( $_GET['page'] ) && 'wc-settings' === $_GET['page'] && |
|
116 | - isset( $_GET['tab'] ) && 'checkout' === $_GET['tab'] && |
|
117 | - isset( $_GET['section'] ) && 'stripe' === $_GET['section'] && |
|
115 | + isset($_GET['page']) && 'wc-settings' === $_GET['page'] && |
|
116 | + isset($_GET['tab']) && 'checkout' === $_GET['tab'] && |
|
117 | + isset($_GET['section']) && 'stripe' === $_GET['section'] && |
|
118 | 118 | $this->payment_request |
119 | 119 | ) { |
120 | 120 | $this->verify_domain(); |
@@ -128,9 +128,9 @@ discard block |
||
128 | 128 | * @version 3.1.0 |
129 | 129 | * @param string $secret_key |
130 | 130 | */ |
131 | - private function register_domain_with_apple( $secret_key = '' ) { |
|
132 | - if ( empty( $secret_key ) ) { |
|
133 | - throw new Exception( __( 'Unable to verify domain - missing secret key.', 'woocommerce-gateway-stripe' ) ); |
|
131 | + private function register_domain_with_apple($secret_key = '') { |
|
132 | + if (empty($secret_key)) { |
|
133 | + throw new Exception(__('Unable to verify domain - missing secret key.', 'woocommerce-gateway-stripe')); |
|
134 | 134 | } |
135 | 135 | |
136 | 136 | $endpoint = 'https://api.stripe.com/v1/apple_pay/domains'; |
@@ -148,22 +148,22 @@ discard block |
||
148 | 148 | $endpoint, |
149 | 149 | array( |
150 | 150 | 'headers' => $headers, |
151 | - 'body' => http_build_query( $data ), |
|
151 | + 'body' => http_build_query($data), |
|
152 | 152 | ) |
153 | 153 | ); |
154 | 154 | |
155 | - if ( is_wp_error( $response ) ) { |
|
155 | + if (is_wp_error($response)) { |
|
156 | 156 | /* translators: error message */ |
157 | - throw new Exception( sprintf( __( 'Unable to verify domain - %s', 'woocommerce-gateway-stripe' ), $response->get_error_message() ) ); |
|
157 | + throw new Exception(sprintf(__('Unable to verify domain - %s', 'woocommerce-gateway-stripe'), $response->get_error_message())); |
|
158 | 158 | } |
159 | 159 | |
160 | - if ( 200 !== $response['response']['code'] ) { |
|
161 | - $parsed_response = json_decode( $response['body'] ); |
|
160 | + if (200 !== $response['response']['code']) { |
|
161 | + $parsed_response = json_decode($response['body']); |
|
162 | 162 | |
163 | 163 | $this->apple_pay_verify_notice = $parsed_response->error->message; |
164 | 164 | |
165 | 165 | /* translators: error message */ |
166 | - throw new Exception( sprintf( __( 'Unable to verify domain - %s', 'woocommerce-gateway-stripe' ), $parsed_response->error->message ) ); |
|
166 | + throw new Exception(sprintf(__('Unable to verify domain - %s', 'woocommerce-gateway-stripe'), $parsed_response->error->message)); |
|
167 | 167 | } |
168 | 168 | } |
169 | 169 | |
@@ -177,43 +177,43 @@ discard block |
||
177 | 177 | * @since 4.3.0 |
178 | 178 | * @return bool True on success, false on failure. |
179 | 179 | */ |
180 | - public function update_domain_association_file( $force = false ) { |
|
181 | - $path = untrailingslashit( $_SERVER['DOCUMENT_ROOT'] ); |
|
180 | + public function update_domain_association_file($force = false) { |
|
181 | + $path = untrailingslashit($_SERVER['DOCUMENT_ROOT']); |
|
182 | 182 | $dir = '.well-known'; |
183 | 183 | $file = 'apple-developer-merchantid-domain-association'; |
184 | 184 | $fullpath = $path . '/' . $dir . '/' . $file; |
185 | 185 | |
186 | - $existing_contents = @file_get_contents( $fullpath ); |
|
187 | - $new_contents = @file_get_contents( WC_STRIPE_PLUGIN_PATH . '/' . $file ); |
|
188 | - if ( ( ! $existing_contents && ! $force ) || $existing_contents === $new_contents ) { |
|
186 | + $existing_contents = @file_get_contents($fullpath); |
|
187 | + $new_contents = @file_get_contents(WC_STRIPE_PLUGIN_PATH . '/' . $file); |
|
188 | + if (( ! $existing_contents && ! $force) || $existing_contents === $new_contents) { |
|
189 | 189 | return true; |
190 | 190 | } |
191 | 191 | |
192 | 192 | $error = null; |
193 | - if ( ! file_exists( $path . '/' . $dir ) ) { |
|
194 | - if ( ! @mkdir( $path . '/' . $dir, 0755 ) ) { // @codingStandardsIgnoreLine |
|
195 | - $error = __( 'Unable to create domain association folder to domain root.', 'woocommerce-gateway-stripe' ); |
|
193 | + if ( ! file_exists($path . '/' . $dir)) { |
|
194 | + if ( ! @mkdir($path . '/' . $dir, 0755)) { // @codingStandardsIgnoreLine |
|
195 | + $error = __('Unable to create domain association folder to domain root.', 'woocommerce-gateway-stripe'); |
|
196 | 196 | } |
197 | 197 | } |
198 | - if ( ! @copy( WC_STRIPE_PLUGIN_PATH . '/' . $file, $fullpath ) ) { // @codingStandardsIgnoreLine |
|
199 | - $error = __( 'Unable to copy domain association file to domain root.', 'woocommerce-gateway-stripe' ); |
|
198 | + if ( ! @copy(WC_STRIPE_PLUGIN_PATH . '/' . $file, $fullpath)) { // @codingStandardsIgnoreLine |
|
199 | + $error = __('Unable to copy domain association file to domain root.', 'woocommerce-gateway-stripe'); |
|
200 | 200 | } |
201 | 201 | |
202 | - if ( isset( $error ) ) { |
|
202 | + if (isset($error)) { |
|
203 | 203 | $url = 'https://' . $_SERVER['HTTP_HOST'] . '/' . $dir . '/' . $file; |
204 | - $response = wp_remote_get( $url ); |
|
205 | - $already_hosted = wp_remote_retrieve_body( $response ) === $new_contents; |
|
206 | - if ( ! $already_hosted ) { |
|
204 | + $response = wp_remote_get($url); |
|
205 | + $already_hosted = wp_remote_retrieve_body($response) === $new_contents; |
|
206 | + if ( ! $already_hosted) { |
|
207 | 207 | WC_Stripe_Logger::log( |
208 | 208 | 'Error: ' . $error . ' ' . |
209 | 209 | /* translators: expected domain association file URL */ |
210 | - sprintf( __( 'To enable Apple Pay, domain association file must be hosted at %s.', 'woocommerce-gateway-stripe' ), $url ) |
|
210 | + sprintf(__('To enable Apple Pay, domain association file must be hosted at %s.', 'woocommerce-gateway-stripe'), $url) |
|
211 | 211 | ); |
212 | 212 | } |
213 | 213 | return $already_hosted; |
214 | 214 | } |
215 | 215 | |
216 | - WC_Stripe_Logger::log( 'Domain association file updated.' ); |
|
216 | + WC_Stripe_Logger::log('Domain association file updated.'); |
|
217 | 217 | return true; |
218 | 218 | } |
219 | 219 | |
@@ -224,32 +224,32 @@ discard block |
||
224 | 224 | * @version 3.1.0 |
225 | 225 | */ |
226 | 226 | public function verify_domain() { |
227 | - if ( ! $this->update_domain_association_file( true ) ) { |
|
227 | + if ( ! $this->update_domain_association_file(true)) { |
|
228 | 228 | $this->stripe_settings['apple_pay_domain_set'] = 'no'; |
229 | - update_option( 'woocommerce_stripe_settings', $this->stripe_settings ); |
|
229 | + update_option('woocommerce_stripe_settings', $this->stripe_settings); |
|
230 | 230 | return; |
231 | 231 | } |
232 | 232 | |
233 | 233 | try { |
234 | 234 | // At this point then the domain association folder and file should be available. |
235 | 235 | // Proceed to verify/and or verify again. |
236 | - $this->register_domain_with_apple( $this->secret_key ); |
|
236 | + $this->register_domain_with_apple($this->secret_key); |
|
237 | 237 | |
238 | 238 | // No errors to this point, verification success! |
239 | 239 | $this->stripe_settings['apple_pay_domain_set'] = 'yes'; |
240 | 240 | $this->apple_pay_domain_set = true; |
241 | 241 | |
242 | - update_option( 'woocommerce_stripe_settings', $this->stripe_settings ); |
|
242 | + update_option('woocommerce_stripe_settings', $this->stripe_settings); |
|
243 | 243 | |
244 | - WC_Stripe_Logger::log( 'Your domain has been verified with Apple Pay!' ); |
|
244 | + WC_Stripe_Logger::log('Your domain has been verified with Apple Pay!'); |
|
245 | 245 | |
246 | - } catch ( Exception $e ) { |
|
246 | + } catch (Exception $e) { |
|
247 | 247 | $this->stripe_settings['apple_pay_domain_set'] = 'no'; |
248 | 248 | $this->apple_pay_domain_set = false; |
249 | 249 | |
250 | - update_option( 'woocommerce_stripe_settings', $this->stripe_settings ); |
|
250 | + update_option('woocommerce_stripe_settings', $this->stripe_settings); |
|
251 | 251 | |
252 | - WC_Stripe_Logger::log( 'Error: ' . $e->getMessage() ); |
|
252 | + WC_Stripe_Logger::log('Error: ' . $e->getMessage()); |
|
253 | 253 | } |
254 | 254 | } |
255 | 255 | |
@@ -259,14 +259,14 @@ discard block |
||
259 | 259 | * @since 4.5.3 |
260 | 260 | * @version 4.5.3 |
261 | 261 | */ |
262 | - public function verify_domain_on_new_secret_key( $prev_settings, $settings ) { |
|
262 | + public function verify_domain_on_new_secret_key($prev_settings, $settings) { |
|
263 | 263 | $this->stripe_settings = $prev_settings; |
264 | 264 | $prev_secret_key = $this->get_secret_key(); |
265 | 265 | |
266 | 266 | $this->stripe_settings = $settings; |
267 | 267 | $this->secret_key = $this->get_secret_key(); |
268 | 268 | |
269 | - if ( ! empty( $this->secret_key ) && $this->secret_key !== $prev_secret_key ) { |
|
269 | + if ( ! empty($this->secret_key) && $this->secret_key !== $prev_secret_key) { |
|
270 | 270 | $this->verify_domain(); |
271 | 271 | } |
272 | 272 | } |
@@ -278,7 +278,7 @@ discard block |
||
278 | 278 | * @version 4.5.3 |
279 | 279 | */ |
280 | 280 | public function verify_domain_if_needed() { |
281 | - if ( $this->apple_pay_domain_set ) { |
|
281 | + if ($this->apple_pay_domain_set) { |
|
282 | 282 | $this->update_domain_association_file(); |
283 | 283 | } else { |
284 | 284 | $this->verify_domain(); |
@@ -291,16 +291,16 @@ discard block |
||
291 | 291 | * @since 4.0.6 |
292 | 292 | */ |
293 | 293 | public function admin_notices() { |
294 | - if ( ! $this->stripe_enabled || ! $this->payment_request ) { |
|
294 | + if ( ! $this->stripe_enabled || ! $this->payment_request) { |
|
295 | 295 | return; |
296 | 296 | } |
297 | 297 | |
298 | - if ( ! current_user_can( 'manage_woocommerce' ) ) { |
|
298 | + if ( ! current_user_can('manage_woocommerce')) { |
|
299 | 299 | return; |
300 | 300 | } |
301 | 301 | |
302 | - $empty_notice = empty( $this->apple_pay_verify_notice ); |
|
303 | - if ( $empty_notice && ( $this->apple_pay_domain_set || empty( $this->secret_key ) ) ) { |
|
302 | + $empty_notice = empty($this->apple_pay_verify_notice); |
|
303 | + if ($empty_notice && ($this->apple_pay_domain_set || empty($this->secret_key))) { |
|
304 | 304 | return; |
305 | 305 | } |
306 | 306 | |
@@ -309,28 +309,28 @@ discard block |
||
309 | 309 | * when setting screen is displayed. So if domain verification is not set, |
310 | 310 | * something went wrong so lets notify user. |
311 | 311 | */ |
312 | - $allowed_html = array( |
|
312 | + $allowed_html = array( |
|
313 | 313 | 'a' => array( |
314 | 314 | 'href' => array(), |
315 | 315 | 'title' => array(), |
316 | 316 | ), |
317 | 317 | ); |
318 | - $verification_failed_without_error = __( 'Apple Pay domain verification failed.', 'woocommerce-gateway-stripe' ); |
|
319 | - $verification_failed_with_error = __( 'Apple Pay domain verification failed with the following error:', 'woocommerce-gateway-stripe' ); |
|
318 | + $verification_failed_without_error = __('Apple Pay domain verification failed.', 'woocommerce-gateway-stripe'); |
|
319 | + $verification_failed_with_error = __('Apple Pay domain verification failed with the following error:', 'woocommerce-gateway-stripe'); |
|
320 | 320 | $check_log_text = sprintf( |
321 | 321 | /* translators: 1) HTML anchor open tag 2) HTML anchor closing tag */ |
322 | - esc_html__( 'Please check the %1$slogs%2$s for more details on this issue. Logging must be enabled to see recorded logs.', 'woocommerce-gateway-stripe' ), |
|
323 | - '<a href="' . admin_url( 'admin.php?page=wc-status&tab=logs' ) . '">', |
|
322 | + esc_html__('Please check the %1$slogs%2$s for more details on this issue. Logging must be enabled to see recorded logs.', 'woocommerce-gateway-stripe'), |
|
323 | + '<a href="' . admin_url('admin.php?page=wc-status&tab=logs') . '">', |
|
324 | 324 | '</a>' |
325 | 325 | ); |
326 | 326 | |
327 | 327 | ?> |
328 | 328 | <div class="error stripe-apple-pay-message"> |
329 | - <?php if ( $empty_notice ) : ?> |
|
330 | - <p><?php echo esc_html( $verification_failed_without_error ); ?></p> |
|
329 | + <?php if ($empty_notice) : ?> |
|
330 | + <p><?php echo esc_html($verification_failed_without_error); ?></p> |
|
331 | 331 | <?php else : ?> |
332 | - <p><?php echo esc_html( $verification_failed_with_error ); ?></p> |
|
333 | - <p><i><?php echo wp_kses( make_clickable( esc_html( $this->apple_pay_verify_notice ) ), $allowed_html ); ?></i></p> |
|
332 | + <p><?php echo esc_html($verification_failed_with_error); ?></p> |
|
333 | + <p><i><?php echo wp_kses(make_clickable(esc_html($this->apple_pay_verify_notice)), $allowed_html); ?></i></p> |
|
334 | 334 | <?php endif; ?> |
335 | 335 | <p><?php echo $check_log_text; ?></p> |
336 | 336 | </div> |
@@ -1,5 +1,5 @@ discard block |
||
1 | 1 | <?php |
2 | -if ( ! defined( 'ABSPATH' ) ) { |
|
2 | +if ( ! defined('ABSPATH')) { |
|
3 | 3 | exit; |
4 | 4 | } |
5 | 5 | |
@@ -16,52 +16,52 @@ discard block |
||
16 | 16 | |
17 | 17 | // TODO Call this only after domain verification has a chance to run |
18 | 18 | public static function notify_of_apple_pay_domain_verification_if_needed() { |
19 | - if ( ! class_exists( 'Automattic\WooCommerce\Admin\Notes\WC_Admin_Notes' ) ) { |
|
19 | + if ( ! class_exists('Automattic\WooCommerce\Admin\Notes\WC_Admin_Notes')) { |
|
20 | 20 | return; |
21 | 21 | } |
22 | 22 | |
23 | - if ( ! class_exists( 'WC_Data_Store' ) ) { |
|
23 | + if ( ! class_exists('WC_Data_Store')) { |
|
24 | 24 | return; |
25 | 25 | } |
26 | 26 | |
27 | - $stripe_settings = get_option( 'woocommerce_stripe_settings', array() ); |
|
27 | + $stripe_settings = get_option('woocommerce_stripe_settings', array()); |
|
28 | 28 | $domain_flag_key = 'apple_pay_domain_set'; |
29 | - $verification_complete = isset( $stripe_settings[ $domain_flag_key ] ) && 'yes' === $stripe_settings[ $domain_flag_key ]; |
|
29 | + $verification_complete = isset($stripe_settings[$domain_flag_key]) && 'yes' === $stripe_settings[$domain_flag_key]; |
|
30 | 30 | |
31 | 31 | // Only show if in the US. |
32 | 32 | $base_location = wc_get_base_location(); |
33 | - if ( ! $base_location || 'US' !== $base_location['country'] ) { |
|
33 | + if ( ! $base_location || 'US' !== $base_location['country']) { |
|
34 | 34 | return; |
35 | 35 | } |
36 | 36 | |
37 | - $data_store = WC_Data_Store::load( 'admin-note' ); |
|
37 | + $data_store = WC_Data_Store::load('admin-note'); |
|
38 | 38 | |
39 | 39 | // First, see if we've already created this kind of note so we don't do it again. |
40 | - $note_ids = $data_store->get_notes_with_name( self::NOTE_NAME ); |
|
41 | - if ( ! empty( $note_ids ) ) { |
|
42 | - $note_id = array_pop( $note_ids ); |
|
43 | - $note = WC_Admin_Notes::get_note( $note_id ); |
|
44 | - if ( false === $note ) { |
|
40 | + $note_ids = $data_store->get_notes_with_name(self::NOTE_NAME); |
|
41 | + if ( ! empty($note_ids)) { |
|
42 | + $note_id = array_pop($note_ids); |
|
43 | + $note = WC_Admin_Notes::get_note($note_id); |
|
44 | + if (false === $note) { |
|
45 | 45 | return; |
46 | 46 | } |
47 | 47 | |
48 | 48 | // If the domain verification completed after the note was created, make sure it's marked as actioned. |
49 | - if ( $verification_complete && WC_Admin_Note::E_WC_ADMIN_NOTE_ACTIONED !== $note->get_status() ) { |
|
50 | - $note->set_status( WC_Admin_Note::E_WC_ADMIN_NOTE_ACTIONED ); |
|
49 | + if ($verification_complete && WC_Admin_Note::E_WC_ADMIN_NOTE_ACTIONED !== $note->get_status()) { |
|
50 | + $note->set_status(WC_Admin_Note::E_WC_ADMIN_NOTE_ACTIONED); |
|
51 | 51 | $note->save(); |
52 | 52 | } |
53 | 53 | return; |
54 | 54 | } |
55 | 55 | |
56 | 56 | $note = new WC_Admin_Note(); |
57 | - $note->set_title( __( 'Apple Pay domain verification needed', 'woocommerce-admin' ) ); |
|
58 | - $note->set_content( __( 'The WooCommerce Stripe Gateway extension attempted to perform domain verification on behalf of your store, but was unable to do so. This will need to be in place before Apple Pay will be functional for your customers.', 'woocommerce-admin' ) ); |
|
59 | - $note->set_type( WC_Admin_Note::E_WC_ADMIN_NOTE_INFORMATIONAL ); |
|
60 | - $note->set_name( self::NOTE_NAME ); |
|
61 | - $note->set_source( 'woocommerce-admin' ); |
|
57 | + $note->set_title(__('Apple Pay domain verification needed', 'woocommerce-admin')); |
|
58 | + $note->set_content(__('The WooCommerce Stripe Gateway extension attempted to perform domain verification on behalf of your store, but was unable to do so. This will need to be in place before Apple Pay will be functional for your customers.', 'woocommerce-admin')); |
|
59 | + $note->set_type(WC_Admin_Note::E_WC_ADMIN_NOTE_INFORMATIONAL); |
|
60 | + $note->set_name(self::NOTE_NAME); |
|
61 | + $note->set_source('woocommerce-admin'); |
|
62 | 62 | $note->add_action( |
63 | 63 | 'learn-more', |
64 | - __( 'Learn more', 'woocommerce-admin' ), |
|
64 | + __('Learn more', 'woocommerce-admin'), |
|
65 | 65 | 'https://docs.woocommerce.com/document/stripe/#apple-pay' |
66 | 66 | ); |
67 | 67 | $note->save(); |