@@ -1,28 +1,28 @@ |
||
1 | 1 | <?php |
2 | 2 | |
3 | -$_tests_dir = getenv( 'WP_TESTS_DIR' ); |
|
4 | -if ( ! $_tests_dir ) { |
|
3 | +$_tests_dir = getenv('WP_TESTS_DIR'); |
|
4 | +if ( ! $_tests_dir) { |
|
5 | 5 | $_tests_dir = '/tmp/wordpress-tests-lib'; |
6 | 6 | } |
7 | 7 | |
8 | 8 | require_once $_tests_dir . '/includes/functions.php'; |
9 | 9 | |
10 | 10 | function _manually_load_plugin() { |
11 | - $plugin_dir = dirname( dirname( dirname( dirname( __FILE__ ) ) ) ) . '/'; |
|
11 | + $plugin_dir = dirname(dirname(dirname(dirname(__FILE__)))) . '/'; |
|
12 | 12 | require $plugin_dir . 'woocommerce-gateway-stripe/woocommerce-gateway-stripe.php'; |
13 | 13 | require $plugin_dir . 'woocommerce/woocommerce.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' ); |
|
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' ); |
|
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 | +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'); |
@@ -1,5 +1,5 @@ discard block |
||
1 | 1 | <?php |
2 | -if ( ! defined( 'ABSPATH' ) ) { |
|
2 | +if ( ! defined('ABSPATH')) { |
|
3 | 3 | exit; |
4 | 4 | } |
5 | 5 | |
@@ -57,9 +57,9 @@ discard block |
||
57 | 57 | */ |
58 | 58 | public function __construct() { |
59 | 59 | $this->id = 'stripe_sofort'; |
60 | - $this->method_title = __( 'Stripe SOFORT', 'woocommerce-gateway-stripe' ); |
|
60 | + $this->method_title = __('Stripe SOFORT', 'woocommerce-gateway-stripe'); |
|
61 | 61 | /* translators: link */ |
62 | - $this->method_description = sprintf( __( 'All other general Stripe settings can be adjusted <a href="%s">here</a>.', 'woocommerce-gateway-stripe' ), admin_url( 'admin.php?page=wc-settings&tab=checkout§ion=stripe' ) ); |
|
62 | + $this->method_description = sprintf(__('All other general Stripe settings can be adjusted <a href="%s">here</a>.', 'woocommerce-gateway-stripe'), admin_url('admin.php?page=wc-settings&tab=checkout§ion=stripe')); |
|
63 | 63 | $this->supports = array( |
64 | 64 | 'products', |
65 | 65 | 'refunds', |
@@ -71,25 +71,25 @@ discard block |
||
71 | 71 | // Load the settings. |
72 | 72 | $this->init_settings(); |
73 | 73 | |
74 | - $main_settings = get_option( 'woocommerce_stripe_settings' ); |
|
75 | - $this->title = $this->get_option( 'title' ); |
|
76 | - $this->description = $this->get_option( 'description' ); |
|
77 | - $this->enabled = $this->get_option( 'enabled' ); |
|
78 | - $this->testmode = ( ! empty( $main_settings['testmode'] ) && 'yes' === $main_settings['testmode'] ) ? true : false; |
|
79 | - $this->saved_cards = ( ! empty( $main_settings['saved_cards'] ) && 'yes' === $main_settings['saved_cards'] ) ? true : false; |
|
80 | - $this->publishable_key = ! empty( $main_settings['publishable_key'] ) ? $main_settings['publishable_key'] : ''; |
|
81 | - $this->secret_key = ! empty( $main_settings['secret_key'] ) ? $main_settings['secret_key'] : ''; |
|
82 | - $this->statement_descriptor = ! empty( $main_settings['statement_descriptor'] ) ? $main_settings['statement_descriptor'] : ''; |
|
83 | - |
|
84 | - if ( $this->testmode ) { |
|
85 | - $this->publishable_key = ! empty( $main_settings['test_publishable_key'] ) ? $main_settings['test_publishable_key'] : ''; |
|
86 | - $this->secret_key = ! empty( $main_settings['test_secret_key'] ) ? $main_settings['test_secret_key'] : ''; |
|
74 | + $main_settings = get_option('woocommerce_stripe_settings'); |
|
75 | + $this->title = $this->get_option('title'); |
|
76 | + $this->description = $this->get_option('description'); |
|
77 | + $this->enabled = $this->get_option('enabled'); |
|
78 | + $this->testmode = ( ! empty($main_settings['testmode']) && 'yes' === $main_settings['testmode']) ? true : false; |
|
79 | + $this->saved_cards = ( ! empty($main_settings['saved_cards']) && 'yes' === $main_settings['saved_cards']) ? true : false; |
|
80 | + $this->publishable_key = ! empty($main_settings['publishable_key']) ? $main_settings['publishable_key'] : ''; |
|
81 | + $this->secret_key = ! empty($main_settings['secret_key']) ? $main_settings['secret_key'] : ''; |
|
82 | + $this->statement_descriptor = ! empty($main_settings['statement_descriptor']) ? $main_settings['statement_descriptor'] : ''; |
|
83 | + |
|
84 | + if ($this->testmode) { |
|
85 | + $this->publishable_key = ! empty($main_settings['test_publishable_key']) ? $main_settings['test_publishable_key'] : ''; |
|
86 | + $this->secret_key = ! empty($main_settings['test_secret_key']) ? $main_settings['test_secret_key'] : ''; |
|
87 | 87 | } |
88 | 88 | |
89 | - add_action( 'woocommerce_update_options_payment_gateways_' . $this->id, array( $this, 'process_admin_options' ) ); |
|
90 | - add_action( 'admin_notices', array( $this, 'check_environment' ) ); |
|
91 | - add_action( 'admin_head', array( $this, 'remove_admin_notice' ) ); |
|
92 | - add_action( 'wp_enqueue_scripts', array( $this, 'payment_scripts' ) ); |
|
89 | + add_action('woocommerce_update_options_payment_gateways_' . $this->id, array($this, 'process_admin_options')); |
|
90 | + add_action('admin_notices', array($this, 'check_environment')); |
|
91 | + add_action('admin_head', array($this, 'remove_admin_notice')); |
|
92 | + add_action('wp_enqueue_scripts', array($this, 'payment_scripts')); |
|
93 | 93 | } |
94 | 94 | |
95 | 95 | /** |
@@ -99,19 +99,19 @@ discard block |
||
99 | 99 | * @version 4.0.0 |
100 | 100 | */ |
101 | 101 | public function check_environment() { |
102 | - if ( ! current_user_can( 'manage_woocommerce' ) ) { |
|
102 | + if ( ! current_user_can('manage_woocommerce')) { |
|
103 | 103 | return; |
104 | 104 | } |
105 | 105 | |
106 | 106 | $environment_warning = $this->get_environment_warning(); |
107 | 107 | |
108 | - if ( $environment_warning ) { |
|
109 | - $this->add_admin_notice( 'bad_environment', 'error', $environment_warning ); |
|
108 | + if ($environment_warning) { |
|
109 | + $this->add_admin_notice('bad_environment', 'error', $environment_warning); |
|
110 | 110 | } |
111 | 111 | |
112 | - foreach ( (array) $this->notices as $notice_key => $notice ) { |
|
113 | - echo "<div class='" . esc_attr( $notice['class'] ) . "'><p>"; |
|
114 | - echo wp_kses( $notice['message'], array( 'a' => array( 'href' => array() ) ) ); |
|
112 | + foreach ((array) $this->notices as $notice_key => $notice) { |
|
113 | + echo "<div class='" . esc_attr($notice['class']) . "'><p>"; |
|
114 | + echo wp_kses($notice['message'], array('a' => array('href' => array()))); |
|
115 | 115 | echo '</p></div>'; |
116 | 116 | } |
117 | 117 | } |
@@ -124,8 +124,8 @@ discard block |
||
124 | 124 | * @version 4.0.0 |
125 | 125 | */ |
126 | 126 | public function get_environment_warning() { |
127 | - if ( 'yes' === $this->enabled && ! in_array( get_woocommerce_currency(), $this->get_supported_currency() ) ) { |
|
128 | - $message = __( 'SOFORT is enabled - it requires store currency to be set to Euros.', 'woocommerce-gateway-stripe' ); |
|
127 | + if ('yes' === $this->enabled && ! in_array(get_woocommerce_currency(), $this->get_supported_currency())) { |
|
128 | + $message = __('SOFORT is enabled - it requires store currency to be set to Euros.', 'woocommerce-gateway-stripe'); |
|
129 | 129 | |
130 | 130 | return $message; |
131 | 131 | } |
@@ -141,9 +141,9 @@ discard block |
||
141 | 141 | * @return array |
142 | 142 | */ |
143 | 143 | public function get_supported_currency() { |
144 | - return apply_filters( 'wc_stripe_sofort_supported_currencies', array( |
|
144 | + return apply_filters('wc_stripe_sofort_supported_currencies', array( |
|
145 | 145 | 'EUR', |
146 | - ) ); |
|
146 | + )); |
|
147 | 147 | } |
148 | 148 | |
149 | 149 | /** |
@@ -154,7 +154,7 @@ discard block |
||
154 | 154 | * @return bool |
155 | 155 | */ |
156 | 156 | public function is_available() { |
157 | - if ( ! in_array( get_woocommerce_currency(), $this->get_supported_currency() ) ) { |
|
157 | + if ( ! in_array(get_woocommerce_currency(), $this->get_supported_currency())) { |
|
158 | 158 | return false; |
159 | 159 | } |
160 | 160 | |
@@ -175,7 +175,7 @@ discard block |
||
175 | 175 | |
176 | 176 | $icons_str .= $icons['sofort']; |
177 | 177 | |
178 | - return apply_filters( 'woocommerce_gateway_icon', $icons_str, $this->id ); |
|
178 | + return apply_filters('woocommerce_gateway_icon', $icons_str, $this->id); |
|
179 | 179 | } |
180 | 180 | |
181 | 181 | /** |
@@ -186,19 +186,19 @@ discard block |
||
186 | 186 | * @access public |
187 | 187 | */ |
188 | 188 | public function payment_scripts() { |
189 | - if ( ! is_cart() && ! is_checkout() && ! isset( $_GET['pay_for_order'] ) && ! is_add_payment_method_page() ) { |
|
189 | + if ( ! is_cart() && ! is_checkout() && ! isset($_GET['pay_for_order']) && ! is_add_payment_method_page()) { |
|
190 | 190 | return; |
191 | 191 | } |
192 | 192 | |
193 | - wp_enqueue_style( 'stripe_paymentfonts' ); |
|
194 | - wp_enqueue_script( 'woocommerce_stripe' ); |
|
193 | + wp_enqueue_style('stripe_paymentfonts'); |
|
194 | + wp_enqueue_script('woocommerce_stripe'); |
|
195 | 195 | } |
196 | 196 | |
197 | 197 | /** |
198 | 198 | * Initialize Gateway Settings Form Fields. |
199 | 199 | */ |
200 | 200 | public function init_form_fields() { |
201 | - $this->form_fields = require( WC_STRIPE_PLUGIN_PATH . '/includes/admin/stripe-sofort-settings.php' ); |
|
201 | + $this->form_fields = require(WC_STRIPE_PLUGIN_PATH . '/includes/admin/stripe-sofort-settings.php'); |
|
202 | 202 | } |
203 | 203 | |
204 | 204 | /** |
@@ -209,25 +209,25 @@ discard block |
||
209 | 209 | $total = WC()->cart->total; |
210 | 210 | |
211 | 211 | // If paying from order, we need to get total from order not cart. |
212 | - if ( isset( $_GET['pay_for_order'] ) && ! empty( $_GET['key'] ) ) { |
|
213 | - $order = wc_get_order( wc_get_order_id_by_order_key( wc_clean( $_GET['key'] ) ) ); |
|
212 | + if (isset($_GET['pay_for_order']) && ! empty($_GET['key'])) { |
|
213 | + $order = wc_get_order(wc_get_order_id_by_order_key(wc_clean($_GET['key']))); |
|
214 | 214 | $total = $order->get_total(); |
215 | 215 | } |
216 | 216 | |
217 | - if ( is_add_payment_method_page() ) { |
|
218 | - $pay_button_text = __( 'Add Payment', 'woocommerce-gateway-stripe' ); |
|
219 | - $total = ''; |
|
217 | + if (is_add_payment_method_page()) { |
|
218 | + $pay_button_text = __('Add Payment', 'woocommerce-gateway-stripe'); |
|
219 | + $total = ''; |
|
220 | 220 | } else { |
221 | 221 | $pay_button_text = ''; |
222 | 222 | } |
223 | 223 | |
224 | 224 | echo '<div |
225 | 225 | id="stripe-sofort-payment-data" |
226 | - data-amount="' . esc_attr( WC_Stripe_Helper::get_stripe_amount( $total ) ) . '" |
|
227 | - data-currency="' . esc_attr( strtolower( get_woocommerce_currency() ) ) . '">'; |
|
226 | + data-amount="' . esc_attr(WC_Stripe_Helper::get_stripe_amount($total)) . '" |
|
227 | + data-currency="' . esc_attr(strtolower(get_woocommerce_currency())) . '">'; |
|
228 | 228 | |
229 | - if ( $this->description ) { |
|
230 | - echo apply_filters( 'wc_stripe_description', wpautop( wp_kses_post( $this->description ) ) ); |
|
229 | + if ($this->description) { |
|
230 | + echo apply_filters('wc_stripe_description', wpautop(wp_kses_post($this->description))); |
|
231 | 231 | } |
232 | 232 | |
233 | 233 | echo '</div>'; |
@@ -241,28 +241,28 @@ discard block |
||
241 | 241 | * @param object $order |
242 | 242 | * @return mixed |
243 | 243 | */ |
244 | - public function create_source( $order ) { |
|
244 | + public function create_source($order) { |
|
245 | 245 | $currency = WC_Stripe_Helper::is_pre_30() ? $order->get_order_currency() : $order->get_currency(); |
246 | 246 | $bank_country = WC_Stripe_Helper::is_pre_30() ? $order->billing_country : $order->get_billing_country(); |
247 | - $return_url = $this->get_stripe_return_url( $order ); |
|
247 | + $return_url = $this->get_stripe_return_url($order); |
|
248 | 248 | $post_data = array(); |
249 | - $post_data['amount'] = WC_Stripe_Helper::get_stripe_amount( $order->get_total(), $currency ); |
|
250 | - $post_data['currency'] = strtolower( $currency ); |
|
249 | + $post_data['amount'] = WC_Stripe_Helper::get_stripe_amount($order->get_total(), $currency); |
|
250 | + $post_data['currency'] = strtolower($currency); |
|
251 | 251 | $post_data['type'] = 'sofort'; |
252 | - $post_data['owner'] = $this->get_owner_details( $order ); |
|
253 | - $post_data['redirect'] = array( 'return_url' => $return_url ); |
|
252 | + $post_data['owner'] = $this->get_owner_details($order); |
|
253 | + $post_data['redirect'] = array('return_url' => $return_url); |
|
254 | 254 | $post_data['sofort'] = array( |
255 | 255 | 'country' => $bank_country, |
256 | 256 | 'preferred_language' => $this->get_locale(), |
257 | 257 | ); |
258 | 258 | |
259 | - if ( ! empty( $this->statement_descriptor ) ) { |
|
260 | - $post_data['statement_descriptor'] = WC_Stripe_Helper::clean_statement_descriptor( $this->statement_descriptor ); |
|
259 | + if ( ! empty($this->statement_descriptor)) { |
|
260 | + $post_data['statement_descriptor'] = WC_Stripe_Helper::clean_statement_descriptor($this->statement_descriptor); |
|
261 | 261 | } |
262 | 262 | |
263 | - WC_Stripe_Logger::log( 'Info: Begin creating SOFORT source' ); |
|
263 | + WC_Stripe_Logger::log('Info: Begin creating SOFORT source'); |
|
264 | 264 | |
265 | - return WC_Stripe_API::request( apply_filters( 'wc_stripe_sofort_source', $post_data, $order ), 'sources' ); |
|
265 | + return WC_Stripe_API::request(apply_filters('wc_stripe_sofort_source', $post_data, $order), 'sources'); |
|
266 | 266 | } |
267 | 267 | |
268 | 268 | /** |
@@ -276,59 +276,59 @@ discard block |
||
276 | 276 | * |
277 | 277 | * @return array|void |
278 | 278 | */ |
279 | - public function process_payment( $order_id, $retry = true, $force_save_source = false ) { |
|
279 | + public function process_payment($order_id, $retry = true, $force_save_source = false) { |
|
280 | 280 | try { |
281 | - $order = wc_get_order( $order_id ); |
|
281 | + $order = wc_get_order($order_id); |
|
282 | 282 | |
283 | 283 | // This will throw exception if not valid. |
284 | - $this->validate_minimum_order_amount( $order ); |
|
284 | + $this->validate_minimum_order_amount($order); |
|
285 | 285 | |
286 | 286 | // This comes from the create account checkbox in the checkout page. |
287 | - $create_account = ! empty( $_POST['createaccount'] ) ? true : false; |
|
287 | + $create_account = ! empty($_POST['createaccount']) ? true : false; |
|
288 | 288 | |
289 | - if ( $create_account ) { |
|
289 | + if ($create_account) { |
|
290 | 290 | $new_customer_id = WC_Stripe_Helper::is_pre_30() ? $order->customer_user : $order->get_customer_id(); |
291 | - $new_stripe_customer = new WC_Stripe_Customer( $new_customer_id ); |
|
291 | + $new_stripe_customer = new WC_Stripe_Customer($new_customer_id); |
|
292 | 292 | $new_stripe_customer->create_customer(); |
293 | 293 | } |
294 | 294 | |
295 | - $response = $this->create_source( $order ); |
|
295 | + $response = $this->create_source($order); |
|
296 | 296 | |
297 | - if ( ! empty( $response->error ) ) { |
|
298 | - $order->add_order_note( $response->error->message ); |
|
297 | + if ( ! empty($response->error)) { |
|
298 | + $order->add_order_note($response->error->message); |
|
299 | 299 | |
300 | 300 | $localized_messages = WC_Stripe_Helper::get_localized_messages(); |
301 | 301 | |
302 | - if ( 'invalid_sofort_country' === $response->error->code ) { |
|
303 | - $localized_message = isset( $localized_messages[ $response->error->code ] ) ? $localized_messages[ $response->error->code ] : $response->error->message; |
|
302 | + if ('invalid_sofort_country' === $response->error->code) { |
|
303 | + $localized_message = isset($localized_messages[$response->error->code]) ? $localized_messages[$response->error->code] : $response->error->message; |
|
304 | 304 | } else { |
305 | - $localized_message = isset( $localized_messages[ $response->error->type ] ) ? $localized_messages[ $response->error->type ] : $response->error->message; |
|
305 | + $localized_message = isset($localized_messages[$response->error->type]) ? $localized_messages[$response->error->type] : $response->error->message; |
|
306 | 306 | } |
307 | 307 | |
308 | - throw new WC_Stripe_Exception( print_r( $response, true ), $localized_message ); |
|
308 | + throw new WC_Stripe_Exception(print_r($response, true), $localized_message); |
|
309 | 309 | } |
310 | 310 | |
311 | - if ( WC_Stripe_Helper::is_pre_30() ) { |
|
312 | - update_post_meta( $order_id, '_stripe_source_id', $response->id ); |
|
311 | + if (WC_Stripe_Helper::is_pre_30()) { |
|
312 | + update_post_meta($order_id, '_stripe_source_id', $response->id); |
|
313 | 313 | } else { |
314 | - $order->update_meta_data( '_stripe_source_id', $response->id ); |
|
314 | + $order->update_meta_data('_stripe_source_id', $response->id); |
|
315 | 315 | $order->save(); |
316 | 316 | } |
317 | 317 | |
318 | - WC_Stripe_Logger::log( 'Info: Redirecting to SOFORT...' ); |
|
318 | + WC_Stripe_Logger::log('Info: Redirecting to SOFORT...'); |
|
319 | 319 | |
320 | 320 | return array( |
321 | 321 | 'result' => 'success', |
322 | - 'redirect' => esc_url_raw( $response->redirect->url ), |
|
322 | + 'redirect' => esc_url_raw($response->redirect->url), |
|
323 | 323 | ); |
324 | - } catch ( WC_Stripe_Exception $e ) { |
|
325 | - wc_add_notice( $e->getLocalizedMessage(), 'error' ); |
|
326 | - WC_Stripe_Logger::log( 'Error: ' . $e->getMessage() ); |
|
324 | + } catch (WC_Stripe_Exception $e) { |
|
325 | + wc_add_notice($e->getLocalizedMessage(), 'error'); |
|
326 | + WC_Stripe_Logger::log('Error: ' . $e->getMessage()); |
|
327 | 327 | |
328 | - do_action( 'wc_gateway_stripe_process_payment_error', $e, $order ); |
|
328 | + do_action('wc_gateway_stripe_process_payment_error', $e, $order); |
|
329 | 329 | |
330 | - if ( $order->has_status( array( 'pending', 'failed' ) ) ) { |
|
331 | - $this->send_failed_order_email( $order_id ); |
|
330 | + if ($order->has_status(array('pending', 'failed'))) { |
|
331 | + $this->send_failed_order_email($order_id); |
|
332 | 332 | } |
333 | 333 | |
334 | 334 | return array( |
@@ -1,5 +1,5 @@ discard block |
||
1 | 1 | <?php |
2 | -if ( ! defined( 'ABSPATH' ) ) { |
|
2 | +if ( ! defined('ABSPATH')) { |
|
3 | 3 | exit; |
4 | 4 | } |
5 | 5 | |
@@ -57,9 +57,9 @@ discard block |
||
57 | 57 | */ |
58 | 58 | public function __construct() { |
59 | 59 | $this->id = 'stripe_bancontact'; |
60 | - $this->method_title = __( 'Stripe Bancontact', 'woocommerce-gateway-stripe' ); |
|
60 | + $this->method_title = __('Stripe Bancontact', 'woocommerce-gateway-stripe'); |
|
61 | 61 | /* translators: link */ |
62 | - $this->method_description = sprintf( __( 'All other general Stripe settings can be adjusted <a href="%s">here</a>.', 'woocommerce-gateway-stripe' ), admin_url( 'admin.php?page=wc-settings&tab=checkout§ion=stripe' ) ); |
|
62 | + $this->method_description = sprintf(__('All other general Stripe settings can be adjusted <a href="%s">here</a>.', 'woocommerce-gateway-stripe'), admin_url('admin.php?page=wc-settings&tab=checkout§ion=stripe')); |
|
63 | 63 | $this->supports = array( |
64 | 64 | 'products', |
65 | 65 | 'refunds', |
@@ -71,25 +71,25 @@ discard block |
||
71 | 71 | // Load the settings. |
72 | 72 | $this->init_settings(); |
73 | 73 | |
74 | - $main_settings = get_option( 'woocommerce_stripe_settings' ); |
|
75 | - $this->title = $this->get_option( 'title' ); |
|
76 | - $this->description = $this->get_option( 'description' ); |
|
77 | - $this->enabled = $this->get_option( 'enabled' ); |
|
78 | - $this->testmode = ( ! empty( $main_settings['testmode'] ) && 'yes' === $main_settings['testmode'] ) ? true : false; |
|
79 | - $this->saved_cards = ( ! empty( $main_settings['saved_cards'] ) && 'yes' === $main_settings['saved_cards'] ) ? true : false; |
|
80 | - $this->publishable_key = ! empty( $main_settings['publishable_key'] ) ? $main_settings['publishable_key'] : ''; |
|
81 | - $this->secret_key = ! empty( $main_settings['secret_key'] ) ? $main_settings['secret_key'] : ''; |
|
82 | - $this->statement_descriptor = ! empty( $main_settings['statement_descriptor'] ) ? $main_settings['statement_descriptor'] : ''; |
|
83 | - |
|
84 | - if ( $this->testmode ) { |
|
85 | - $this->publishable_key = ! empty( $main_settings['test_publishable_key'] ) ? $main_settings['test_publishable_key'] : ''; |
|
86 | - $this->secret_key = ! empty( $main_settings['test_secret_key'] ) ? $main_settings['test_secret_key'] : ''; |
|
74 | + $main_settings = get_option('woocommerce_stripe_settings'); |
|
75 | + $this->title = $this->get_option('title'); |
|
76 | + $this->description = $this->get_option('description'); |
|
77 | + $this->enabled = $this->get_option('enabled'); |
|
78 | + $this->testmode = ( ! empty($main_settings['testmode']) && 'yes' === $main_settings['testmode']) ? true : false; |
|
79 | + $this->saved_cards = ( ! empty($main_settings['saved_cards']) && 'yes' === $main_settings['saved_cards']) ? true : false; |
|
80 | + $this->publishable_key = ! empty($main_settings['publishable_key']) ? $main_settings['publishable_key'] : ''; |
|
81 | + $this->secret_key = ! empty($main_settings['secret_key']) ? $main_settings['secret_key'] : ''; |
|
82 | + $this->statement_descriptor = ! empty($main_settings['statement_descriptor']) ? $main_settings['statement_descriptor'] : ''; |
|
83 | + |
|
84 | + if ($this->testmode) { |
|
85 | + $this->publishable_key = ! empty($main_settings['test_publishable_key']) ? $main_settings['test_publishable_key'] : ''; |
|
86 | + $this->secret_key = ! empty($main_settings['test_secret_key']) ? $main_settings['test_secret_key'] : ''; |
|
87 | 87 | } |
88 | 88 | |
89 | - add_action( 'woocommerce_update_options_payment_gateways_' . $this->id, array( $this, 'process_admin_options' ) ); |
|
90 | - add_action( 'admin_notices', array( $this, 'check_environment' ) ); |
|
91 | - add_action( 'admin_head', array( $this, 'remove_admin_notice' ) ); |
|
92 | - add_action( 'wp_enqueue_scripts', array( $this, 'payment_scripts' ) ); |
|
89 | + add_action('woocommerce_update_options_payment_gateways_' . $this->id, array($this, 'process_admin_options')); |
|
90 | + add_action('admin_notices', array($this, 'check_environment')); |
|
91 | + add_action('admin_head', array($this, 'remove_admin_notice')); |
|
92 | + add_action('wp_enqueue_scripts', array($this, 'payment_scripts')); |
|
93 | 93 | } |
94 | 94 | |
95 | 95 | /** |
@@ -99,19 +99,19 @@ discard block |
||
99 | 99 | * @version 4.0.0 |
100 | 100 | */ |
101 | 101 | public function check_environment() { |
102 | - if ( ! current_user_can( 'manage_woocommerce' ) ) { |
|
102 | + if ( ! current_user_can('manage_woocommerce')) { |
|
103 | 103 | return; |
104 | 104 | } |
105 | 105 | |
106 | 106 | $environment_warning = $this->get_environment_warning(); |
107 | 107 | |
108 | - if ( $environment_warning ) { |
|
109 | - $this->add_admin_notice( 'bad_environment', 'error', $environment_warning ); |
|
108 | + if ($environment_warning) { |
|
109 | + $this->add_admin_notice('bad_environment', 'error', $environment_warning); |
|
110 | 110 | } |
111 | 111 | |
112 | - foreach ( (array) $this->notices as $notice_key => $notice ) { |
|
113 | - echo "<div class='" . esc_attr( $notice['class'] ) . "'><p>"; |
|
114 | - echo wp_kses( $notice['message'], array( 'a' => array( 'href' => array() ) ) ); |
|
112 | + foreach ((array) $this->notices as $notice_key => $notice) { |
|
113 | + echo "<div class='" . esc_attr($notice['class']) . "'><p>"; |
|
114 | + echo wp_kses($notice['message'], array('a' => array('href' => array()))); |
|
115 | 115 | echo '</p></div>'; |
116 | 116 | } |
117 | 117 | } |
@@ -124,8 +124,8 @@ discard block |
||
124 | 124 | * @version 4.0.0 |
125 | 125 | */ |
126 | 126 | public function get_environment_warning() { |
127 | - if ( 'yes' === $this->enabled && ! in_array( get_woocommerce_currency(), $this->get_supported_currency() ) ) { |
|
128 | - $message = __( 'Bancontact is enabled - it requires store currency to be set to Euros.', 'woocommerce-gateway-stripe' ); |
|
127 | + if ('yes' === $this->enabled && ! in_array(get_woocommerce_currency(), $this->get_supported_currency())) { |
|
128 | + $message = __('Bancontact is enabled - it requires store currency to be set to Euros.', 'woocommerce-gateway-stripe'); |
|
129 | 129 | |
130 | 130 | return $message; |
131 | 131 | } |
@@ -141,9 +141,9 @@ discard block |
||
141 | 141 | * @return array |
142 | 142 | */ |
143 | 143 | public function get_supported_currency() { |
144 | - return apply_filters( 'wc_stripe_bancontact_supported_currencies', array( |
|
144 | + return apply_filters('wc_stripe_bancontact_supported_currencies', array( |
|
145 | 145 | 'EUR', |
146 | - ) ); |
|
146 | + )); |
|
147 | 147 | } |
148 | 148 | |
149 | 149 | /** |
@@ -154,7 +154,7 @@ discard block |
||
154 | 154 | * @return bool |
155 | 155 | */ |
156 | 156 | public function is_available() { |
157 | - if ( ! in_array( get_woocommerce_currency(), $this->get_supported_currency() ) ) { |
|
157 | + if ( ! in_array(get_woocommerce_currency(), $this->get_supported_currency())) { |
|
158 | 158 | return false; |
159 | 159 | } |
160 | 160 | |
@@ -175,7 +175,7 @@ discard block |
||
175 | 175 | |
176 | 176 | $icons_str .= $icons['bancontact']; |
177 | 177 | |
178 | - return apply_filters( 'woocommerce_gateway_icon', $icons_str, $this->id ); |
|
178 | + return apply_filters('woocommerce_gateway_icon', $icons_str, $this->id); |
|
179 | 179 | } |
180 | 180 | |
181 | 181 | /** |
@@ -186,19 +186,19 @@ discard block |
||
186 | 186 | * @access public |
187 | 187 | */ |
188 | 188 | public function payment_scripts() { |
189 | - if ( ! is_cart() && ! is_checkout() && ! isset( $_GET['pay_for_order'] ) && ! is_add_payment_method_page() ) { |
|
189 | + if ( ! is_cart() && ! is_checkout() && ! isset($_GET['pay_for_order']) && ! is_add_payment_method_page()) { |
|
190 | 190 | return; |
191 | 191 | } |
192 | 192 | |
193 | - wp_enqueue_style( 'stripe_paymentfonts' ); |
|
194 | - wp_enqueue_script( 'woocommerce_stripe' ); |
|
193 | + wp_enqueue_style('stripe_paymentfonts'); |
|
194 | + wp_enqueue_script('woocommerce_stripe'); |
|
195 | 195 | } |
196 | 196 | |
197 | 197 | /** |
198 | 198 | * Initialize Gateway Settings Form Fields. |
199 | 199 | */ |
200 | 200 | public function init_form_fields() { |
201 | - $this->form_fields = require( WC_STRIPE_PLUGIN_PATH . '/includes/admin/stripe-bancontact-settings.php' ); |
|
201 | + $this->form_fields = require(WC_STRIPE_PLUGIN_PATH . '/includes/admin/stripe-bancontact-settings.php'); |
|
202 | 202 | } |
203 | 203 | |
204 | 204 | /** |
@@ -209,25 +209,25 @@ discard block |
||
209 | 209 | $total = WC()->cart->total; |
210 | 210 | |
211 | 211 | // If paying from order, we need to get total from order not cart. |
212 | - if ( isset( $_GET['pay_for_order'] ) && ! empty( $_GET['key'] ) ) { |
|
213 | - $order = wc_get_order( wc_get_order_id_by_order_key( wc_clean( $_GET['key'] ) ) ); |
|
212 | + if (isset($_GET['pay_for_order']) && ! empty($_GET['key'])) { |
|
213 | + $order = wc_get_order(wc_get_order_id_by_order_key(wc_clean($_GET['key']))); |
|
214 | 214 | $total = $order->get_total(); |
215 | 215 | } |
216 | 216 | |
217 | - if ( is_add_payment_method_page() ) { |
|
218 | - $pay_button_text = __( 'Add Payment', 'woocommerce-gateway-stripe' ); |
|
219 | - $total = ''; |
|
217 | + if (is_add_payment_method_page()) { |
|
218 | + $pay_button_text = __('Add Payment', 'woocommerce-gateway-stripe'); |
|
219 | + $total = ''; |
|
220 | 220 | } else { |
221 | 221 | $pay_button_text = ''; |
222 | 222 | } |
223 | 223 | |
224 | 224 | echo '<div |
225 | 225 | id="stripe-bancontact-payment-data" |
226 | - data-amount="' . esc_attr( WC_Stripe_Helper::get_stripe_amount( $total ) ) . '" |
|
227 | - data-currency="' . esc_attr( strtolower( get_woocommerce_currency() ) ) . '">'; |
|
226 | + data-amount="' . esc_attr(WC_Stripe_Helper::get_stripe_amount($total)) . '" |
|
227 | + data-currency="' . esc_attr(strtolower(get_woocommerce_currency())) . '">'; |
|
228 | 228 | |
229 | - if ( $this->description ) { |
|
230 | - echo apply_filters( 'wc_stripe_description', wpautop( wp_kses_post( $this->description ) ) ); |
|
229 | + if ($this->description) { |
|
230 | + echo apply_filters('wc_stripe_description', wpautop(wp_kses_post($this->description))); |
|
231 | 231 | } |
232 | 232 | |
233 | 233 | echo '</div>'; |
@@ -241,25 +241,25 @@ discard block |
||
241 | 241 | * @param object $order |
242 | 242 | * @return mixed |
243 | 243 | */ |
244 | - public function create_source( $order ) { |
|
244 | + public function create_source($order) { |
|
245 | 245 | $currency = WC_Stripe_Helper::is_pre_30() ? $order->get_order_currency() : $order->get_currency(); |
246 | 246 | $order_id = WC_Stripe_Helper::is_pre_30() ? $order->id : $order->get_id(); |
247 | - $return_url = $this->get_stripe_return_url( $order ); |
|
247 | + $return_url = $this->get_stripe_return_url($order); |
|
248 | 248 | $post_data = array(); |
249 | - $post_data['amount'] = WC_Stripe_Helper::get_stripe_amount( $order->get_total(), $currency ); |
|
250 | - $post_data['currency'] = strtolower( $currency ); |
|
249 | + $post_data['amount'] = WC_Stripe_Helper::get_stripe_amount($order->get_total(), $currency); |
|
250 | + $post_data['currency'] = strtolower($currency); |
|
251 | 251 | $post_data['type'] = 'bancontact'; |
252 | - $post_data['owner'] = $this->get_owner_details( $order ); |
|
253 | - $post_data['redirect'] = array( 'return_url' => $return_url ); |
|
254 | - $post_data['bancontact'] = array( 'preferred_language' => $this->get_locale() ); |
|
252 | + $post_data['owner'] = $this->get_owner_details($order); |
|
253 | + $post_data['redirect'] = array('return_url' => $return_url); |
|
254 | + $post_data['bancontact'] = array('preferred_language' => $this->get_locale()); |
|
255 | 255 | |
256 | - if ( ! empty( $this->statement_descriptor ) ) { |
|
257 | - $post_data['statement_descriptor'] = WC_Stripe_Helper::clean_statement_descriptor( $this->statement_descriptor ); |
|
256 | + if ( ! empty($this->statement_descriptor)) { |
|
257 | + $post_data['statement_descriptor'] = WC_Stripe_Helper::clean_statement_descriptor($this->statement_descriptor); |
|
258 | 258 | } |
259 | 259 | |
260 | - WC_Stripe_Logger::log( 'Info: Begin creating Bancontact source' ); |
|
260 | + WC_Stripe_Logger::log('Info: Begin creating Bancontact source'); |
|
261 | 261 | |
262 | - return WC_Stripe_API::request( apply_filters( 'wc_stripe_bancontact_source', $post_data, $order ), 'sources' ); |
|
262 | + return WC_Stripe_API::request(apply_filters('wc_stripe_bancontact_source', $post_data, $order), 'sources'); |
|
263 | 263 | } |
264 | 264 | |
265 | 265 | /** |
@@ -273,51 +273,51 @@ discard block |
||
273 | 273 | * |
274 | 274 | * @return array|void |
275 | 275 | */ |
276 | - public function process_payment( $order_id, $retry = true, $force_save_source = false ) { |
|
276 | + public function process_payment($order_id, $retry = true, $force_save_source = false) { |
|
277 | 277 | try { |
278 | - $order = wc_get_order( $order_id ); |
|
278 | + $order = wc_get_order($order_id); |
|
279 | 279 | |
280 | 280 | // This will throw exception if not valid. |
281 | - $this->validate_minimum_order_amount( $order ); |
|
281 | + $this->validate_minimum_order_amount($order); |
|
282 | 282 | |
283 | 283 | // This comes from the create account checkbox in the checkout page. |
284 | - $create_account = ! empty( $_POST['createaccount'] ) ? true : false; |
|
284 | + $create_account = ! empty($_POST['createaccount']) ? true : false; |
|
285 | 285 | |
286 | - if ( $create_account ) { |
|
286 | + if ($create_account) { |
|
287 | 287 | $new_customer_id = WC_Stripe_Helper::is_pre_30() ? $order->customer_user : $order->get_customer_id(); |
288 | - $new_stripe_customer = new WC_Stripe_Customer( $new_customer_id ); |
|
288 | + $new_stripe_customer = new WC_Stripe_Customer($new_customer_id); |
|
289 | 289 | $new_stripe_customer->create_customer(); |
290 | 290 | } |
291 | 291 | |
292 | - $response = $this->create_source( $order ); |
|
292 | + $response = $this->create_source($order); |
|
293 | 293 | |
294 | - if ( ! empty( $response->error ) ) { |
|
295 | - $order->add_order_note( $response->error->message ); |
|
294 | + if ( ! empty($response->error)) { |
|
295 | + $order->add_order_note($response->error->message); |
|
296 | 296 | |
297 | - throw new WC_Stripe_Exception( print_r( $response, true ), $response->error->message ); |
|
297 | + throw new WC_Stripe_Exception(print_r($response, true), $response->error->message); |
|
298 | 298 | } |
299 | 299 | |
300 | - if ( WC_Stripe_Helper::is_pre_30() ) { |
|
301 | - update_post_meta( $order_id, '_stripe_source_id', $response->id ); |
|
300 | + if (WC_Stripe_Helper::is_pre_30()) { |
|
301 | + update_post_meta($order_id, '_stripe_source_id', $response->id); |
|
302 | 302 | } else { |
303 | - $order->update_meta_data( '_stripe_source_id', $response->id ); |
|
303 | + $order->update_meta_data('_stripe_source_id', $response->id); |
|
304 | 304 | $order->save(); |
305 | 305 | } |
306 | 306 | |
307 | - WC_Stripe_Logger::log( 'Info: Redirecting to Bancontact...' ); |
|
307 | + WC_Stripe_Logger::log('Info: Redirecting to Bancontact...'); |
|
308 | 308 | |
309 | 309 | return array( |
310 | 310 | 'result' => 'success', |
311 | - 'redirect' => esc_url_raw( $response->redirect->url ), |
|
311 | + 'redirect' => esc_url_raw($response->redirect->url), |
|
312 | 312 | ); |
313 | - } catch ( WC_Stripe_Exception $e ) { |
|
314 | - wc_add_notice( $e->getLocalizedMessage(), 'error' ); |
|
315 | - WC_Stripe_Logger::log( 'Error: ' . $e->getMessage() ); |
|
313 | + } catch (WC_Stripe_Exception $e) { |
|
314 | + wc_add_notice($e->getLocalizedMessage(), 'error'); |
|
315 | + WC_Stripe_Logger::log('Error: ' . $e->getMessage()); |
|
316 | 316 | |
317 | - do_action( 'wc_gateway_stripe_process_payment_error', $e, $order ); |
|
317 | + do_action('wc_gateway_stripe_process_payment_error', $e, $order); |
|
318 | 318 | |
319 | - if ( $order->has_status( array( 'pending', 'failed' ) ) ) { |
|
320 | - $this->send_failed_order_email( $order_id ); |
|
319 | + if ($order->has_status(array('pending', 'failed'))) { |
|
320 | + $this->send_failed_order_email($order_id); |
|
321 | 321 | } |
322 | 322 | |
323 | 323 | return array( |
@@ -1,12 +1,12 @@ discard block |
||
1 | 1 | <?php |
2 | -if ( ! defined( 'ABSPATH' ) ) { |
|
2 | +if ( ! defined('ABSPATH')) { |
|
3 | 3 | exit; |
4 | 4 | } |
5 | 5 | |
6 | 6 | /** |
7 | 7 | * DEPRECATED DO NOT USE!! |
8 | 8 | */ |
9 | -if ( ! class_exists( 'WC_Stripe_Apple_Pay' ) ) { |
|
9 | +if ( ! class_exists('WC_Stripe_Apple_Pay')) { |
|
10 | 10 | class WC_Stripe_Apple_Pay { |
11 | 11 | /** |
12 | 12 | * This Instance. |
@@ -20,15 +20,15 @@ discard block |
||
20 | 20 | } |
21 | 21 | |
22 | 22 | public static function instance() { |
23 | - WC_Stripe_Logger::log( 'DEPRECATED! WC_Stripe_Apple_Pay class has been hard deprecated. Please remove any code that references this class or instance. This class will be removed by version 5.0' ); |
|
23 | + WC_Stripe_Logger::log('DEPRECATED! WC_Stripe_Apple_Pay class has been hard deprecated. Please remove any code that references this class or instance. This class will be removed by version 5.0'); |
|
24 | 24 | return self::$_this; |
25 | 25 | } |
26 | 26 | |
27 | - public function __get( $var ) { |
|
27 | + public function __get($var) { |
|
28 | 28 | return null; |
29 | 29 | } |
30 | 30 | |
31 | - public function __call( $name, $arguments ) { |
|
31 | + public function __call($name, $arguments) { |
|
32 | 32 | return null; |
33 | 33 | } |
34 | 34 | } |
@@ -1,5 +1,5 @@ discard block |
||
1 | 1 | <?php |
2 | -if ( ! defined( 'ABSPATH' ) ) { |
|
2 | +if ( ! defined('ABSPATH')) { |
|
3 | 3 | exit; |
4 | 4 | } |
5 | 5 | |
@@ -64,9 +64,9 @@ discard block |
||
64 | 64 | */ |
65 | 65 | public function __construct() { |
66 | 66 | $this->id = 'stripe_bitcoin'; |
67 | - $this->method_title = __( 'Stripe Bitcoin', 'woocommerce-gateway-stripe' ); |
|
67 | + $this->method_title = __('Stripe Bitcoin', 'woocommerce-gateway-stripe'); |
|
68 | 68 | /* translators: link */ |
69 | - $this->method_description = sprintf( __( 'All other general Stripe settings can be adjusted <a href="%s">here</a>.', 'woocommerce-gateway-stripe' ), admin_url( 'admin.php?page=wc-settings&tab=checkout§ion=stripe' ) ); |
|
69 | + $this->method_description = sprintf(__('All other general Stripe settings can be adjusted <a href="%s">here</a>.', 'woocommerce-gateway-stripe'), admin_url('admin.php?page=wc-settings&tab=checkout§ion=stripe')); |
|
70 | 70 | $this->supports = array( |
71 | 71 | 'products', |
72 | 72 | 'refunds', |
@@ -78,29 +78,29 @@ discard block |
||
78 | 78 | // Load the settings. |
79 | 79 | $this->init_settings(); |
80 | 80 | |
81 | - $main_settings = get_option( 'woocommerce_stripe_settings' ); |
|
82 | - $this->title = $this->get_option( 'title' ); |
|
83 | - $this->description = $this->get_option( 'description' ); |
|
84 | - $this->enabled = $this->get_option( 'enabled' ); |
|
85 | - $this->testmode = ( ! empty( $main_settings['testmode'] ) && 'yes' === $main_settings['testmode'] ) ? true : false; |
|
86 | - $this->saved_cards = ( ! empty( $main_settings['saved_cards'] ) && 'yes' === $main_settings['saved_cards'] ) ? true : false; |
|
87 | - $this->publishable_key = ! empty( $main_settings['publishable_key'] ) ? $main_settings['publishable_key'] : ''; |
|
88 | - $this->secret_key = ! empty( $main_settings['secret_key'] ) ? $main_settings['secret_key'] : ''; |
|
89 | - $this->statement_descriptor = ! empty( $main_settings['statement_descriptor'] ) ? $main_settings['statement_descriptor'] : ''; |
|
90 | - |
|
91 | - if ( $this->testmode ) { |
|
92 | - $this->publishable_key = ! empty( $main_settings['test_publishable_key'] ) ? $main_settings['test_publishable_key'] : ''; |
|
93 | - $this->secret_key = ! empty( $main_settings['test_secret_key'] ) ? $main_settings['test_secret_key'] : ''; |
|
81 | + $main_settings = get_option('woocommerce_stripe_settings'); |
|
82 | + $this->title = $this->get_option('title'); |
|
83 | + $this->description = $this->get_option('description'); |
|
84 | + $this->enabled = $this->get_option('enabled'); |
|
85 | + $this->testmode = ( ! empty($main_settings['testmode']) && 'yes' === $main_settings['testmode']) ? true : false; |
|
86 | + $this->saved_cards = ( ! empty($main_settings['saved_cards']) && 'yes' === $main_settings['saved_cards']) ? true : false; |
|
87 | + $this->publishable_key = ! empty($main_settings['publishable_key']) ? $main_settings['publishable_key'] : ''; |
|
88 | + $this->secret_key = ! empty($main_settings['secret_key']) ? $main_settings['secret_key'] : ''; |
|
89 | + $this->statement_descriptor = ! empty($main_settings['statement_descriptor']) ? $main_settings['statement_descriptor'] : ''; |
|
90 | + |
|
91 | + if ($this->testmode) { |
|
92 | + $this->publishable_key = ! empty($main_settings['test_publishable_key']) ? $main_settings['test_publishable_key'] : ''; |
|
93 | + $this->secret_key = ! empty($main_settings['test_secret_key']) ? $main_settings['test_secret_key'] : ''; |
|
94 | 94 | } |
95 | 95 | |
96 | - add_action( 'woocommerce_update_options_payment_gateways_' . $this->id, array( $this, 'process_admin_options' ) ); |
|
97 | - add_action( 'admin_notices', array( $this, 'check_environment' ) ); |
|
98 | - add_action( 'admin_head', array( $this, 'remove_admin_notice' ) ); |
|
99 | - add_action( 'wp_enqueue_scripts', array( $this, 'payment_scripts' ) ); |
|
100 | - add_action( 'woocommerce_thankyou_stripe_bitcoin', array( $this, 'thankyou_page' ) ); |
|
96 | + add_action('woocommerce_update_options_payment_gateways_' . $this->id, array($this, 'process_admin_options')); |
|
97 | + add_action('admin_notices', array($this, 'check_environment')); |
|
98 | + add_action('admin_head', array($this, 'remove_admin_notice')); |
|
99 | + add_action('wp_enqueue_scripts', array($this, 'payment_scripts')); |
|
100 | + add_action('woocommerce_thankyou_stripe_bitcoin', array($this, 'thankyou_page')); |
|
101 | 101 | |
102 | 102 | // Customer Emails. |
103 | - add_action( 'woocommerce_email_before_order_table', array( $this, 'email_instructions' ), 10, 3 ); |
|
103 | + add_action('woocommerce_email_before_order_table', array($this, 'email_instructions'), 10, 3); |
|
104 | 104 | } |
105 | 105 | |
106 | 106 | /** |
@@ -110,19 +110,19 @@ discard block |
||
110 | 110 | * @version 4.0.0 |
111 | 111 | */ |
112 | 112 | public function check_environment() { |
113 | - if ( ! current_user_can( 'manage_woocommerce' ) ) { |
|
113 | + if ( ! current_user_can('manage_woocommerce')) { |
|
114 | 114 | return; |
115 | 115 | } |
116 | 116 | |
117 | 117 | $environment_warning = $this->get_environment_warning(); |
118 | 118 | |
119 | - if ( $environment_warning ) { |
|
120 | - $this->add_admin_notice( 'bad_environment', 'error', $environment_warning ); |
|
119 | + if ($environment_warning) { |
|
120 | + $this->add_admin_notice('bad_environment', 'error', $environment_warning); |
|
121 | 121 | } |
122 | 122 | |
123 | - foreach ( (array) $this->notices as $notice_key => $notice ) { |
|
124 | - echo "<div class='" . esc_attr( $notice['class'] ) . "'><p>"; |
|
125 | - echo wp_kses( $notice['message'], array( 'a' => array( 'href' => array() ) ) ); |
|
123 | + foreach ((array) $this->notices as $notice_key => $notice) { |
|
124 | + echo "<div class='" . esc_attr($notice['class']) . "'><p>"; |
|
125 | + echo wp_kses($notice['message'], array('a' => array('href' => array()))); |
|
126 | 126 | echo '</p></div>'; |
127 | 127 | } |
128 | 128 | } |
@@ -136,12 +136,12 @@ discard block |
||
136 | 136 | */ |
137 | 137 | public function get_environment_warning() { |
138 | 138 | // Add deprecated notice to logs. |
139 | - if ( 'yes' === $this->enabled ) { |
|
140 | - WC_Stripe_Logger::log( 'DEPRECATED! Stripe will no longer support Bitcoin and will cease to function on April 23, 2018. Please plan accordingly.' ); |
|
139 | + if ('yes' === $this->enabled) { |
|
140 | + WC_Stripe_Logger::log('DEPRECATED! Stripe will no longer support Bitcoin and will cease to function on April 23, 2018. Please plan accordingly.'); |
|
141 | 141 | } |
142 | 142 | |
143 | - if ( 'yes' === $this->enabled && ! in_array( get_woocommerce_currency(), $this->get_supported_currency() ) ) { |
|
144 | - $message = __( 'Bitcoin is enabled - it requires store currency to be set to USD.', 'woocommerce-gateway-stripe' ); |
|
143 | + if ('yes' === $this->enabled && ! in_array(get_woocommerce_currency(), $this->get_supported_currency())) { |
|
144 | + $message = __('Bitcoin is enabled - it requires store currency to be set to USD.', 'woocommerce-gateway-stripe'); |
|
145 | 145 | |
146 | 146 | return $message; |
147 | 147 | } |
@@ -157,9 +157,9 @@ discard block |
||
157 | 157 | * @return array |
158 | 158 | */ |
159 | 159 | public function get_supported_currency() { |
160 | - return apply_filters( 'wc_stripe_bitcoin_supported_currencies', array( |
|
160 | + return apply_filters('wc_stripe_bitcoin_supported_currencies', array( |
|
161 | 161 | 'USD', |
162 | - ) ); |
|
162 | + )); |
|
163 | 163 | } |
164 | 164 | |
165 | 165 | /** |
@@ -170,7 +170,7 @@ discard block |
||
170 | 170 | * @return bool |
171 | 171 | */ |
172 | 172 | public function is_available() { |
173 | - if ( ! in_array( get_woocommerce_currency(), $this->get_supported_currency() ) ) { |
|
173 | + if ( ! in_array(get_woocommerce_currency(), $this->get_supported_currency())) { |
|
174 | 174 | return false; |
175 | 175 | } |
176 | 176 | |
@@ -191,7 +191,7 @@ discard block |
||
191 | 191 | |
192 | 192 | $icons_str .= $icons['bitcoin']; |
193 | 193 | |
194 | - return apply_filters( 'woocommerce_gateway_icon', $icons_str, $this->id ); |
|
194 | + return apply_filters('woocommerce_gateway_icon', $icons_str, $this->id); |
|
195 | 195 | } |
196 | 196 | |
197 | 197 | /** |
@@ -202,19 +202,19 @@ discard block |
||
202 | 202 | * @access public |
203 | 203 | */ |
204 | 204 | public function payment_scripts() { |
205 | - if ( ! is_cart() && ! is_checkout() && ! isset( $_GET['pay_for_order'] ) && ! is_add_payment_method_page() ) { |
|
205 | + if ( ! is_cart() && ! is_checkout() && ! isset($_GET['pay_for_order']) && ! is_add_payment_method_page()) { |
|
206 | 206 | return; |
207 | 207 | } |
208 | 208 | |
209 | - wp_enqueue_style( 'stripe_paymentfonts' ); |
|
210 | - wp_enqueue_script( 'woocommerce_stripe' ); |
|
209 | + wp_enqueue_style('stripe_paymentfonts'); |
|
210 | + wp_enqueue_script('woocommerce_stripe'); |
|
211 | 211 | } |
212 | 212 | |
213 | 213 | /** |
214 | 214 | * Initialize Gateway Settings Form Fields. |
215 | 215 | */ |
216 | 216 | public function init_form_fields() { |
217 | - $this->form_fields = require( WC_STRIPE_PLUGIN_PATH . '/includes/admin/stripe-bitcoin-settings.php' ); |
|
217 | + $this->form_fields = require(WC_STRIPE_PLUGIN_PATH . '/includes/admin/stripe-bitcoin-settings.php'); |
|
218 | 218 | } |
219 | 219 | |
220 | 220 | /** |
@@ -225,25 +225,25 @@ discard block |
||
225 | 225 | $total = WC()->cart->total; |
226 | 226 | |
227 | 227 | // If paying from order, we need to get total from order not cart. |
228 | - if ( isset( $_GET['pay_for_order'] ) && ! empty( $_GET['key'] ) ) { |
|
229 | - $order = wc_get_order( wc_get_order_id_by_order_key( wc_clean( $_GET['key'] ) ) ); |
|
228 | + if (isset($_GET['pay_for_order']) && ! empty($_GET['key'])) { |
|
229 | + $order = wc_get_order(wc_get_order_id_by_order_key(wc_clean($_GET['key']))); |
|
230 | 230 | $total = $order->get_total(); |
231 | 231 | } |
232 | 232 | |
233 | - if ( is_add_payment_method_page() ) { |
|
234 | - $pay_button_text = __( 'Add Payment', 'woocommerce-gateway-stripe' ); |
|
235 | - $total = ''; |
|
233 | + if (is_add_payment_method_page()) { |
|
234 | + $pay_button_text = __('Add Payment', 'woocommerce-gateway-stripe'); |
|
235 | + $total = ''; |
|
236 | 236 | } else { |
237 | 237 | $pay_button_text = ''; |
238 | 238 | } |
239 | 239 | |
240 | 240 | echo '<div |
241 | 241 | id="stripe-bitcoin-payment-data" |
242 | - data-amount="' . esc_attr( WC_Stripe_Helper::get_stripe_amount( $total ) ) . '" |
|
243 | - data-currency="' . esc_attr( strtolower( get_woocommerce_currency() ) ) . '">'; |
|
242 | + data-amount="' . esc_attr(WC_Stripe_Helper::get_stripe_amount($total)) . '" |
|
243 | + data-currency="' . esc_attr(strtolower(get_woocommerce_currency())) . '">'; |
|
244 | 244 | |
245 | - if ( $this->description ) { |
|
246 | - echo apply_filters( 'wc_stripe_description', wpautop( wp_kses_post( $this->description ) ) ); |
|
245 | + if ($this->description) { |
|
246 | + echo apply_filters('wc_stripe_description', wpautop(wp_kses_post($this->description))); |
|
247 | 247 | } |
248 | 248 | |
249 | 249 | echo '</div>'; |
@@ -254,8 +254,8 @@ discard block |
||
254 | 254 | * |
255 | 255 | * @param int $order_id |
256 | 256 | */ |
257 | - public function thankyou_page( $order_id ) { |
|
258 | - $this->get_instructions( $order_id ); |
|
257 | + public function thankyou_page($order_id) { |
|
258 | + $this->get_instructions($order_id); |
|
259 | 259 | } |
260 | 260 | |
261 | 261 | /** |
@@ -267,13 +267,13 @@ discard block |
||
267 | 267 | * @param bool $sent_to_admin |
268 | 268 | * @param bool $plain_text |
269 | 269 | */ |
270 | - public function email_instructions( $order, $sent_to_admin, $plain_text = false ) { |
|
270 | + public function email_instructions($order, $sent_to_admin, $plain_text = false) { |
|
271 | 271 | $order_id = WC_Stripe_Helper::is_pre_30() ? $order->id : $order->get_id(); |
272 | 272 | |
273 | 273 | $payment_method = WC_Stripe_Helper::is_pre_30() ? $order->payment_method : $order->get_payment_method(); |
274 | 274 | |
275 | - if ( ! $sent_to_admin && 'stripe_bitcoin' === $payment_method && $order->has_status( 'on-hold' ) ) { |
|
276 | - $this->get_instructions( $order_id, $plain_text ); |
|
275 | + if ( ! $sent_to_admin && 'stripe_bitcoin' === $payment_method && $order->has_status('on-hold')) { |
|
276 | + $this->get_instructions($order_id, $plain_text); |
|
277 | 277 | } |
278 | 278 | } |
279 | 279 | |
@@ -284,38 +284,38 @@ discard block |
||
284 | 284 | * @version 4.0.0 |
285 | 285 | * @param int $order_id |
286 | 286 | */ |
287 | - public function get_instructions( $order_id, $plain_text = false ) { |
|
288 | - $data = get_post_meta( $order_id, '_stripe_bitcoin', true ); |
|
287 | + public function get_instructions($order_id, $plain_text = false) { |
|
288 | + $data = get_post_meta($order_id, '_stripe_bitcoin', true); |
|
289 | 289 | |
290 | - if ( $plain_text ) { |
|
291 | - esc_html_e( 'Please pay the following:', 'woocommerce-gateway-stripe' ) . "\n\n"; |
|
290 | + if ($plain_text) { |
|
291 | + esc_html_e('Please pay the following:', 'woocommerce-gateway-stripe') . "\n\n"; |
|
292 | 292 | echo "=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=\n\n"; |
293 | - esc_html_e( 'Bitcoin Amount:', 'woocommerce-gateway-stripe' ) . "\n\n"; |
|
293 | + esc_html_e('Bitcoin Amount:', 'woocommerce-gateway-stripe') . "\n\n"; |
|
294 | 294 | echo $data['amount'] . "\n\n"; |
295 | 295 | echo "=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=\n\n"; |
296 | - esc_html_e( 'Receiver:', 'woocommerce-gateway-stripe' ) . "\n\n"; |
|
296 | + esc_html_e('Receiver:', 'woocommerce-gateway-stripe') . "\n\n"; |
|
297 | 297 | echo $data['address'] . "\n\n"; |
298 | 298 | echo "=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=\n\n"; |
299 | - esc_html_e( 'URI:', 'woocommerce-gateway-stripe' ) . "\n\n"; |
|
299 | + esc_html_e('URI:', 'woocommerce-gateway-stripe') . "\n\n"; |
|
300 | 300 | echo $data['uri'] . "\n\n"; |
301 | 301 | } else { |
302 | 302 | ?> |
303 | - <h3><?php esc_html_e( 'Please pay the following:', 'woocommerce-gateway-stripe' ); ?></h3> |
|
303 | + <h3><?php esc_html_e('Please pay the following:', 'woocommerce-gateway-stripe'); ?></h3> |
|
304 | 304 | <ul class="woocommerce-order-overview woocommerce-thankyou-order-details order_details"> |
305 | 305 | <li class="woocommerce-order-overview__order order"> |
306 | - <?php esc_html_e( 'Bitcoin Amount:', 'woocommerce-gateway-stripe' ); ?> |
|
306 | + <?php esc_html_e('Bitcoin Amount:', 'woocommerce-gateway-stripe'); ?> |
|
307 | 307 | <strong><?php echo $data['amount']; ?></strong> |
308 | 308 | </li> |
309 | 309 | <li class="woocommerce-order-overview__order order"> |
310 | - <?php esc_html_e( 'Receiver:', 'woocommerce-gateway-stripe' ); ?> |
|
310 | + <?php esc_html_e('Receiver:', 'woocommerce-gateway-stripe'); ?> |
|
311 | 311 | <strong><?php echo $data['address']; ?></strong> |
312 | 312 | </li> |
313 | 313 | <li class="woocommerce-order-overview__order order"> |
314 | - <?php esc_html_e( 'URI:', 'woocommerce-gateway-stripe' ); ?> |
|
314 | + <?php esc_html_e('URI:', 'woocommerce-gateway-stripe'); ?> |
|
315 | 315 | <strong> |
316 | 316 | <?php |
317 | 317 | /* translators: link */ |
318 | - printf( __( '<a href="%s">Pay Bitcoin</a>', 'woocommerce-gateway-stripe' ), $data['uri'] ); |
|
318 | + printf(__('<a href="%s">Pay Bitcoin</a>', 'woocommerce-gateway-stripe'), $data['uri']); |
|
319 | 319 | ?> |
320 | 320 | </strong> |
321 | 321 | </li> |
@@ -332,7 +332,7 @@ discard block |
||
332 | 332 | * @param object $order |
333 | 333 | * @param object $source_object |
334 | 334 | */ |
335 | - public function save_instructions( $order, $source_object ) { |
|
335 | + public function save_instructions($order, $source_object) { |
|
336 | 336 | $data = array( |
337 | 337 | 'amount' => $source_object->bitcoin->amount, |
338 | 338 | 'address' => $source_object->bitcoin->address, |
@@ -341,7 +341,7 @@ discard block |
||
341 | 341 | |
342 | 342 | $order_id = WC_Stripe_Helper::is_pre_30() ? $order->id : $order->get_id(); |
343 | 343 | |
344 | - update_post_meta( $order_id, '_stripe_bitcoin', $data ); |
|
344 | + update_post_meta($order_id, '_stripe_bitcoin', $data); |
|
345 | 345 | } |
346 | 346 | |
347 | 347 | /** |
@@ -355,37 +355,37 @@ discard block |
||
355 | 355 | * |
356 | 356 | * @return array|void |
357 | 357 | */ |
358 | - public function process_payment( $order_id, $retry = true, $force_save_source = false ) { |
|
358 | + public function process_payment($order_id, $retry = true, $force_save_source = false) { |
|
359 | 359 | try { |
360 | - $order = wc_get_order( $order_id ); |
|
360 | + $order = wc_get_order($order_id); |
|
361 | 361 | |
362 | 362 | // This comes from the create account checkbox in the checkout page. |
363 | - $create_account = ! empty( $_POST['createaccount'] ) ? true : false; |
|
363 | + $create_account = ! empty($_POST['createaccount']) ? true : false; |
|
364 | 364 | |
365 | - if ( $create_account ) { |
|
365 | + if ($create_account) { |
|
366 | 366 | $new_customer_id = WC_Stripe_Helper::is_pre_30() ? $order->customer_user : $order->get_customer_id(); |
367 | - $new_stripe_customer = new WC_Stripe_Customer( $new_customer_id ); |
|
367 | + $new_stripe_customer = new WC_Stripe_Customer($new_customer_id); |
|
368 | 368 | $new_stripe_customer->create_customer(); |
369 | 369 | } |
370 | 370 | |
371 | - $prepared_source = $this->prepare_source( get_current_user_id(), $force_save_source ); |
|
371 | + $prepared_source = $this->prepare_source(get_current_user_id(), $force_save_source); |
|
372 | 372 | |
373 | - if ( empty( $prepared_source->source ) ) { |
|
374 | - $localized_message = __( 'Payment processing failed. Please retry.', 'woocommerce-gateway-stripe' ); |
|
375 | - throw new WC_Stripe_Exception( print_r( $prepared_source, true ), $localized_message ); |
|
373 | + if (empty($prepared_source->source)) { |
|
374 | + $localized_message = __('Payment processing failed. Please retry.', 'woocommerce-gateway-stripe'); |
|
375 | + throw new WC_Stripe_Exception(print_r($prepared_source, true), $localized_message); |
|
376 | 376 | } |
377 | 377 | |
378 | - $this->save_source_to_order( $order, $prepared_source ); |
|
378 | + $this->save_source_to_order($order, $prepared_source); |
|
379 | 379 | |
380 | 380 | // This will throw exception if not valid. |
381 | - $this->validate_minimum_order_amount( $order ); |
|
381 | + $this->validate_minimum_order_amount($order); |
|
382 | 382 | |
383 | - $this->save_instructions( $order, $this->get_source_object( $prepared_source->source ) ); |
|
383 | + $this->save_instructions($order, $this->get_source_object($prepared_source->source)); |
|
384 | 384 | |
385 | 385 | // Mark as on-hold (we're awaiting the payment). |
386 | - $order->update_status( 'on-hold', __( 'Awaiting Bitcoin payment', 'woocommerce-gateway-stripe' ) ); |
|
386 | + $order->update_status('on-hold', __('Awaiting Bitcoin payment', 'woocommerce-gateway-stripe')); |
|
387 | 387 | |
388 | - wc_reduce_stock_levels( $order_id ); |
|
388 | + wc_reduce_stock_levels($order_id); |
|
389 | 389 | |
390 | 390 | // Remove cart. |
391 | 391 | WC()->cart->empty_cart(); |
@@ -393,16 +393,16 @@ discard block |
||
393 | 393 | // Return thankyou redirect. |
394 | 394 | return array( |
395 | 395 | 'result' => 'success', |
396 | - 'redirect' => $this->get_return_url( $order ), |
|
396 | + 'redirect' => $this->get_return_url($order), |
|
397 | 397 | ); |
398 | - } catch ( WC_Stripe_Exception $e ) { |
|
399 | - wc_add_notice( $e->getLocalizedMessage(), 'error' ); |
|
400 | - WC_Stripe_Logger::log( 'Error: ' . $e->getMessage() ); |
|
398 | + } catch (WC_Stripe_Exception $e) { |
|
399 | + wc_add_notice($e->getLocalizedMessage(), 'error'); |
|
400 | + WC_Stripe_Logger::log('Error: ' . $e->getMessage()); |
|
401 | 401 | |
402 | - do_action( 'wc_gateway_stripe_process_payment_error', $e, $order ); |
|
402 | + do_action('wc_gateway_stripe_process_payment_error', $e, $order); |
|
403 | 403 | |
404 | - if ( $order->has_status( array( 'pending', 'failed' ) ) ) { |
|
405 | - $this->send_failed_order_email( $order_id ); |
|
404 | + if ($order->has_status(array('pending', 'failed'))) { |
|
405 | + $this->send_failed_order_email($order_id); |
|
406 | 406 | } |
407 | 407 | |
408 | 408 | return array( |
@@ -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,24 +15,24 @@ 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 ); |
|
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 | 23 | |
24 | 24 | // Display the credit card used for a subscription in the "My Subscriptions" table. |
25 | - add_filter( 'woocommerce_my_subscriptions_payment_method', array( $this, 'maybe_render_subscription_payment_method' ), 10, 2 ); |
|
25 | + add_filter('woocommerce_my_subscriptions_payment_method', array($this, 'maybe_render_subscription_payment_method'), 10, 2); |
|
26 | 26 | |
27 | 27 | // Allow store managers to manually set Stripe as the payment method on a subscription. |
28 | - add_filter( 'woocommerce_subscription_payment_meta', array( $this, 'add_subscription_payment_meta' ), 10, 2 ); |
|
29 | - add_filter( 'woocommerce_subscription_validate_payment_meta', array( $this, 'validate_subscription_payment_meta' ), 10, 2 ); |
|
30 | - add_filter( 'wc_stripe_display_save_payment_method_checkbox', array( $this, 'maybe_hide_save_checkbox' ) ); |
|
31 | - add_filter( 'wc_stripe_payment_metadata', array( $this, 'add_subscription_meta_data' ), 10, 2 ); |
|
28 | + add_filter('woocommerce_subscription_payment_meta', array($this, 'add_subscription_payment_meta'), 10, 2); |
|
29 | + add_filter('woocommerce_subscription_validate_payment_meta', array($this, 'validate_subscription_payment_meta'), 10, 2); |
|
30 | + add_filter('wc_stripe_display_save_payment_method_checkbox', array($this, 'maybe_hide_save_checkbox')); |
|
31 | + add_filter('wc_stripe_payment_metadata', array($this, 'add_subscription_meta_data'), 10, 2); |
|
32 | 32 | } |
33 | 33 | |
34 | - if ( class_exists( 'WC_Pre_Orders_Order' ) ) { |
|
35 | - add_action( 'wc_pre_orders_process_pre_order_completion_payment_' . $this->id, array( $this, 'process_pre_order_release_payment' ) ); |
|
34 | + if (class_exists('WC_Pre_Orders_Order')) { |
|
35 | + add_action('wc_pre_orders_process_pre_order_completion_payment_' . $this->id, array($this, 'process_pre_order_release_payment')); |
|
36 | 36 | } |
37 | 37 | } |
38 | 38 | |
@@ -43,8 +43,8 @@ discard block |
||
43 | 43 | * @since 4.0.0 |
44 | 44 | * @version 4.0.0 |
45 | 45 | */ |
46 | - public function maybe_hide_save_checkbox( $display_tokenization ) { |
|
47 | - if ( WC_Subscriptions_Cart::cart_contains_subscription() ) { |
|
46 | + public function maybe_hide_save_checkbox($display_tokenization) { |
|
47 | + if (WC_Subscriptions_Cart::cart_contains_subscription()) { |
|
48 | 48 | return false; |
49 | 49 | } |
50 | 50 | |
@@ -56,8 +56,8 @@ discard block |
||
56 | 56 | * @param int $order_id |
57 | 57 | * @return boolean |
58 | 58 | */ |
59 | - public function has_subscription( $order_id ) { |
|
60 | - return ( function_exists( 'wcs_order_contains_subscription' ) && ( wcs_order_contains_subscription( $order_id ) || wcs_is_subscription( $order_id ) || wcs_order_contains_renewal( $order_id ) ) ); |
|
59 | + public function has_subscription($order_id) { |
|
60 | + return (function_exists('wcs_order_contains_subscription') && (wcs_order_contains_subscription($order_id) || wcs_is_subscription($order_id) || wcs_order_contains_renewal($order_id))); |
|
61 | 61 | } |
62 | 62 | |
63 | 63 | /** |
@@ -65,8 +65,8 @@ discard block |
||
65 | 65 | * @param int $order_id |
66 | 66 | * @return boolean |
67 | 67 | */ |
68 | - protected function is_pre_order( $order_id ) { |
|
69 | - return ( class_exists( 'WC_Pre_Orders_Order' ) && WC_Pre_Orders_Order::order_contains_pre_order( $order_id ) ); |
|
68 | + protected function is_pre_order($order_id) { |
|
69 | + return (class_exists('WC_Pre_Orders_Order') && WC_Pre_Orders_Order::order_contains_pre_order($order_id)); |
|
70 | 70 | } |
71 | 71 | |
72 | 72 | /** |
@@ -74,14 +74,14 @@ discard block |
||
74 | 74 | * @param int $order_id |
75 | 75 | * @return array |
76 | 76 | */ |
77 | - public function process_payment( $order_id, $retry = true, $force_save_source = false ) { |
|
78 | - if ( $this->has_subscription( $order_id ) ) { |
|
77 | + public function process_payment($order_id, $retry = true, $force_save_source = false) { |
|
78 | + if ($this->has_subscription($order_id)) { |
|
79 | 79 | // Regular payment with force customer enabled. |
80 | - return parent::process_payment( $order_id, true, true ); |
|
81 | - } elseif ( $this->is_pre_order( $order_id ) ) { |
|
82 | - return $this->process_pre_order( $order_id, $retry, $force_save_source ); |
|
80 | + return parent::process_payment($order_id, true, true); |
|
81 | + } elseif ($this->is_pre_order($order_id)) { |
|
82 | + return $this->process_pre_order($order_id, $retry, $force_save_source); |
|
83 | 83 | } else { |
84 | - return parent::process_payment( $order_id, $retry, $force_save_source ); |
|
84 | + return parent::process_payment($order_id, $retry, $force_save_source); |
|
85 | 85 | } |
86 | 86 | } |
87 | 87 | |
@@ -92,14 +92,14 @@ discard block |
||
92 | 92 | * @param array $metadata |
93 | 93 | * @param object $order |
94 | 94 | */ |
95 | - public function add_subscription_meta_data( $metadata, $order ) { |
|
96 | - if ( ! $this->has_subscription( WC_Stripe_Helper::is_pre_30() ? $order->id : $order->get_id() ) ) { |
|
95 | + public function add_subscription_meta_data($metadata, $order) { |
|
96 | + if ( ! $this->has_subscription(WC_Stripe_Helper::is_pre_30() ? $order->id : $order->get_id())) { |
|
97 | 97 | return $metadata; |
98 | 98 | } |
99 | 99 | |
100 | 100 | return $metadata += array( |
101 | 101 | 'payment_type' => 'recurring', |
102 | - 'site_url' => esc_url( get_site_url() ), |
|
102 | + 'site_url' => esc_url(get_site_url()), |
|
103 | 103 | ); |
104 | 104 | } |
105 | 105 | |
@@ -109,24 +109,24 @@ discard block |
||
109 | 109 | * @since 3.1.0 |
110 | 110 | * @version 4.0.0 |
111 | 111 | */ |
112 | - public function save_source_to_order( $order, $source ) { |
|
113 | - parent::save_source_to_order( $order, $source ); |
|
112 | + public function save_source_to_order($order, $source) { |
|
113 | + parent::save_source_to_order($order, $source); |
|
114 | 114 | |
115 | - $order_id = WC_Stripe_Helper::is_pre_30() ? $order->id : $order->get_id(); |
|
115 | + $order_id = WC_Stripe_Helper::is_pre_30() ? $order->id : $order->get_id(); |
|
116 | 116 | |
117 | 117 | // Also store it on the subscriptions being purchased or paid for in the order. |
118 | - if ( function_exists( 'wcs_order_contains_subscription' ) && wcs_order_contains_subscription( $order_id ) ) { |
|
119 | - $subscriptions = wcs_get_subscriptions_for_order( $order_id ); |
|
120 | - } elseif ( function_exists( 'wcs_order_contains_renewal' ) && wcs_order_contains_renewal( $order_id ) ) { |
|
121 | - $subscriptions = wcs_get_subscriptions_for_renewal_order( $order_id ); |
|
118 | + if (function_exists('wcs_order_contains_subscription') && wcs_order_contains_subscription($order_id)) { |
|
119 | + $subscriptions = wcs_get_subscriptions_for_order($order_id); |
|
120 | + } elseif (function_exists('wcs_order_contains_renewal') && wcs_order_contains_renewal($order_id)) { |
|
121 | + $subscriptions = wcs_get_subscriptions_for_renewal_order($order_id); |
|
122 | 122 | } else { |
123 | 123 | $subscriptions = array(); |
124 | 124 | } |
125 | 125 | |
126 | - foreach ( $subscriptions as $subscription ) { |
|
126 | + foreach ($subscriptions as $subscription) { |
|
127 | 127 | $subscription_id = WC_Stripe_Helper::is_pre_30() ? $subscription->id : $subscription->get_id(); |
128 | - update_post_meta( $subscription_id, '_stripe_customer_id', $source->customer ); |
|
129 | - update_post_meta( $subscription_id, '_stripe_source_id', $source->source ); |
|
128 | + update_post_meta($subscription_id, '_stripe_customer_id', $source->customer); |
|
129 | + update_post_meta($subscription_id, '_stripe_source_id', $source->source); |
|
130 | 130 | } |
131 | 131 | } |
132 | 132 | |
@@ -139,45 +139,45 @@ discard block |
||
139 | 139 | * @param mixed $renewal_order |
140 | 140 | * @param bool $is_retry Is this a retry process. |
141 | 141 | */ |
142 | - public function process_subscription_payment( $amount = 0.0, $renewal_order, $is_retry = false ) { |
|
143 | - if ( $amount * 100 < WC_Stripe_Helper::get_minimum_amount() ) { |
|
142 | + public function process_subscription_payment($amount = 0.0, $renewal_order, $is_retry = false) { |
|
143 | + if ($amount * 100 < WC_Stripe_Helper::get_minimum_amount()) { |
|
144 | 144 | /* translators: minimum amount */ |
145 | - return new WP_Error( 'stripe_error', sprintf( __( 'Sorry, the minimum allowed order total is %1$s to use this payment method.', 'woocommerce-gateway-stripe' ), wc_price( WC_Stripe_Helper::get_minimum_amount() / 100 ) ) ); |
|
145 | + return new WP_Error('stripe_error', sprintf(__('Sorry, the minimum allowed order total is %1$s to use this payment method.', 'woocommerce-gateway-stripe'), wc_price(WC_Stripe_Helper::get_minimum_amount() / 100))); |
|
146 | 146 | } |
147 | 147 | |
148 | 148 | $order_id = WC_Stripe_Helper::is_pre_30() ? $renewal_order->id : $renewal_order->get_id(); |
149 | 149 | |
150 | 150 | // Get source from order. |
151 | - $prepared_source = $this->prepare_order_source( $renewal_order ); |
|
151 | + $prepared_source = $this->prepare_order_source($renewal_order); |
|
152 | 152 | |
153 | - if ( ! $prepared_source->customer ) { |
|
154 | - return new WP_Error( 'stripe_error', __( 'Customer not found', 'woocommerce-gateway-stripe' ) ); |
|
153 | + if ( ! $prepared_source->customer) { |
|
154 | + return new WP_Error('stripe_error', __('Customer not found', 'woocommerce-gateway-stripe')); |
|
155 | 155 | } |
156 | 156 | |
157 | - WC_Stripe_Logger::log( "Info: Begin processing subscription payment for order {$order_id} for the amount of {$amount}" ); |
|
157 | + WC_Stripe_Logger::log("Info: Begin processing subscription payment for order {$order_id} for the amount of {$amount}"); |
|
158 | 158 | |
159 | - if ( $is_retry ) { |
|
159 | + if ($is_retry) { |
|
160 | 160 | // Passing empty source with charge customer default. |
161 | 161 | $prepared_source->source = ''; |
162 | 162 | } |
163 | 163 | |
164 | - $request = $this->generate_payment_request( $renewal_order, $prepared_source ); |
|
164 | + $request = $this->generate_payment_request($renewal_order, $prepared_source); |
|
165 | 165 | $request['capture'] = 'true'; |
166 | - $request['amount'] = WC_Stripe_Helper::get_stripe_amount( $amount, $request['currency'] ); |
|
167 | - $response = WC_Stripe_API::request( $request ); |
|
166 | + $request['amount'] = WC_Stripe_Helper::get_stripe_amount($amount, $request['currency']); |
|
167 | + $response = WC_Stripe_API::request($request); |
|
168 | 168 | |
169 | - if ( ! empty( $response->error ) || is_wp_error( $response ) ) { |
|
170 | - if ( $is_retry ) { |
|
169 | + if ( ! empty($response->error) || is_wp_error($response)) { |
|
170 | + if ($is_retry) { |
|
171 | 171 | /* translators: error message */ |
172 | - $renewal_order->update_status( 'failed', sprintf( __( 'Stripe Transaction Failed (%s)', 'woocommerce-gateway-stripe' ), $response->error->message ) ); |
|
172 | + $renewal_order->update_status('failed', sprintf(__('Stripe Transaction Failed (%s)', 'woocommerce-gateway-stripe'), $response->error->message)); |
|
173 | 173 | } |
174 | 174 | |
175 | 175 | return $response; // Default catch all errors. |
176 | 176 | } |
177 | 177 | |
178 | - $this->process_response( $response, $renewal_order ); |
|
178 | + $this->process_response($response, $renewal_order); |
|
179 | 179 | |
180 | - if ( ! $is_retry ) { |
|
180 | + if ( ! $is_retry) { |
|
181 | 181 | return $response; |
182 | 182 | } |
183 | 183 | } |
@@ -186,21 +186,21 @@ discard block |
||
186 | 186 | * Don't transfer Stripe customer/token meta to resubscribe orders. |
187 | 187 | * @param int $resubscribe_order The order created for the customer to resubscribe to the old expired/cancelled subscription |
188 | 188 | */ |
189 | - public function delete_resubscribe_meta( $resubscribe_order ) { |
|
190 | - delete_post_meta( ( WC_Stripe_Helper::is_pre_30() ? $resubscribe_order->id : $resubscribe_order->get_id() ), '_stripe_customer_id' ); |
|
191 | - delete_post_meta( ( WC_Stripe_Helper::is_pre_30() ? $resubscribe_order->id : $resubscribe_order->get_id() ), '_stripe_source_id' ); |
|
189 | + public function delete_resubscribe_meta($resubscribe_order) { |
|
190 | + delete_post_meta((WC_Stripe_Helper::is_pre_30() ? $resubscribe_order->id : $resubscribe_order->get_id()), '_stripe_customer_id'); |
|
191 | + delete_post_meta((WC_Stripe_Helper::is_pre_30() ? $resubscribe_order->id : $resubscribe_order->get_id()), '_stripe_source_id'); |
|
192 | 192 | // For BW compat will remove in future |
193 | - delete_post_meta( ( WC_Stripe_Helper::is_pre_30() ? $resubscribe_order->id : $resubscribe_order->get_id() ), '_stripe_card_id' ); |
|
194 | - $this->delete_renewal_meta( $resubscribe_order ); |
|
193 | + delete_post_meta((WC_Stripe_Helper::is_pre_30() ? $resubscribe_order->id : $resubscribe_order->get_id()), '_stripe_card_id'); |
|
194 | + $this->delete_renewal_meta($resubscribe_order); |
|
195 | 195 | } |
196 | 196 | |
197 | 197 | /** |
198 | 198 | * Don't transfer Stripe fee/ID meta to renewal orders. |
199 | 199 | * @param int $resubscribe_order The order created for the customer to resubscribe to the old expired/cancelled subscription |
200 | 200 | */ |
201 | - public function delete_renewal_meta( $renewal_order ) { |
|
202 | - delete_post_meta( ( WC_Stripe_Helper::is_pre_30() ? $renewal_order->id : $renewal_order->get_id() ), 'Stripe Fee' ); |
|
203 | - delete_post_meta( ( WC_Stripe_Helper::is_pre_30() ? $renewal_order->id : $renewal_order->get_id() ), 'Net Revenue From Stripe' ); |
|
201 | + public function delete_renewal_meta($renewal_order) { |
|
202 | + delete_post_meta((WC_Stripe_Helper::is_pre_30() ? $renewal_order->id : $renewal_order->get_id()), 'Stripe Fee'); |
|
203 | + delete_post_meta((WC_Stripe_Helper::is_pre_30() ? $renewal_order->id : $renewal_order->get_id()), 'Net Revenue From Stripe'); |
|
204 | 204 | return $renewal_order; |
205 | 205 | } |
206 | 206 | |
@@ -210,21 +210,21 @@ discard block |
||
210 | 210 | * @param $amount_to_charge float The amount to charge. |
211 | 211 | * @param $renewal_order WC_Order A WC_Order object created to record the renewal payment. |
212 | 212 | */ |
213 | - public function scheduled_subscription_payment( $amount_to_charge, $renewal_order ) { |
|
214 | - $response = $this->process_subscription_payment( $amount_to_charge, $renewal_order ); |
|
213 | + public function scheduled_subscription_payment($amount_to_charge, $renewal_order) { |
|
214 | + $response = $this->process_subscription_payment($amount_to_charge, $renewal_order); |
|
215 | 215 | |
216 | - if ( is_wp_error( $response ) ) { |
|
216 | + if (is_wp_error($response)) { |
|
217 | 217 | /* translators: error message */ |
218 | - $renewal_order->update_status( 'failed', sprintf( __( 'Stripe Transaction Failed (%s)', 'woocommerce-gateway-stripe' ), $response->get_error_message() ) ); |
|
218 | + $renewal_order->update_status('failed', sprintf(__('Stripe Transaction Failed (%s)', 'woocommerce-gateway-stripe'), $response->get_error_message())); |
|
219 | 219 | } |
220 | 220 | |
221 | - if ( ! empty( $response->error ) ) { |
|
221 | + if ( ! empty($response->error)) { |
|
222 | 222 | // This is a very generic error to listen for but worth a retry before total fail. |
223 | - if ( isset( $response->error->type ) && 'invalid_request_error' === $response->error->type && apply_filters( 'wc_stripe_use_default_customer_source', true ) ) { |
|
224 | - $this->process_subscription_payment( $amount_to_charge, $renewal_order, true ); |
|
223 | + if (isset($response->error->type) && 'invalid_request_error' === $response->error->type && apply_filters('wc_stripe_use_default_customer_source', true)) { |
|
224 | + $this->process_subscription_payment($amount_to_charge, $renewal_order, true); |
|
225 | 225 | } else { |
226 | 226 | /* translators: error message */ |
227 | - $renewal_order->update_status( 'failed', sprintf( __( 'Stripe Transaction Failed (%s)', 'woocommerce-gateway-stripe' ), $response->error->message ) ); |
|
227 | + $renewal_order->update_status('failed', sprintf(__('Stripe Transaction Failed (%s)', 'woocommerce-gateway-stripe'), $response->error->message)); |
|
228 | 228 | } |
229 | 229 | } |
230 | 230 | } |
@@ -233,20 +233,20 @@ discard block |
||
233 | 233 | * Remove order meta |
234 | 234 | * @param object $order |
235 | 235 | */ |
236 | - public function remove_order_source_before_retry( $order ) { |
|
236 | + public function remove_order_source_before_retry($order) { |
|
237 | 237 | $order_id = WC_Stripe_Helper::is_pre_30() ? $order->id : $order->get_id(); |
238 | - delete_post_meta( $order_id, '_stripe_source_id' ); |
|
238 | + delete_post_meta($order_id, '_stripe_source_id'); |
|
239 | 239 | // For BW compat will remove in the future. |
240 | - delete_post_meta( $order_id, '_stripe_card_id' ); |
|
240 | + delete_post_meta($order_id, '_stripe_card_id'); |
|
241 | 241 | } |
242 | 242 | |
243 | 243 | /** |
244 | 244 | * Remove order meta |
245 | 245 | * @param object $order |
246 | 246 | */ |
247 | - public function remove_order_customer_before_retry( $order ) { |
|
247 | + public function remove_order_customer_before_retry($order) { |
|
248 | 248 | $order_id = WC_Stripe_Helper::is_pre_30() ? $order->id : $order->get_id(); |
249 | - delete_post_meta( $order_id, '_stripe_customer_id' ); |
|
249 | + delete_post_meta($order_id, '_stripe_customer_id'); |
|
250 | 250 | } |
251 | 251 | |
252 | 252 | /** |
@@ -258,14 +258,14 @@ discard block |
||
258 | 258 | * @param WC_Order $renewal_order The order which recorded the successful payment (to make up for the failed automatic payment). |
259 | 259 | * @return void |
260 | 260 | */ |
261 | - public function update_failing_payment_method( $subscription, $renewal_order ) { |
|
262 | - if ( WC_Stripe_Helper::is_pre_30() ) { |
|
263 | - update_post_meta( $subscription->id, '_stripe_customer_id', $renewal_order->stripe_customer_id ); |
|
264 | - update_post_meta( $subscription->id, '_stripe_source_id', $renewal_order->stripe_source_id ); |
|
261 | + public function update_failing_payment_method($subscription, $renewal_order) { |
|
262 | + if (WC_Stripe_Helper::is_pre_30()) { |
|
263 | + update_post_meta($subscription->id, '_stripe_customer_id', $renewal_order->stripe_customer_id); |
|
264 | + update_post_meta($subscription->id, '_stripe_source_id', $renewal_order->stripe_source_id); |
|
265 | 265 | |
266 | 266 | } else { |
267 | - update_post_meta( $subscription->get_id(), '_stripe_customer_id', $renewal_order->get_meta( '_stripe_customer_id', true ) ); |
|
268 | - update_post_meta( $subscription->get_id(), '_stripe_source_id', $renewal_order->get_meta( '_stripe_source_id', true ) ); |
|
267 | + update_post_meta($subscription->get_id(), '_stripe_customer_id', $renewal_order->get_meta('_stripe_customer_id', true)); |
|
268 | + update_post_meta($subscription->get_id(), '_stripe_source_id', $renewal_order->get_meta('_stripe_source_id', true)); |
|
269 | 269 | } |
270 | 270 | } |
271 | 271 | |
@@ -278,21 +278,21 @@ discard block |
||
278 | 278 | * @param WC_Subscription $subscription An instance of a subscription object |
279 | 279 | * @return array |
280 | 280 | */ |
281 | - public function add_subscription_payment_meta( $payment_meta, $subscription ) { |
|
282 | - $source_id = get_post_meta( ( WC_Stripe_Helper::is_pre_30() ? $subscription->id : $subscription->get_id() ), '_stripe_source_id', true ); |
|
281 | + public function add_subscription_payment_meta($payment_meta, $subscription) { |
|
282 | + $source_id = get_post_meta((WC_Stripe_Helper::is_pre_30() ? $subscription->id : $subscription->get_id()), '_stripe_source_id', true); |
|
283 | 283 | |
284 | 284 | // For BW compat will remove in future. |
285 | - if ( empty( $source_id ) ) { |
|
286 | - $source_id = get_post_meta( ( WC_Stripe_Helper::is_pre_30() ? $subscription->id : $subscription->get_id() ), '_stripe_card_id', true ); |
|
285 | + if (empty($source_id)) { |
|
286 | + $source_id = get_post_meta((WC_Stripe_Helper::is_pre_30() ? $subscription->id : $subscription->get_id()), '_stripe_card_id', true); |
|
287 | 287 | |
288 | 288 | // Take this opportunity to update the key name. |
289 | - WC_Stripe_Helper::is_pre_30() ? update_post_meta( $subscription->id, '_stripe_source_id', $source_id ) : update_post_meta( $subscription->get_id(), '_stripe_source_id', $source_id ); |
|
289 | + WC_Stripe_Helper::is_pre_30() ? update_post_meta($subscription->id, '_stripe_source_id', $source_id) : update_post_meta($subscription->get_id(), '_stripe_source_id', $source_id); |
|
290 | 290 | } |
291 | 291 | |
292 | - $payment_meta[ $this->id ] = array( |
|
292 | + $payment_meta[$this->id] = array( |
|
293 | 293 | 'post_meta' => array( |
294 | 294 | '_stripe_customer_id' => array( |
295 | - 'value' => get_post_meta( ( WC_Stripe_Helper::is_pre_30() ? $subscription->id : $subscription->get_id() ), '_stripe_customer_id', true ), |
|
295 | + 'value' => get_post_meta((WC_Stripe_Helper::is_pre_30() ? $subscription->id : $subscription->get_id()), '_stripe_customer_id', true), |
|
296 | 296 | 'label' => 'Stripe Customer ID', |
297 | 297 | ), |
298 | 298 | '_stripe_source_id' => array( |
@@ -313,22 +313,22 @@ discard block |
||
313 | 313 | * @param array $payment_meta associative array of meta data required for automatic payments |
314 | 314 | * @return array |
315 | 315 | */ |
316 | - public function validate_subscription_payment_meta( $payment_method_id, $payment_meta ) { |
|
317 | - if ( $this->id === $payment_method_id ) { |
|
316 | + public function validate_subscription_payment_meta($payment_method_id, $payment_meta) { |
|
317 | + if ($this->id === $payment_method_id) { |
|
318 | 318 | |
319 | - if ( ! isset( $payment_meta['post_meta']['_stripe_customer_id']['value'] ) || empty( $payment_meta['post_meta']['_stripe_customer_id']['value'] ) ) { |
|
320 | - throw new Exception( __( 'A "Stripe Customer ID" value is required.', 'woocommerce-gateway-stripe' ) ); |
|
321 | - } elseif ( 0 !== strpos( $payment_meta['post_meta']['_stripe_customer_id']['value'], 'cus_' ) ) { |
|
322 | - throw new Exception( __( 'Invalid customer ID. A valid "Stripe Customer ID" must begin with "cus_".', 'woocommerce-gateway-stripe' ) ); |
|
319 | + if ( ! isset($payment_meta['post_meta']['_stripe_customer_id']['value']) || empty($payment_meta['post_meta']['_stripe_customer_id']['value'])) { |
|
320 | + throw new Exception(__('A "Stripe Customer ID" value is required.', 'woocommerce-gateway-stripe')); |
|
321 | + } elseif (0 !== strpos($payment_meta['post_meta']['_stripe_customer_id']['value'], 'cus_')) { |
|
322 | + throw new Exception(__('Invalid customer ID. A valid "Stripe Customer ID" must begin with "cus_".', 'woocommerce-gateway-stripe')); |
|
323 | 323 | } |
324 | 324 | |
325 | 325 | if ( |
326 | - ( ! empty( $payment_meta['post_meta']['_stripe_source_id']['value'] ) |
|
327 | - && 0 !== strpos( $payment_meta['post_meta']['_stripe_source_id']['value'], 'card_' ) ) |
|
328 | - && ( ! empty( $payment_meta['post_meta']['_stripe_source_id']['value'] ) |
|
329 | - && 0 !== strpos( $payment_meta['post_meta']['_stripe_source_id']['value'], 'src_' ) ) ) { |
|
326 | + ( ! empty($payment_meta['post_meta']['_stripe_source_id']['value']) |
|
327 | + && 0 !== strpos($payment_meta['post_meta']['_stripe_source_id']['value'], 'card_')) |
|
328 | + && ( ! empty($payment_meta['post_meta']['_stripe_source_id']['value']) |
|
329 | + && 0 !== strpos($payment_meta['post_meta']['_stripe_source_id']['value'], 'src_')) ) { |
|
330 | 330 | |
331 | - throw new Exception( __( 'Invalid source ID. A valid source "Stripe Source ID" must begin with "src_" or "card_".', 'woocommerce-gateway-stripe' ) ); |
|
331 | + throw new Exception(__('Invalid source ID. A valid source "Stripe Source ID" must begin with "src_" or "card_".', 'woocommerce-gateway-stripe')); |
|
332 | 332 | } |
333 | 333 | } |
334 | 334 | } |
@@ -341,89 +341,89 @@ discard block |
||
341 | 341 | * @param WC_Subscription $subscription the subscription details |
342 | 342 | * @return string the subscription payment method |
343 | 343 | */ |
344 | - public function maybe_render_subscription_payment_method( $payment_method_to_display, $subscription ) { |
|
344 | + public function maybe_render_subscription_payment_method($payment_method_to_display, $subscription) { |
|
345 | 345 | $customer_user = WC_Stripe_Helper::is_pre_30() ? $subscription->customer_user : $subscription->get_customer_id(); |
346 | 346 | |
347 | 347 | // bail for other payment methods |
348 | - if ( ( WC_Stripe_Helper::is_pre_30() ? $subscription->payment_method : $subscription->get_payment_method() ) !== $this->id || ! $customer_user ) { |
|
348 | + if ((WC_Stripe_Helper::is_pre_30() ? $subscription->payment_method : $subscription->get_payment_method()) !== $this->id || ! $customer_user) { |
|
349 | 349 | return $payment_method_to_display; |
350 | 350 | } |
351 | 351 | |
352 | - $stripe_source_id = get_post_meta( ( WC_Stripe_Helper::is_pre_30() ? $subscription->id : $subscription->get_id() ), '_stripe_source_id', true ); |
|
352 | + $stripe_source_id = get_post_meta((WC_Stripe_Helper::is_pre_30() ? $subscription->id : $subscription->get_id()), '_stripe_source_id', true); |
|
353 | 353 | |
354 | 354 | // For BW compat will remove in future. |
355 | - if ( empty( $stripe_source_id ) ) { |
|
356 | - $stripe_source_id = get_post_meta( ( WC_Stripe_Helper::is_pre_30() ? $subscription->id : $subscription->get_id() ), '_stripe_card_id', true ); |
|
355 | + if (empty($stripe_source_id)) { |
|
356 | + $stripe_source_id = get_post_meta((WC_Stripe_Helper::is_pre_30() ? $subscription->id : $subscription->get_id()), '_stripe_card_id', true); |
|
357 | 357 | |
358 | 358 | // Take this opportunity to update the key name. |
359 | - WC_Stripe_Helper::is_pre_30() ? update_post_meta( $subscription->id, '_stripe_source_id', $stripe_source_id ) : update_post_meta( $subscription->get_id(), '_stripe_source_id', $stripe_source_id ); |
|
359 | + WC_Stripe_Helper::is_pre_30() ? update_post_meta($subscription->id, '_stripe_source_id', $stripe_source_id) : update_post_meta($subscription->get_id(), '_stripe_source_id', $stripe_source_id); |
|
360 | 360 | } |
361 | 361 | |
362 | 362 | $stripe_customer = new WC_Stripe_Customer(); |
363 | - $stripe_customer_id = get_post_meta( ( WC_Stripe_Helper::is_pre_30() ? $subscription->id : $subscription->get_id() ), '_stripe_customer_id', true ); |
|
363 | + $stripe_customer_id = get_post_meta((WC_Stripe_Helper::is_pre_30() ? $subscription->id : $subscription->get_id()), '_stripe_customer_id', true); |
|
364 | 364 | |
365 | 365 | // If we couldn't find a Stripe customer linked to the subscription, fallback to the user meta data. |
366 | - if ( ! $stripe_customer_id || ! is_string( $stripe_customer_id ) ) { |
|
366 | + if ( ! $stripe_customer_id || ! is_string($stripe_customer_id)) { |
|
367 | 367 | $user_id = $customer_user; |
368 | - $stripe_customer_id = get_user_meta( $user_id, '_stripe_customer_id', true ); |
|
369 | - $stripe_source_id = get_user_meta( $user_id, '_stripe_source_id', true ); |
|
368 | + $stripe_customer_id = get_user_meta($user_id, '_stripe_customer_id', true); |
|
369 | + $stripe_source_id = get_user_meta($user_id, '_stripe_source_id', true); |
|
370 | 370 | |
371 | 371 | // For BW compat will remove in future. |
372 | - if ( empty( $stripe_source_id ) ) { |
|
373 | - $stripe_source_id = get_user_meta( $user_id, '_stripe_card_id', true ); |
|
372 | + if (empty($stripe_source_id)) { |
|
373 | + $stripe_source_id = get_user_meta($user_id, '_stripe_card_id', true); |
|
374 | 374 | |
375 | 375 | // Take this opportunity to update the key name. |
376 | - update_user_meta( $user_id, '_stripe_source_id', $stripe_source_id ); |
|
376 | + update_user_meta($user_id, '_stripe_source_id', $stripe_source_id); |
|
377 | 377 | } |
378 | 378 | } |
379 | 379 | |
380 | 380 | // If we couldn't find a Stripe customer linked to the account, fallback to the order meta data. |
381 | - if ( ( ! $stripe_customer_id || ! is_string( $stripe_customer_id ) ) && false !== $subscription->order ) { |
|
382 | - $stripe_customer_id = get_post_meta( ( WC_Stripe_Helper::is_pre_30() ? $subscription->order->id : $subscription->get_parent_id() ), '_stripe_customer_id', true ); |
|
383 | - $stripe_source_id = get_post_meta( ( WC_Stripe_Helper::is_pre_30() ? $subscription->order->id : $subscription->get_parent_id() ), '_stripe_source_id', true ); |
|
381 | + if (( ! $stripe_customer_id || ! is_string($stripe_customer_id)) && false !== $subscription->order) { |
|
382 | + $stripe_customer_id = get_post_meta((WC_Stripe_Helper::is_pre_30() ? $subscription->order->id : $subscription->get_parent_id()), '_stripe_customer_id', true); |
|
383 | + $stripe_source_id = get_post_meta((WC_Stripe_Helper::is_pre_30() ? $subscription->order->id : $subscription->get_parent_id()), '_stripe_source_id', true); |
|
384 | 384 | |
385 | 385 | // For BW compat will remove in future. |
386 | - if ( empty( $stripe_source_id ) ) { |
|
387 | - $stripe_source_id = get_post_meta( ( WC_Stripe_Helper::is_pre_30() ? $subscription->order->id : $subscription->get_parent_id() ), '_stripe_card_id', true ); |
|
386 | + if (empty($stripe_source_id)) { |
|
387 | + $stripe_source_id = get_post_meta((WC_Stripe_Helper::is_pre_30() ? $subscription->order->id : $subscription->get_parent_id()), '_stripe_card_id', true); |
|
388 | 388 | |
389 | 389 | // Take this opportunity to update the key name. |
390 | - WC_Stripe_Helper::is_pre_30() ? update_post_meta( $subscription->order->id, '_stripe_source_id', $stripe_source_id ) : update_post_meta( $subscription->get_parent_id(), '_stripe_source_id', $stripe_source_id ); |
|
390 | + WC_Stripe_Helper::is_pre_30() ? update_post_meta($subscription->order->id, '_stripe_source_id', $stripe_source_id) : update_post_meta($subscription->get_parent_id(), '_stripe_source_id', $stripe_source_id); |
|
391 | 391 | } |
392 | 392 | } |
393 | 393 | |
394 | - $stripe_customer->set_id( $stripe_customer_id ); |
|
394 | + $stripe_customer->set_id($stripe_customer_id); |
|
395 | 395 | $sources = $stripe_customer->get_sources(); |
396 | 396 | |
397 | - if ( $sources ) { |
|
397 | + if ($sources) { |
|
398 | 398 | $found_source = false; |
399 | - foreach ( $sources as $source ) { |
|
400 | - if ( isset( $source->type ) && 'card' === $source->type ) { |
|
399 | + foreach ($sources as $source) { |
|
400 | + if (isset($source->type) && 'card' === $source->type) { |
|
401 | 401 | $card = $source->card; |
402 | 402 | } |
403 | 403 | |
404 | - if ( $source->id === $stripe_source_id ) { |
|
404 | + if ($source->id === $stripe_source_id) { |
|
405 | 405 | $found_source = true; |
406 | 406 | |
407 | - if ( $card ) { |
|
407 | + if ($card) { |
|
408 | 408 | /* translators: 1) card brand 2) last 4 digits */ |
409 | - $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 ); |
|
409 | + $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); |
|
410 | 410 | } else { |
411 | - $payment_method_to_display = __( 'N/A', 'woocommerce-gateway-stripe' ); |
|
411 | + $payment_method_to_display = __('N/A', 'woocommerce-gateway-stripe'); |
|
412 | 412 | } |
413 | 413 | break; |
414 | 414 | } |
415 | 415 | } |
416 | 416 | |
417 | - if ( ! $found_source ) { |
|
418 | - if ( 'card' === $sources[0]->type ) { |
|
417 | + if ( ! $found_source) { |
|
418 | + if ('card' === $sources[0]->type) { |
|
419 | 419 | $card = $sources[0]->card; |
420 | 420 | } |
421 | 421 | |
422 | - if ( $card ) { |
|
422 | + if ($card) { |
|
423 | 423 | /* translators: 1) card brand 2) last 4 digits */ |
424 | - $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 ); |
|
424 | + $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); |
|
425 | 425 | } else { |
426 | - $payment_method_to_display = __( 'N/A', 'woocommerce-gateway-stripe' ); |
|
426 | + $payment_method_to_display = __('N/A', 'woocommerce-gateway-stripe'); |
|
427 | 427 | } |
428 | 428 | } |
429 | 429 | } |
@@ -436,42 +436,42 @@ discard block |
||
436 | 436 | * @param int $order_id |
437 | 437 | * @return array |
438 | 438 | */ |
439 | - public function process_pre_order( $order_id, $retry, $force_save_source ) { |
|
440 | - if ( WC_Pre_Orders_Order::order_requires_payment_tokenization( $order_id ) ) { |
|
439 | + public function process_pre_order($order_id, $retry, $force_save_source) { |
|
440 | + if (WC_Pre_Orders_Order::order_requires_payment_tokenization($order_id)) { |
|
441 | 441 | try { |
442 | - $order = wc_get_order( $order_id ); |
|
442 | + $order = wc_get_order($order_id); |
|
443 | 443 | |
444 | - if ( $order->get_total() * 100 < WC_Stripe_Helper::get_minimum_amount() ) { |
|
444 | + if ($order->get_total() * 100 < WC_Stripe_Helper::get_minimum_amount()) { |
|
445 | 445 | /* translators: minimum amount */ |
446 | - throw new Exception( 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 ) ) ); |
|
446 | + throw new Exception(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))); |
|
447 | 447 | } |
448 | 448 | |
449 | - $prepared_source = $this->prepare_source( get_current_user_id(), true ); |
|
449 | + $prepared_source = $this->prepare_source(get_current_user_id(), true); |
|
450 | 450 | |
451 | 451 | // We need a source on file to continue. |
452 | - if ( empty( $prepared_source->customer ) || empty( $prepared_source->source ) ) { |
|
453 | - throw new Exception( __( 'Unable to store payment details. Please try again.', 'woocommerce-gateway-stripe' ) ); |
|
452 | + if (empty($prepared_source->customer) || empty($prepared_source->source)) { |
|
453 | + throw new Exception(__('Unable to store payment details. Please try again.', 'woocommerce-gateway-stripe')); |
|
454 | 454 | } |
455 | 455 | |
456 | - $this->save_source_to_order( $order, $prepared_source ); |
|
456 | + $this->save_source_to_order($order, $prepared_source); |
|
457 | 457 | |
458 | 458 | // Remove cart |
459 | 459 | WC()->cart->empty_cart(); |
460 | 460 | |
461 | 461 | // Is pre ordered! |
462 | - WC_Pre_Orders_Order::mark_order_as_pre_ordered( $order ); |
|
462 | + WC_Pre_Orders_Order::mark_order_as_pre_ordered($order); |
|
463 | 463 | |
464 | 464 | // Return thank you page redirect |
465 | 465 | return array( |
466 | 466 | 'result' => 'success', |
467 | - 'redirect' => $this->get_return_url( $order ), |
|
467 | + 'redirect' => $this->get_return_url($order), |
|
468 | 468 | ); |
469 | - } catch ( Exception $e ) { |
|
470 | - wc_add_notice( $e->getMessage(), 'error' ); |
|
469 | + } catch (Exception $e) { |
|
470 | + wc_add_notice($e->getMessage(), 'error'); |
|
471 | 471 | return; |
472 | 472 | } |
473 | 473 | } else { |
474 | - return parent::process_payment( $order_id, $retry, $force_save_source ); |
|
474 | + return parent::process_payment($order_id, $retry, $force_save_source); |
|
475 | 475 | } |
476 | 476 | } |
477 | 477 | |
@@ -480,7 +480,7 @@ discard block |
||
480 | 480 | * @param WC_Order $order |
481 | 481 | * @return void |
482 | 482 | */ |
483 | - public function process_pre_order_release_payment( $order ) { |
|
483 | + public function process_pre_order_release_payment($order) { |
|
484 | 484 | try { |
485 | 485 | // Define some callbacks if the first attempt fails. |
486 | 486 | $retry_callbacks = array( |
@@ -488,33 +488,33 @@ discard block |
||
488 | 488 | 'remove_order_customer_before_retry', |
489 | 489 | ); |
490 | 490 | |
491 | - while ( 1 ) { |
|
492 | - $source = $this->prepare_order_source( $order ); |
|
493 | - $response = WC_Stripe_API::request( $this->generate_payment_request( $order, $source ) ); |
|
491 | + while (1) { |
|
492 | + $source = $this->prepare_order_source($order); |
|
493 | + $response = WC_Stripe_API::request($this->generate_payment_request($order, $source)); |
|
494 | 494 | |
495 | - if ( ! empty( $response->error ) ) { |
|
496 | - if ( 0 === sizeof( $retry_callbacks ) ) { |
|
497 | - throw new Exception( $response->error->message ); |
|
495 | + if ( ! empty($response->error)) { |
|
496 | + if (0 === sizeof($retry_callbacks)) { |
|
497 | + throw new Exception($response->error->message); |
|
498 | 498 | } else { |
499 | - $retry_callback = array_shift( $retry_callbacks ); |
|
500 | - call_user_func( array( $this, $retry_callback ), $order ); |
|
499 | + $retry_callback = array_shift($retry_callbacks); |
|
500 | + call_user_func(array($this, $retry_callback), $order); |
|
501 | 501 | } |
502 | 502 | } else { |
503 | 503 | // Successful |
504 | - $this->process_response( $response, $order ); |
|
504 | + $this->process_response($response, $order); |
|
505 | 505 | break; |
506 | 506 | } |
507 | 507 | } |
508 | - } catch ( Exception $e ) { |
|
508 | + } catch (Exception $e) { |
|
509 | 509 | /* translators: error message */ |
510 | - $order_note = sprintf( __( 'Stripe Transaction Failed (%s)', 'woocommerce-gateway-stripe' ), $e->getMessage() ); |
|
510 | + $order_note = sprintf(__('Stripe Transaction Failed (%s)', 'woocommerce-gateway-stripe'), $e->getMessage()); |
|
511 | 511 | |
512 | 512 | // Mark order as failed if not already set, |
513 | 513 | // otherwise, make sure we add the order note so we can detect when someone fails to check out multiple times |
514 | - if ( ! $order->has_status( 'failed' ) ) { |
|
515 | - $order->update_status( 'failed', $order_note ); |
|
514 | + if ( ! $order->has_status('failed')) { |
|
515 | + $order->update_status('failed', $order_note); |
|
516 | 516 | } else { |
517 | - $order->add_order_note( $order_note ); |
|
517 | + $order->add_order_note($order_note); |
|
518 | 518 | } |
519 | 519 | } |
520 | 520 | } |
@@ -1,5 +1,5 @@ discard block |
||
1 | 1 | <?php |
2 | -if ( ! defined( 'ABSPATH' ) ) { |
|
2 | +if ( ! defined('ABSPATH')) { |
|
3 | 3 | exit; |
4 | 4 | } |
5 | 5 | |
@@ -15,23 +15,23 @@ 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 ); |
|
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 | 23 | |
24 | 24 | // display the credit card used for a subscription in the "My Subscriptions" table |
25 | - add_filter( 'woocommerce_my_subscriptions_payment_method', array( $this, 'maybe_render_subscription_payment_method' ), 10, 2 ); |
|
25 | + add_filter('woocommerce_my_subscriptions_payment_method', array($this, 'maybe_render_subscription_payment_method'), 10, 2); |
|
26 | 26 | |
27 | 27 | // allow store managers to manually set Stripe as the payment method on a subscription |
28 | - add_filter( 'woocommerce_subscription_payment_meta', array( $this, 'add_subscription_payment_meta' ), 10, 2 ); |
|
29 | - add_filter( 'woocommerce_subscription_validate_payment_meta', array( $this, 'validate_subscription_payment_meta' ), 10, 2 ); |
|
30 | - add_filter( 'wc_stripe_display_save_payment_method_checkbox', array( $this, 'maybe_hide_save_checkbox' ) ); |
|
28 | + add_filter('woocommerce_subscription_payment_meta', array($this, 'add_subscription_payment_meta'), 10, 2); |
|
29 | + add_filter('woocommerce_subscription_validate_payment_meta', array($this, 'validate_subscription_payment_meta'), 10, 2); |
|
30 | + add_filter('wc_stripe_display_save_payment_method_checkbox', array($this, 'maybe_hide_save_checkbox')); |
|
31 | 31 | } |
32 | 32 | |
33 | - if ( class_exists( 'WC_Pre_Orders_Order' ) ) { |
|
34 | - add_action( 'wc_pre_orders_process_pre_order_completion_payment_' . $this->id, array( $this, 'process_pre_order_release_payment' ) ); |
|
33 | + if (class_exists('WC_Pre_Orders_Order')) { |
|
34 | + add_action('wc_pre_orders_process_pre_order_completion_payment_' . $this->id, array($this, 'process_pre_order_release_payment')); |
|
35 | 35 | } |
36 | 36 | } |
37 | 37 | |
@@ -42,8 +42,8 @@ discard block |
||
42 | 42 | * @since 4.0.0 |
43 | 43 | * @version 4.0.0 |
44 | 44 | */ |
45 | - public function maybe_hide_save_checkbox( $display_tokenization ) { |
|
46 | - if ( WC_Subscriptions_Cart::cart_contains_subscription() ) { |
|
45 | + public function maybe_hide_save_checkbox($display_tokenization) { |
|
46 | + if (WC_Subscriptions_Cart::cart_contains_subscription()) { |
|
47 | 47 | return false; |
48 | 48 | } |
49 | 49 | |
@@ -55,8 +55,8 @@ discard block |
||
55 | 55 | * @param int $order_id |
56 | 56 | * @return boolean |
57 | 57 | */ |
58 | - public function has_subscription( $order_id ) { |
|
59 | - return ( function_exists( 'wcs_order_contains_subscription' ) && ( wcs_order_contains_subscription( $order_id ) || wcs_is_subscription( $order_id ) || wcs_order_contains_renewal( $order_id ) ) ); |
|
58 | + public function has_subscription($order_id) { |
|
59 | + return (function_exists('wcs_order_contains_subscription') && (wcs_order_contains_subscription($order_id) || wcs_is_subscription($order_id) || wcs_order_contains_renewal($order_id))); |
|
60 | 60 | } |
61 | 61 | |
62 | 62 | /** |
@@ -66,7 +66,7 @@ discard block |
||
66 | 66 | * @return bool |
67 | 67 | */ |
68 | 68 | public function is_subs_change_payment() { |
69 | - return ( isset( $_GET['pay_for_order'] ) && isset( $_GET['change_payment_method'] ) ); |
|
69 | + return (isset($_GET['pay_for_order']) && isset($_GET['change_payment_method'])); |
|
70 | 70 | } |
71 | 71 | |
72 | 72 | /** |
@@ -74,8 +74,8 @@ discard block |
||
74 | 74 | * @param int $order_id |
75 | 75 | * @return boolean |
76 | 76 | */ |
77 | - public function is_pre_order( $order_id ) { |
|
78 | - return ( class_exists( 'WC_Pre_Orders_Order' ) && WC_Pre_Orders_Order::order_contains_pre_order( $order_id ) ); |
|
77 | + public function is_pre_order($order_id) { |
|
78 | + return (class_exists('WC_Pre_Orders_Order') && WC_Pre_Orders_Order::order_contains_pre_order($order_id)); |
|
79 | 79 | } |
80 | 80 | |
81 | 81 | /** |
@@ -84,24 +84,24 @@ discard block |
||
84 | 84 | * @since 4.0.4 |
85 | 85 | * @param int $order_id |
86 | 86 | */ |
87 | - public function change_subs_payment_method( $order_id ) { |
|
87 | + public function change_subs_payment_method($order_id) { |
|
88 | 88 | try { |
89 | - $subscription = wc_get_order( $order_id ); |
|
90 | - $prepared_source = $this->prepare_source( get_current_user_id(), true ); |
|
89 | + $subscription = wc_get_order($order_id); |
|
90 | + $prepared_source = $this->prepare_source(get_current_user_id(), true); |
|
91 | 91 | $source_object = $prepared_source->source_object; |
92 | 92 | |
93 | 93 | // Check if we don't allow prepaid credit cards. |
94 | - if ( ! apply_filters( 'wc_stripe_allow_prepaid_card', true ) && $this->is_prepaid_card( $source_object ) ) { |
|
95 | - $localized_message = __( 'Sorry, we\'re not accepting prepaid cards at this time. Your credit card has not been charge. Please try with alternative payment method.', 'woocommerce-gateway-stripe' ); |
|
96 | - throw new WC_Stripe_Exception( print_r( $source_object, true ), $localized_message ); |
|
94 | + if ( ! apply_filters('wc_stripe_allow_prepaid_card', true) && $this->is_prepaid_card($source_object)) { |
|
95 | + $localized_message = __('Sorry, we\'re not accepting prepaid cards at this time. Your credit card has not been charge. Please try with alternative payment method.', 'woocommerce-gateway-stripe'); |
|
96 | + throw new WC_Stripe_Exception(print_r($source_object, true), $localized_message); |
|
97 | 97 | } |
98 | 98 | |
99 | - if ( empty( $prepared_source->source ) ) { |
|
100 | - $localized_message = __( 'Payment processing failed. Please retry.', 'woocommerce-gateway-stripe' ); |
|
101 | - throw new WC_Stripe_Exception( print_r( $prepared_source, true ), $localized_message ); |
|
99 | + if (empty($prepared_source->source)) { |
|
100 | + $localized_message = __('Payment processing failed. Please retry.', 'woocommerce-gateway-stripe'); |
|
101 | + throw new WC_Stripe_Exception(print_r($prepared_source, true), $localized_message); |
|
102 | 102 | } |
103 | 103 | |
104 | - $this->save_source_to_order( $subscription, $prepared_source ); |
|
104 | + $this->save_source_to_order($subscription, $prepared_source); |
|
105 | 105 | |
106 | 106 | /* |
107 | 107 | * Check if card 3DS is required or optional with 3DS setting. |
@@ -110,41 +110,41 @@ discard block |
||
110 | 110 | * Note that if we need to save source, the original source must be first |
111 | 111 | * attached to a customer in Stripe before it can be charged. |
112 | 112 | */ |
113 | - if ( $this->is_3ds_required( $source_object ) ) { |
|
113 | + if ($this->is_3ds_required($source_object)) { |
|
114 | 114 | $order = $subscription->get_parent(); |
115 | - $response = $this->create_3ds_source( $order, $source_object, $subscription->get_view_order_url() ); |
|
115 | + $response = $this->create_3ds_source($order, $source_object, $subscription->get_view_order_url()); |
|
116 | 116 | |
117 | - if ( ! empty( $response->error ) ) { |
|
117 | + if ( ! empty($response->error)) { |
|
118 | 118 | $localized_message = $response->error->message; |
119 | 119 | |
120 | - $order->add_order_note( $localized_message ); |
|
120 | + $order->add_order_note($localized_message); |
|
121 | 121 | |
122 | - throw new WC_Stripe_Exception( print_r( $response, true ), $localized_message ); |
|
122 | + throw new WC_Stripe_Exception(print_r($response, true), $localized_message); |
|
123 | 123 | } |
124 | 124 | |
125 | 125 | // Update order meta with 3DS source. |
126 | - if ( WC_Stripe_Helper::is_pre_30() ) { |
|
127 | - update_post_meta( $order_id, '_stripe_source_id', $response->id ); |
|
126 | + if (WC_Stripe_Helper::is_pre_30()) { |
|
127 | + update_post_meta($order_id, '_stripe_source_id', $response->id); |
|
128 | 128 | } else { |
129 | - $subscription->update_meta_data( '_stripe_source_id', $response->id ); |
|
129 | + $subscription->update_meta_data('_stripe_source_id', $response->id); |
|
130 | 130 | $subscription->save(); |
131 | 131 | } |
132 | 132 | |
133 | - WC_Stripe_Logger::log( 'Info: Redirecting to 3DS...' ); |
|
133 | + WC_Stripe_Logger::log('Info: Redirecting to 3DS...'); |
|
134 | 134 | |
135 | 135 | return array( |
136 | 136 | 'result' => 'success', |
137 | - 'redirect' => esc_url_raw( $response->redirect->url ), |
|
137 | + 'redirect' => esc_url_raw($response->redirect->url), |
|
138 | 138 | ); |
139 | 139 | } |
140 | 140 | |
141 | 141 | return array( |
142 | 142 | 'result' => 'success', |
143 | - 'redirect' => $this->get_return_url( $subscription ), |
|
143 | + 'redirect' => $this->get_return_url($subscription), |
|
144 | 144 | ); |
145 | - } catch ( WC_Stripe_Exception $e ) { |
|
146 | - wc_add_notice( $e->getLocalizedMessage(), 'error' ); |
|
147 | - WC_Stripe_Logger::log( 'Error: ' . $e->getMessage() ); |
|
145 | + } catch (WC_Stripe_Exception $e) { |
|
146 | + wc_add_notice($e->getLocalizedMessage(), 'error'); |
|
147 | + WC_Stripe_Logger::log('Error: ' . $e->getMessage()); |
|
148 | 148 | } |
149 | 149 | } |
150 | 150 | |
@@ -153,18 +153,18 @@ discard block |
||
153 | 153 | * @param int $order_id |
154 | 154 | * @return array |
155 | 155 | */ |
156 | - public function process_payment( $order_id, $retry = true, $force_save_source = false ) { |
|
157 | - if ( $this->has_subscription( $order_id ) ) { |
|
158 | - if ( $this->is_subs_change_payment() ) { |
|
159 | - return $this->change_subs_payment_method( $order_id ); |
|
156 | + public function process_payment($order_id, $retry = true, $force_save_source = false) { |
|
157 | + if ($this->has_subscription($order_id)) { |
|
158 | + if ($this->is_subs_change_payment()) { |
|
159 | + return $this->change_subs_payment_method($order_id); |
|
160 | 160 | } |
161 | 161 | |
162 | 162 | // Regular payment with force customer enabled |
163 | - return parent::process_payment( $order_id, true, true ); |
|
164 | - } elseif ( $this->is_pre_order( $order_id ) ) { |
|
165 | - return $this->process_pre_order( $order_id, $retry, $force_save_source ); |
|
163 | + return parent::process_payment($order_id, true, true); |
|
164 | + } elseif ($this->is_pre_order($order_id)) { |
|
165 | + return $this->process_pre_order($order_id, $retry, $force_save_source); |
|
166 | 166 | } else { |
167 | - return parent::process_payment( $order_id, $retry, $force_save_source ); |
|
167 | + return parent::process_payment($order_id, $retry, $force_save_source); |
|
168 | 168 | } |
169 | 169 | } |
170 | 170 | |
@@ -174,24 +174,24 @@ discard block |
||
174 | 174 | * @since 3.1.0 |
175 | 175 | * @version 4.0.0 |
176 | 176 | */ |
177 | - public function save_source_to_order( $order, $source ) { |
|
178 | - parent::save_source_to_order( $order, $source ); |
|
177 | + public function save_source_to_order($order, $source) { |
|
178 | + parent::save_source_to_order($order, $source); |
|
179 | 179 | |
180 | 180 | $order_id = WC_Stripe_Helper::is_pre_30() ? $order->id : $order->get_id(); |
181 | 181 | |
182 | 182 | // Also store it on the subscriptions being purchased or paid for in the order |
183 | - if ( function_exists( 'wcs_order_contains_subscription' ) && wcs_order_contains_subscription( $order_id ) ) { |
|
184 | - $subscriptions = wcs_get_subscriptions_for_order( $order_id ); |
|
185 | - } elseif ( function_exists( 'wcs_order_contains_renewal' ) && wcs_order_contains_renewal( $order_id ) ) { |
|
186 | - $subscriptions = wcs_get_subscriptions_for_renewal_order( $order_id ); |
|
183 | + if (function_exists('wcs_order_contains_subscription') && wcs_order_contains_subscription($order_id)) { |
|
184 | + $subscriptions = wcs_get_subscriptions_for_order($order_id); |
|
185 | + } elseif (function_exists('wcs_order_contains_renewal') && wcs_order_contains_renewal($order_id)) { |
|
186 | + $subscriptions = wcs_get_subscriptions_for_renewal_order($order_id); |
|
187 | 187 | } else { |
188 | 188 | $subscriptions = array(); |
189 | 189 | } |
190 | 190 | |
191 | - foreach ( $subscriptions as $subscription ) { |
|
191 | + foreach ($subscriptions as $subscription) { |
|
192 | 192 | $subscription_id = WC_Stripe_Helper::is_pre_30() ? $subscription->id : $subscription->get_id(); |
193 | - update_post_meta( $subscription_id, '_stripe_customer_id', $source->customer ); |
|
194 | - update_post_meta( $subscription_id, '_stripe_source_id', $source->source ); |
|
193 | + update_post_meta($subscription_id, '_stripe_customer_id', $source->customer); |
|
194 | + update_post_meta($subscription_id, '_stripe_source_id', $source->source); |
|
195 | 195 | } |
196 | 196 | } |
197 | 197 | |
@@ -204,45 +204,45 @@ discard block |
||
204 | 204 | * @param mixed $renewal_order |
205 | 205 | * @param bool $is_retry Is this a retry process. |
206 | 206 | */ |
207 | - public function process_subscription_payment( $amount = 0.0, $renewal_order, $is_retry = false ) { |
|
208 | - if ( $amount * 100 < WC_Stripe_Helper::get_minimum_amount() ) { |
|
207 | + public function process_subscription_payment($amount = 0.0, $renewal_order, $is_retry = false) { |
|
208 | + if ($amount * 100 < WC_Stripe_Helper::get_minimum_amount()) { |
|
209 | 209 | /* translators: minimum amount */ |
210 | - return new WP_Error( 'stripe_error', sprintf( __( 'Sorry, the minimum allowed order total is %1$s to use this payment method.', 'woocommerce-gateway-stripe' ), wc_price( WC_Stripe_Helper::get_minimum_amount() / 100 ) ) ); |
|
210 | + return new WP_Error('stripe_error', sprintf(__('Sorry, the minimum allowed order total is %1$s to use this payment method.', 'woocommerce-gateway-stripe'), wc_price(WC_Stripe_Helper::get_minimum_amount() / 100))); |
|
211 | 211 | } |
212 | 212 | |
213 | 213 | $order_id = WC_Stripe_Helper::is_pre_30() ? $renewal_order->id : $renewal_order->get_id(); |
214 | 214 | |
215 | 215 | // Get source from order |
216 | - $prepared_source = $this->prepare_order_source( $renewal_order ); |
|
216 | + $prepared_source = $this->prepare_order_source($renewal_order); |
|
217 | 217 | |
218 | - if ( ! $prepared_source->customer ) { |
|
219 | - return new WP_Error( 'stripe_error', __( 'Customer not found', 'woocommerce-gateway-stripe' ) ); |
|
218 | + if ( ! $prepared_source->customer) { |
|
219 | + return new WP_Error('stripe_error', __('Customer not found', 'woocommerce-gateway-stripe')); |
|
220 | 220 | } |
221 | 221 | |
222 | - WC_Stripe_Logger::log( "Info: Begin processing subscription payment for order {$order_id} for the amount of {$amount}" ); |
|
222 | + WC_Stripe_Logger::log("Info: Begin processing subscription payment for order {$order_id} for the amount of {$amount}"); |
|
223 | 223 | |
224 | - if ( $is_retry ) { |
|
224 | + if ($is_retry) { |
|
225 | 225 | // Passing empty source with charge customer default. |
226 | 226 | $prepared_source->source = ''; |
227 | 227 | } |
228 | 228 | |
229 | - $request = $this->generate_payment_request( $renewal_order, $prepared_source ); |
|
229 | + $request = $this->generate_payment_request($renewal_order, $prepared_source); |
|
230 | 230 | $request['capture'] = 'true'; |
231 | - $request['amount'] = WC_Stripe_Helper::get_stripe_amount( $amount, $request['currency'] ); |
|
232 | - $response = WC_Stripe_API::request( $request ); |
|
231 | + $request['amount'] = WC_Stripe_Helper::get_stripe_amount($amount, $request['currency']); |
|
232 | + $response = WC_Stripe_API::request($request); |
|
233 | 233 | |
234 | - if ( ! empty( $response->error ) || is_wp_error( $response ) ) { |
|
235 | - if ( $is_retry ) { |
|
234 | + if ( ! empty($response->error) || is_wp_error($response)) { |
|
235 | + if ($is_retry) { |
|
236 | 236 | /* translators: error message */ |
237 | - $renewal_order->update_status( 'failed', sprintf( __( 'Stripe Transaction Failed (%s)', 'woocommerce-gateway-stripe' ), $response->error->message ) ); |
|
237 | + $renewal_order->update_status('failed', sprintf(__('Stripe Transaction Failed (%s)', 'woocommerce-gateway-stripe'), $response->error->message)); |
|
238 | 238 | } |
239 | 239 | |
240 | 240 | return $response; // Default catch all errors. |
241 | 241 | } |
242 | 242 | |
243 | - $this->process_response( $response, $renewal_order ); |
|
243 | + $this->process_response($response, $renewal_order); |
|
244 | 244 | |
245 | - if ( ! $is_retry ) { |
|
245 | + if ( ! $is_retry) { |
|
246 | 246 | return $response; |
247 | 247 | } |
248 | 248 | } |
@@ -251,21 +251,21 @@ discard block |
||
251 | 251 | * Don't transfer Stripe customer/token meta to resubscribe orders. |
252 | 252 | * @param int $resubscribe_order The order created for the customer to resubscribe to the old expired/cancelled subscription |
253 | 253 | */ |
254 | - public function delete_resubscribe_meta( $resubscribe_order ) { |
|
255 | - delete_post_meta( ( WC_Stripe_Helper::is_pre_30() ? $resubscribe_order->id : $resubscribe_order->get_id() ), '_stripe_customer_id' ); |
|
256 | - delete_post_meta( ( WC_Stripe_Helper::is_pre_30() ? $resubscribe_order->id : $resubscribe_order->get_id() ), '_stripe_source_id' ); |
|
254 | + public function delete_resubscribe_meta($resubscribe_order) { |
|
255 | + delete_post_meta((WC_Stripe_Helper::is_pre_30() ? $resubscribe_order->id : $resubscribe_order->get_id()), '_stripe_customer_id'); |
|
256 | + delete_post_meta((WC_Stripe_Helper::is_pre_30() ? $resubscribe_order->id : $resubscribe_order->get_id()), '_stripe_source_id'); |
|
257 | 257 | // For BW compat will remove in future |
258 | - delete_post_meta( ( WC_Stripe_Helper::is_pre_30() ? $resubscribe_order->id : $resubscribe_order->get_id() ), '_stripe_card_id' ); |
|
259 | - $this->delete_renewal_meta( $resubscribe_order ); |
|
258 | + delete_post_meta((WC_Stripe_Helper::is_pre_30() ? $resubscribe_order->id : $resubscribe_order->get_id()), '_stripe_card_id'); |
|
259 | + $this->delete_renewal_meta($resubscribe_order); |
|
260 | 260 | } |
261 | 261 | |
262 | 262 | /** |
263 | 263 | * Don't transfer Stripe fee/ID meta to renewal orders. |
264 | 264 | * @param int $resubscribe_order The order created for the customer to resubscribe to the old expired/cancelled subscription |
265 | 265 | */ |
266 | - public function delete_renewal_meta( $renewal_order ) { |
|
267 | - delete_post_meta( ( WC_Stripe_Helper::is_pre_30() ? $renewal_order->id : $renewal_order->get_id() ), 'Stripe Fee' ); |
|
268 | - delete_post_meta( ( WC_Stripe_Helper::is_pre_30() ? $renewal_order->id : $renewal_order->get_id() ), 'Net Revenue From Stripe' ); |
|
266 | + public function delete_renewal_meta($renewal_order) { |
|
267 | + delete_post_meta((WC_Stripe_Helper::is_pre_30() ? $renewal_order->id : $renewal_order->get_id()), 'Stripe Fee'); |
|
268 | + delete_post_meta((WC_Stripe_Helper::is_pre_30() ? $renewal_order->id : $renewal_order->get_id()), 'Net Revenue From Stripe'); |
|
269 | 269 | return $renewal_order; |
270 | 270 | } |
271 | 271 | |
@@ -275,21 +275,21 @@ discard block |
||
275 | 275 | * @param $amount_to_charge float The amount to charge. |
276 | 276 | * @param $renewal_order WC_Order A WC_Order object created to record the renewal payment. |
277 | 277 | */ |
278 | - public function scheduled_subscription_payment( $amount_to_charge, $renewal_order ) { |
|
279 | - $response = $this->process_subscription_payment( $amount_to_charge, $renewal_order ); |
|
278 | + public function scheduled_subscription_payment($amount_to_charge, $renewal_order) { |
|
279 | + $response = $this->process_subscription_payment($amount_to_charge, $renewal_order); |
|
280 | 280 | |
281 | - if ( is_wp_error( $response ) ) { |
|
281 | + if (is_wp_error($response)) { |
|
282 | 282 | /* translators: error message */ |
283 | - $renewal_order->update_status( 'failed', sprintf( __( 'Stripe Transaction Failed (%s)', 'woocommerce-gateway-stripe' ), $response->get_error_message() ) ); |
|
283 | + $renewal_order->update_status('failed', sprintf(__('Stripe Transaction Failed (%s)', 'woocommerce-gateway-stripe'), $response->get_error_message())); |
|
284 | 284 | } |
285 | 285 | |
286 | - if ( ! empty( $response->error ) ) { |
|
286 | + if ( ! empty($response->error)) { |
|
287 | 287 | // This is a very generic error to listen for but worth a retry before total fail. |
288 | - if ( isset( $response->error->type ) && 'invalid_request_error' === $response->error->type && apply_filters( 'wc_stripe_use_default_customer_source', true ) ) { |
|
289 | - $this->process_subscription_payment( $amount_to_charge, $renewal_order, true ); |
|
288 | + if (isset($response->error->type) && 'invalid_request_error' === $response->error->type && apply_filters('wc_stripe_use_default_customer_source', true)) { |
|
289 | + $this->process_subscription_payment($amount_to_charge, $renewal_order, true); |
|
290 | 290 | } else { |
291 | 291 | /* translators: error message */ |
292 | - $renewal_order->update_status( 'failed', sprintf( __( 'Stripe Transaction Failed (%s)', 'woocommerce-gateway-stripe' ), $response->error->message ) ); |
|
292 | + $renewal_order->update_status('failed', sprintf(__('Stripe Transaction Failed (%s)', 'woocommerce-gateway-stripe'), $response->error->message)); |
|
293 | 293 | } |
294 | 294 | } |
295 | 295 | } |
@@ -298,20 +298,20 @@ discard block |
||
298 | 298 | * Remove order meta |
299 | 299 | * @param object $order |
300 | 300 | */ |
301 | - public function remove_order_source_before_retry( $order ) { |
|
301 | + public function remove_order_source_before_retry($order) { |
|
302 | 302 | $order_id = WC_Stripe_Helper::is_pre_30() ? $order->id : $order->get_id(); |
303 | - delete_post_meta( $order_id, '_stripe_source_id' ); |
|
303 | + delete_post_meta($order_id, '_stripe_source_id'); |
|
304 | 304 | // For BW compat will remove in the future. |
305 | - delete_post_meta( $order_id, '_stripe_card_id' ); |
|
305 | + delete_post_meta($order_id, '_stripe_card_id'); |
|
306 | 306 | } |
307 | 307 | |
308 | 308 | /** |
309 | 309 | * Remove order meta |
310 | 310 | * @param object $order |
311 | 311 | */ |
312 | - public function remove_order_customer_before_retry( $order ) { |
|
312 | + public function remove_order_customer_before_retry($order) { |
|
313 | 313 | $order_id = WC_Stripe_Helper::is_pre_30() ? $order->id : $order->get_id(); |
314 | - delete_post_meta( $order_id, '_stripe_customer_id' ); |
|
314 | + delete_post_meta($order_id, '_stripe_customer_id'); |
|
315 | 315 | } |
316 | 316 | |
317 | 317 | /** |
@@ -323,14 +323,14 @@ discard block |
||
323 | 323 | * @param WC_Order $renewal_order The order which recorded the successful payment (to make up for the failed automatic payment). |
324 | 324 | * @return void |
325 | 325 | */ |
326 | - public function update_failing_payment_method( $subscription, $renewal_order ) { |
|
327 | - if ( WC_Stripe_Helper::is_pre_30() ) { |
|
328 | - update_post_meta( $subscription->id, '_stripe_customer_id', $renewal_order->stripe_customer_id ); |
|
329 | - update_post_meta( $subscription->id, '_stripe_source_id', $renewal_order->stripe_source_id ); |
|
326 | + public function update_failing_payment_method($subscription, $renewal_order) { |
|
327 | + if (WC_Stripe_Helper::is_pre_30()) { |
|
328 | + update_post_meta($subscription->id, '_stripe_customer_id', $renewal_order->stripe_customer_id); |
|
329 | + update_post_meta($subscription->id, '_stripe_source_id', $renewal_order->stripe_source_id); |
|
330 | 330 | |
331 | 331 | } else { |
332 | - update_post_meta( $subscription->get_id(), '_stripe_customer_id', $renewal_order->get_meta( '_stripe_customer_id', true ) ); |
|
333 | - update_post_meta( $subscription->get_id(), '_stripe_source_id', $renewal_order->get_meta( '_stripe_source_id', true ) ); |
|
332 | + update_post_meta($subscription->get_id(), '_stripe_customer_id', $renewal_order->get_meta('_stripe_customer_id', true)); |
|
333 | + update_post_meta($subscription->get_id(), '_stripe_source_id', $renewal_order->get_meta('_stripe_source_id', true)); |
|
334 | 334 | } |
335 | 335 | } |
336 | 336 | |
@@ -343,21 +343,21 @@ discard block |
||
343 | 343 | * @param WC_Subscription $subscription An instance of a subscription object |
344 | 344 | * @return array |
345 | 345 | */ |
346 | - public function add_subscription_payment_meta( $payment_meta, $subscription ) { |
|
347 | - $source_id = get_post_meta( ( WC_Stripe_Helper::is_pre_30() ? $subscription->id : $subscription->get_id() ), '_stripe_source_id', true ); |
|
346 | + public function add_subscription_payment_meta($payment_meta, $subscription) { |
|
347 | + $source_id = get_post_meta((WC_Stripe_Helper::is_pre_30() ? $subscription->id : $subscription->get_id()), '_stripe_source_id', true); |
|
348 | 348 | |
349 | 349 | // For BW compat will remove in future. |
350 | - if ( empty( $source_id ) ) { |
|
351 | - $source_id = get_post_meta( ( WC_Stripe_Helper::is_pre_30() ? $subscription->id : $subscription->get_id() ), '_stripe_card_id', true ); |
|
350 | + if (empty($source_id)) { |
|
351 | + $source_id = get_post_meta((WC_Stripe_Helper::is_pre_30() ? $subscription->id : $subscription->get_id()), '_stripe_card_id', true); |
|
352 | 352 | |
353 | 353 | // Take this opportunity to update the key name. |
354 | - WC_Stripe_Helper::is_pre_30() ? update_post_meta( $subscription->id, '_stripe_source_id', $source_id ) : update_post_meta( $subscription->get_id(), '_stripe_source_id', $source_id ); |
|
354 | + WC_Stripe_Helper::is_pre_30() ? update_post_meta($subscription->id, '_stripe_source_id', $source_id) : update_post_meta($subscription->get_id(), '_stripe_source_id', $source_id); |
|
355 | 355 | } |
356 | 356 | |
357 | - $payment_meta[ $this->id ] = array( |
|
357 | + $payment_meta[$this->id] = array( |
|
358 | 358 | 'post_meta' => array( |
359 | 359 | '_stripe_customer_id' => array( |
360 | - 'value' => get_post_meta( ( WC_Stripe_Helper::is_pre_30() ? $subscription->id : $subscription->get_id() ), '_stripe_customer_id', true ), |
|
360 | + 'value' => get_post_meta((WC_Stripe_Helper::is_pre_30() ? $subscription->id : $subscription->get_id()), '_stripe_customer_id', true), |
|
361 | 361 | 'label' => 'Stripe Customer ID', |
362 | 362 | ), |
363 | 363 | '_stripe_source_id' => array( |
@@ -380,22 +380,22 @@ discard block |
||
380 | 380 | * @param array $payment_meta associative array of meta data required for automatic payments |
381 | 381 | * @return array |
382 | 382 | */ |
383 | - public function validate_subscription_payment_meta( $payment_method_id, $payment_meta ) { |
|
384 | - if ( $this->id === $payment_method_id ) { |
|
383 | + public function validate_subscription_payment_meta($payment_method_id, $payment_meta) { |
|
384 | + if ($this->id === $payment_method_id) { |
|
385 | 385 | |
386 | - if ( ! isset( $payment_meta['post_meta']['_stripe_customer_id']['value'] ) || empty( $payment_meta['post_meta']['_stripe_customer_id']['value'] ) ) { |
|
387 | - throw new Exception( __( 'A "Stripe Customer ID" value is required.', 'woocommerce-gateway-stripe' ) ); |
|
388 | - } elseif ( 0 !== strpos( $payment_meta['post_meta']['_stripe_customer_id']['value'], 'cus_' ) ) { |
|
389 | - throw new Exception( __( 'Invalid customer ID. A valid "Stripe Customer ID" must begin with "cus_".', 'woocommerce-gateway-stripe' ) ); |
|
386 | + if ( ! isset($payment_meta['post_meta']['_stripe_customer_id']['value']) || empty($payment_meta['post_meta']['_stripe_customer_id']['value'])) { |
|
387 | + throw new Exception(__('A "Stripe Customer ID" value is required.', 'woocommerce-gateway-stripe')); |
|
388 | + } elseif (0 !== strpos($payment_meta['post_meta']['_stripe_customer_id']['value'], 'cus_')) { |
|
389 | + throw new Exception(__('Invalid customer ID. A valid "Stripe Customer ID" must begin with "cus_".', 'woocommerce-gateway-stripe')); |
|
390 | 390 | } |
391 | 391 | |
392 | 392 | if ( |
393 | - ( ! empty( $payment_meta['post_meta']['_stripe_source_id']['value'] ) |
|
394 | - && 0 !== strpos( $payment_meta['post_meta']['_stripe_source_id']['value'], 'card_' ) ) |
|
395 | - && ( ! empty( $payment_meta['post_meta']['_stripe_source_id']['value'] ) |
|
396 | - && 0 !== strpos( $payment_meta['post_meta']['_stripe_source_id']['value'], 'src_' ) ) ) { |
|
393 | + ( ! empty($payment_meta['post_meta']['_stripe_source_id']['value']) |
|
394 | + && 0 !== strpos($payment_meta['post_meta']['_stripe_source_id']['value'], 'card_')) |
|
395 | + && ( ! empty($payment_meta['post_meta']['_stripe_source_id']['value']) |
|
396 | + && 0 !== strpos($payment_meta['post_meta']['_stripe_source_id']['value'], 'src_')) ) { |
|
397 | 397 | |
398 | - throw new Exception( __( 'Invalid source ID. A valid source "Stripe Source ID" must begin with "src_" or "card_".', 'woocommerce-gateway-stripe' ) ); |
|
398 | + throw new Exception(__('Invalid source ID. A valid source "Stripe Source ID" must begin with "src_" or "card_".', 'woocommerce-gateway-stripe')); |
|
399 | 399 | } |
400 | 400 | } |
401 | 401 | } |
@@ -408,91 +408,91 @@ discard block |
||
408 | 408 | * @param WC_Subscription $subscription the subscription details |
409 | 409 | * @return string the subscription payment method |
410 | 410 | */ |
411 | - public function maybe_render_subscription_payment_method( $payment_method_to_display, $subscription ) { |
|
411 | + public function maybe_render_subscription_payment_method($payment_method_to_display, $subscription) { |
|
412 | 412 | $customer_user = WC_Stripe_Helper::is_pre_30() ? $subscription->customer_user : $subscription->get_customer_id(); |
413 | 413 | |
414 | 414 | // bail for other payment methods |
415 | - if ( ( WC_Stripe_Helper::is_pre_30() ? $subscription->payment_method : $subscription->get_payment_method() ) !== $this->id || ! $customer_user ) { |
|
415 | + if ((WC_Stripe_Helper::is_pre_30() ? $subscription->payment_method : $subscription->get_payment_method()) !== $this->id || ! $customer_user) { |
|
416 | 416 | return $payment_method_to_display; |
417 | 417 | } |
418 | 418 | |
419 | - $stripe_source_id = get_post_meta( ( WC_Stripe_Helper::is_pre_30() ? $subscription->id : $subscription->get_id() ), '_stripe_source_id', true ); |
|
419 | + $stripe_source_id = get_post_meta((WC_Stripe_Helper::is_pre_30() ? $subscription->id : $subscription->get_id()), '_stripe_source_id', true); |
|
420 | 420 | |
421 | 421 | // For BW compat will remove in future. |
422 | - if ( empty( $stripe_source_id ) ) { |
|
423 | - $stripe_source_id = get_post_meta( ( WC_Stripe_Helper::is_pre_30() ? $subscription->id : $subscription->get_id() ), '_stripe_card_id', true ); |
|
422 | + if (empty($stripe_source_id)) { |
|
423 | + $stripe_source_id = get_post_meta((WC_Stripe_Helper::is_pre_30() ? $subscription->id : $subscription->get_id()), '_stripe_card_id', true); |
|
424 | 424 | |
425 | 425 | // Take this opportunity to update the key name. |
426 | - WC_Stripe_Helper::is_pre_30() ? update_post_meta( $subscription->id, '_stripe_source_id', $stripe_source_id ) : update_post_meta( $subscription->get_id(), '_stripe_source_id', $stripe_source_id ); |
|
426 | + WC_Stripe_Helper::is_pre_30() ? update_post_meta($subscription->id, '_stripe_source_id', $stripe_source_id) : update_post_meta($subscription->get_id(), '_stripe_source_id', $stripe_source_id); |
|
427 | 427 | } |
428 | 428 | |
429 | 429 | $stripe_customer = new WC_Stripe_Customer(); |
430 | - $stripe_customer_id = get_post_meta( ( WC_Stripe_Helper::is_pre_30() ? $subscription->id : $subscription->get_id() ), '_stripe_customer_id', true ); |
|
430 | + $stripe_customer_id = get_post_meta((WC_Stripe_Helper::is_pre_30() ? $subscription->id : $subscription->get_id()), '_stripe_customer_id', true); |
|
431 | 431 | |
432 | 432 | // If we couldn't find a Stripe customer linked to the subscription, fallback to the user meta data. |
433 | - if ( ! $stripe_customer_id || ! is_string( $stripe_customer_id ) ) { |
|
433 | + if ( ! $stripe_customer_id || ! is_string($stripe_customer_id)) { |
|
434 | 434 | $user_id = $customer_user; |
435 | - $stripe_customer_id = get_user_meta( $user_id, '_stripe_customer_id', true ); |
|
436 | - $stripe_source_id = get_user_meta( $user_id, '_stripe_source_id', true ); |
|
435 | + $stripe_customer_id = get_user_meta($user_id, '_stripe_customer_id', true); |
|
436 | + $stripe_source_id = get_user_meta($user_id, '_stripe_source_id', true); |
|
437 | 437 | |
438 | 438 | // For BW compat will remove in future. |
439 | - if ( empty( $stripe_source_id ) ) { |
|
440 | - $stripe_source_id = get_user_meta( $user_id, '_stripe_card_id', true ); |
|
439 | + if (empty($stripe_source_id)) { |
|
440 | + $stripe_source_id = get_user_meta($user_id, '_stripe_card_id', true); |
|
441 | 441 | |
442 | 442 | // Take this opportunity to update the key name. |
443 | - update_user_meta( $user_id, '_stripe_source_id', $stripe_source_id ); |
|
443 | + update_user_meta($user_id, '_stripe_source_id', $stripe_source_id); |
|
444 | 444 | } |
445 | 445 | } |
446 | 446 | |
447 | 447 | // If we couldn't find a Stripe customer linked to the account, fallback to the order meta data. |
448 | - if ( ( ! $stripe_customer_id || ! is_string( $stripe_customer_id ) ) && false !== $subscription->order ) { |
|
449 | - $stripe_customer_id = get_post_meta( ( WC_Stripe_Helper::is_pre_30() ? $subscription->order->id : $subscription->get_parent_id() ), '_stripe_customer_id', true ); |
|
450 | - $stripe_source_id = get_post_meta( ( WC_Stripe_Helper::is_pre_30() ? $subscription->order->id : $subscription->get_parent_id() ), '_stripe_source_id', true ); |
|
448 | + if (( ! $stripe_customer_id || ! is_string($stripe_customer_id)) && false !== $subscription->order) { |
|
449 | + $stripe_customer_id = get_post_meta((WC_Stripe_Helper::is_pre_30() ? $subscription->order->id : $subscription->get_parent_id()), '_stripe_customer_id', true); |
|
450 | + $stripe_source_id = get_post_meta((WC_Stripe_Helper::is_pre_30() ? $subscription->order->id : $subscription->get_parent_id()), '_stripe_source_id', true); |
|
451 | 451 | |
452 | 452 | // For BW compat will remove in future. |
453 | - if ( empty( $stripe_source_id ) ) { |
|
454 | - $stripe_source_id = get_post_meta( ( WC_Stripe_Helper::is_pre_30() ? $subscription->order->id : $subscription->get_parent_id() ), '_stripe_card_id', true ); |
|
453 | + if (empty($stripe_source_id)) { |
|
454 | + $stripe_source_id = get_post_meta((WC_Stripe_Helper::is_pre_30() ? $subscription->order->id : $subscription->get_parent_id()), '_stripe_card_id', true); |
|
455 | 455 | |
456 | 456 | // Take this opportunity to update the key name. |
457 | - WC_Stripe_Helper::is_pre_30() ? update_post_meta( $subscription->order->id, '_stripe_source_id', $stripe_source_id ) : update_post_meta( $subscription->get_parent_id(), '_stripe_source_id', $stripe_source_id ); |
|
457 | + WC_Stripe_Helper::is_pre_30() ? update_post_meta($subscription->order->id, '_stripe_source_id', $stripe_source_id) : update_post_meta($subscription->get_parent_id(), '_stripe_source_id', $stripe_source_id); |
|
458 | 458 | } |
459 | 459 | } |
460 | 460 | |
461 | - $stripe_customer->set_id( $stripe_customer_id ); |
|
461 | + $stripe_customer->set_id($stripe_customer_id); |
|
462 | 462 | $sources = $stripe_customer->get_sources(); |
463 | 463 | |
464 | - if ( $sources ) { |
|
464 | + if ($sources) { |
|
465 | 465 | $found_source = false; |
466 | - foreach ( $sources as $source ) { |
|
467 | - if ( isset( $source->type ) && 'card' === $source->type ) { |
|
466 | + foreach ($sources as $source) { |
|
467 | + if (isset($source->type) && 'card' === $source->type) { |
|
468 | 468 | $card = $source->card; |
469 | - } elseif ( isset( $source->object ) && 'card' === $source->object ) { |
|
469 | + } elseif (isset($source->object) && 'card' === $source->object) { |
|
470 | 470 | $card = $source; |
471 | 471 | } |
472 | 472 | |
473 | - if ( $source->id === $stripe_source_id ) { |
|
473 | + if ($source->id === $stripe_source_id) { |
|
474 | 474 | $found_source = true; |
475 | 475 | |
476 | - if ( $card ) { |
|
476 | + if ($card) { |
|
477 | 477 | /* translators: 1) card brand 2) last 4 digits */ |
478 | - $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 ); |
|
478 | + $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); |
|
479 | 479 | } else { |
480 | - $payment_method_to_display = __( 'N/A', 'woocommerce-gateway-stripe' ); |
|
480 | + $payment_method_to_display = __('N/A', 'woocommerce-gateway-stripe'); |
|
481 | 481 | } |
482 | 482 | break; |
483 | 483 | } |
484 | 484 | } |
485 | 485 | |
486 | - if ( ! $found_source ) { |
|
487 | - if ( 'card' === $sources[0]->type ) { |
|
486 | + if ( ! $found_source) { |
|
487 | + if ('card' === $sources[0]->type) { |
|
488 | 488 | $card = $sources[0]->card; |
489 | 489 | } |
490 | 490 | |
491 | - if ( $card ) { |
|
491 | + if ($card) { |
|
492 | 492 | /* translators: 1) card brand 2) last 4 digits */ |
493 | - $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 ); |
|
493 | + $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); |
|
494 | 494 | } else { |
495 | - $payment_method_to_display = __( 'N/A', 'woocommerce-gateway-stripe' ); |
|
495 | + $payment_method_to_display = __('N/A', 'woocommerce-gateway-stripe'); |
|
496 | 496 | } |
497 | 497 | } |
498 | 498 | } |
@@ -505,42 +505,42 @@ discard block |
||
505 | 505 | * @param int $order_id |
506 | 506 | * @return array |
507 | 507 | */ |
508 | - public function process_pre_order( $order_id, $retry, $force_save_source ) { |
|
509 | - if ( WC_Pre_Orders_Order::order_requires_payment_tokenization( $order_id ) ) { |
|
508 | + public function process_pre_order($order_id, $retry, $force_save_source) { |
|
509 | + if (WC_Pre_Orders_Order::order_requires_payment_tokenization($order_id)) { |
|
510 | 510 | try { |
511 | - $order = wc_get_order( $order_id ); |
|
511 | + $order = wc_get_order($order_id); |
|
512 | 512 | |
513 | - if ( $order->get_total() * 100 < WC_Stripe_Helper::get_minimum_amount() ) { |
|
513 | + if ($order->get_total() * 100 < WC_Stripe_Helper::get_minimum_amount()) { |
|
514 | 514 | /* translators: minimum amount */ |
515 | - throw new Exception( 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 ) ) ); |
|
515 | + throw new Exception(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))); |
|
516 | 516 | } |
517 | 517 | |
518 | - $prepared_source = $this->prepare_source( get_current_user_id(), true ); |
|
518 | + $prepared_source = $this->prepare_source(get_current_user_id(), true); |
|
519 | 519 | |
520 | 520 | // We need a source on file to continue. |
521 | - if ( empty( $prepared_source->customer ) || empty( $prepared_source->source ) ) { |
|
522 | - throw new Exception( __( 'Unable to store payment details. Please try again.', 'woocommerce-gateway-stripe' ) ); |
|
521 | + if (empty($prepared_source->customer) || empty($prepared_source->source)) { |
|
522 | + throw new Exception(__('Unable to store payment details. Please try again.', 'woocommerce-gateway-stripe')); |
|
523 | 523 | } |
524 | 524 | |
525 | - $this->save_source_to_order( $order, $prepared_source ); |
|
525 | + $this->save_source_to_order($order, $prepared_source); |
|
526 | 526 | |
527 | 527 | // Remove cart |
528 | 528 | WC()->cart->empty_cart(); |
529 | 529 | |
530 | 530 | // Is pre ordered! |
531 | - WC_Pre_Orders_Order::mark_order_as_pre_ordered( $order ); |
|
531 | + WC_Pre_Orders_Order::mark_order_as_pre_ordered($order); |
|
532 | 532 | |
533 | 533 | // Return thank you page redirect |
534 | 534 | return array( |
535 | 535 | 'result' => 'success', |
536 | - 'redirect' => $this->get_return_url( $order ), |
|
536 | + 'redirect' => $this->get_return_url($order), |
|
537 | 537 | ); |
538 | - } catch ( Exception $e ) { |
|
539 | - wc_add_notice( $e->getMessage(), 'error' ); |
|
538 | + } catch (Exception $e) { |
|
539 | + wc_add_notice($e->getMessage(), 'error'); |
|
540 | 540 | return; |
541 | 541 | } |
542 | 542 | } else { |
543 | - return parent::process_payment( $order_id, $retry, $force_save_source ); |
|
543 | + return parent::process_payment($order_id, $retry, $force_save_source); |
|
544 | 544 | } |
545 | 545 | } |
546 | 546 | |
@@ -549,7 +549,7 @@ discard block |
||
549 | 549 | * @param WC_Order $order |
550 | 550 | * @return void |
551 | 551 | */ |
552 | - public function process_pre_order_release_payment( $order ) { |
|
552 | + public function process_pre_order_release_payment($order) { |
|
553 | 553 | try { |
554 | 554 | // Define some callbacks if the first attempt fails. |
555 | 555 | $retry_callbacks = array( |
@@ -557,33 +557,33 @@ discard block |
||
557 | 557 | 'remove_order_customer_before_retry', |
558 | 558 | ); |
559 | 559 | |
560 | - while ( 1 ) { |
|
561 | - $source = $this->prepare_order_source( $order ); |
|
562 | - $response = WC_Stripe_API::request( $this->generate_payment_request( $order, $source ) ); |
|
560 | + while (1) { |
|
561 | + $source = $this->prepare_order_source($order); |
|
562 | + $response = WC_Stripe_API::request($this->generate_payment_request($order, $source)); |
|
563 | 563 | |
564 | - if ( ! empty( $response->error ) ) { |
|
565 | - if ( 0 === sizeof( $retry_callbacks ) ) { |
|
566 | - throw new Exception( $response->error->message ); |
|
564 | + if ( ! empty($response->error)) { |
|
565 | + if (0 === sizeof($retry_callbacks)) { |
|
566 | + throw new Exception($response->error->message); |
|
567 | 567 | } else { |
568 | - $retry_callback = array_shift( $retry_callbacks ); |
|
569 | - call_user_func( array( $this, $retry_callback ), $order ); |
|
568 | + $retry_callback = array_shift($retry_callbacks); |
|
569 | + call_user_func(array($this, $retry_callback), $order); |
|
570 | 570 | } |
571 | 571 | } else { |
572 | 572 | // Successful |
573 | - $this->process_response( $response, $order ); |
|
573 | + $this->process_response($response, $order); |
|
574 | 574 | break; |
575 | 575 | } |
576 | 576 | } |
577 | - } catch ( Exception $e ) { |
|
577 | + } catch (Exception $e) { |
|
578 | 578 | /* translators: error message */ |
579 | - $order_note = sprintf( __( 'Stripe Transaction Failed (%s)', 'woocommerce-gateway-stripe' ), $e->getMessage() ); |
|
579 | + $order_note = sprintf(__('Stripe Transaction Failed (%s)', 'woocommerce-gateway-stripe'), $e->getMessage()); |
|
580 | 580 | |
581 | 581 | // Mark order as failed if not already set, |
582 | 582 | // otherwise, make sure we add the order note so we can detect when someone fails to check out multiple times |
583 | - if ( ! $order->has_status( 'failed' ) ) { |
|
584 | - $order->update_status( 'failed', $order_note ); |
|
583 | + if ( ! $order->has_status('failed')) { |
|
584 | + $order->update_status('failed', $order_note); |
|
585 | 585 | } else { |
586 | - $order->add_order_note( $order_note ); |
|
586 | + $order->add_order_note($order_note); |
|
587 | 587 | } |
588 | 588 | } |
589 | 589 | } |
@@ -1,5 +1,5 @@ discard block |
||
1 | 1 | <?php |
2 | -if ( ! defined( 'ABSPATH' ) ) { |
|
2 | +if ( ! defined('ABSPATH')) { |
|
3 | 3 | exit; |
4 | 4 | } |
5 | 5 | |
@@ -65,9 +65,9 @@ discard block |
||
65 | 65 | public function __construct() { |
66 | 66 | $this->retry_interval = 1; |
67 | 67 | $this->id = 'stripe_sepa'; |
68 | - $this->method_title = __( 'Stripe SEPA Direct Debit', 'woocommerce-gateway-stripe' ); |
|
68 | + $this->method_title = __('Stripe SEPA Direct Debit', 'woocommerce-gateway-stripe'); |
|
69 | 69 | /* translators: link */ |
70 | - $this->method_description = sprintf( __( 'All other general Stripe settings can be adjusted <a href="%s">here</a>.', 'woocommerce-gateway-stripe' ), admin_url( 'admin.php?page=wc-settings&tab=checkout§ion=stripe' ) ); |
|
70 | + $this->method_description = sprintf(__('All other general Stripe settings can be adjusted <a href="%s">here</a>.', 'woocommerce-gateway-stripe'), admin_url('admin.php?page=wc-settings&tab=checkout§ion=stripe')); |
|
71 | 71 | $this->supports = array( |
72 | 72 | 'products', |
73 | 73 | 'refunds', |
@@ -92,25 +92,25 @@ discard block |
||
92 | 92 | // Load the settings. |
93 | 93 | $this->init_settings(); |
94 | 94 | |
95 | - $main_settings = get_option( 'woocommerce_stripe_settings' ); |
|
96 | - $this->title = $this->get_option( 'title' ); |
|
97 | - $this->description = $this->get_option( 'description' ); |
|
98 | - $this->enabled = $this->get_option( 'enabled' ); |
|
99 | - $this->testmode = ( ! empty( $main_settings['testmode'] ) && 'yes' === $main_settings['testmode'] ) ? true : false; |
|
100 | - $this->saved_cards = ( ! empty( $main_settings['saved_cards'] ) && 'yes' === $main_settings['saved_cards'] ) ? true : false; |
|
101 | - $this->publishable_key = ! empty( $main_settings['publishable_key'] ) ? $main_settings['publishable_key'] : ''; |
|
102 | - $this->secret_key = ! empty( $main_settings['secret_key'] ) ? $main_settings['secret_key'] : ''; |
|
103 | - $this->statement_descriptor = ! empty( $main_settings['statement_descriptor'] ) ? $main_settings['statement_descriptor'] : ''; |
|
104 | - |
|
105 | - if ( $this->testmode ) { |
|
106 | - $this->publishable_key = ! empty( $main_settings['test_publishable_key'] ) ? $main_settings['test_publishable_key'] : ''; |
|
107 | - $this->secret_key = ! empty( $main_settings['test_secret_key'] ) ? $main_settings['test_secret_key'] : ''; |
|
95 | + $main_settings = get_option('woocommerce_stripe_settings'); |
|
96 | + $this->title = $this->get_option('title'); |
|
97 | + $this->description = $this->get_option('description'); |
|
98 | + $this->enabled = $this->get_option('enabled'); |
|
99 | + $this->testmode = ( ! empty($main_settings['testmode']) && 'yes' === $main_settings['testmode']) ? true : false; |
|
100 | + $this->saved_cards = ( ! empty($main_settings['saved_cards']) && 'yes' === $main_settings['saved_cards']) ? true : false; |
|
101 | + $this->publishable_key = ! empty($main_settings['publishable_key']) ? $main_settings['publishable_key'] : ''; |
|
102 | + $this->secret_key = ! empty($main_settings['secret_key']) ? $main_settings['secret_key'] : ''; |
|
103 | + $this->statement_descriptor = ! empty($main_settings['statement_descriptor']) ? $main_settings['statement_descriptor'] : ''; |
|
104 | + |
|
105 | + if ($this->testmode) { |
|
106 | + $this->publishable_key = ! empty($main_settings['test_publishable_key']) ? $main_settings['test_publishable_key'] : ''; |
|
107 | + $this->secret_key = ! empty($main_settings['test_secret_key']) ? $main_settings['test_secret_key'] : ''; |
|
108 | 108 | } |
109 | 109 | |
110 | - add_action( 'woocommerce_update_options_payment_gateways_' . $this->id, array( $this, 'process_admin_options' ) ); |
|
111 | - add_action( 'admin_notices', array( $this, 'check_environment' ) ); |
|
112 | - add_action( 'admin_head', array( $this, 'remove_admin_notice' ) ); |
|
113 | - add_action( 'wp_enqueue_scripts', array( $this, 'payment_scripts' ) ); |
|
110 | + add_action('woocommerce_update_options_payment_gateways_' . $this->id, array($this, 'process_admin_options')); |
|
111 | + add_action('admin_notices', array($this, 'check_environment')); |
|
112 | + add_action('admin_head', array($this, 'remove_admin_notice')); |
|
113 | + add_action('wp_enqueue_scripts', array($this, 'payment_scripts')); |
|
114 | 114 | } |
115 | 115 | |
116 | 116 | /** |
@@ -120,19 +120,19 @@ discard block |
||
120 | 120 | * @version 4.0.0 |
121 | 121 | */ |
122 | 122 | public function check_environment() { |
123 | - if ( ! current_user_can( 'manage_woocommerce' ) ) { |
|
123 | + if ( ! current_user_can('manage_woocommerce')) { |
|
124 | 124 | return; |
125 | 125 | } |
126 | 126 | |
127 | 127 | $environment_warning = $this->get_environment_warning(); |
128 | 128 | |
129 | - if ( $environment_warning ) { |
|
130 | - $this->add_admin_notice( 'bad_environment', 'error', $environment_warning ); |
|
129 | + if ($environment_warning) { |
|
130 | + $this->add_admin_notice('bad_environment', 'error', $environment_warning); |
|
131 | 131 | } |
132 | 132 | |
133 | - foreach ( (array) $this->notices as $notice_key => $notice ) { |
|
134 | - echo "<div class='" . esc_attr( $notice['class'] ) . "'><p>"; |
|
135 | - echo wp_kses( $notice['message'], array( 'a' => array( 'href' => array() ) ) ); |
|
133 | + foreach ((array) $this->notices as $notice_key => $notice) { |
|
134 | + echo "<div class='" . esc_attr($notice['class']) . "'><p>"; |
|
135 | + echo wp_kses($notice['message'], array('a' => array('href' => array()))); |
|
136 | 136 | echo '</p></div>'; |
137 | 137 | } |
138 | 138 | } |
@@ -145,8 +145,8 @@ discard block |
||
145 | 145 | * @version 4.0.0 |
146 | 146 | */ |
147 | 147 | public function get_environment_warning() { |
148 | - if ( 'yes' === $this->enabled && ! in_array( get_woocommerce_currency(), $this->get_supported_currency() ) ) { |
|
149 | - $message = __( 'SEPA is enabled - it requires store currency to be set to Euros.', 'woocommerce-gateway-stripe' ); |
|
148 | + if ('yes' === $this->enabled && ! in_array(get_woocommerce_currency(), $this->get_supported_currency())) { |
|
149 | + $message = __('SEPA is enabled - it requires store currency to be set to Euros.', 'woocommerce-gateway-stripe'); |
|
150 | 150 | |
151 | 151 | return $message; |
152 | 152 | } |
@@ -162,9 +162,9 @@ discard block |
||
162 | 162 | * @return array |
163 | 163 | */ |
164 | 164 | public function get_supported_currency() { |
165 | - return apply_filters( 'wc_stripe_sepa_supported_currencies', array( |
|
165 | + return apply_filters('wc_stripe_sepa_supported_currencies', array( |
|
166 | 166 | 'EUR', |
167 | - ) ); |
|
167 | + )); |
|
168 | 168 | } |
169 | 169 | |
170 | 170 | /** |
@@ -175,11 +175,11 @@ discard block |
||
175 | 175 | * @return bool |
176 | 176 | */ |
177 | 177 | public function is_available() { |
178 | - if ( ! in_array( get_woocommerce_currency(), $this->get_supported_currency() ) ) { |
|
178 | + if ( ! in_array(get_woocommerce_currency(), $this->get_supported_currency())) { |
|
179 | 179 | return false; |
180 | 180 | } |
181 | 181 | |
182 | - if ( is_add_payment_method_page() && ! $this->saved_cards ) { |
|
182 | + if (is_add_payment_method_page() && ! $this->saved_cards) { |
|
183 | 183 | return false; |
184 | 184 | } |
185 | 185 | |
@@ -200,7 +200,7 @@ discard block |
||
200 | 200 | |
201 | 201 | $icons_str .= $icons['sepa']; |
202 | 202 | |
203 | - return apply_filters( 'woocommerce_gateway_icon', $icons_str, $this->id ); |
|
203 | + return apply_filters('woocommerce_gateway_icon', $icons_str, $this->id); |
|
204 | 204 | } |
205 | 205 | |
206 | 206 | /** |
@@ -211,19 +211,19 @@ discard block |
||
211 | 211 | * @access public |
212 | 212 | */ |
213 | 213 | public function payment_scripts() { |
214 | - if ( ! is_cart() && ! is_checkout() && ! isset( $_GET['pay_for_order'] ) && ! is_add_payment_method_page() ) { |
|
214 | + if ( ! is_cart() && ! is_checkout() && ! isset($_GET['pay_for_order']) && ! is_add_payment_method_page()) { |
|
215 | 215 | return; |
216 | 216 | } |
217 | 217 | |
218 | - wp_enqueue_style( 'stripe_paymentfonts' ); |
|
219 | - wp_enqueue_script( 'woocommerce_stripe' ); |
|
218 | + wp_enqueue_style('stripe_paymentfonts'); |
|
219 | + wp_enqueue_script('woocommerce_stripe'); |
|
220 | 220 | } |
221 | 221 | |
222 | 222 | /** |
223 | 223 | * Initialize Gateway Settings Form Fields. |
224 | 224 | */ |
225 | 225 | public function init_form_fields() { |
226 | - $this->form_fields = require( WC_STRIPE_PLUGIN_PATH . '/includes/admin/stripe-sepa-settings.php' ); |
|
226 | + $this->form_fields = require(WC_STRIPE_PLUGIN_PATH . '/includes/admin/stripe-sepa-settings.php'); |
|
227 | 227 | } |
228 | 228 | |
229 | 229 | /** |
@@ -235,7 +235,7 @@ discard block |
||
235 | 235 | */ |
236 | 236 | public function mandate_display() { |
237 | 237 | /* translators: statement descriptor */ |
238 | - printf( __( 'By providing your IBAN and confirming this payment, you are authorizing %s and Stripe, our payment service provider, to send instructions to your bank to debit your account and your bank to debit your account in accordance with those instructions. You are entitled to a refund from your bank under the terms and conditions of your agreement with your bank. A refund must be claimed within 8 weeks starting from the date on which your account was debited.', 'woocommerce-gateway-stripe' ), WC_Stripe_Helper::clean_statement_descriptor( $this->statement_descriptor ) ); |
|
238 | + printf(__('By providing your IBAN and confirming this payment, you are authorizing %s and Stripe, our payment service provider, to send instructions to your bank to debit your account and your bank to debit your account in accordance with those instructions. You are entitled to a refund from your bank under the terms and conditions of your agreement with your bank. A refund must be claimed within 8 weeks starting from the date on which your account was debited.', 'woocommerce-gateway-stripe'), WC_Stripe_Helper::clean_statement_descriptor($this->statement_descriptor)); |
|
239 | 239 | } |
240 | 240 | |
241 | 241 | /** |
@@ -246,24 +246,24 @@ discard block |
||
246 | 246 | */ |
247 | 247 | public function form() { |
248 | 248 | ?> |
249 | - <fieldset id="wc-<?php echo esc_attr( $this->id ); ?>-form" class="wc-payment-form"> |
|
250 | - <?php do_action( 'woocommerce_credit_card_form_start', $this->id ); ?> |
|
249 | + <fieldset id="wc-<?php echo esc_attr($this->id); ?>-form" class="wc-payment-form"> |
|
250 | + <?php do_action('woocommerce_credit_card_form_start', $this->id); ?> |
|
251 | 251 | <p class="wc-stripe-sepa-mandate" style="margin-bottom:40px;"><?php $this->mandate_display(); ?></p> |
252 | 252 | <p class="form-row form-row-wide"> |
253 | 253 | <label for="stripe-sepa-owner"> |
254 | - <?php esc_html_e( 'IBAN Account Name.', 'woocommerce-gateway-stripe' ); ?> <span class="required">*</span> |
|
254 | + <?php esc_html_e('IBAN Account Name.', 'woocommerce-gateway-stripe'); ?> <span class="required">*</span> |
|
255 | 255 | </label> |
256 | 256 | <input id="stripe-sepa-owner" name="stripe_sepa_owner" value="" style="border:1px solid #ddd;margin:5px 0;padding:10px 5px;background-color:#fff;outline:0;" /> |
257 | 257 | </p> |
258 | 258 | <p class="form-row form-row-wide"> |
259 | 259 | <label for="stripe-sepa-iban"> |
260 | - <?php esc_html_e( 'IBAN Account Number.', 'woocommerce-gateway-stripe' ); ?> <span class="required">*</span> |
|
260 | + <?php esc_html_e('IBAN Account Number.', 'woocommerce-gateway-stripe'); ?> <span class="required">*</span> |
|
261 | 261 | </label> |
262 | 262 | <input id="stripe-sepa-iban" name="stripe_sepa_iban" value="" style="border:1px solid #ddd;margin:5px 0;padding:10px 5px;background-color:#fff;outline:0;" /> |
263 | 263 | </p> |
264 | 264 | <!-- Used to display form errors --> |
265 | 265 | <div class="stripe-source-errors" role="alert"></div> |
266 | - <?php do_action( 'woocommerce_credit_card_form_end', $this->id ); ?> |
|
266 | + <?php do_action('woocommerce_credit_card_form_end', $this->id); ?> |
|
267 | 267 | <div class="clear"></div> |
268 | 268 | </fieldset> |
269 | 269 | <?php |
@@ -275,42 +275,42 @@ discard block |
||
275 | 275 | public function payment_fields() { |
276 | 276 | $user = wp_get_current_user(); |
277 | 277 | $total = WC()->cart->total; |
278 | - $display_tokenization = $this->supports( 'tokenization' ) && is_checkout() && $this->saved_cards; |
|
278 | + $display_tokenization = $this->supports('tokenization') && is_checkout() && $this->saved_cards; |
|
279 | 279 | |
280 | 280 | // If paying from order, we need to get total from order not cart. |
281 | - if ( isset( $_GET['pay_for_order'] ) && ! empty( $_GET['key'] ) ) { |
|
282 | - $order = wc_get_order( wc_get_order_id_by_order_key( wc_clean( $_GET['key'] ) ) ); |
|
281 | + if (isset($_GET['pay_for_order']) && ! empty($_GET['key'])) { |
|
282 | + $order = wc_get_order(wc_get_order_id_by_order_key(wc_clean($_GET['key']))); |
|
283 | 283 | $total = $order->get_total(); |
284 | 284 | } |
285 | 285 | |
286 | - if ( is_add_payment_method_page() ) { |
|
287 | - $pay_button_text = __( 'Add Payment', 'woocommerce-gateway-stripe' ); |
|
288 | - $total = ''; |
|
286 | + if (is_add_payment_method_page()) { |
|
287 | + $pay_button_text = __('Add Payment', 'woocommerce-gateway-stripe'); |
|
288 | + $total = ''; |
|
289 | 289 | } else { |
290 | 290 | $pay_button_text = ''; |
291 | 291 | } |
292 | 292 | |
293 | 293 | echo '<div |
294 | 294 | id="stripe-sepa_debit-payment-data" |
295 | - data-amount="' . esc_attr( WC_Stripe_Helper::get_stripe_amount( $total ) ) . '" |
|
296 | - data-currency="' . esc_attr( strtolower( get_woocommerce_currency() ) ) . '">'; |
|
295 | + data-amount="' . esc_attr(WC_Stripe_Helper::get_stripe_amount($total)) . '" |
|
296 | + data-currency="' . esc_attr(strtolower(get_woocommerce_currency())) . '">'; |
|
297 | 297 | |
298 | - if ( $this->description ) { |
|
299 | - if ( $this->testmode ) { |
|
300 | - $this->description .= ' ' . __( 'TEST MODE ENABLED. In test mode, you can use IBAN number DE89370400440532013000.', 'woocommerce-gateway-stripe' ); |
|
301 | - $this->description = trim( $this->description ); |
|
298 | + if ($this->description) { |
|
299 | + if ($this->testmode) { |
|
300 | + $this->description .= ' ' . __('TEST MODE ENABLED. In test mode, you can use IBAN number DE89370400440532013000.', 'woocommerce-gateway-stripe'); |
|
301 | + $this->description = trim($this->description); |
|
302 | 302 | } |
303 | - echo apply_filters( 'wc_stripe_description', wpautop( wp_kses_post( $this->description ) ) ); |
|
303 | + echo apply_filters('wc_stripe_description', wpautop(wp_kses_post($this->description))); |
|
304 | 304 | } |
305 | 305 | |
306 | - if ( $display_tokenization ) { |
|
306 | + if ($display_tokenization) { |
|
307 | 307 | $this->tokenization_script(); |
308 | 308 | $this->saved_payment_methods(); |
309 | 309 | } |
310 | 310 | |
311 | 311 | $this->form(); |
312 | 312 | |
313 | - if ( apply_filters( 'wc_stripe_display_save_payment_method_checkbox', $display_tokenization ) && ! is_add_payment_method_page() && ! isset( $_GET['change_payment_method'] ) ) { |
|
313 | + if (apply_filters('wc_stripe_display_save_payment_method_checkbox', $display_tokenization) && ! is_add_payment_method_page() && ! isset($_GET['change_payment_method'])) { |
|
314 | 314 | $this->save_payment_method_checkbox(); |
315 | 315 | } |
316 | 316 | |
@@ -328,95 +328,95 @@ discard block |
||
328 | 328 | * |
329 | 329 | * @return array|void |
330 | 330 | */ |
331 | - public function process_payment( $order_id, $retry = true, $force_save_source = false ) { |
|
331 | + public function process_payment($order_id, $retry = true, $force_save_source = false) { |
|
332 | 332 | try { |
333 | - $order = wc_get_order( $order_id ); |
|
333 | + $order = wc_get_order($order_id); |
|
334 | 334 | |
335 | 335 | // This comes from the create account checkbox in the checkout page. |
336 | - $create_account = ! empty( $_POST['createaccount'] ) ? true : false; |
|
336 | + $create_account = ! empty($_POST['createaccount']) ? true : false; |
|
337 | 337 | |
338 | - if ( $create_account ) { |
|
338 | + if ($create_account) { |
|
339 | 339 | $new_customer_id = WC_Stripe_Helper::is_pre_30() ? $order->customer_user : $order->get_customer_id(); |
340 | - $new_stripe_customer = new WC_Stripe_Customer( $new_customer_id ); |
|
340 | + $new_stripe_customer = new WC_Stripe_Customer($new_customer_id); |
|
341 | 341 | $new_stripe_customer->create_customer(); |
342 | 342 | } |
343 | 343 | |
344 | - $prepared_source = $this->prepare_source( get_current_user_id(), $force_save_source ); |
|
344 | + $prepared_source = $this->prepare_source(get_current_user_id(), $force_save_source); |
|
345 | 345 | |
346 | - $this->save_source_to_order( $order, $prepared_source ); |
|
346 | + $this->save_source_to_order($order, $prepared_source); |
|
347 | 347 | |
348 | 348 | // Result from Stripe API request. |
349 | 349 | $response = null; |
350 | 350 | |
351 | - if ( $order->get_total() > 0 ) { |
|
351 | + if ($order->get_total() > 0) { |
|
352 | 352 | // This will throw exception if not valid. |
353 | - $this->validate_minimum_order_amount( $order ); |
|
353 | + $this->validate_minimum_order_amount($order); |
|
354 | 354 | |
355 | - WC_Stripe_Logger::log( "Info: Begin processing payment for order $order_id for the amount of {$order->get_total()}" ); |
|
355 | + WC_Stripe_Logger::log("Info: Begin processing payment for order $order_id for the amount of {$order->get_total()}"); |
|
356 | 356 | |
357 | 357 | // Make the request. |
358 | - $response = WC_Stripe_API::request( $this->generate_payment_request( $order, $prepared_source ) ); |
|
358 | + $response = WC_Stripe_API::request($this->generate_payment_request($order, $prepared_source)); |
|
359 | 359 | |
360 | - if ( ! empty( $response->error ) ) { |
|
360 | + if ( ! empty($response->error)) { |
|
361 | 361 | // Customer param wrong? The user may have been deleted on stripe's end. Remove customer_id. Can be retried without. |
362 | - if ( preg_match( '/No such customer/i', $response->error->message ) && $retry ) { |
|
363 | - if ( WC_Stripe_Helper::is_pre_30() ) { |
|
364 | - delete_user_meta( $order->customer_user, '_stripe_customer_id' ); |
|
365 | - delete_post_meta( $order_id, '_stripe_customer_id' ); |
|
362 | + if (preg_match('/No such customer/i', $response->error->message) && $retry) { |
|
363 | + if (WC_Stripe_Helper::is_pre_30()) { |
|
364 | + delete_user_meta($order->customer_user, '_stripe_customer_id'); |
|
365 | + delete_post_meta($order_id, '_stripe_customer_id'); |
|
366 | 366 | } else { |
367 | - delete_user_meta( $order->get_customer_id(), '_stripe_customer_id' ); |
|
368 | - $order->delete_meta_data( '_stripe_customer_id' ); |
|
367 | + delete_user_meta($order->get_customer_id(), '_stripe_customer_id'); |
|
368 | + $order->delete_meta_data('_stripe_customer_id'); |
|
369 | 369 | $order->save(); |
370 | 370 | } |
371 | 371 | |
372 | - return $this->process_payment( $order_id, false, $force_save_source ); |
|
373 | - } elseif ( preg_match( '/No such token/i', $response->error->message ) && $prepared_source->token_id ) { |
|
372 | + return $this->process_payment($order_id, false, $force_save_source); |
|
373 | + } elseif (preg_match('/No such token/i', $response->error->message) && $prepared_source->token_id) { |
|
374 | 374 | // Source param wrong? The CARD may have been deleted on stripe's end. Remove token and show message. |
375 | - $wc_token = WC_Payment_Tokens::get( $prepared_source->token_id ); |
|
375 | + $wc_token = WC_Payment_Tokens::get($prepared_source->token_id); |
|
376 | 376 | $wc_token->delete(); |
377 | - $localized_message = __( 'This card is no longer available and has been removed.', 'woocommerce-gateway-stripe' ); |
|
378 | - $order->add_order_note( $localized_message ); |
|
379 | - throw new WC_Stripe_Exception( print_r( $response, true ), $localized_message ); |
|
377 | + $localized_message = __('This card is no longer available and has been removed.', 'woocommerce-gateway-stripe'); |
|
378 | + $order->add_order_note($localized_message); |
|
379 | + throw new WC_Stripe_Exception(print_r($response, true), $localized_message); |
|
380 | 380 | } |
381 | 381 | |
382 | 382 | // We want to retry. |
383 | - if ( $this->is_retryable_error( $response->error ) ) { |
|
384 | - if ( $retry ) { |
|
383 | + if ($this->is_retryable_error($response->error)) { |
|
384 | + if ($retry) { |
|
385 | 385 | // Don't do anymore retries after this. |
386 | - if ( 5 <= $this->retry_interval ) { |
|
386 | + if (5 <= $this->retry_interval) { |
|
387 | 387 | |
388 | - return $this->process_payment( $order_id, false, $force_save_source ); |
|
388 | + return $this->process_payment($order_id, false, $force_save_source); |
|
389 | 389 | } |
390 | 390 | |
391 | - sleep( $this->retry_interval ); |
|
391 | + sleep($this->retry_interval); |
|
392 | 392 | |
393 | 393 | $this->retry_interval++; |
394 | 394 | |
395 | - return $this->process_payment( $order_id, true, $force_save_source ); |
|
395 | + return $this->process_payment($order_id, true, $force_save_source); |
|
396 | 396 | } else { |
397 | - $localized_message = __( 'On going requests error and retries exhausted.', 'woocommerce-gateway-stripe' ); |
|
398 | - $order->add_order_note( $localized_message ); |
|
399 | - throw new WC_Stripe_Exception( print_r( $response, true ), $localized_message ); |
|
397 | + $localized_message = __('On going requests error and retries exhausted.', 'woocommerce-gateway-stripe'); |
|
398 | + $order->add_order_note($localized_message); |
|
399 | + throw new WC_Stripe_Exception(print_r($response, true), $localized_message); |
|
400 | 400 | } |
401 | 401 | } |
402 | 402 | |
403 | 403 | $localized_messages = WC_Stripe_Helper::get_localized_messages(); |
404 | 404 | |
405 | - if ( 'card_error' === $response->error->type ) { |
|
406 | - $localized_message = isset( $localized_messages[ $response->error->code ] ) ? $localized_messages[ $response->error->code ] : $response->error->message; |
|
405 | + if ('card_error' === $response->error->type) { |
|
406 | + $localized_message = isset($localized_messages[$response->error->code]) ? $localized_messages[$response->error->code] : $response->error->message; |
|
407 | 407 | } else { |
408 | - $localized_message = isset( $localized_messages[ $response->error->type ] ) ? $localized_messages[ $response->error->type ] : $response->error->message; |
|
408 | + $localized_message = isset($localized_messages[$response->error->type]) ? $localized_messages[$response->error->type] : $response->error->message; |
|
409 | 409 | } |
410 | 410 | |
411 | - $order->add_order_note( $localized_message ); |
|
411 | + $order->add_order_note($localized_message); |
|
412 | 412 | |
413 | - throw new WC_Stripe_Exception( print_r( $response, true ), $localized_message ); |
|
413 | + throw new WC_Stripe_Exception(print_r($response, true), $localized_message); |
|
414 | 414 | } |
415 | 415 | |
416 | - do_action( 'wc_gateway_stripe_process_payment', $response, $order ); |
|
416 | + do_action('wc_gateway_stripe_process_payment', $response, $order); |
|
417 | 417 | |
418 | 418 | // Process valid response. |
419 | - $this->process_response( $response, $order ); |
|
419 | + $this->process_response($response, $order); |
|
420 | 420 | } else { |
421 | 421 | $order->payment_complete(); |
422 | 422 | } |
@@ -427,17 +427,17 @@ discard block |
||
427 | 427 | // Return thank you page redirect. |
428 | 428 | return array( |
429 | 429 | 'result' => 'success', |
430 | - 'redirect' => $this->get_return_url( $order ), |
|
430 | + 'redirect' => $this->get_return_url($order), |
|
431 | 431 | ); |
432 | 432 | |
433 | - } catch ( WC_Stripe_Exception $e ) { |
|
434 | - wc_add_notice( $e->getLocalizedMessage(), 'error' ); |
|
435 | - WC_Stripe_Logger::log( 'Error: ' . $e->getMessage() ); |
|
433 | + } catch (WC_Stripe_Exception $e) { |
|
434 | + wc_add_notice($e->getLocalizedMessage(), 'error'); |
|
435 | + WC_Stripe_Logger::log('Error: ' . $e->getMessage()); |
|
436 | 436 | |
437 | - do_action( 'wc_gateway_stripe_process_payment_error', $e, $order ); |
|
437 | + do_action('wc_gateway_stripe_process_payment_error', $e, $order); |
|
438 | 438 | |
439 | - if ( $order->has_status( array( 'pending', 'failed' ) ) ) { |
|
440 | - $this->send_failed_order_email( $order_id ); |
|
439 | + if ($order->has_status(array('pending', 'failed'))) { |
|
440 | + $this->send_failed_order_email($order_id); |
|
441 | 441 | } |
442 | 442 | |
443 | 443 | return array( |
@@ -1,5 +1,5 @@ discard block |
||
1 | 1 | <?php |
2 | -if ( ! defined( 'ABSPATH' ) ) { |
|
2 | +if ( ! defined('ABSPATH')) { |
|
3 | 3 | exit; |
4 | 4 | } |
5 | 5 | |
@@ -32,9 +32,9 @@ discard block |
||
32 | 32 | */ |
33 | 33 | public function __construct() { |
34 | 34 | $this->retry_interval = 2; |
35 | - $stripe_settings = get_option( 'woocommerce_stripe_settings', array() ); |
|
36 | - $this->testmode = ( ! empty( $stripe_settings['testmode'] ) && 'yes' === $stripe_settings['testmode'] ) ? true : false; |
|
37 | - add_action( 'woocommerce_api_wc_stripe', array( $this, 'check_for_webhook' ) ); |
|
35 | + $stripe_settings = get_option('woocommerce_stripe_settings', array()); |
|
36 | + $this->testmode = ( ! empty($stripe_settings['testmode']) && 'yes' === $stripe_settings['testmode']) ? true : false; |
|
37 | + add_action('woocommerce_api_wc_stripe', array($this, 'check_for_webhook')); |
|
38 | 38 | } |
39 | 39 | |
40 | 40 | /** |
@@ -44,24 +44,24 @@ discard block |
||
44 | 44 | * @version 4.0.0 |
45 | 45 | */ |
46 | 46 | public function check_for_webhook() { |
47 | - if ( ( 'POST' !== $_SERVER['REQUEST_METHOD'] ) |
|
48 | - || ! isset( $_GET['wc-api'] ) |
|
49 | - || ( 'wc_stripe' !== $_GET['wc-api'] ) |
|
47 | + if (('POST' !== $_SERVER['REQUEST_METHOD']) |
|
48 | + || ! isset($_GET['wc-api']) |
|
49 | + || ('wc_stripe' !== $_GET['wc-api']) |
|
50 | 50 | ) { |
51 | 51 | return; |
52 | 52 | } |
53 | 53 | |
54 | - $request_body = file_get_contents( 'php://input' ); |
|
55 | - $request_headers = array_change_key_case( $this->get_request_headers(), CASE_UPPER ); |
|
54 | + $request_body = file_get_contents('php://input'); |
|
55 | + $request_headers = array_change_key_case($this->get_request_headers(), CASE_UPPER); |
|
56 | 56 | |
57 | 57 | // Validate it to make sure it is legit. |
58 | - if ( $this->is_valid_request( $request_headers, $request_body ) ) { |
|
59 | - $this->process_webhook( $request_body ); |
|
60 | - status_header( 200 ); |
|
58 | + if ($this->is_valid_request($request_headers, $request_body)) { |
|
59 | + $this->process_webhook($request_body); |
|
60 | + status_header(200); |
|
61 | 61 | exit; |
62 | 62 | } else { |
63 | - WC_Stripe_Logger::log( 'Incoming webhook failed validation: ' . print_r( $request_body, true ) ); |
|
64 | - status_header( 400 ); |
|
63 | + WC_Stripe_Logger::log('Incoming webhook failed validation: ' . print_r($request_body, true)); |
|
64 | + status_header(400); |
|
65 | 65 | exit; |
66 | 66 | } |
67 | 67 | } |
@@ -76,12 +76,12 @@ discard block |
||
76 | 76 | * @param string $request_body The request body from Stripe. |
77 | 77 | * @return bool |
78 | 78 | */ |
79 | - public function is_valid_request( $request_headers = null, $request_body = null ) { |
|
80 | - if ( null === $request_headers || null === $request_body ) { |
|
79 | + public function is_valid_request($request_headers = null, $request_body = null) { |
|
80 | + if (null === $request_headers || null === $request_body) { |
|
81 | 81 | return false; |
82 | 82 | } |
83 | 83 | |
84 | - if ( ! empty( $request_headers['USER-AGENT'] ) && ! preg_match( '/Stripe/', $request_headers['USER-AGENT'] ) ) { |
|
84 | + if ( ! empty($request_headers['USER-AGENT']) && ! preg_match('/Stripe/', $request_headers['USER-AGENT'])) { |
|
85 | 85 | return false; |
86 | 86 | } |
87 | 87 | |
@@ -97,11 +97,11 @@ discard block |
||
97 | 97 | * @version 4.0.0 |
98 | 98 | */ |
99 | 99 | public function get_request_headers() { |
100 | - if ( ! function_exists( 'getallheaders' ) ) { |
|
100 | + if ( ! function_exists('getallheaders')) { |
|
101 | 101 | $headers = []; |
102 | - foreach ( $_SERVER as $name => $value ) { |
|
103 | - if ( 'HTTP_' === substr( $name, 0, 5 ) ) { |
|
104 | - $headers[ str_replace( ' ', '-', ucwords( strtolower( str_replace( '_', ' ', substr( $name, 5 ) ) ) ) ) ] = $value; |
|
102 | + foreach ($_SERVER as $name => $value) { |
|
103 | + if ('HTTP_' === substr($name, 0, 5)) { |
|
104 | + $headers[str_replace(' ', '-', ucwords(strtolower(str_replace('_', ' ', substr($name, 5)))))] = $value; |
|
105 | 105 | } |
106 | 106 | } |
107 | 107 | |
@@ -120,30 +120,30 @@ discard block |
||
120 | 120 | * @param object $notification |
121 | 121 | * @param bool $retry |
122 | 122 | */ |
123 | - public function process_webhook_payment( $notification, $retry = true ) { |
|
123 | + public function process_webhook_payment($notification, $retry = true) { |
|
124 | 124 | // The following 2 payment methods are synchronous so does not need to be handle via webhook. |
125 | - if ( 'card' === $notification->data->object->type || 'sepa_debit' === $notification->data->object->type ) { |
|
125 | + if ('card' === $notification->data->object->type || 'sepa_debit' === $notification->data->object->type) { |
|
126 | 126 | return; |
127 | 127 | } |
128 | 128 | |
129 | - $order = WC_Stripe_Helper::get_order_by_source_id( $notification->data->object->id ); |
|
129 | + $order = WC_Stripe_Helper::get_order_by_source_id($notification->data->object->id); |
|
130 | 130 | |
131 | - if ( ! $order ) { |
|
132 | - WC_Stripe_Logger::log( 'Could not find order via source ID: ' . $notification->data->object->id ); |
|
131 | + if ( ! $order) { |
|
132 | + WC_Stripe_Logger::log('Could not find order via source ID: ' . $notification->data->object->id); |
|
133 | 133 | return; |
134 | 134 | } |
135 | 135 | |
136 | 136 | $order_id = WC_Stripe_Helper::is_pre_30() ? $order->id : $order->get_id(); |
137 | 137 | $source_id = $notification->data->object->id; |
138 | 138 | |
139 | - $is_pending_receiver = ( 'receiver' === $notification->data->object->flow ); |
|
139 | + $is_pending_receiver = ('receiver' === $notification->data->object->flow); |
|
140 | 140 | |
141 | 141 | try { |
142 | - if ( 'processing' === $order->get_status() || 'completed' === $order->get_status() ) { |
|
142 | + if ('processing' === $order->get_status() || 'completed' === $order->get_status()) { |
|
143 | 143 | return; |
144 | 144 | } |
145 | 145 | |
146 | - if ( 'on-hold' === $order->get_status() && ! $is_pending_receiver ) { |
|
146 | + if ('on-hold' === $order->get_status() && ! $is_pending_receiver) { |
|
147 | 147 | return; |
148 | 148 | } |
149 | 149 | |
@@ -151,95 +151,95 @@ discard block |
||
151 | 151 | $response = null; |
152 | 152 | |
153 | 153 | // This will throw exception if not valid. |
154 | - $this->validate_minimum_order_amount( $order ); |
|
154 | + $this->validate_minimum_order_amount($order); |
|
155 | 155 | |
156 | - WC_Stripe_Logger::log( "Info: (Webhook) Begin processing payment for order $order_id for the amount of {$order->get_total()}" ); |
|
156 | + WC_Stripe_Logger::log("Info: (Webhook) Begin processing payment for order $order_id for the amount of {$order->get_total()}"); |
|
157 | 157 | |
158 | 158 | // Prep source object. |
159 | 159 | $source_object = new stdClass(); |
160 | 160 | $source_object->token_id = ''; |
161 | - $source_object->customer = $this->get_stripe_customer_id( $order ); |
|
161 | + $source_object->customer = $this->get_stripe_customer_id($order); |
|
162 | 162 | $source_object->source = $source_id; |
163 | 163 | |
164 | 164 | // Make the request. |
165 | - $response = WC_Stripe_API::request( $this->generate_payment_request( $order, $source_object ), 'charges', 'POST', true ); |
|
165 | + $response = WC_Stripe_API::request($this->generate_payment_request($order, $source_object), 'charges', 'POST', true); |
|
166 | 166 | $headers = $response['headers']; |
167 | 167 | $response = $response['body']; |
168 | 168 | |
169 | - if ( ! empty( $response->error ) ) { |
|
169 | + if ( ! empty($response->error)) { |
|
170 | 170 | // We want to retry. |
171 | - if ( $this->is_retryable_error( $response->error ) ) { |
|
172 | - if ( $retry ) { |
|
171 | + if ($this->is_retryable_error($response->error)) { |
|
172 | + if ($retry) { |
|
173 | 173 | // Don't do anymore retries after this. |
174 | - if ( 5 <= $this->retry_interval ) { |
|
174 | + if (5 <= $this->retry_interval) { |
|
175 | 175 | |
176 | - return $this->process_webhook_payment( $notification, false ); |
|
176 | + return $this->process_webhook_payment($notification, false); |
|
177 | 177 | } |
178 | 178 | |
179 | - sleep( $this->retry_interval ); |
|
179 | + sleep($this->retry_interval); |
|
180 | 180 | |
181 | 181 | $this->retry_interval++; |
182 | - return $this->process_webhook_payment( $notification, true ); |
|
182 | + return $this->process_webhook_payment($notification, true); |
|
183 | 183 | } else { |
184 | - $localized_message = __( 'On going requests error and retries exhausted.', 'woocommerce-gateway-stripe' ); |
|
185 | - $order->add_order_note( $localized_message ); |
|
186 | - throw new WC_Stripe_Exception( print_r( $response, true ), $localized_message ); |
|
184 | + $localized_message = __('On going requests error and retries exhausted.', 'woocommerce-gateway-stripe'); |
|
185 | + $order->add_order_note($localized_message); |
|
186 | + throw new WC_Stripe_Exception(print_r($response, true), $localized_message); |
|
187 | 187 | } |
188 | 188 | } |
189 | 189 | |
190 | 190 | // Customer param wrong? The user may have been deleted on stripe's end. Remove customer_id. Can be retried without. |
191 | - if ( preg_match( '/No such customer/i', $response->error->message ) && $retry ) { |
|
192 | - if ( WC_Stripe_Helper::is_pre_30() ) { |
|
193 | - delete_user_meta( $order->customer_user, '_stripe_customer_id' ); |
|
194 | - delete_post_meta( $order_id, '_stripe_customer_id' ); |
|
191 | + if (preg_match('/No such customer/i', $response->error->message) && $retry) { |
|
192 | + if (WC_Stripe_Helper::is_pre_30()) { |
|
193 | + delete_user_meta($order->customer_user, '_stripe_customer_id'); |
|
194 | + delete_post_meta($order_id, '_stripe_customer_id'); |
|
195 | 195 | } else { |
196 | - delete_user_meta( $order->get_customer_id(), '_stripe_customer_id' ); |
|
197 | - $order->delete_meta_data( '_stripe_customer_id' ); |
|
196 | + delete_user_meta($order->get_customer_id(), '_stripe_customer_id'); |
|
197 | + $order->delete_meta_data('_stripe_customer_id'); |
|
198 | 198 | $order->save(); |
199 | 199 | } |
200 | 200 | |
201 | - return $this->process_webhook_payment( $notification, false ); |
|
201 | + return $this->process_webhook_payment($notification, false); |
|
202 | 202 | |
203 | - } elseif ( preg_match( '/No such token/i', $response->error->message ) && $source_object->token_id ) { |
|
203 | + } elseif (preg_match('/No such token/i', $response->error->message) && $source_object->token_id) { |
|
204 | 204 | // Source param wrong? The CARD may have been deleted on stripe's end. Remove token and show message. |
205 | - $wc_token = WC_Payment_Tokens::get( $source_object->token_id ); |
|
205 | + $wc_token = WC_Payment_Tokens::get($source_object->token_id); |
|
206 | 206 | $wc_token->delete(); |
207 | - $message = __( 'This card is no longer available and has been removed.', 'woocommerce-gateway-stripe' ); |
|
208 | - $order->add_order_note( $message ); |
|
209 | - throw new WC_Stripe_Exception( print_r( $response, true ), $message ); |
|
207 | + $message = __('This card is no longer available and has been removed.', 'woocommerce-gateway-stripe'); |
|
208 | + $order->add_order_note($message); |
|
209 | + throw new WC_Stripe_Exception(print_r($response, true), $message); |
|
210 | 210 | } |
211 | 211 | |
212 | 212 | $localized_messages = WC_Stripe_Helper::get_localized_messages(); |
213 | 213 | |
214 | - if ( 'card_error' === $response->error->type ) { |
|
215 | - $localized_message = isset( $localized_messages[ $response->error->code ] ) ? $localized_messages[ $response->error->code ] : $response->error->message; |
|
214 | + if ('card_error' === $response->error->type) { |
|
215 | + $localized_message = isset($localized_messages[$response->error->code]) ? $localized_messages[$response->error->code] : $response->error->message; |
|
216 | 216 | } else { |
217 | - $localized_message = isset( $localized_messages[ $response->error->type ] ) ? $localized_messages[ $response->error->type ] : $response->error->message; |
|
217 | + $localized_message = isset($localized_messages[$response->error->type]) ? $localized_messages[$response->error->type] : $response->error->message; |
|
218 | 218 | } |
219 | 219 | |
220 | - $order->add_order_note( $localized_message ); |
|
220 | + $order->add_order_note($localized_message); |
|
221 | 221 | |
222 | - throw new WC_Stripe_Exception( print_r( $response, true ), $localized_message ); |
|
222 | + throw new WC_Stripe_Exception(print_r($response, true), $localized_message); |
|
223 | 223 | } |
224 | 224 | |
225 | 225 | // To prevent double processing the order on WC side. |
226 | - if ( ! $this->is_original_request( $headers ) ) { |
|
226 | + if ( ! $this->is_original_request($headers)) { |
|
227 | 227 | return; |
228 | 228 | } |
229 | 229 | |
230 | - do_action( 'wc_gateway_stripe_process_webhook_payment', $response, $order ); |
|
230 | + do_action('wc_gateway_stripe_process_webhook_payment', $response, $order); |
|
231 | 231 | |
232 | - $this->process_response( $response, $order ); |
|
232 | + $this->process_response($response, $order); |
|
233 | 233 | |
234 | - } catch ( WC_Stripe_Exception $e ) { |
|
235 | - WC_Stripe_Logger::log( 'Error: ' . $e->getMessage() ); |
|
234 | + } catch (WC_Stripe_Exception $e) { |
|
235 | + WC_Stripe_Logger::log('Error: ' . $e->getMessage()); |
|
236 | 236 | |
237 | - do_action( 'wc_gateway_stripe_process_webhook_payment_error', $e, $order ); |
|
237 | + do_action('wc_gateway_stripe_process_webhook_payment_error', $e, $order); |
|
238 | 238 | |
239 | - $statuses = array( 'pending', 'failed' ); |
|
239 | + $statuses = array('pending', 'failed'); |
|
240 | 240 | |
241 | - if ( $order->has_status( $statuses ) ) { |
|
242 | - $this->send_failed_order_email( $order_id ); |
|
241 | + if ($order->has_status($statuses)) { |
|
242 | + $this->send_failed_order_email($order_id); |
|
243 | 243 | } |
244 | 244 | } |
245 | 245 | } |
@@ -252,21 +252,21 @@ discard block |
||
252 | 252 | * @since 4.0.0 |
253 | 253 | * @param object $notification |
254 | 254 | */ |
255 | - public function process_webhook_dispute( $notification ) { |
|
256 | - $order = WC_Stripe_Helper::get_order_by_charge_id( $notification->data->object->charge ); |
|
255 | + public function process_webhook_dispute($notification) { |
|
256 | + $order = WC_Stripe_Helper::get_order_by_charge_id($notification->data->object->charge); |
|
257 | 257 | |
258 | - if ( ! $order ) { |
|
259 | - WC_Stripe_Logger::log( 'Could not find order via charge ID: ' . $notification->data->object->charge ); |
|
258 | + if ( ! $order) { |
|
259 | + WC_Stripe_Logger::log('Could not find order via charge ID: ' . $notification->data->object->charge); |
|
260 | 260 | return; |
261 | 261 | } |
262 | 262 | |
263 | 263 | /* translators: 1) The URL to the order. */ |
264 | - $order->update_status( 'on-hold', sprintf( __( 'A dispute was created for this order. Response is needed. Please go to your <a href="%s" title="Stripe Dashboard" target="_blank">Stripe Dashboard</a> to review this dispute.', 'woocommerce-gateway-stripe' ), $this->get_transaction_url( $order ) ) ); |
|
264 | + $order->update_status('on-hold', sprintf(__('A dispute was created for this order. Response is needed. Please go to your <a href="%s" title="Stripe Dashboard" target="_blank">Stripe Dashboard</a> to review this dispute.', 'woocommerce-gateway-stripe'), $this->get_transaction_url($order))); |
|
265 | 265 | |
266 | - do_action( 'wc_gateway_stripe_process_webhook_payment_error', $order, $notification ); |
|
266 | + do_action('wc_gateway_stripe_process_webhook_payment_error', $order, $notification); |
|
267 | 267 | |
268 | 268 | $order_id = WC_Stripe_Helper::is_pre_30() ? $order->id : $order->get_id(); |
269 | - $this->send_failed_order_email( $order_id ); |
|
269 | + $this->send_failed_order_email($order_id); |
|
270 | 270 | } |
271 | 271 | |
272 | 272 | /** |
@@ -277,41 +277,41 @@ discard block |
||
277 | 277 | * @version 4.0.0 |
278 | 278 | * @param object $notification |
279 | 279 | */ |
280 | - public function process_webhook_capture( $notification ) { |
|
281 | - $order = WC_Stripe_Helper::get_order_by_charge_id( $notification->data->object->id ); |
|
280 | + public function process_webhook_capture($notification) { |
|
281 | + $order = WC_Stripe_Helper::get_order_by_charge_id($notification->data->object->id); |
|
282 | 282 | |
283 | - if ( ! $order ) { |
|
284 | - WC_Stripe_Logger::log( 'Could not find order via charge ID: ' . $notification->data->object->id ); |
|
283 | + if ( ! $order) { |
|
284 | + WC_Stripe_Logger::log('Could not find order via charge ID: ' . $notification->data->object->id); |
|
285 | 285 | return; |
286 | 286 | } |
287 | 287 | |
288 | 288 | $order_id = WC_Stripe_Helper::is_pre_30() ? $order->id : $order->get_id(); |
289 | 289 | |
290 | - if ( 'stripe' === ( WC_Stripe_Helper::is_pre_30() ? $order->payment_method : $order->get_payment_method() ) ) { |
|
291 | - $charge = WC_Stripe_Helper::is_pre_30() ? get_post_meta( $order_id, '_transaction_id', true ) : $order->get_transaction_id(); |
|
292 | - $captured = WC_Stripe_Helper::is_pre_30() ? get_post_meta( $order_id, '_stripe_charge_captured', true ) : $order->get_meta( '_stripe_charge_captured', true ); |
|
290 | + if ('stripe' === (WC_Stripe_Helper::is_pre_30() ? $order->payment_method : $order->get_payment_method())) { |
|
291 | + $charge = WC_Stripe_Helper::is_pre_30() ? get_post_meta($order_id, '_transaction_id', true) : $order->get_transaction_id(); |
|
292 | + $captured = WC_Stripe_Helper::is_pre_30() ? get_post_meta($order_id, '_stripe_charge_captured', true) : $order->get_meta('_stripe_charge_captured', true); |
|
293 | 293 | |
294 | - if ( $charge && 'no' === $captured ) { |
|
295 | - WC_Stripe_Helper::is_pre_30() ? update_post_meta( $order_id, '_stripe_charge_captured', 'yes' ) : $order->update_meta_data( '_stripe_charge_captured', 'yes' ); |
|
294 | + if ($charge && 'no' === $captured) { |
|
295 | + WC_Stripe_Helper::is_pre_30() ? update_post_meta($order_id, '_stripe_charge_captured', 'yes') : $order->update_meta_data('_stripe_charge_captured', 'yes'); |
|
296 | 296 | |
297 | 297 | // Store other data such as fees |
298 | - WC_Stripe_Helper::is_pre_30() ? update_post_meta( $order_id, '_transaction_id', $notification->data->object->id ) : $order->set_transaction_id( $notification->data->object->id ); |
|
298 | + WC_Stripe_Helper::is_pre_30() ? update_post_meta($order_id, '_transaction_id', $notification->data->object->id) : $order->set_transaction_id($notification->data->object->id); |
|
299 | 299 | |
300 | - if ( isset( $notification->data->object->balance_transaction ) ) { |
|
301 | - $this->update_fees( $order, $notification->data->object->balance_transaction ); |
|
300 | + if (isset($notification->data->object->balance_transaction)) { |
|
301 | + $this->update_fees($order, $notification->data->object->balance_transaction); |
|
302 | 302 | } |
303 | 303 | |
304 | - if ( is_callable( array( $order, 'save' ) ) ) { |
|
304 | + if (is_callable(array($order, 'save'))) { |
|
305 | 305 | $order->save(); |
306 | 306 | } |
307 | 307 | |
308 | 308 | /* translators: transaction id */ |
309 | - $order->update_status( $order->needs_processing() ? 'processing' : 'completed', sprintf( __( 'Stripe charge complete (Charge ID: %s)', 'woocommerce-gateway-stripe' ), $notification->data->object->id ) ); |
|
309 | + $order->update_status($order->needs_processing() ? 'processing' : 'completed', sprintf(__('Stripe charge complete (Charge ID: %s)', 'woocommerce-gateway-stripe'), $notification->data->object->id)); |
|
310 | 310 | |
311 | 311 | // Check and see if capture is partial. |
312 | - if ( $this->is_partial_capture( $notification ) ) { |
|
313 | - $order->set_total( $this->get_partial_amount_to_charge( $notification ) ); |
|
314 | - $order->add_order_note( __( 'This charge was partially captured via Stripe Dashboard', 'woocommerce-gateway-stripe' ) ); |
|
312 | + if ($this->is_partial_capture($notification)) { |
|
313 | + $order->set_total($this->get_partial_amount_to_charge($notification)); |
|
314 | + $order->add_order_note(__('This charge was partially captured via Stripe Dashboard', 'woocommerce-gateway-stripe')); |
|
315 | 315 | $order->save(); |
316 | 316 | } |
317 | 317 | } |
@@ -326,38 +326,38 @@ discard block |
||
326 | 326 | * @version 4.0.0 |
327 | 327 | * @param object $notification |
328 | 328 | */ |
329 | - public function process_webhook_charge_succeeded( $notification ) { |
|
329 | + public function process_webhook_charge_succeeded($notification) { |
|
330 | 330 | // The following payment methods are synchronous so does not need to be handle via webhook. |
331 | - if ( ( isset( $notification->data->object->source->type ) && 'card' === $notification->data->object->source->type ) || ( isset( $notification->data->object->source->type ) && 'three_d_secure' === $notification->data->object->source->type ) ) { |
|
331 | + if ((isset($notification->data->object->source->type) && 'card' === $notification->data->object->source->type) || (isset($notification->data->object->source->type) && 'three_d_secure' === $notification->data->object->source->type)) { |
|
332 | 332 | return; |
333 | 333 | } |
334 | 334 | |
335 | - $order = WC_Stripe_Helper::get_order_by_charge_id( $notification->data->object->id ); |
|
335 | + $order = WC_Stripe_Helper::get_order_by_charge_id($notification->data->object->id); |
|
336 | 336 | |
337 | - if ( ! $order ) { |
|
338 | - WC_Stripe_Logger::log( 'Could not find order via charge ID: ' . $notification->data->object->id ); |
|
337 | + if ( ! $order) { |
|
338 | + WC_Stripe_Logger::log('Could not find order via charge ID: ' . $notification->data->object->id); |
|
339 | 339 | return; |
340 | 340 | } |
341 | 341 | |
342 | 342 | $order_id = WC_Stripe_Helper::is_pre_30() ? $order->id : $order->get_id(); |
343 | 343 | |
344 | - if ( 'on-hold' !== $order->get_status() ) { |
|
344 | + if ('on-hold' !== $order->get_status()) { |
|
345 | 345 | return; |
346 | 346 | } |
347 | 347 | |
348 | 348 | // Store other data such as fees |
349 | - WC_Stripe_Helper::is_pre_30() ? update_post_meta( $order_id, '_transaction_id', $notification->data->object->id ) : $order->set_transaction_id( $notification->data->object->id ); |
|
349 | + WC_Stripe_Helper::is_pre_30() ? update_post_meta($order_id, '_transaction_id', $notification->data->object->id) : $order->set_transaction_id($notification->data->object->id); |
|
350 | 350 | |
351 | - if ( isset( $notification->data->object->balance_transaction ) ) { |
|
352 | - $this->update_fees( $order, $notification->data->object->balance_transaction ); |
|
351 | + if (isset($notification->data->object->balance_transaction)) { |
|
352 | + $this->update_fees($order, $notification->data->object->balance_transaction); |
|
353 | 353 | } |
354 | 354 | |
355 | - if ( is_callable( array( $order, 'save' ) ) ) { |
|
355 | + if (is_callable(array($order, 'save'))) { |
|
356 | 356 | $order->save(); |
357 | 357 | } |
358 | 358 | |
359 | 359 | /* translators: transaction id */ |
360 | - $order->update_status( $order->needs_processing() ? 'processing' : 'completed', sprintf( __( 'Stripe charge complete (Charge ID: %s)', 'woocommerce-gateway-stripe' ), $notification->data->object->id ) ); |
|
360 | + $order->update_status($order->needs_processing() ? 'processing' : 'completed', sprintf(__('Stripe charge complete (Charge ID: %s)', 'woocommerce-gateway-stripe'), $notification->data->object->id)); |
|
361 | 361 | } |
362 | 362 | |
363 | 363 | /** |
@@ -368,23 +368,23 @@ discard block |
||
368 | 368 | * @version 4.0.0 |
369 | 369 | * @param object $notification |
370 | 370 | */ |
371 | - public function process_webhook_charge_failed( $notification ) { |
|
372 | - $order = WC_Stripe_Helper::get_order_by_charge_id( $notification->data->object->id ); |
|
371 | + public function process_webhook_charge_failed($notification) { |
|
372 | + $order = WC_Stripe_Helper::get_order_by_charge_id($notification->data->object->id); |
|
373 | 373 | |
374 | - if ( ! $order ) { |
|
375 | - WC_Stripe_Logger::log( 'Could not find order via charge ID: ' . $notification->data->object->id ); |
|
374 | + if ( ! $order) { |
|
375 | + WC_Stripe_Logger::log('Could not find order via charge ID: ' . $notification->data->object->id); |
|
376 | 376 | return; |
377 | 377 | } |
378 | 378 | |
379 | 379 | $order_id = WC_Stripe_Helper::is_pre_30() ? $order->id : $order->get_id(); |
380 | 380 | |
381 | - if ( 'on-hold' !== $order->get_status() ) { |
|
381 | + if ('on-hold' !== $order->get_status()) { |
|
382 | 382 | return; |
383 | 383 | } |
384 | 384 | |
385 | - $order->update_status( 'failed', __( 'This payment failed to clear.', 'woocommerce-gateway-stripe' ) ); |
|
385 | + $order->update_status('failed', __('This payment failed to clear.', 'woocommerce-gateway-stripe')); |
|
386 | 386 | |
387 | - do_action( 'wc_gateway_stripe_process_webhook_payment_error', $order, $notification ); |
|
387 | + do_action('wc_gateway_stripe_process_webhook_payment_error', $order, $notification); |
|
388 | 388 | } |
389 | 389 | |
390 | 390 | /** |
@@ -395,23 +395,23 @@ discard block |
||
395 | 395 | * @version 4.0.0 |
396 | 396 | * @param object $notification |
397 | 397 | */ |
398 | - public function process_webhook_source_canceled( $notification ) { |
|
399 | - $order = WC_Stripe_Helper::get_order_by_charge_id( $notification->data->object->id ); |
|
398 | + public function process_webhook_source_canceled($notification) { |
|
399 | + $order = WC_Stripe_Helper::get_order_by_charge_id($notification->data->object->id); |
|
400 | 400 | |
401 | - if ( ! $order ) { |
|
402 | - WC_Stripe_Logger::log( 'Could not find order via charge ID: ' . $notification->data->object->id ); |
|
401 | + if ( ! $order) { |
|
402 | + WC_Stripe_Logger::log('Could not find order via charge ID: ' . $notification->data->object->id); |
|
403 | 403 | return; |
404 | 404 | } |
405 | 405 | |
406 | 406 | $order_id = WC_Stripe_Helper::is_pre_30() ? $order->id : $order->get_id(); |
407 | 407 | |
408 | - if ( 'on-hold' !== $order->get_status() || 'cancelled' !== $order->get_status() ) { |
|
408 | + if ('on-hold' !== $order->get_status() || 'cancelled' !== $order->get_status()) { |
|
409 | 409 | return; |
410 | 410 | } |
411 | 411 | |
412 | - $order->update_status( 'cancelled', __( 'This payment has cancelled.', 'woocommerce-gateway-stripe' ) ); |
|
412 | + $order->update_status('cancelled', __('This payment has cancelled.', 'woocommerce-gateway-stripe')); |
|
413 | 413 | |
414 | - do_action( 'wc_gateway_stripe_process_webhook_payment_error', $order, $notification ); |
|
414 | + do_action('wc_gateway_stripe_process_webhook_payment_error', $order, $notification); |
|
415 | 415 | } |
416 | 416 | |
417 | 417 | /** |
@@ -422,42 +422,42 @@ discard block |
||
422 | 422 | * @version 4.0.0 |
423 | 423 | * @param object $notification |
424 | 424 | */ |
425 | - public function process_webhook_refund( $notification ) { |
|
426 | - $order = WC_Stripe_Helper::get_order_by_charge_id( $notification->data->object->id ); |
|
425 | + public function process_webhook_refund($notification) { |
|
426 | + $order = WC_Stripe_Helper::get_order_by_charge_id($notification->data->object->id); |
|
427 | 427 | |
428 | - if ( ! $order ) { |
|
429 | - WC_Stripe_Logger::log( 'Could not find order via charge ID: ' . $notification->data->object->id ); |
|
428 | + if ( ! $order) { |
|
429 | + WC_Stripe_Logger::log('Could not find order via charge ID: ' . $notification->data->object->id); |
|
430 | 430 | return; |
431 | 431 | } |
432 | 432 | |
433 | 433 | $order_id = WC_Stripe_Helper::is_pre_30() ? $order->id : $order->get_id(); |
434 | 434 | |
435 | - if ( 'stripe' === ( WC_Stripe_Helper::is_pre_30() ? $order->payment_method : $order->get_payment_method() ) ) { |
|
436 | - $charge = WC_Stripe_Helper::is_pre_30() ? get_post_meta( $order_id, '_transaction_id', true ) : $order->get_transaction_id(); |
|
437 | - $captured = WC_Stripe_Helper::is_pre_30() ? get_post_meta( $order_id, '_stripe_charge_captured', true ) : $order->get_meta( '_stripe_charge_captured', true ); |
|
438 | - $refund_id = WC_Stripe_Helper::is_pre_30() ? get_post_meta( $order_id, '_stripe_refund_id', true ) : $order->get_meta( '_stripe_refund_id', true ); |
|
435 | + if ('stripe' === (WC_Stripe_Helper::is_pre_30() ? $order->payment_method : $order->get_payment_method())) { |
|
436 | + $charge = WC_Stripe_Helper::is_pre_30() ? get_post_meta($order_id, '_transaction_id', true) : $order->get_transaction_id(); |
|
437 | + $captured = WC_Stripe_Helper::is_pre_30() ? get_post_meta($order_id, '_stripe_charge_captured', true) : $order->get_meta('_stripe_charge_captured', true); |
|
438 | + $refund_id = WC_Stripe_Helper::is_pre_30() ? get_post_meta($order_id, '_stripe_refund_id', true) : $order->get_meta('_stripe_refund_id', true); |
|
439 | 439 | |
440 | 440 | // If the refund ID matches, don't continue to prevent double refunding. |
441 | - if ( $notification->data->object->refunds->data[0]->id === $refund_id ) { |
|
441 | + if ($notification->data->object->refunds->data[0]->id === $refund_id) { |
|
442 | 442 | return; |
443 | 443 | } |
444 | 444 | |
445 | 445 | // Only refund captured charge. |
446 | - if ( $charge ) { |
|
447 | - $reason = ( isset( $captured ) && 'yes' === $captured ) ? __( 'Refunded via Stripe Dashboard', 'woocommerce-gateway-stripe' ) : __( 'Pre-Authorization Released via Stripe Dashboard', 'woocommerce-gateway-stripe' ); |
|
446 | + if ($charge) { |
|
447 | + $reason = (isset($captured) && 'yes' === $captured) ? __('Refunded via Stripe Dashboard', 'woocommerce-gateway-stripe') : __('Pre-Authorization Released via Stripe Dashboard', 'woocommerce-gateway-stripe'); |
|
448 | 448 | |
449 | 449 | // Create the refund. |
450 | - $refund = wc_create_refund( array( |
|
450 | + $refund = wc_create_refund(array( |
|
451 | 451 | 'order_id' => $order_id, |
452 | - 'amount' => $this->get_refund_amount( $notification ), |
|
452 | + 'amount' => $this->get_refund_amount($notification), |
|
453 | 453 | 'reason' => $reason, |
454 | - ) ); |
|
454 | + )); |
|
455 | 455 | |
456 | - if ( is_wp_error( $refund ) ) { |
|
457 | - WC_Stripe_Logger::log( $refund->get_error_message() ); |
|
456 | + if (is_wp_error($refund)) { |
|
457 | + WC_Stripe_Logger::log($refund->get_error_message()); |
|
458 | 458 | } |
459 | 459 | |
460 | - $order->add_order_note( $reason ); |
|
460 | + $order->add_order_note($reason); |
|
461 | 461 | } |
462 | 462 | } |
463 | 463 | } |
@@ -468,21 +468,21 @@ discard block |
||
468 | 468 | * @since 4.0.6 |
469 | 469 | * @param object $notification |
470 | 470 | */ |
471 | - public function process_review_opened( $notification ) { |
|
472 | - $order = WC_Stripe_Helper::get_order_by_charge_id( $notification->data->object->charge ); |
|
471 | + public function process_review_opened($notification) { |
|
472 | + $order = WC_Stripe_Helper::get_order_by_charge_id($notification->data->object->charge); |
|
473 | 473 | |
474 | - if ( ! $order ) { |
|
475 | - WC_Stripe_Logger::log( 'Could not find order via charge ID: ' . $notification->data->object->charge ); |
|
474 | + if ( ! $order) { |
|
475 | + WC_Stripe_Logger::log('Could not find order via charge ID: ' . $notification->data->object->charge); |
|
476 | 476 | return; |
477 | 477 | } |
478 | 478 | |
479 | 479 | /* translators: 1) The URL to the order. 2) The reason type. */ |
480 | - $message = sprintf( __( 'A review has been opened for this order. Action is needed. Please go to your <a href="%1$s" title="Stripe Dashboard" target="_blank">Stripe Dashboard</a> to review the issue. Reason: (%2$s)', 'woocommerce-gateway-stripe' ), $this->get_transaction_url( $order ), $notification->data->object->reason ); |
|
480 | + $message = sprintf(__('A review has been opened for this order. Action is needed. Please go to your <a href="%1$s" title="Stripe Dashboard" target="_blank">Stripe Dashboard</a> to review the issue. Reason: (%2$s)', 'woocommerce-gateway-stripe'), $this->get_transaction_url($order), $notification->data->object->reason); |
|
481 | 481 | |
482 | - if ( apply_filters( 'wc_stripe_webhook_review_change_order_status', true, $order, $notification ) ) { |
|
483 | - $order->update_status( 'on-hold', $message ); |
|
482 | + if (apply_filters('wc_stripe_webhook_review_change_order_status', true, $order, $notification)) { |
|
483 | + $order->update_status('on-hold', $message); |
|
484 | 484 | } else { |
485 | - $order->add_order_note( $message ); |
|
485 | + $order->add_order_note($message); |
|
486 | 486 | } |
487 | 487 | } |
488 | 488 | |
@@ -492,25 +492,25 @@ discard block |
||
492 | 492 | * @since 4.0.6 |
493 | 493 | * @param object $notification |
494 | 494 | */ |
495 | - public function process_review_closed( $notification ) { |
|
496 | - $order = WC_Stripe_Helper::get_order_by_charge_id( $notification->data->object->charge ); |
|
495 | + public function process_review_closed($notification) { |
|
496 | + $order = WC_Stripe_Helper::get_order_by_charge_id($notification->data->object->charge); |
|
497 | 497 | |
498 | - if ( ! $order ) { |
|
499 | - WC_Stripe_Logger::log( 'Could not find order via charge ID: ' . $notification->data->object->charge ); |
|
498 | + if ( ! $order) { |
|
499 | + WC_Stripe_Logger::log('Could not find order via charge ID: ' . $notification->data->object->charge); |
|
500 | 500 | return; |
501 | 501 | } |
502 | 502 | |
503 | 503 | /* translators: 1) The reason type. */ |
504 | - $message = sprintf( __( 'The opened review for this order is now closed. Reason: (%s)', 'woocommerce-gateway-stripe' ), $notification->data->object->reason ); |
|
504 | + $message = sprintf(__('The opened review for this order is now closed. Reason: (%s)', 'woocommerce-gateway-stripe'), $notification->data->object->reason); |
|
505 | 505 | |
506 | - if ( 'on-hold' === $order->get_status() ) { |
|
507 | - if ( apply_filters( 'wc_stripe_webhook_review_change_order_status', true, $order, $notification ) ) { |
|
508 | - $order->update_status( 'processing', $message ); |
|
506 | + if ('on-hold' === $order->get_status()) { |
|
507 | + if (apply_filters('wc_stripe_webhook_review_change_order_status', true, $order, $notification)) { |
|
508 | + $order->update_status('processing', $message); |
|
509 | 509 | } else { |
510 | - $order->add_order_note( $message ); |
|
510 | + $order->add_order_note($message); |
|
511 | 511 | } |
512 | 512 | } else { |
513 | - $order->add_order_note( $message ); |
|
513 | + $order->add_order_note($message); |
|
514 | 514 | } |
515 | 515 | } |
516 | 516 | |
@@ -521,7 +521,7 @@ discard block |
||
521 | 521 | * @version 4.0.0 |
522 | 522 | * @param object $notification |
523 | 523 | */ |
524 | - public function is_partial_capture( $notification ) { |
|
524 | + public function is_partial_capture($notification) { |
|
525 | 525 | return 0 < $notification->data->object->amount_refunded; |
526 | 526 | } |
527 | 527 | |
@@ -532,11 +532,11 @@ discard block |
||
532 | 532 | * @version 4.0.0 |
533 | 533 | * @param object $notification |
534 | 534 | */ |
535 | - public function get_refund_amount( $notification ) { |
|
536 | - if ( $this->is_partial_capture( $notification ) ) { |
|
535 | + public function get_refund_amount($notification) { |
|
536 | + if ($this->is_partial_capture($notification)) { |
|
537 | 537 | $amount = $notification->data->object->amount_refunded / 100; |
538 | 538 | |
539 | - if ( in_array( strtolower( $notification->data->object->currency ), WC_Stripe_Helper::no_decimal_currencies() ) ) { |
|
539 | + if (in_array(strtolower($notification->data->object->currency), WC_Stripe_Helper::no_decimal_currencies())) { |
|
540 | 540 | $amount = $notification->data->object->amount_refunded; |
541 | 541 | } |
542 | 542 | |
@@ -553,12 +553,12 @@ discard block |
||
553 | 553 | * @version 4.0.0 |
554 | 554 | * @param object $notification |
555 | 555 | */ |
556 | - public function get_partial_amount_to_charge( $notification ) { |
|
557 | - if ( $this->is_partial_capture( $notification ) ) { |
|
558 | - $amount = ( $notification->data->object->amount - $notification->data->object->amount_refunded ) / 100; |
|
556 | + public function get_partial_amount_to_charge($notification) { |
|
557 | + if ($this->is_partial_capture($notification)) { |
|
558 | + $amount = ($notification->data->object->amount - $notification->data->object->amount_refunded) / 100; |
|
559 | 559 | |
560 | - if ( in_array( strtolower( $notification->data->object->currency ), WC_Stripe_Helper::no_decimal_currencies() ) ) { |
|
561 | - $amount = ( $notification->data->object->amount - $notification->data->object->amount_refunded ); |
|
560 | + if (in_array(strtolower($notification->data->object->currency), WC_Stripe_Helper::no_decimal_currencies())) { |
|
561 | + $amount = ($notification->data->object->amount - $notification->data->object->amount_refunded); |
|
562 | 562 | } |
563 | 563 | |
564 | 564 | return $amount; |
@@ -574,44 +574,44 @@ discard block |
||
574 | 574 | * @version 4.0.0 |
575 | 575 | * @param string $request_body |
576 | 576 | */ |
577 | - public function process_webhook( $request_body ) { |
|
578 | - $notification = json_decode( $request_body ); |
|
577 | + public function process_webhook($request_body) { |
|
578 | + $notification = json_decode($request_body); |
|
579 | 579 | |
580 | - switch ( $notification->type ) { |
|
580 | + switch ($notification->type) { |
|
581 | 581 | case 'source.chargeable': |
582 | - $this->process_webhook_payment( $notification ); |
|
582 | + $this->process_webhook_payment($notification); |
|
583 | 583 | break; |
584 | 584 | |
585 | 585 | case 'source.canceled': |
586 | - $this->process_webhook_source_canceled( $notification ); |
|
586 | + $this->process_webhook_source_canceled($notification); |
|
587 | 587 | break; |
588 | 588 | |
589 | 589 | case 'charge.succeeded': |
590 | - $this->process_webhook_charge_succeeded( $notification ); |
|
590 | + $this->process_webhook_charge_succeeded($notification); |
|
591 | 591 | break; |
592 | 592 | |
593 | 593 | case 'charge.failed': |
594 | - $this->process_webhook_charge_failed( $notification ); |
|
594 | + $this->process_webhook_charge_failed($notification); |
|
595 | 595 | break; |
596 | 596 | |
597 | 597 | case 'charge.captured': |
598 | - $this->process_webhook_capture( $notification ); |
|
598 | + $this->process_webhook_capture($notification); |
|
599 | 599 | break; |
600 | 600 | |
601 | 601 | case 'charge.dispute.created': |
602 | - $this->process_webhook_dispute( $notification ); |
|
602 | + $this->process_webhook_dispute($notification); |
|
603 | 603 | break; |
604 | 604 | |
605 | 605 | case 'charge.refunded': |
606 | - $this->process_webhook_refund( $notification ); |
|
606 | + $this->process_webhook_refund($notification); |
|
607 | 607 | break; |
608 | 608 | |
609 | 609 | case 'review.opened': |
610 | - $this->process_review_opened( $notification ); |
|
610 | + $this->process_review_opened($notification); |
|
611 | 611 | break; |
612 | 612 | |
613 | 613 | case 'review.closed': |
614 | - $this->process_review_closed( $notification ); |
|
614 | + $this->process_review_closed($notification); |
|
615 | 615 | break; |
616 | 616 | |
617 | 617 | } |