@@ -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_giropay'; |
60 | - $this->method_title = __( 'Stripe Giropay', 'woocommerce-gateway-stripe' ); |
|
60 | + $this->method_title = __('Stripe Giropay', '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,23 +71,23 @@ 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( '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('wp_enqueue_scripts', array($this, 'payment_scripts')); |
|
91 | 91 | } |
92 | 92 | |
93 | 93 | /** |
@@ -98,9 +98,9 @@ discard block |
||
98 | 98 | * @return array |
99 | 99 | */ |
100 | 100 | public function get_supported_currency() { |
101 | - return apply_filters( 'wc_stripe_giropay_supported_currencies', array( |
|
101 | + return apply_filters('wc_stripe_giropay_supported_currencies', array( |
|
102 | 102 | 'EUR', |
103 | - ) ); |
|
103 | + )); |
|
104 | 104 | } |
105 | 105 | |
106 | 106 | /** |
@@ -111,7 +111,7 @@ discard block |
||
111 | 111 | * @return bool |
112 | 112 | */ |
113 | 113 | public function is_available() { |
114 | - if ( ! in_array( get_woocommerce_currency(), $this->get_supported_currency() ) ) { |
|
114 | + if ( ! in_array(get_woocommerce_currency(), $this->get_supported_currency())) { |
|
115 | 115 | return false; |
116 | 116 | } |
117 | 117 | |
@@ -132,7 +132,7 @@ discard block |
||
132 | 132 | |
133 | 133 | $icons_str .= $icons['giropay']; |
134 | 134 | |
135 | - return apply_filters( 'woocommerce_gateway_icon', $icons_str, $this->id ); |
|
135 | + return apply_filters('woocommerce_gateway_icon', $icons_str, $this->id); |
|
136 | 136 | } |
137 | 137 | |
138 | 138 | /** |
@@ -143,19 +143,19 @@ discard block |
||
143 | 143 | * @access public |
144 | 144 | */ |
145 | 145 | public function payment_scripts() { |
146 | - if ( ! is_cart() && ! is_checkout() && ! isset( $_GET['pay_for_order'] ) && ! is_add_payment_method_page() ) { |
|
146 | + if ( ! is_cart() && ! is_checkout() && ! isset($_GET['pay_for_order']) && ! is_add_payment_method_page()) { |
|
147 | 147 | return; |
148 | 148 | } |
149 | 149 | |
150 | - wp_enqueue_style( 'stripe_styles' ); |
|
151 | - wp_enqueue_script( 'woocommerce_stripe' ); |
|
150 | + wp_enqueue_style('stripe_styles'); |
|
151 | + wp_enqueue_script('woocommerce_stripe'); |
|
152 | 152 | } |
153 | 153 | |
154 | 154 | /** |
155 | 155 | * Initialize Gateway Settings Form Fields. |
156 | 156 | */ |
157 | 157 | public function init_form_fields() { |
158 | - $this->form_fields = require( WC_STRIPE_PLUGIN_PATH . '/includes/admin/stripe-giropay-settings.php' ); |
|
158 | + $this->form_fields = require(WC_STRIPE_PLUGIN_PATH . '/includes/admin/stripe-giropay-settings.php'); |
|
159 | 159 | } |
160 | 160 | |
161 | 161 | /** |
@@ -167,25 +167,25 @@ discard block |
||
167 | 167 | $description = $this->get_description(); |
168 | 168 | |
169 | 169 | // If paying from order, we need to get total from order not cart. |
170 | - if ( isset( $_GET['pay_for_order'] ) && ! empty( $_GET['key'] ) ) { |
|
171 | - $order = wc_get_order( wc_get_order_id_by_order_key( wc_clean( $_GET['key'] ) ) ); |
|
170 | + if (isset($_GET['pay_for_order']) && ! empty($_GET['key'])) { |
|
171 | + $order = wc_get_order(wc_get_order_id_by_order_key(wc_clean($_GET['key']))); |
|
172 | 172 | $total = $order->get_total(); |
173 | 173 | } |
174 | 174 | |
175 | - if ( is_add_payment_method_page() ) { |
|
176 | - $pay_button_text = __( 'Add Payment', 'woocommerce-gateway-stripe' ); |
|
177 | - $total = ''; |
|
175 | + if (is_add_payment_method_page()) { |
|
176 | + $pay_button_text = __('Add Payment', 'woocommerce-gateway-stripe'); |
|
177 | + $total = ''; |
|
178 | 178 | } else { |
179 | 179 | $pay_button_text = ''; |
180 | 180 | } |
181 | 181 | |
182 | 182 | echo '<div |
183 | 183 | id="stripe-giropay-payment-data" |
184 | - data-amount="' . esc_attr( WC_Stripe_Helper::get_stripe_amount( $total ) ) . '" |
|
185 | - data-currency="' . esc_attr( strtolower( get_woocommerce_currency() ) ) . '">'; |
|
184 | + data-amount="' . esc_attr(WC_Stripe_Helper::get_stripe_amount($total)) . '" |
|
185 | + data-currency="' . esc_attr(strtolower(get_woocommerce_currency())) . '">'; |
|
186 | 186 | |
187 | - if ( $description ) { |
|
188 | - echo apply_filters( 'wc_stripe_description', wpautop( wp_kses_post( $description ) ), $this->id ); |
|
187 | + if ($description) { |
|
188 | + echo apply_filters('wc_stripe_description', wpautop(wp_kses_post($description)), $this->id); |
|
189 | 189 | } |
190 | 190 | |
191 | 191 | echo '</div>'; |
@@ -199,24 +199,24 @@ discard block |
||
199 | 199 | * @param object $order |
200 | 200 | * @return mixed |
201 | 201 | */ |
202 | - public function create_source( $order ) { |
|
202 | + public function create_source($order) { |
|
203 | 203 | $currency = WC_Stripe_Helper::is_pre_30() ? $order->get_order_currency() : $order->get_currency(); |
204 | 204 | $order_id = WC_Stripe_Helper::is_pre_30() ? $order->id : $order->get_id(); |
205 | - $return_url = $this->get_stripe_return_url( $order ); |
|
205 | + $return_url = $this->get_stripe_return_url($order); |
|
206 | 206 | $post_data = array(); |
207 | - $post_data['amount'] = WC_Stripe_Helper::get_stripe_amount( $order->get_total(), $currency ); |
|
208 | - $post_data['currency'] = strtolower( $currency ); |
|
207 | + $post_data['amount'] = WC_Stripe_Helper::get_stripe_amount($order->get_total(), $currency); |
|
208 | + $post_data['currency'] = strtolower($currency); |
|
209 | 209 | $post_data['type'] = 'giropay'; |
210 | - $post_data['owner'] = $this->get_owner_details( $order ); |
|
211 | - $post_data['redirect'] = array( 'return_url' => $return_url ); |
|
210 | + $post_data['owner'] = $this->get_owner_details($order); |
|
211 | + $post_data['redirect'] = array('return_url' => $return_url); |
|
212 | 212 | |
213 | - if ( ! empty( $this->statement_descriptor ) ) { |
|
214 | - $post_data['statement_descriptor'] = WC_Stripe_Helper::clean_statement_descriptor( $this->statement_descriptor ); |
|
213 | + if ( ! empty($this->statement_descriptor)) { |
|
214 | + $post_data['statement_descriptor'] = WC_Stripe_Helper::clean_statement_descriptor($this->statement_descriptor); |
|
215 | 215 | } |
216 | 216 | |
217 | - WC_Stripe_Logger::log( 'Info: Begin creating Giropay source' ); |
|
217 | + WC_Stripe_Logger::log('Info: Begin creating Giropay source'); |
|
218 | 218 | |
219 | - return WC_Stripe_API::request( apply_filters( 'wc_stripe_giropay_source', $post_data, $order ), 'sources' ); |
|
219 | + return WC_Stripe_API::request(apply_filters('wc_stripe_giropay_source', $post_data, $order), 'sources'); |
|
220 | 220 | } |
221 | 221 | |
222 | 222 | /** |
@@ -230,51 +230,51 @@ discard block |
||
230 | 230 | * |
231 | 231 | * @return array|void |
232 | 232 | */ |
233 | - public function process_payment( $order_id, $retry = true, $force_save_source = false ) { |
|
233 | + public function process_payment($order_id, $retry = true, $force_save_source = false) { |
|
234 | 234 | try { |
235 | - $order = wc_get_order( $order_id ); |
|
235 | + $order = wc_get_order($order_id); |
|
236 | 236 | |
237 | 237 | // This will throw exception if not valid. |
238 | - $this->validate_minimum_order_amount( $order ); |
|
238 | + $this->validate_minimum_order_amount($order); |
|
239 | 239 | |
240 | 240 | // This comes from the create account checkbox in the checkout page. |
241 | - $create_account = ! empty( $_POST['createaccount'] ) ? true : false; |
|
241 | + $create_account = ! empty($_POST['createaccount']) ? true : false; |
|
242 | 242 | |
243 | - if ( $create_account ) { |
|
243 | + if ($create_account) { |
|
244 | 244 | $new_customer_id = WC_Stripe_Helper::is_pre_30() ? $order->customer_user : $order->get_customer_id(); |
245 | - $new_stripe_customer = new WC_Stripe_Customer( $new_customer_id ); |
|
245 | + $new_stripe_customer = new WC_Stripe_Customer($new_customer_id); |
|
246 | 246 | $new_stripe_customer->create_customer(); |
247 | 247 | } |
248 | 248 | |
249 | - $response = $this->create_source( $order ); |
|
249 | + $response = $this->create_source($order); |
|
250 | 250 | |
251 | - if ( ! empty( $response->error ) ) { |
|
252 | - $order->add_order_note( $response->error->message ); |
|
251 | + if ( ! empty($response->error)) { |
|
252 | + $order->add_order_note($response->error->message); |
|
253 | 253 | |
254 | - throw new WC_Stripe_Exception( print_r( $response, true ), $response->error->message ); |
|
254 | + throw new WC_Stripe_Exception(print_r($response, true), $response->error->message); |
|
255 | 255 | } |
256 | 256 | |
257 | - if ( WC_Stripe_Helper::is_pre_30() ) { |
|
258 | - update_post_meta( $order_id, '_stripe_source_id', $response->id ); |
|
257 | + if (WC_Stripe_Helper::is_pre_30()) { |
|
258 | + update_post_meta($order_id, '_stripe_source_id', $response->id); |
|
259 | 259 | } else { |
260 | - $order->update_meta_data( '_stripe_source_id', $response->id ); |
|
260 | + $order->update_meta_data('_stripe_source_id', $response->id); |
|
261 | 261 | $order->save(); |
262 | 262 | } |
263 | 263 | |
264 | - WC_Stripe_Logger::log( 'Info: Redirecting to Giropay...' ); |
|
264 | + WC_Stripe_Logger::log('Info: Redirecting to Giropay...'); |
|
265 | 265 | |
266 | 266 | return array( |
267 | 267 | 'result' => 'success', |
268 | - 'redirect' => esc_url_raw( $response->redirect->url ), |
|
268 | + 'redirect' => esc_url_raw($response->redirect->url), |
|
269 | 269 | ); |
270 | - } catch ( WC_Stripe_Exception $e ) { |
|
271 | - wc_add_notice( $e->getLocalizedMessage(), 'error' ); |
|
272 | - WC_Stripe_Logger::log( 'Error: ' . $e->getMessage() ); |
|
270 | + } catch (WC_Stripe_Exception $e) { |
|
271 | + wc_add_notice($e->getLocalizedMessage(), 'error'); |
|
272 | + WC_Stripe_Logger::log('Error: ' . $e->getMessage()); |
|
273 | 273 | |
274 | - do_action( 'wc_gateway_stripe_process_payment_error', $e, $order ); |
|
274 | + do_action('wc_gateway_stripe_process_payment_error', $e, $order); |
|
275 | 275 | |
276 | - if ( $order->has_status( array( 'pending', 'failed' ) ) ) { |
|
277 | - $this->send_failed_order_email( $order_id ); |
|
276 | + if ($order->has_status(array('pending', 'failed'))) { |
|
277 | + $this->send_failed_order_email($order_id); |
|
278 | 278 | } |
279 | 279 | |
280 | 280 | 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_multibanco'; |
60 | - $this->method_title = __( 'Stripe Multibanco', 'woocommerce-gateway-stripe' ); |
|
60 | + $this->method_title = __('Stripe Multibanco', '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,27 +71,27 @@ 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( 'wp_enqueue_scripts', array( $this, 'payment_scripts' ) ); |
|
91 | - add_action( 'woocommerce_thankyou_stripe_multibanco', array( $this, 'thankyou_page' ) ); |
|
89 | + add_action('woocommerce_update_options_payment_gateways_' . $this->id, array($this, 'process_admin_options')); |
|
90 | + add_action('wp_enqueue_scripts', array($this, 'payment_scripts')); |
|
91 | + add_action('woocommerce_thankyou_stripe_multibanco', array($this, 'thankyou_page')); |
|
92 | 92 | |
93 | 93 | // Customer Emails |
94 | - add_action( 'woocommerce_email_before_order_table', array( $this, 'email_instructions' ), 10, 3 ); |
|
94 | + add_action('woocommerce_email_before_order_table', array($this, 'email_instructions'), 10, 3); |
|
95 | 95 | } |
96 | 96 | |
97 | 97 | /** |
@@ -102,9 +102,9 @@ discard block |
||
102 | 102 | * @return array |
103 | 103 | */ |
104 | 104 | public function get_supported_currency() { |
105 | - return apply_filters( 'wc_stripe_multibanco_supported_currencies', array( |
|
105 | + return apply_filters('wc_stripe_multibanco_supported_currencies', array( |
|
106 | 106 | 'EUR', |
107 | - ) ); |
|
107 | + )); |
|
108 | 108 | } |
109 | 109 | |
110 | 110 | /** |
@@ -115,7 +115,7 @@ discard block |
||
115 | 115 | * @return bool |
116 | 116 | */ |
117 | 117 | public function is_available() { |
118 | - if ( ! in_array( get_woocommerce_currency(), $this->get_supported_currency() ) ) { |
|
118 | + if ( ! in_array(get_woocommerce_currency(), $this->get_supported_currency())) { |
|
119 | 119 | return false; |
120 | 120 | } |
121 | 121 | |
@@ -136,7 +136,7 @@ discard block |
||
136 | 136 | |
137 | 137 | $icons_str .= $icons['multibanco']; |
138 | 138 | |
139 | - return apply_filters( 'woocommerce_gateway_icon', $icons_str, $this->id ); |
|
139 | + return apply_filters('woocommerce_gateway_icon', $icons_str, $this->id); |
|
140 | 140 | } |
141 | 141 | |
142 | 142 | /** |
@@ -147,19 +147,19 @@ discard block |
||
147 | 147 | * @access public |
148 | 148 | */ |
149 | 149 | public function payment_scripts() { |
150 | - if ( ! is_cart() && ! is_checkout() && ! isset( $_GET['pay_for_order'] ) && ! is_add_payment_method_page() ) { |
|
150 | + if ( ! is_cart() && ! is_checkout() && ! isset($_GET['pay_for_order']) && ! is_add_payment_method_page()) { |
|
151 | 151 | return; |
152 | 152 | } |
153 | 153 | |
154 | - wp_enqueue_style( 'stripe_styles' ); |
|
155 | - wp_enqueue_script( 'woocommerce_stripe' ); |
|
154 | + wp_enqueue_style('stripe_styles'); |
|
155 | + wp_enqueue_script('woocommerce_stripe'); |
|
156 | 156 | } |
157 | 157 | |
158 | 158 | /** |
159 | 159 | * Initialize Gateway Settings Form Fields. |
160 | 160 | */ |
161 | 161 | public function init_form_fields() { |
162 | - $this->form_fields = require( WC_STRIPE_PLUGIN_PATH . '/includes/admin/stripe-multibanco-settings.php' ); |
|
162 | + $this->form_fields = require(WC_STRIPE_PLUGIN_PATH . '/includes/admin/stripe-multibanco-settings.php'); |
|
163 | 163 | } |
164 | 164 | |
165 | 165 | /** |
@@ -171,25 +171,25 @@ discard block |
||
171 | 171 | $description = $this->get_description(); |
172 | 172 | |
173 | 173 | // If paying from order, we need to get total from order not cart. |
174 | - if ( isset( $_GET['pay_for_order'] ) && ! empty( $_GET['key'] ) ) { |
|
175 | - $order = wc_get_order( wc_get_order_id_by_order_key( wc_clean( $_GET['key'] ) ) ); |
|
174 | + if (isset($_GET['pay_for_order']) && ! empty($_GET['key'])) { |
|
175 | + $order = wc_get_order(wc_get_order_id_by_order_key(wc_clean($_GET['key']))); |
|
176 | 176 | $total = $order->get_total(); |
177 | 177 | } |
178 | 178 | |
179 | - if ( is_add_payment_method_page() ) { |
|
180 | - $pay_button_text = __( 'Add Payment', 'woocommerce-gateway-stripe' ); |
|
181 | - $total = ''; |
|
179 | + if (is_add_payment_method_page()) { |
|
180 | + $pay_button_text = __('Add Payment', 'woocommerce-gateway-stripe'); |
|
181 | + $total = ''; |
|
182 | 182 | } else { |
183 | 183 | $pay_button_text = ''; |
184 | 184 | } |
185 | 185 | |
186 | 186 | echo '<div |
187 | 187 | id="stripe-multibanco-payment-data" |
188 | - data-amount="' . esc_attr( WC_Stripe_Helper::get_stripe_amount( $total ) ) . '" |
|
189 | - data-currency="' . esc_attr( strtolower( get_woocommerce_currency() ) ) . '">'; |
|
188 | + data-amount="' . esc_attr(WC_Stripe_Helper::get_stripe_amount($total)) . '" |
|
189 | + data-currency="' . esc_attr(strtolower(get_woocommerce_currency())) . '">'; |
|
190 | 190 | |
191 | - if ( $description ) { |
|
192 | - echo apply_filters( 'wc_stripe_description', wpautop( wp_kses_post( $description ) ), $this->id ); |
|
191 | + if ($description) { |
|
192 | + echo apply_filters('wc_stripe_description', wpautop(wp_kses_post($description)), $this->id); |
|
193 | 193 | } |
194 | 194 | |
195 | 195 | echo '</div>'; |
@@ -200,8 +200,8 @@ discard block |
||
200 | 200 | * |
201 | 201 | * @param int $order_id |
202 | 202 | */ |
203 | - public function thankyou_page( $order_id ) { |
|
204 | - $this->get_instructions( $order_id ); |
|
203 | + public function thankyou_page($order_id) { |
|
204 | + $this->get_instructions($order_id); |
|
205 | 205 | } |
206 | 206 | |
207 | 207 | /** |
@@ -213,15 +213,15 @@ discard block |
||
213 | 213 | * @param bool $sent_to_admin |
214 | 214 | * @param bool $plain_text |
215 | 215 | */ |
216 | - public function email_instructions( $order, $sent_to_admin, $plain_text = false ) { |
|
216 | + public function email_instructions($order, $sent_to_admin, $plain_text = false) { |
|
217 | 217 | $order_id = WC_Stripe_Helper::is_pre_30() ? $order->id : $order->get_id(); |
218 | 218 | |
219 | 219 | $payment_method = WC_Stripe_Helper::is_pre_30() ? $order->payment_method : $order->get_payment_method(); |
220 | 220 | |
221 | - if ( ! $sent_to_admin && 'stripe_multibanco' === $payment_method && $order->has_status( 'on-hold' ) ) { |
|
222 | - WC_Stripe_Logger::log( 'Sending multibanco email for order #' . $order_id ); |
|
221 | + if ( ! $sent_to_admin && 'stripe_multibanco' === $payment_method && $order->has_status('on-hold')) { |
|
222 | + WC_Stripe_Logger::log('Sending multibanco email for order #' . $order_id); |
|
223 | 223 | |
224 | - $this->get_instructions( $order_id, $plain_text ); |
|
224 | + $this->get_instructions($order_id, $plain_text); |
|
225 | 225 | } |
226 | 226 | } |
227 | 227 | |
@@ -232,34 +232,34 @@ discard block |
||
232 | 232 | * @version 4.1.0 |
233 | 233 | * @param int $order_id |
234 | 234 | */ |
235 | - public function get_instructions( $order_id, $plain_text = false ) { |
|
236 | - $data = get_post_meta( $order_id, '_stripe_multibanco', true ); |
|
235 | + public function get_instructions($order_id, $plain_text = false) { |
|
236 | + $data = get_post_meta($order_id, '_stripe_multibanco', true); |
|
237 | 237 | |
238 | - if ( $plain_text ) { |
|
239 | - esc_html_e( 'MULTIBANCO INFORMAÇÕES DE ENCOMENDA:', 'woocommerce-gateway-stripe' ) . "\n\n"; |
|
238 | + if ($plain_text) { |
|
239 | + esc_html_e('MULTIBANCO INFORMAÇÕES DE ENCOMENDA:', 'woocommerce-gateway-stripe') . "\n\n"; |
|
240 | 240 | echo "=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=\n\n"; |
241 | - esc_html_e( 'Montante:', 'woocommerce-gateway-stripe' ) . "\n\n"; |
|
241 | + esc_html_e('Montante:', 'woocommerce-gateway-stripe') . "\n\n"; |
|
242 | 242 | echo $data['amount'] . "\n\n"; |
243 | 243 | echo "=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=\n\n"; |
244 | - esc_html_e( 'Entidade:', 'woocommerce-gateway-stripe' ) . "\n\n"; |
|
244 | + esc_html_e('Entidade:', 'woocommerce-gateway-stripe') . "\n\n"; |
|
245 | 245 | echo $data['entity'] . "\n\n"; |
246 | 246 | echo "=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=\n\n"; |
247 | - esc_html_e( 'Referencia:', 'woocommerce-gateway-stripe' ) . "\n\n"; |
|
247 | + esc_html_e('Referencia:', 'woocommerce-gateway-stripe') . "\n\n"; |
|
248 | 248 | echo $data['reference'] . "\n\n"; |
249 | 249 | } else { |
250 | 250 | ?> |
251 | - <h3><?php esc_html_e( 'MULTIBANCO INFORMAÇÕES DE ENCOMENDA:', 'woocommerce-gateway-stripe' ); ?></h3> |
|
251 | + <h3><?php esc_html_e('MULTIBANCO INFORMAÇÕES DE ENCOMENDA:', 'woocommerce-gateway-stripe'); ?></h3> |
|
252 | 252 | <ul class="woocommerce-order-overview woocommerce-thankyou-order-details order_details"> |
253 | 253 | <li class="woocommerce-order-overview__order order"> |
254 | - <?php esc_html_e( 'Montante:', 'woocommerce-gateway-stripe' ); ?> |
|
254 | + <?php esc_html_e('Montante:', 'woocommerce-gateway-stripe'); ?> |
|
255 | 255 | <strong><?php echo $data['amount']; ?></strong> |
256 | 256 | </li> |
257 | 257 | <li class="woocommerce-order-overview__order order"> |
258 | - <?php esc_html_e( 'Entidade:', 'woocommerce-gateway-stripe' ); ?> |
|
258 | + <?php esc_html_e('Entidade:', 'woocommerce-gateway-stripe'); ?> |
|
259 | 259 | <strong><?php echo $data['entity']; ?></strong> |
260 | 260 | </li> |
261 | 261 | <li class="woocommerce-order-overview__order order"> |
262 | - <?php esc_html_e( 'Referencia:', 'woocommerce-gateway-stripe' ); ?> |
|
262 | + <?php esc_html_e('Referencia:', 'woocommerce-gateway-stripe'); ?> |
|
263 | 263 | <strong><?php echo $data['reference']; ?></strong> |
264 | 264 | </li> |
265 | 265 | </ul> |
@@ -275,7 +275,7 @@ discard block |
||
275 | 275 | * @param object $order |
276 | 276 | * @param object $source_object |
277 | 277 | */ |
278 | - public function save_instructions( $order, $source_object ) { |
|
278 | + public function save_instructions($order, $source_object) { |
|
279 | 279 | $data = array( |
280 | 280 | 'amount' => $order->get_formatted_order_total(), |
281 | 281 | 'entity' => $source_object->multibanco->entity, |
@@ -284,7 +284,7 @@ discard block |
||
284 | 284 | |
285 | 285 | $order_id = WC_Stripe_Helper::is_pre_30() ? $order->id : $order->get_id(); |
286 | 286 | |
287 | - update_post_meta( $order_id, '_stripe_multibanco', $data ); |
|
287 | + update_post_meta($order_id, '_stripe_multibanco', $data); |
|
288 | 288 | } |
289 | 289 | |
290 | 290 | /** |
@@ -295,24 +295,24 @@ discard block |
||
295 | 295 | * @param object $order |
296 | 296 | * @return mixed |
297 | 297 | */ |
298 | - public function create_source( $order ) { |
|
298 | + public function create_source($order) { |
|
299 | 299 | $currency = WC_Stripe_Helper::is_pre_30() ? $order->get_order_currency() : $order->get_currency(); |
300 | 300 | $order_id = WC_Stripe_Helper::is_pre_30() ? $order->id : $order->get_id(); |
301 | - $return_url = $this->get_stripe_return_url( $order ); |
|
301 | + $return_url = $this->get_stripe_return_url($order); |
|
302 | 302 | $post_data = array(); |
303 | - $post_data['amount'] = WC_Stripe_Helper::get_stripe_amount( $order->get_total(), $currency ); |
|
304 | - $post_data['currency'] = strtolower( $currency ); |
|
303 | + $post_data['amount'] = WC_Stripe_Helper::get_stripe_amount($order->get_total(), $currency); |
|
304 | + $post_data['currency'] = strtolower($currency); |
|
305 | 305 | $post_data['type'] = 'multibanco'; |
306 | - $post_data['owner'] = $this->get_owner_details( $order ); |
|
307 | - $post_data['redirect'] = array( 'return_url' => $return_url ); |
|
306 | + $post_data['owner'] = $this->get_owner_details($order); |
|
307 | + $post_data['redirect'] = array('return_url' => $return_url); |
|
308 | 308 | |
309 | - if ( ! empty( $this->statement_descriptor ) ) { |
|
310 | - $post_data['statement_descriptor'] = WC_Stripe_Helper::clean_statement_descriptor( $this->statement_descriptor ); |
|
309 | + if ( ! empty($this->statement_descriptor)) { |
|
310 | + $post_data['statement_descriptor'] = WC_Stripe_Helper::clean_statement_descriptor($this->statement_descriptor); |
|
311 | 311 | } |
312 | 312 | |
313 | - WC_Stripe_Logger::log( 'Info: Begin creating Multibanco source' ); |
|
313 | + WC_Stripe_Logger::log('Info: Begin creating Multibanco source'); |
|
314 | 314 | |
315 | - return WC_Stripe_API::request( $post_data, 'sources' ); |
|
315 | + return WC_Stripe_API::request($post_data, 'sources'); |
|
316 | 316 | } |
317 | 317 | |
318 | 318 | /** |
@@ -326,62 +326,62 @@ discard block |
||
326 | 326 | * |
327 | 327 | * @return array|void |
328 | 328 | */ |
329 | - public function process_payment( $order_id, $retry = true, $force_save_source = false ) { |
|
329 | + public function process_payment($order_id, $retry = true, $force_save_source = false) { |
|
330 | 330 | try { |
331 | - $order = wc_get_order( $order_id ); |
|
331 | + $order = wc_get_order($order_id); |
|
332 | 332 | |
333 | 333 | // This will throw exception if not valid. |
334 | - $this->validate_minimum_order_amount( $order ); |
|
334 | + $this->validate_minimum_order_amount($order); |
|
335 | 335 | |
336 | 336 | // This comes from the create account checkbox in the checkout page. |
337 | - $create_account = ! empty( $_POST['createaccount'] ) ? true : false; |
|
337 | + $create_account = ! empty($_POST['createaccount']) ? true : false; |
|
338 | 338 | |
339 | - if ( $create_account ) { |
|
339 | + if ($create_account) { |
|
340 | 340 | $new_customer_id = WC_Stripe_Helper::is_pre_30() ? $order->customer_user : $order->get_customer_id(); |
341 | - $new_stripe_customer = new WC_Stripe_Customer( $new_customer_id ); |
|
341 | + $new_stripe_customer = new WC_Stripe_Customer($new_customer_id); |
|
342 | 342 | $new_stripe_customer->create_customer(); |
343 | 343 | } |
344 | 344 | |
345 | - $response = $this->create_source( $order ); |
|
345 | + $response = $this->create_source($order); |
|
346 | 346 | |
347 | - if ( ! empty( $response->error ) ) { |
|
348 | - $order->add_order_note( $response->error->message ); |
|
347 | + if ( ! empty($response->error)) { |
|
348 | + $order->add_order_note($response->error->message); |
|
349 | 349 | |
350 | - throw new Exception( $response->error->message ); |
|
350 | + throw new Exception($response->error->message); |
|
351 | 351 | } |
352 | 352 | |
353 | - if ( WC_Stripe_Helper::is_pre_30() ) { |
|
354 | - update_post_meta( $order_id, '_stripe_source_id', $response->id ); |
|
353 | + if (WC_Stripe_Helper::is_pre_30()) { |
|
354 | + update_post_meta($order_id, '_stripe_source_id', $response->id); |
|
355 | 355 | } else { |
356 | - $order->update_meta_data( '_stripe_source_id', $response->id ); |
|
356 | + $order->update_meta_data('_stripe_source_id', $response->id); |
|
357 | 357 | $order->save(); |
358 | 358 | } |
359 | 359 | |
360 | - $this->save_instructions( $order, $response ); |
|
360 | + $this->save_instructions($order, $response); |
|
361 | 361 | |
362 | 362 | // Mark as on-hold (we're awaiting the payment) |
363 | - $order->update_status( 'on-hold', __( 'Awaiting Multibanco payment', 'woocommerce-gateway-stripe' ) ); |
|
363 | + $order->update_status('on-hold', __('Awaiting Multibanco payment', 'woocommerce-gateway-stripe')); |
|
364 | 364 | |
365 | 365 | // Reduce stock levels |
366 | - wc_reduce_stock_levels( $order_id ); |
|
366 | + wc_reduce_stock_levels($order_id); |
|
367 | 367 | |
368 | 368 | // Remove cart |
369 | 369 | WC()->cart->empty_cart(); |
370 | 370 | |
371 | - WC_Stripe_Logger::log( 'Info: Redirecting to Multibanco...' ); |
|
371 | + WC_Stripe_Logger::log('Info: Redirecting to Multibanco...'); |
|
372 | 372 | |
373 | 373 | return array( |
374 | 374 | 'result' => 'success', |
375 | - 'redirect' => esc_url_raw( $response->redirect->url ), |
|
375 | + 'redirect' => esc_url_raw($response->redirect->url), |
|
376 | 376 | ); |
377 | - } catch ( Exception $e ) { |
|
378 | - wc_add_notice( $e->getMessage(), 'error' ); |
|
379 | - WC_Stripe_Logger::log( 'Error: ' . $e->getMessage() ); |
|
377 | + } catch (Exception $e) { |
|
378 | + wc_add_notice($e->getMessage(), 'error'); |
|
379 | + WC_Stripe_Logger::log('Error: ' . $e->getMessage()); |
|
380 | 380 | |
381 | - do_action( 'wc_gateway_stripe_process_payment_error', $e, $order ); |
|
381 | + do_action('wc_gateway_stripe_process_payment_error', $e, $order); |
|
382 | 382 | |
383 | - if ( $order->has_status( array( 'pending', 'failed' ) ) ) { |
|
384 | - $this->send_failed_order_email( $order_id ); |
|
383 | + if ($order->has_status(array('pending', 'failed'))) { |
|
384 | + $this->send_failed_order_email($order_id); |
|
385 | 385 | } |
386 | 386 | |
387 | 387 | return array( |
@@ -1,181 +1,181 @@ |
||
1 | 1 | <?php |
2 | -if ( ! defined( 'ABSPATH' ) ) { |
|
2 | +if ( ! defined('ABSPATH')) { |
|
3 | 3 | exit; |
4 | 4 | } |
5 | 5 | |
6 | -return apply_filters( 'wc_stripe_settings', |
|
6 | +return apply_filters('wc_stripe_settings', |
|
7 | 7 | array( |
8 | 8 | 'enabled' => array( |
9 | - 'title' => __( 'Enable/Disable', 'woocommerce-gateway-stripe' ), |
|
10 | - 'label' => __( 'Enable Stripe', 'woocommerce-gateway-stripe' ), |
|
9 | + 'title' => __('Enable/Disable', 'woocommerce-gateway-stripe'), |
|
10 | + 'label' => __('Enable Stripe', 'woocommerce-gateway-stripe'), |
|
11 | 11 | 'type' => 'checkbox', |
12 | 12 | 'description' => '', |
13 | 13 | 'default' => 'no', |
14 | 14 | ), |
15 | 15 | 'title' => array( |
16 | - 'title' => __( 'Title', 'woocommerce-gateway-stripe' ), |
|
16 | + 'title' => __('Title', 'woocommerce-gateway-stripe'), |
|
17 | 17 | 'type' => 'text', |
18 | - 'description' => __( 'This controls the title which the user sees during checkout.', 'woocommerce-gateway-stripe' ), |
|
19 | - 'default' => __( 'Credit Card (Stripe)', 'woocommerce-gateway-stripe' ), |
|
18 | + 'description' => __('This controls the title which the user sees during checkout.', 'woocommerce-gateway-stripe'), |
|
19 | + 'default' => __('Credit Card (Stripe)', 'woocommerce-gateway-stripe'), |
|
20 | 20 | 'desc_tip' => true, |
21 | 21 | ), |
22 | 22 | 'description' => array( |
23 | - 'title' => __( 'Description', 'woocommerce-gateway-stripe' ), |
|
23 | + 'title' => __('Description', 'woocommerce-gateway-stripe'), |
|
24 | 24 | 'type' => 'text', |
25 | - 'description' => __( 'This controls the description which the user sees during checkout.', 'woocommerce-gateway-stripe' ), |
|
26 | - 'default' => __( 'Pay with your credit card via Stripe.', 'woocommerce-gateway-stripe' ), |
|
25 | + 'description' => __('This controls the description which the user sees during checkout.', 'woocommerce-gateway-stripe'), |
|
26 | + 'default' => __('Pay with your credit card via Stripe.', 'woocommerce-gateway-stripe'), |
|
27 | 27 | 'desc_tip' => true, |
28 | 28 | ), |
29 | 29 | 'webhook' => array( |
30 | - 'title' => __( 'Webhook Endpoints', 'woocommerce-gateway-stripe' ), |
|
30 | + 'title' => __('Webhook Endpoints', 'woocommerce-gateway-stripe'), |
|
31 | 31 | 'type' => 'title', |
32 | 32 | /* translators: webhook URL */ |
33 | 33 | 'description' => $this->display_admin_settings_webhook_description(), |
34 | 34 | ), |
35 | 35 | 'testmode' => array( |
36 | - 'title' => __( 'Test mode', 'woocommerce-gateway-stripe' ), |
|
37 | - 'label' => __( 'Enable Test Mode', 'woocommerce-gateway-stripe' ), |
|
36 | + 'title' => __('Test mode', 'woocommerce-gateway-stripe'), |
|
37 | + 'label' => __('Enable Test Mode', 'woocommerce-gateway-stripe'), |
|
38 | 38 | 'type' => 'checkbox', |
39 | - 'description' => __( 'Place the payment gateway in test mode using test API keys.', 'woocommerce-gateway-stripe' ), |
|
39 | + 'description' => __('Place the payment gateway in test mode using test API keys.', 'woocommerce-gateway-stripe'), |
|
40 | 40 | 'default' => 'yes', |
41 | 41 | 'desc_tip' => true, |
42 | 42 | ), |
43 | 43 | 'test_publishable_key' => array( |
44 | - 'title' => __( 'Test Publishable Key', 'woocommerce-gateway-stripe' ), |
|
44 | + 'title' => __('Test Publishable Key', 'woocommerce-gateway-stripe'), |
|
45 | 45 | 'type' => 'password', |
46 | - 'description' => __( 'Get your API keys from your stripe account.', 'woocommerce-gateway-stripe' ), |
|
46 | + 'description' => __('Get your API keys from your stripe account.', 'woocommerce-gateway-stripe'), |
|
47 | 47 | 'default' => '', |
48 | 48 | 'desc_tip' => true, |
49 | 49 | ), |
50 | 50 | 'test_secret_key' => array( |
51 | - 'title' => __( 'Test Secret Key', 'woocommerce-gateway-stripe' ), |
|
51 | + 'title' => __('Test Secret Key', 'woocommerce-gateway-stripe'), |
|
52 | 52 | 'type' => 'password', |
53 | - 'description' => __( 'Get your API keys from your stripe account.', 'woocommerce-gateway-stripe' ), |
|
53 | + 'description' => __('Get your API keys from your stripe account.', 'woocommerce-gateway-stripe'), |
|
54 | 54 | 'default' => '', |
55 | 55 | 'desc_tip' => true, |
56 | 56 | ), |
57 | 57 | 'publishable_key' => array( |
58 | - 'title' => __( 'Live Publishable Key', 'woocommerce-gateway-stripe' ), |
|
58 | + 'title' => __('Live Publishable Key', 'woocommerce-gateway-stripe'), |
|
59 | 59 | 'type' => 'password', |
60 | - 'description' => __( 'Get your API keys from your stripe account.', 'woocommerce-gateway-stripe' ), |
|
60 | + 'description' => __('Get your API keys from your stripe account.', 'woocommerce-gateway-stripe'), |
|
61 | 61 | 'default' => '', |
62 | 62 | 'desc_tip' => true, |
63 | 63 | ), |
64 | 64 | 'secret_key' => array( |
65 | - 'title' => __( 'Live Secret Key', 'woocommerce-gateway-stripe' ), |
|
65 | + 'title' => __('Live Secret Key', 'woocommerce-gateway-stripe'), |
|
66 | 66 | 'type' => 'password', |
67 | - 'description' => __( 'Get your API keys from your stripe account.', 'woocommerce-gateway-stripe' ), |
|
67 | + 'description' => __('Get your API keys from your stripe account.', 'woocommerce-gateway-stripe'), |
|
68 | 68 | 'default' => '', |
69 | 69 | 'desc_tip' => true, |
70 | 70 | ), |
71 | 71 | 'inline_cc_form' => array( |
72 | - 'title' => __( 'Inline Credit Card Form', 'woocommerce-gateway-stripe' ), |
|
72 | + 'title' => __('Inline Credit Card Form', 'woocommerce-gateway-stripe'), |
|
73 | 73 | 'type' => 'checkbox', |
74 | - 'description' => __( 'Choose the style you want to show for your credit card form. When unchecked, the credit card form will display separate credit card number field, expiry date field and cvc field.', 'woocommerce-gateway-stripe' ), |
|
74 | + 'description' => __('Choose the style you want to show for your credit card form. When unchecked, the credit card form will display separate credit card number field, expiry date field and cvc field.', 'woocommerce-gateway-stripe'), |
|
75 | 75 | 'default' => 'no', |
76 | 76 | 'desc_tip' => true, |
77 | 77 | ), |
78 | 78 | 'statement_descriptor' => array( |
79 | - 'title' => __( 'Statement Descriptor', 'woocommerce-gateway-stripe' ), |
|
79 | + 'title' => __('Statement Descriptor', 'woocommerce-gateway-stripe'), |
|
80 | 80 | 'type' => 'text', |
81 | - 'description' => __( 'This may be up to 22 characters. The statement description must contain at least one letter, may not include ><"\' characters, and will appear on your customer\'s statement in capital letters.', 'woocommerce-gateway-stripe' ), |
|
81 | + 'description' => __('This may be up to 22 characters. The statement description must contain at least one letter, may not include ><"\' characters, and will appear on your customer\'s statement in capital letters.', 'woocommerce-gateway-stripe'), |
|
82 | 82 | 'default' => '', |
83 | 83 | 'desc_tip' => true, |
84 | 84 | ), |
85 | 85 | 'capture' => array( |
86 | - 'title' => __( 'Capture', 'woocommerce-gateway-stripe' ), |
|
87 | - 'label' => __( 'Capture charge immediately', 'woocommerce-gateway-stripe' ), |
|
86 | + 'title' => __('Capture', 'woocommerce-gateway-stripe'), |
|
87 | + 'label' => __('Capture charge immediately', 'woocommerce-gateway-stripe'), |
|
88 | 88 | 'type' => 'checkbox', |
89 | - 'description' => __( 'Whether or not to immediately capture the charge. When unchecked, the charge issues an authorization and will need to be captured later. Uncaptured charges expire in 7 days.', 'woocommerce-gateway-stripe' ), |
|
89 | + 'description' => __('Whether or not to immediately capture the charge. When unchecked, the charge issues an authorization and will need to be captured later. Uncaptured charges expire in 7 days.', 'woocommerce-gateway-stripe'), |
|
90 | 90 | 'default' => 'yes', |
91 | 91 | 'desc_tip' => true, |
92 | 92 | ), |
93 | 93 | 'three_d_secure' => array( |
94 | - 'title' => __( '3D Secure', 'woocommerce-gateway-stripe' ), |
|
95 | - 'label' => __( 'Require 3D Secure when applicable', 'woocommerce-gateway-stripe' ), |
|
94 | + 'title' => __('3D Secure', 'woocommerce-gateway-stripe'), |
|
95 | + 'label' => __('Require 3D Secure when applicable', 'woocommerce-gateway-stripe'), |
|
96 | 96 | 'type' => 'checkbox', |
97 | - 'description' => __( 'Some payment methods have 3D Secure feature. This is an extra security layer for your store. Choose how to handle payments when 3D Secure is recommended. Enabling would require customers to use 3D Secure when recommended.', 'woocommerce-gateway-stripe' ), |
|
97 | + 'description' => __('Some payment methods have 3D Secure feature. This is an extra security layer for your store. Choose how to handle payments when 3D Secure is recommended. Enabling would require customers to use 3D Secure when recommended.', 'woocommerce-gateway-stripe'), |
|
98 | 98 | 'default' => 'yes', |
99 | 99 | 'desc_tip' => true, |
100 | 100 | ), |
101 | 101 | 'stripe_checkout' => array( |
102 | - 'title' => __( 'Stripe Modal Checkout', 'woocommerce-gateway-stripe' ), |
|
103 | - 'label' => __( 'Enable Stripe Checkout', 'woocommerce-gateway-stripe' ), |
|
102 | + 'title' => __('Stripe Modal Checkout', 'woocommerce-gateway-stripe'), |
|
103 | + 'label' => __('Enable Stripe Checkout', 'woocommerce-gateway-stripe'), |
|
104 | 104 | 'type' => 'checkbox', |
105 | - 'description' => __( 'If enabled, this option shows a "pay" button and modal credit card form on the checkout, instead of credit card fields directly on the page. We recommend you leave this disabled and use the embedded form as that is the preferred method.', 'woocommerce-gateway-stripe' ), |
|
105 | + 'description' => __('If enabled, this option shows a "pay" button and modal credit card form on the checkout, instead of credit card fields directly on the page. We recommend you leave this disabled and use the embedded form as that is the preferred method.', 'woocommerce-gateway-stripe'), |
|
106 | 106 | 'default' => 'no', |
107 | 107 | 'desc_tip' => true, |
108 | 108 | ), |
109 | 109 | 'stripe_checkout_image' => array( |
110 | - 'title' => __( 'Stripe Checkout Image', 'woocommerce-gateway-stripe' ), |
|
111 | - 'description' => __( 'Optionally enter the URL to a 128x128px image of your brand or product. e.g. <code>https://yoursite.com/wp-content/uploads/2013/09/yourimage.jpg</code>', 'woocommerce-gateway-stripe' ), |
|
110 | + 'title' => __('Stripe Checkout Image', 'woocommerce-gateway-stripe'), |
|
111 | + 'description' => __('Optionally enter the URL to a 128x128px image of your brand or product. e.g. <code>https://yoursite.com/wp-content/uploads/2013/09/yourimage.jpg</code>', 'woocommerce-gateway-stripe'), |
|
112 | 112 | 'type' => 'text', |
113 | 113 | 'default' => '', |
114 | 114 | 'desc_tip' => true, |
115 | 115 | ), |
116 | 116 | 'stripe_checkout_description' => array( |
117 | - 'title' => __( 'Stripe Checkout Description', 'woocommerce-gateway-stripe' ), |
|
117 | + 'title' => __('Stripe Checkout Description', 'woocommerce-gateway-stripe'), |
|
118 | 118 | 'type' => 'text', |
119 | - 'description' => __( 'Shows a description of your store on Stripe Modal Checkout.', 'woocommerce-gateway-stripe' ), |
|
119 | + 'description' => __('Shows a description of your store on Stripe Modal Checkout.', 'woocommerce-gateway-stripe'), |
|
120 | 120 | 'default' => '', |
121 | 121 | 'desc_tip' => true, |
122 | 122 | ), |
123 | 123 | 'payment_request' => array( |
124 | - 'title' => __( 'Payment Request Buttons', 'woocommerce-gateway-stripe' ), |
|
124 | + 'title' => __('Payment Request Buttons', 'woocommerce-gateway-stripe'), |
|
125 | 125 | /* translators: 1) br tag 2) opening anchor tag 3) closing anchor tag */ |
126 | - 'label' => sprintf( __( 'Enable Payment Request Buttons. (Apple Pay/Chrome Payment Request API) %1$sBy using Apple Pay, you agree to %2$s and %3$s\'s terms of service.', 'woocommerce-gateway-stripe' ), '<br />', '<a href="https://stripe.com/apple-pay/legal" target="_blank">Stripe</a>', '<a href="https://developer.apple.com/apple-pay/acceptable-use-guidelines-for-websites/" target="_blank">Apple</a>' ), |
|
126 | + 'label' => sprintf(__('Enable Payment Request Buttons. (Apple Pay/Chrome Payment Request API) %1$sBy using Apple Pay, you agree to %2$s and %3$s\'s terms of service.', 'woocommerce-gateway-stripe'), '<br />', '<a href="https://stripe.com/apple-pay/legal" target="_blank">Stripe</a>', '<a href="https://developer.apple.com/apple-pay/acceptable-use-guidelines-for-websites/" target="_blank">Apple</a>'), |
|
127 | 127 | 'type' => 'checkbox', |
128 | - 'description' => __( 'If enabled, users will be able to pay using Apple Pay or Chrome Payment Request if supported by the browser.', 'woocommerce-gateway-stripe' ), |
|
128 | + 'description' => __('If enabled, users will be able to pay using Apple Pay or Chrome Payment Request if supported by the browser.', 'woocommerce-gateway-stripe'), |
|
129 | 129 | 'default' => 'yes', |
130 | 130 | 'desc_tip' => true, |
131 | 131 | ), |
132 | 132 | 'payment_request_button_type' => array( |
133 | - 'title' => __( 'Payment Request Button Type', 'woocommerce-gateway-stripe' ), |
|
134 | - 'label' => __( 'Button Type', 'woocommerce-gateway-stripe' ), |
|
133 | + 'title' => __('Payment Request Button Type', 'woocommerce-gateway-stripe'), |
|
134 | + 'label' => __('Button Type', 'woocommerce-gateway-stripe'), |
|
135 | 135 | 'type' => 'select', |
136 | - 'description' => __( 'Select the button type you would like to show.', 'woocommerce-gateway-stripe' ), |
|
136 | + 'description' => __('Select the button type you would like to show.', 'woocommerce-gateway-stripe'), |
|
137 | 137 | 'default' => 'buy', |
138 | 138 | 'desc_tip' => true, |
139 | 139 | 'options' => array( |
140 | - 'default' => __( 'Default', 'woocommerce-gateway-stripe' ), |
|
141 | - 'buy' => __( 'Buy', 'woocommerce-gateway-stripe' ), |
|
142 | - 'donate' => __( 'Donate', 'woocommerce-gateway-stripe' ), |
|
140 | + 'default' => __('Default', 'woocommerce-gateway-stripe'), |
|
141 | + 'buy' => __('Buy', 'woocommerce-gateway-stripe'), |
|
142 | + 'donate' => __('Donate', 'woocommerce-gateway-stripe'), |
|
143 | 143 | ), |
144 | 144 | ), |
145 | 145 | 'payment_request_button_theme' => array( |
146 | - 'title' => __( 'Payment Request Button Theme', 'woocommerce-gateway-stripe' ), |
|
147 | - 'label' => __( 'Button Theme', 'woocommerce-gateway-stripe' ), |
|
146 | + 'title' => __('Payment Request Button Theme', 'woocommerce-gateway-stripe'), |
|
147 | + 'label' => __('Button Theme', 'woocommerce-gateway-stripe'), |
|
148 | 148 | 'type' => 'select', |
149 | - 'description' => __( 'Select the button theme you would like to show.', 'woocommerce-gateway-stripe' ), |
|
149 | + 'description' => __('Select the button theme you would like to show.', 'woocommerce-gateway-stripe'), |
|
150 | 150 | 'default' => 'dark', |
151 | 151 | 'desc_tip' => true, |
152 | 152 | 'options' => array( |
153 | - 'dark' => __( 'Dark', 'woocommerce-gateway-stripe' ), |
|
154 | - 'light' => __( 'Light', 'woocommerce-gateway-stripe' ), |
|
155 | - 'light-outline' => __( 'Light-Outline', 'woocommerce-gateway-stripe' ), |
|
153 | + 'dark' => __('Dark', 'woocommerce-gateway-stripe'), |
|
154 | + 'light' => __('Light', 'woocommerce-gateway-stripe'), |
|
155 | + 'light-outline' => __('Light-Outline', 'woocommerce-gateway-stripe'), |
|
156 | 156 | ), |
157 | 157 | ), |
158 | 158 | 'payment_request_button_height' => array( |
159 | - 'title' => __( 'Payment Request Button Height', 'woocommerce-gateway-stripe' ), |
|
160 | - 'label' => __( 'Button Height', 'woocommerce-gateway-stripe' ), |
|
159 | + 'title' => __('Payment Request Button Height', 'woocommerce-gateway-stripe'), |
|
160 | + 'label' => __('Button Height', 'woocommerce-gateway-stripe'), |
|
161 | 161 | 'type' => 'text', |
162 | - 'description' => __( 'Enter the height you would like the button to be in pixels. Width will always be 100%.', 'woocommerce-gateway-stripe' ), |
|
162 | + 'description' => __('Enter the height you would like the button to be in pixels. Width will always be 100%.', 'woocommerce-gateway-stripe'), |
|
163 | 163 | 'default' => '44', |
164 | 164 | 'desc_tip' => true, |
165 | 165 | ), |
166 | 166 | 'saved_cards' => array( |
167 | - 'title' => __( 'Saved Cards', 'woocommerce-gateway-stripe' ), |
|
168 | - 'label' => __( 'Enable Payment via Saved Cards', 'woocommerce-gateway-stripe' ), |
|
167 | + 'title' => __('Saved Cards', 'woocommerce-gateway-stripe'), |
|
168 | + 'label' => __('Enable Payment via Saved Cards', 'woocommerce-gateway-stripe'), |
|
169 | 169 | 'type' => 'checkbox', |
170 | - 'description' => __( 'If enabled, users will be able to pay with a saved card during checkout. Card details are saved on Stripe servers, not on your store.', 'woocommerce-gateway-stripe' ), |
|
170 | + 'description' => __('If enabled, users will be able to pay with a saved card during checkout. Card details are saved on Stripe servers, not on your store.', 'woocommerce-gateway-stripe'), |
|
171 | 171 | 'default' => 'no', |
172 | 172 | 'desc_tip' => true, |
173 | 173 | ), |
174 | 174 | 'logging' => array( |
175 | - 'title' => __( 'Logging', 'woocommerce-gateway-stripe' ), |
|
176 | - 'label' => __( 'Log debug messages', 'woocommerce-gateway-stripe' ), |
|
175 | + 'title' => __('Logging', 'woocommerce-gateway-stripe'), |
|
176 | + 'label' => __('Log debug messages', 'woocommerce-gateway-stripe'), |
|
177 | 177 | 'type' => 'checkbox', |
178 | - 'description' => __( 'Save debug messages to the WooCommerce System Status log.', 'woocommerce-gateway-stripe' ), |
|
178 | + 'description' => __('Save debug messages to the WooCommerce System Status log.', 'woocommerce-gateway-stripe'), |
|
179 | 179 | 'default' => 'no', |
180 | 180 | 'desc_tip' => true, |
181 | 181 | ), |
@@ -1,5 +1,5 @@ discard block |
||
1 | 1 | <?php |
2 | -if ( ! defined( 'ABSPATH' ) ) { |
|
2 | +if ( ! defined('ABSPATH')) { |
|
3 | 3 | exit; |
4 | 4 | } |
5 | 5 | |
@@ -21,11 +21,11 @@ discard block |
||
21 | 21 | public function __construct() { |
22 | 22 | self::$_this = $this; |
23 | 23 | |
24 | - add_filter( 'woocommerce_get_customer_payment_tokens', array( $this, 'woocommerce_get_customer_payment_tokens' ), 10, 3 ); |
|
25 | - add_filter( 'woocommerce_payment_methods_list_item', array( $this, 'get_account_saved_payment_methods_list_item_sepa' ), 10, 2 ); |
|
26 | - add_filter( 'woocommerce_get_credit_card_type_label', array( $this, 'normalize_sepa_label' ) ); |
|
27 | - add_action( 'woocommerce_payment_token_deleted', array( $this, 'woocommerce_payment_token_deleted' ), 10, 2 ); |
|
28 | - add_action( 'woocommerce_payment_token_set_default', array( $this, 'woocommerce_payment_token_set_default' ) ); |
|
24 | + add_filter('woocommerce_get_customer_payment_tokens', array($this, 'woocommerce_get_customer_payment_tokens'), 10, 3); |
|
25 | + add_filter('woocommerce_payment_methods_list_item', array($this, 'get_account_saved_payment_methods_list_item_sepa'), 10, 2); |
|
26 | + add_filter('woocommerce_get_credit_card_type_label', array($this, 'normalize_sepa_label')); |
|
27 | + add_action('woocommerce_payment_token_deleted', array($this, 'woocommerce_payment_token_deleted'), 10, 2); |
|
28 | + add_action('woocommerce_payment_token_set_default', array($this, 'woocommerce_payment_token_set_default')); |
|
29 | 29 | } |
30 | 30 | |
31 | 31 | /** |
@@ -46,8 +46,8 @@ discard block |
||
46 | 46 | * @param string $label |
47 | 47 | * @return string $label |
48 | 48 | */ |
49 | - public function normalize_sepa_label( $label ) { |
|
50 | - if ( 'sepa iban' === strtolower( $label ) ) { |
|
49 | + public function normalize_sepa_label($label) { |
|
50 | + if ('sepa iban' === strtolower($label)) { |
|
51 | 51 | return 'SEPA IBAN'; |
52 | 52 | } |
53 | 53 | |
@@ -61,19 +61,19 @@ discard block |
||
61 | 61 | * @param int $customer_id |
62 | 62 | * @return bool |
63 | 63 | */ |
64 | - public static function customer_has_saved_methods( $customer_id ) { |
|
65 | - $gateways = array( 'stripe', 'stripe_sepa' ); |
|
64 | + public static function customer_has_saved_methods($customer_id) { |
|
65 | + $gateways = array('stripe', 'stripe_sepa'); |
|
66 | 66 | |
67 | - if ( empty( $customer_id ) ) { |
|
67 | + if (empty($customer_id)) { |
|
68 | 68 | return false; |
69 | 69 | } |
70 | 70 | |
71 | 71 | $has_token = false; |
72 | 72 | |
73 | - foreach ( $gateways as $gateway ) { |
|
74 | - $tokens = WC_Payment_Tokens::get_customer_tokens( $customer_id, $gateway ); |
|
73 | + foreach ($gateways as $gateway) { |
|
74 | + $tokens = WC_Payment_Tokens::get_customer_tokens($customer_id, $gateway); |
|
75 | 75 | |
76 | - if ( ! empty( $tokens ) ) { |
|
76 | + if ( ! empty($tokens)) { |
|
77 | 77 | $has_token = true; |
78 | 78 | break; |
79 | 79 | } |
@@ -90,67 +90,67 @@ discard block |
||
90 | 90 | * @param array $tokens |
91 | 91 | * @return array |
92 | 92 | */ |
93 | - public function woocommerce_get_customer_payment_tokens( $tokens = array(), $customer_id, $gateway_id ) { |
|
94 | - if ( is_user_logged_in() && class_exists( 'WC_Payment_Token_CC' ) ) { |
|
93 | + public function woocommerce_get_customer_payment_tokens($tokens = array(), $customer_id, $gateway_id) { |
|
94 | + if (is_user_logged_in() && class_exists('WC_Payment_Token_CC')) { |
|
95 | 95 | $stored_tokens = array(); |
96 | 96 | |
97 | - foreach ( $tokens as $token ) { |
|
97 | + foreach ($tokens as $token) { |
|
98 | 98 | $stored_tokens[] = $token->get_token(); |
99 | 99 | } |
100 | 100 | |
101 | - if ( 'stripe' === $gateway_id ) { |
|
102 | - $stripe_customer = new WC_Stripe_Customer( $customer_id ); |
|
101 | + if ('stripe' === $gateway_id) { |
|
102 | + $stripe_customer = new WC_Stripe_Customer($customer_id); |
|
103 | 103 | $stripe_sources = $stripe_customer->get_sources(); |
104 | 104 | |
105 | - foreach ( $stripe_sources as $source ) { |
|
106 | - if ( isset( $source->type ) && 'card' === $source->type ) { |
|
107 | - if ( ! in_array( $source->id, $stored_tokens ) ) { |
|
105 | + foreach ($stripe_sources as $source) { |
|
106 | + if (isset($source->type) && 'card' === $source->type) { |
|
107 | + if ( ! in_array($source->id, $stored_tokens)) { |
|
108 | 108 | $token = new WC_Payment_Token_CC(); |
109 | - $token->set_token( $source->id ); |
|
110 | - $token->set_gateway_id( 'stripe' ); |
|
111 | - |
|
112 | - if ( 'source' === $source->object && 'card' === $source->type ) { |
|
113 | - $token->set_card_type( strtolower( $source->card->brand ) ); |
|
114 | - $token->set_last4( $source->card->last4 ); |
|
115 | - $token->set_expiry_month( $source->card->exp_month ); |
|
116 | - $token->set_expiry_year( $source->card->exp_year ); |
|
109 | + $token->set_token($source->id); |
|
110 | + $token->set_gateway_id('stripe'); |
|
111 | + |
|
112 | + if ('source' === $source->object && 'card' === $source->type) { |
|
113 | + $token->set_card_type(strtolower($source->card->brand)); |
|
114 | + $token->set_last4($source->card->last4); |
|
115 | + $token->set_expiry_month($source->card->exp_month); |
|
116 | + $token->set_expiry_year($source->card->exp_year); |
|
117 | 117 | } |
118 | 118 | |
119 | - $token->set_user_id( $customer_id ); |
|
119 | + $token->set_user_id($customer_id); |
|
120 | 120 | $token->save(); |
121 | - $tokens[ $token->get_id() ] = $token; |
|
121 | + $tokens[$token->get_id()] = $token; |
|
122 | 122 | } |
123 | 123 | } else { |
124 | - if ( ! in_array( $source->id, $stored_tokens ) && 'card' === $source->object ) { |
|
124 | + if ( ! in_array($source->id, $stored_tokens) && 'card' === $source->object) { |
|
125 | 125 | $token = new WC_Payment_Token_CC(); |
126 | - $token->set_token( $source->id ); |
|
127 | - $token->set_gateway_id( 'stripe' ); |
|
128 | - $token->set_card_type( strtolower( $source->brand ) ); |
|
129 | - $token->set_last4( $source->last4 ); |
|
130 | - $token->set_expiry_month( $source->exp_month ); |
|
131 | - $token->set_expiry_year( $source->exp_year ); |
|
132 | - $token->set_user_id( $customer_id ); |
|
126 | + $token->set_token($source->id); |
|
127 | + $token->set_gateway_id('stripe'); |
|
128 | + $token->set_card_type(strtolower($source->brand)); |
|
129 | + $token->set_last4($source->last4); |
|
130 | + $token->set_expiry_month($source->exp_month); |
|
131 | + $token->set_expiry_year($source->exp_year); |
|
132 | + $token->set_user_id($customer_id); |
|
133 | 133 | $token->save(); |
134 | - $tokens[ $token->get_id() ] = $token; |
|
134 | + $tokens[$token->get_id()] = $token; |
|
135 | 135 | } |
136 | 136 | } |
137 | 137 | } |
138 | 138 | } |
139 | 139 | |
140 | - if ( 'stripe_sepa' === $gateway_id ) { |
|
141 | - $stripe_customer = new WC_Stripe_Customer( $customer_id ); |
|
140 | + if ('stripe_sepa' === $gateway_id) { |
|
141 | + $stripe_customer = new WC_Stripe_Customer($customer_id); |
|
142 | 142 | $stripe_sources = $stripe_customer->get_sources(); |
143 | 143 | |
144 | - foreach ( $stripe_sources as $source ) { |
|
145 | - if ( isset( $source->type ) && 'sepa_debit' === $source->type ) { |
|
146 | - if ( ! in_array( $source->id, $stored_tokens ) ) { |
|
144 | + foreach ($stripe_sources as $source) { |
|
145 | + if (isset($source->type) && 'sepa_debit' === $source->type) { |
|
146 | + if ( ! in_array($source->id, $stored_tokens)) { |
|
147 | 147 | $token = new WC_Payment_Token_SEPA(); |
148 | - $token->set_token( $source->id ); |
|
149 | - $token->set_gateway_id( 'stripe_sepa' ); |
|
150 | - $token->set_last4( $source->sepa_debit->last4 ); |
|
151 | - $token->set_user_id( $customer_id ); |
|
148 | + $token->set_token($source->id); |
|
149 | + $token->set_gateway_id('stripe_sepa'); |
|
150 | + $token->set_last4($source->sepa_debit->last4); |
|
151 | + $token->set_user_id($customer_id); |
|
152 | 152 | $token->save(); |
153 | - $tokens[ $token->get_id() ] = $token; |
|
153 | + $tokens[$token->get_id()] = $token; |
|
154 | 154 | } |
155 | 155 | } |
156 | 156 | } |
@@ -169,10 +169,10 @@ discard block |
||
169 | 169 | * @param WC_Payment_Token $payment_token The payment token associated with this method entry |
170 | 170 | * @return array Filtered item |
171 | 171 | */ |
172 | - public function get_account_saved_payment_methods_list_item_sepa( $item, $payment_token ) { |
|
173 | - if ( 'sepa' === strtolower( $payment_token->get_type() ) ) { |
|
172 | + public function get_account_saved_payment_methods_list_item_sepa($item, $payment_token) { |
|
173 | + if ('sepa' === strtolower($payment_token->get_type())) { |
|
174 | 174 | $item['method']['last4'] = $payment_token->get_last4(); |
175 | - $item['method']['brand'] = esc_html__( 'SEPA IBAN', 'woocommerce-gateway-stripe' ); |
|
175 | + $item['method']['brand'] = esc_html__('SEPA IBAN', 'woocommerce-gateway-stripe'); |
|
176 | 176 | } |
177 | 177 | |
178 | 178 | return $item; |
@@ -184,10 +184,10 @@ discard block |
||
184 | 184 | * @since 3.1.0 |
185 | 185 | * @version 4.0.0 |
186 | 186 | */ |
187 | - public function woocommerce_payment_token_deleted( $token_id, $token ) { |
|
188 | - if ( 'stripe' === $token->get_gateway_id() || 'stripe_sepa' === $token->get_gateway_id() ) { |
|
189 | - $stripe_customer = new WC_Stripe_Customer( get_current_user_id() ); |
|
190 | - $stripe_customer->delete_source( $token->get_token() ); |
|
187 | + public function woocommerce_payment_token_deleted($token_id, $token) { |
|
188 | + if ('stripe' === $token->get_gateway_id() || 'stripe_sepa' === $token->get_gateway_id()) { |
|
189 | + $stripe_customer = new WC_Stripe_Customer(get_current_user_id()); |
|
190 | + $stripe_customer->delete_source($token->get_token()); |
|
191 | 191 | } |
192 | 192 | } |
193 | 193 | |
@@ -197,12 +197,12 @@ discard block |
||
197 | 197 | * @since 3.1.0 |
198 | 198 | * @version 4.0.0 |
199 | 199 | */ |
200 | - public function woocommerce_payment_token_set_default( $token_id ) { |
|
201 | - $token = WC_Payment_Tokens::get( $token_id ); |
|
200 | + public function woocommerce_payment_token_set_default($token_id) { |
|
201 | + $token = WC_Payment_Tokens::get($token_id); |
|
202 | 202 | |
203 | - if ( 'stripe' === $token->get_gateway_id() || 'stripe_sepa' === $token->get_gateway_id() ) { |
|
204 | - $stripe_customer = new WC_Stripe_Customer( get_current_user_id() ); |
|
205 | - $stripe_customer->set_default_source( $token->get_token() ); |
|
203 | + if ('stripe' === $token->get_gateway_id() || 'stripe_sepa' === $token->get_gateway_id()) { |
|
204 | + $stripe_customer = new WC_Stripe_Customer(get_current_user_id()); |
|
205 | + $stripe_customer->set_default_source($token->get_token()); |
|
206 | 206 | } |
207 | 207 | } |
208 | 208 | } |
@@ -1,34 +1,34 @@ |
||
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/woocommerce.php'; |
13 | 13 | require $plugin_dir . 'woocommerce-gateway-stripe/woocommerce-gateway-stripe.php'; |
14 | 14 | } |
15 | 15 | |
16 | -if ( ! function_exists( 'wc_stripe_is_wc_active' ) ) { |
|
16 | +if ( ! function_exists('wc_stripe_is_wc_active')) { |
|
17 | 17 | function wc_stripe_is_wc_active() { |
18 | 18 | return true; |
19 | 19 | } |
20 | 20 | } |
21 | 21 | |
22 | -tests_add_filter( 'muplugins_loaded', '_manually_load_plugin' ); |
|
22 | +tests_add_filter('muplugins_loaded', '_manually_load_plugin'); |
|
23 | 23 | |
24 | 24 | require $_tests_dir . '/includes/bootstrap.php'; |
25 | 25 | |
26 | -$wc_tests_framework_base_dir = dirname( dirname( dirname( dirname( __FILE__ ) ) ) ) . '/woocommerce/tests/framework/'; |
|
27 | -require_once( $wc_tests_framework_base_dir . 'class-wc-mock-session-handler.php' ); |
|
28 | -require_once( $wc_tests_framework_base_dir . 'class-wc-unit-test-case.php' ); |
|
29 | -require_once( $wc_tests_framework_base_dir . 'helpers/class-wc-helper-product.php' ); |
|
30 | -require_once( $wc_tests_framework_base_dir . 'helpers/class-wc-helper-coupon.php' ); |
|
31 | -require_once( $wc_tests_framework_base_dir . 'helpers/class-wc-helper-fee.php' ); |
|
32 | -require_once( $wc_tests_framework_base_dir . 'helpers/class-wc-helper-shipping.php' ); |
|
33 | -require_once( $wc_tests_framework_base_dir . 'helpers/class-wc-helper-customer.php' ); |
|
34 | -require_once( $wc_tests_framework_base_dir . 'helpers/class-wc-helper-order.php' ); |
|
26 | +$wc_tests_framework_base_dir = dirname(dirname(dirname(dirname(__FILE__)))) . '/woocommerce/tests/framework/'; |
|
27 | +require_once($wc_tests_framework_base_dir . 'class-wc-mock-session-handler.php'); |
|
28 | +require_once($wc_tests_framework_base_dir . 'class-wc-unit-test-case.php'); |
|
29 | +require_once($wc_tests_framework_base_dir . 'helpers/class-wc-helper-product.php'); |
|
30 | +require_once($wc_tests_framework_base_dir . 'helpers/class-wc-helper-coupon.php'); |
|
31 | +require_once($wc_tests_framework_base_dir . 'helpers/class-wc-helper-fee.php'); |
|
32 | +require_once($wc_tests_framework_base_dir . 'helpers/class-wc-helper-shipping.php'); |
|
33 | +require_once($wc_tests_framework_base_dir . 'helpers/class-wc-helper-customer.php'); |
|
34 | +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 | |
@@ -23,11 +23,11 @@ discard block |
||
23 | 23 | |
24 | 24 | $this->retry_interval = 1; |
25 | 25 | |
26 | - add_action( 'wp', array( $this, 'maybe_process_redirect_order' ) ); |
|
27 | - add_action( 'woocommerce_order_status_on-hold_to_processing', array( $this, 'capture_payment' ) ); |
|
28 | - add_action( 'woocommerce_order_status_on-hold_to_completed', array( $this, 'capture_payment' ) ); |
|
29 | - add_action( 'woocommerce_order_status_on-hold_to_cancelled', array( $this, 'cancel_payment' ) ); |
|
30 | - add_action( 'woocommerce_order_status_on-hold_to_refunded', array( $this, 'cancel_payment' ) ); |
|
26 | + add_action('wp', array($this, 'maybe_process_redirect_order')); |
|
27 | + add_action('woocommerce_order_status_on-hold_to_processing', array($this, 'capture_payment')); |
|
28 | + add_action('woocommerce_order_status_on-hold_to_completed', array($this, 'capture_payment')); |
|
29 | + add_action('woocommerce_order_status_on-hold_to_cancelled', array($this, 'cancel_payment')); |
|
30 | + add_action('woocommerce_order_status_on-hold_to_refunded', array($this, 'cancel_payment')); |
|
31 | 31 | } |
32 | 32 | |
33 | 33 | /** |
@@ -48,25 +48,25 @@ discard block |
||
48 | 48 | * @since 4.0.0 |
49 | 49 | * @version 4.0.0 |
50 | 50 | */ |
51 | - public function process_redirect_payment( $order_id, $retry = true ) { |
|
51 | + public function process_redirect_payment($order_id, $retry = true) { |
|
52 | 52 | try { |
53 | - $source = wc_clean( $_GET['source'] ); |
|
53 | + $source = wc_clean($_GET['source']); |
|
54 | 54 | |
55 | - if ( empty( $source ) ) { |
|
55 | + if (empty($source)) { |
|
56 | 56 | return; |
57 | 57 | } |
58 | 58 | |
59 | - if ( empty( $order_id ) ) { |
|
59 | + if (empty($order_id)) { |
|
60 | 60 | return; |
61 | 61 | } |
62 | 62 | |
63 | - $order = wc_get_order( $order_id ); |
|
63 | + $order = wc_get_order($order_id); |
|
64 | 64 | |
65 | - if ( ! is_object( $order ) ) { |
|
65 | + if ( ! is_object($order)) { |
|
66 | 66 | return; |
67 | 67 | } |
68 | 68 | |
69 | - if ( 'processing' === $order->get_status() || 'completed' === $order->get_status() || 'on-hold' === $order->get_status() ) { |
|
69 | + if ('processing' === $order->get_status() || 'completed' === $order->get_status() || 'on-hold' === $order->get_status()) { |
|
70 | 70 | return; |
71 | 71 | } |
72 | 72 | |
@@ -74,123 +74,123 @@ discard block |
||
74 | 74 | $response = null; |
75 | 75 | |
76 | 76 | // This will throw exception if not valid. |
77 | - $this->validate_minimum_order_amount( $order ); |
|
77 | + $this->validate_minimum_order_amount($order); |
|
78 | 78 | |
79 | - WC_Stripe_Logger::log( "Info: (Redirect) Begin processing payment for order $order_id for the amount of {$order->get_total()}" ); |
|
79 | + WC_Stripe_Logger::log("Info: (Redirect) Begin processing payment for order $order_id for the amount of {$order->get_total()}"); |
|
80 | 80 | |
81 | 81 | /** |
82 | 82 | * First check if the source is chargeable at this time. If not, |
83 | 83 | * webhook will take care of it later. |
84 | 84 | */ |
85 | - $source_info = WC_Stripe_API::retrieve( 'sources/' . $source ); |
|
85 | + $source_info = WC_Stripe_API::retrieve('sources/' . $source); |
|
86 | 86 | |
87 | - if ( ! empty( $source_info->error ) ) { |
|
88 | - throw new WC_Stripe_Exception( print_r( $source_info, true ), $source_info->error->message ); |
|
87 | + if ( ! empty($source_info->error)) { |
|
88 | + throw new WC_Stripe_Exception(print_r($source_info, true), $source_info->error->message); |
|
89 | 89 | } |
90 | 90 | |
91 | - if ( 'failed' === $source_info->status || 'canceled' === $source_info->status ) { |
|
92 | - throw new WC_Stripe_Exception( print_r( $source_info, true ), __( 'Unable to process this payment, please try again or use alternative method.', 'woocommerce-gateway-stripe' ) ); |
|
91 | + if ('failed' === $source_info->status || 'canceled' === $source_info->status) { |
|
92 | + throw new WC_Stripe_Exception(print_r($source_info, true), __('Unable to process this payment, please try again or use alternative method.', 'woocommerce-gateway-stripe')); |
|
93 | 93 | } |
94 | 94 | |
95 | 95 | // If already consumed, then ignore request. |
96 | - if ( 'consumed' === $source_info->status ) { |
|
96 | + if ('consumed' === $source_info->status) { |
|
97 | 97 | return; |
98 | 98 | } |
99 | 99 | |
100 | 100 | // If not chargeable, then ignore request. |
101 | - if ( 'chargeable' !== $source_info->status ) { |
|
101 | + if ('chargeable' !== $source_info->status) { |
|
102 | 102 | return; |
103 | 103 | } |
104 | 104 | |
105 | 105 | // Prep source object. |
106 | 106 | $source_object = new stdClass(); |
107 | 107 | $source_object->token_id = ''; |
108 | - $source_object->customer = $this->get_stripe_customer_id( $order ); |
|
108 | + $source_object->customer = $this->get_stripe_customer_id($order); |
|
109 | 109 | $source_object->source = $source_info->id; |
110 | 110 | |
111 | 111 | /* If we're doing a retry and source is chargeable, we need to pass |
112 | 112 | * a different idempotency key and retry for success. |
113 | 113 | */ |
114 | - if ( 1 < $this->retry_interval && 'chargeable' === $source_info->status ) { |
|
115 | - add_filter( 'wc_stripe_idempotency_key', array( $this, 'change_idempotency_key' ), 10, 2 ); |
|
114 | + if (1 < $this->retry_interval && 'chargeable' === $source_info->status) { |
|
115 | + add_filter('wc_stripe_idempotency_key', array($this, 'change_idempotency_key'), 10, 2); |
|
116 | 116 | } |
117 | 117 | |
118 | 118 | // Make the request. |
119 | - $response = WC_Stripe_API::request( $this->generate_payment_request( $order, $source_object ), 'charges', 'POST', true ); |
|
119 | + $response = WC_Stripe_API::request($this->generate_payment_request($order, $source_object), 'charges', 'POST', true); |
|
120 | 120 | $headers = $response['headers']; |
121 | 121 | $response = $response['body']; |
122 | 122 | |
123 | - if ( ! empty( $response->error ) ) { |
|
123 | + if ( ! empty($response->error)) { |
|
124 | 124 | // Customer param wrong? The user may have been deleted on stripe's end. Remove customer_id. Can be retried without. |
125 | - if ( $this->is_no_such_customer_error( $response->error ) ) { |
|
126 | - if ( WC_Stripe_Helper::is_pre_30() ) { |
|
127 | - delete_user_meta( $order->customer_user, '_stripe_customer_id' ); |
|
128 | - delete_post_meta( $order_id, '_stripe_customer_id' ); |
|
125 | + if ($this->is_no_such_customer_error($response->error)) { |
|
126 | + if (WC_Stripe_Helper::is_pre_30()) { |
|
127 | + delete_user_meta($order->customer_user, '_stripe_customer_id'); |
|
128 | + delete_post_meta($order_id, '_stripe_customer_id'); |
|
129 | 129 | } else { |
130 | - delete_user_meta( $order->get_customer_id(), '_stripe_customer_id' ); |
|
131 | - $order->delete_meta_data( '_stripe_customer_id' ); |
|
130 | + delete_user_meta($order->get_customer_id(), '_stripe_customer_id'); |
|
131 | + $order->delete_meta_data('_stripe_customer_id'); |
|
132 | 132 | $order->save(); |
133 | 133 | } |
134 | 134 | } |
135 | 135 | |
136 | - if ( $this->is_no_such_token_error( $response->error ) && $prepared_source->token_id ) { |
|
136 | + if ($this->is_no_such_token_error($response->error) && $prepared_source->token_id) { |
|
137 | 137 | // Source param wrong? The CARD may have been deleted on stripe's end. Remove token and show message. |
138 | - $wc_token = WC_Payment_Tokens::get( $prepared_source->token_id ); |
|
138 | + $wc_token = WC_Payment_Tokens::get($prepared_source->token_id); |
|
139 | 139 | $wc_token->delete(); |
140 | - $localized_message = __( 'This card is no longer available and has been removed.', 'woocommerce-gateway-stripe' ); |
|
141 | - $order->add_order_note( $localized_message ); |
|
142 | - throw new WC_Stripe_Exception( print_r( $response, true ), $localized_message ); |
|
140 | + $localized_message = __('This card is no longer available and has been removed.', 'woocommerce-gateway-stripe'); |
|
141 | + $order->add_order_note($localized_message); |
|
142 | + throw new WC_Stripe_Exception(print_r($response, true), $localized_message); |
|
143 | 143 | } |
144 | 144 | |
145 | 145 | // We want to retry. |
146 | - if ( $this->is_retryable_error( $response->error ) ) { |
|
147 | - if ( $retry ) { |
|
146 | + if ($this->is_retryable_error($response->error)) { |
|
147 | + if ($retry) { |
|
148 | 148 | // Don't do anymore retries after this. |
149 | - if ( 5 <= $this->retry_interval ) { |
|
150 | - return $this->process_redirect_payment( $order_id, false ); |
|
149 | + if (5 <= $this->retry_interval) { |
|
150 | + return $this->process_redirect_payment($order_id, false); |
|
151 | 151 | } |
152 | 152 | |
153 | - sleep( $this->retry_interval ); |
|
153 | + sleep($this->retry_interval); |
|
154 | 154 | |
155 | 155 | $this->retry_interval++; |
156 | - return $this->process_redirect_payment( $order_id, true ); |
|
156 | + return $this->process_redirect_payment($order_id, true); |
|
157 | 157 | } else { |
158 | - $localized_message = __( 'Sorry, we are unable to process your payment at this time. Please retry later.', 'woocommerce-gateway-stripe' ); |
|
159 | - $order->add_order_note( $localized_message ); |
|
160 | - throw new WC_Stripe_Exception( print_r( $response, true ), $localized_message ); |
|
158 | + $localized_message = __('Sorry, we are unable to process your payment at this time. Please retry later.', 'woocommerce-gateway-stripe'); |
|
159 | + $order->add_order_note($localized_message); |
|
160 | + throw new WC_Stripe_Exception(print_r($response, true), $localized_message); |
|
161 | 161 | } |
162 | 162 | } |
163 | 163 | |
164 | 164 | $localized_messages = WC_Stripe_Helper::get_localized_messages(); |
165 | 165 | |
166 | - if ( 'card_error' === $response->error->type ) { |
|
167 | - $message = isset( $localized_messages[ $response->error->code ] ) ? $localized_messages[ $response->error->code ] : $response->error->message; |
|
166 | + if ('card_error' === $response->error->type) { |
|
167 | + $message = isset($localized_messages[$response->error->code]) ? $localized_messages[$response->error->code] : $response->error->message; |
|
168 | 168 | } else { |
169 | - $message = isset( $localized_messages[ $response->error->type ] ) ? $localized_messages[ $response->error->type ] : $response->error->message; |
|
169 | + $message = isset($localized_messages[$response->error->type]) ? $localized_messages[$response->error->type] : $response->error->message; |
|
170 | 170 | } |
171 | 171 | |
172 | - throw new WC_Stripe_Exception( print_r( $response, true ), $message ); |
|
172 | + throw new WC_Stripe_Exception(print_r($response, true), $message); |
|
173 | 173 | } |
174 | 174 | |
175 | 175 | // To prevent double processing the order on WC side. |
176 | - if ( ! $this->is_original_request( $headers ) ) { |
|
176 | + if ( ! $this->is_original_request($headers)) { |
|
177 | 177 | return; |
178 | 178 | } |
179 | 179 | |
180 | - do_action( 'wc_gateway_stripe_process_redirect_payment', $response, $order ); |
|
180 | + do_action('wc_gateway_stripe_process_redirect_payment', $response, $order); |
|
181 | 181 | |
182 | - $this->process_response( $response, $order ); |
|
182 | + $this->process_response($response, $order); |
|
183 | 183 | |
184 | - } catch ( WC_Stripe_Exception $e ) { |
|
185 | - WC_Stripe_Logger::log( 'Error: ' . $e->getMessage() ); |
|
184 | + } catch (WC_Stripe_Exception $e) { |
|
185 | + WC_Stripe_Logger::log('Error: ' . $e->getMessage()); |
|
186 | 186 | |
187 | - do_action( 'wc_gateway_stripe_process_redirect_payment_error', $e, $order ); |
|
187 | + do_action('wc_gateway_stripe_process_redirect_payment_error', $e, $order); |
|
188 | 188 | |
189 | 189 | /* translators: error message */ |
190 | - $order->update_status( 'failed', sprintf( __( 'Stripe payment failed: %s', 'woocommerce-gateway-stripe' ), $e->getLocalizedMessage() ) ); |
|
190 | + $order->update_status('failed', sprintf(__('Stripe payment failed: %s', 'woocommerce-gateway-stripe'), $e->getLocalizedMessage())); |
|
191 | 191 | |
192 | - wc_add_notice( $e->getLocalizedMessage(), 'error' ); |
|
193 | - wp_safe_redirect( wc_get_checkout_url() ); |
|
192 | + wc_add_notice($e->getLocalizedMessage(), 'error'); |
|
193 | + wp_safe_redirect(wc_get_checkout_url()); |
|
194 | 194 | exit; |
195 | 195 | } |
196 | 196 | } |
@@ -202,13 +202,13 @@ discard block |
||
202 | 202 | * @version 4.0.0 |
203 | 203 | */ |
204 | 204 | public function maybe_process_redirect_order() { |
205 | - if ( ! is_order_received_page() || empty( $_GET['client_secret'] ) || empty( $_GET['source'] ) ) { |
|
205 | + if ( ! is_order_received_page() || empty($_GET['client_secret']) || empty($_GET['source'])) { |
|
206 | 206 | return; |
207 | 207 | } |
208 | 208 | |
209 | - $order_id = wc_clean( $_GET['order_id'] ); |
|
209 | + $order_id = wc_clean($_GET['order_id']); |
|
210 | 210 | |
211 | - $this->process_redirect_payment( $order_id ); |
|
211 | + $this->process_redirect_payment($order_id); |
|
212 | 212 | } |
213 | 213 | |
214 | 214 | /** |
@@ -218,52 +218,52 @@ discard block |
||
218 | 218 | * @version 4.0.0 |
219 | 219 | * @param int $order_id |
220 | 220 | */ |
221 | - public function capture_payment( $order_id ) { |
|
222 | - $order = wc_get_order( $order_id ); |
|
221 | + public function capture_payment($order_id) { |
|
222 | + $order = wc_get_order($order_id); |
|
223 | 223 | |
224 | - if ( 'stripe' === ( WC_Stripe_Helper::is_pre_30() ? $order->payment_method : $order->get_payment_method() ) ) { |
|
225 | - $charge = WC_Stripe_Helper::is_pre_30() ? get_post_meta( $order_id, '_transaction_id', true ) : $order->get_transaction_id(); |
|
226 | - $captured = WC_Stripe_Helper::is_pre_30() ? get_post_meta( $order_id, '_stripe_charge_captured', true ) : $order->get_meta( '_stripe_charge_captured', true ); |
|
224 | + if ('stripe' === (WC_Stripe_Helper::is_pre_30() ? $order->payment_method : $order->get_payment_method())) { |
|
225 | + $charge = WC_Stripe_Helper::is_pre_30() ? get_post_meta($order_id, '_transaction_id', true) : $order->get_transaction_id(); |
|
226 | + $captured = WC_Stripe_Helper::is_pre_30() ? get_post_meta($order_id, '_stripe_charge_captured', true) : $order->get_meta('_stripe_charge_captured', true); |
|
227 | 227 | |
228 | - if ( $charge && 'no' === $captured ) { |
|
228 | + if ($charge && 'no' === $captured) { |
|
229 | 229 | $order_total = $order->get_total(); |
230 | 230 | |
231 | - if ( 0 < $order->get_total_refunded() ) { |
|
231 | + if (0 < $order->get_total_refunded()) { |
|
232 | 232 | $order_total = $order_total - $order->get_total_refunded(); |
233 | 233 | } |
234 | 234 | |
235 | - $result = WC_Stripe_API::request( array( |
|
236 | - 'amount' => WC_Stripe_Helper::get_stripe_amount( $order_total ), |
|
235 | + $result = WC_Stripe_API::request(array( |
|
236 | + 'amount' => WC_Stripe_Helper::get_stripe_amount($order_total), |
|
237 | 237 | 'expand[]' => 'balance_transaction', |
238 | - ), 'charges/' . $charge . '/capture' ); |
|
238 | + ), 'charges/' . $charge . '/capture'); |
|
239 | 239 | |
240 | - if ( ! empty( $result->error ) ) { |
|
240 | + if ( ! empty($result->error)) { |
|
241 | 241 | /* translators: error message */ |
242 | - $order->update_status( 'failed', sprintf( __( 'Unable to capture charge! %s', 'woocommerce-gateway-stripe' ), $result->error->message ) ); |
|
242 | + $order->update_status('failed', sprintf(__('Unable to capture charge! %s', 'woocommerce-gateway-stripe'), $result->error->message)); |
|
243 | 243 | } else { |
244 | 244 | /* translators: transaction id */ |
245 | - $order->add_order_note( sprintf( __( 'Stripe charge complete (Charge ID: %s)', 'woocommerce-gateway-stripe' ), $result->id ) ); |
|
246 | - WC_Stripe_Helper::is_pre_30() ? update_post_meta( $order_id, '_stripe_charge_captured', 'yes' ) : $order->update_meta_data( '_stripe_charge_captured', 'yes' ); |
|
245 | + $order->add_order_note(sprintf(__('Stripe charge complete (Charge ID: %s)', 'woocommerce-gateway-stripe'), $result->id)); |
|
246 | + WC_Stripe_Helper::is_pre_30() ? update_post_meta($order_id, '_stripe_charge_captured', 'yes') : $order->update_meta_data('_stripe_charge_captured', 'yes'); |
|
247 | 247 | |
248 | 248 | // Store other data such as fees |
249 | - WC_Stripe_Helper::is_pre_30() ? update_post_meta( $order_id, '_transaction_id', $result->id ) : $order->set_transaction_id( $result->id ); |
|
249 | + WC_Stripe_Helper::is_pre_30() ? update_post_meta($order_id, '_transaction_id', $result->id) : $order->set_transaction_id($result->id); |
|
250 | 250 | |
251 | - if ( isset( $result->balance_transaction ) && isset( $result->balance_transaction->fee ) ) { |
|
251 | + if (isset($result->balance_transaction) && isset($result->balance_transaction->fee)) { |
|
252 | 252 | // Fees and Net needs to both come from Stripe to be accurate as the returned |
253 | 253 | // values are in the local currency of the Stripe account, not from WC. |
254 | - $fee = ! empty( $result->balance_transaction->fee ) ? WC_Stripe_Helper::format_balance_fee( $result->balance_transaction, 'fee' ) : 0; |
|
255 | - $net = ! empty( $result->balance_transaction->net ) ? WC_Stripe_Helper::format_balance_fee( $result->balance_transaction, 'net' ) : 0; |
|
256 | - WC_Stripe_Helper::update_stripe_fee( $order, $fee ); |
|
257 | - WC_Stripe_Helper::update_stripe_net( $order, $net ); |
|
254 | + $fee = ! empty($result->balance_transaction->fee) ? WC_Stripe_Helper::format_balance_fee($result->balance_transaction, 'fee') : 0; |
|
255 | + $net = ! empty($result->balance_transaction->net) ? WC_Stripe_Helper::format_balance_fee($result->balance_transaction, 'net') : 0; |
|
256 | + WC_Stripe_Helper::update_stripe_fee($order, $fee); |
|
257 | + WC_Stripe_Helper::update_stripe_net($order, $net); |
|
258 | 258 | } |
259 | 259 | |
260 | - if ( is_callable( array( $order, 'save' ) ) ) { |
|
260 | + if (is_callable(array($order, 'save'))) { |
|
261 | 261 | $order->save(); |
262 | 262 | } |
263 | 263 | } |
264 | 264 | |
265 | 265 | // This hook fires when admin manually changes order status to processing or completed. |
266 | - do_action( 'woocommerce_stripe_process_manual_capture', $order, $result ); |
|
266 | + do_action('woocommerce_stripe_process_manual_capture', $order, $result); |
|
267 | 267 | } |
268 | 268 | } |
269 | 269 | } |
@@ -275,14 +275,14 @@ discard block |
||
275 | 275 | * @version 4.0.0 |
276 | 276 | * @param int $order_id |
277 | 277 | */ |
278 | - public function cancel_payment( $order_id ) { |
|
279 | - $order = wc_get_order( $order_id ); |
|
278 | + public function cancel_payment($order_id) { |
|
279 | + $order = wc_get_order($order_id); |
|
280 | 280 | |
281 | - if ( 'stripe' === ( WC_Stripe_Helper::is_pre_30() ? $order->payment_method : $order->get_payment_method() ) ) { |
|
282 | - $this->process_refund( $order_id ); |
|
281 | + if ('stripe' === (WC_Stripe_Helper::is_pre_30() ? $order->payment_method : $order->get_payment_method())) { |
|
282 | + $this->process_refund($order_id); |
|
283 | 283 | |
284 | 284 | // This hook fires when admin manually changes order status to cancel. |
285 | - do_action( 'woocommerce_stripe_process_manual_cancel', $order ); |
|
285 | + do_action('woocommerce_stripe_process_manual_cancel', $order); |
|
286 | 286 | } |
287 | 287 | } |
288 | 288 | } |
@@ -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,12 +97,12 @@ 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 = array(); |
102 | 102 | |
103 | - foreach ( $_SERVER as $name => $value ) { |
|
104 | - if ( 'HTTP_' === substr( $name, 0, 5 ) ) { |
|
105 | - $headers[ str_replace( ' ', '-', ucwords( strtolower( str_replace( '_', ' ', substr( $name, 5 ) ) ) ) ) ] = $value; |
|
103 | + foreach ($_SERVER as $name => $value) { |
|
104 | + if ('HTTP_' === substr($name, 0, 5)) { |
|
105 | + $headers[str_replace(' ', '-', ucwords(strtolower(str_replace('_', ' ', substr($name, 5)))))] = $value; |
|
106 | 106 | } |
107 | 107 | } |
108 | 108 | |
@@ -121,30 +121,30 @@ discard block |
||
121 | 121 | * @param object $notification |
122 | 122 | * @param bool $retry |
123 | 123 | */ |
124 | - public function process_webhook_payment( $notification, $retry = true ) { |
|
124 | + public function process_webhook_payment($notification, $retry = true) { |
|
125 | 125 | // The following 2 payment methods are synchronous so does not need to be handle via webhook. |
126 | - if ( 'card' === $notification->data->object->type || 'sepa_debit' === $notification->data->object->type ) { |
|
126 | + if ('card' === $notification->data->object->type || 'sepa_debit' === $notification->data->object->type) { |
|
127 | 127 | return; |
128 | 128 | } |
129 | 129 | |
130 | - $order = WC_Stripe_Helper::get_order_by_source_id( $notification->data->object->id ); |
|
130 | + $order = WC_Stripe_Helper::get_order_by_source_id($notification->data->object->id); |
|
131 | 131 | |
132 | - if ( ! $order ) { |
|
133 | - WC_Stripe_Logger::log( 'Could not find order via source ID: ' . $notification->data->object->id ); |
|
132 | + if ( ! $order) { |
|
133 | + WC_Stripe_Logger::log('Could not find order via source ID: ' . $notification->data->object->id); |
|
134 | 134 | return; |
135 | 135 | } |
136 | 136 | |
137 | 137 | $order_id = WC_Stripe_Helper::is_pre_30() ? $order->id : $order->get_id(); |
138 | 138 | $source_id = $notification->data->object->id; |
139 | 139 | |
140 | - $is_pending_receiver = ( 'receiver' === $notification->data->object->flow ); |
|
140 | + $is_pending_receiver = ('receiver' === $notification->data->object->flow); |
|
141 | 141 | |
142 | 142 | try { |
143 | - if ( 'processing' === $order->get_status() || 'completed' === $order->get_status() ) { |
|
143 | + if ('processing' === $order->get_status() || 'completed' === $order->get_status()) { |
|
144 | 144 | return; |
145 | 145 | } |
146 | 146 | |
147 | - if ( 'on-hold' === $order->get_status() && ! $is_pending_receiver ) { |
|
147 | + if ('on-hold' === $order->get_status() && ! $is_pending_receiver) { |
|
148 | 148 | return; |
149 | 149 | } |
150 | 150 | |
@@ -152,94 +152,94 @@ discard block |
||
152 | 152 | $response = null; |
153 | 153 | |
154 | 154 | // This will throw exception if not valid. |
155 | - $this->validate_minimum_order_amount( $order ); |
|
155 | + $this->validate_minimum_order_amount($order); |
|
156 | 156 | |
157 | - WC_Stripe_Logger::log( "Info: (Webhook) Begin processing payment for order $order_id for the amount of {$order->get_total()}" ); |
|
157 | + WC_Stripe_Logger::log("Info: (Webhook) Begin processing payment for order $order_id for the amount of {$order->get_total()}"); |
|
158 | 158 | |
159 | 159 | // Prep source object. |
160 | 160 | $source_object = new stdClass(); |
161 | 161 | $source_object->token_id = ''; |
162 | - $source_object->customer = $this->get_stripe_customer_id( $order ); |
|
162 | + $source_object->customer = $this->get_stripe_customer_id($order); |
|
163 | 163 | $source_object->source = $source_id; |
164 | 164 | |
165 | 165 | // Make the request. |
166 | - $response = WC_Stripe_API::request( $this->generate_payment_request( $order, $source_object ), 'charges', 'POST', true ); |
|
166 | + $response = WC_Stripe_API::request($this->generate_payment_request($order, $source_object), 'charges', 'POST', true); |
|
167 | 167 | $headers = $response['headers']; |
168 | 168 | $response = $response['body']; |
169 | 169 | |
170 | - if ( ! empty( $response->error ) ) { |
|
170 | + if ( ! empty($response->error)) { |
|
171 | 171 | // Customer param wrong? The user may have been deleted on stripe's end. Remove customer_id. Can be retried without. |
172 | - if ( $this->is_no_such_customer_error( $response->error ) ) { |
|
173 | - if ( WC_Stripe_Helper::is_pre_30() ) { |
|
174 | - delete_user_meta( $order->customer_user, '_stripe_customer_id' ); |
|
175 | - delete_post_meta( $order_id, '_stripe_customer_id' ); |
|
172 | + if ($this->is_no_such_customer_error($response->error)) { |
|
173 | + if (WC_Stripe_Helper::is_pre_30()) { |
|
174 | + delete_user_meta($order->customer_user, '_stripe_customer_id'); |
|
175 | + delete_post_meta($order_id, '_stripe_customer_id'); |
|
176 | 176 | } else { |
177 | - delete_user_meta( $order->get_customer_id(), '_stripe_customer_id' ); |
|
178 | - $order->delete_meta_data( '_stripe_customer_id' ); |
|
177 | + delete_user_meta($order->get_customer_id(), '_stripe_customer_id'); |
|
178 | + $order->delete_meta_data('_stripe_customer_id'); |
|
179 | 179 | $order->save(); |
180 | 180 | } |
181 | 181 | } |
182 | 182 | |
183 | - if ( $this->is_no_such_token_error( $response->error ) && $prepared_source->token_id ) { |
|
183 | + if ($this->is_no_such_token_error($response->error) && $prepared_source->token_id) { |
|
184 | 184 | // Source param wrong? The CARD may have been deleted on stripe's end. Remove token and show message. |
185 | - $wc_token = WC_Payment_Tokens::get( $prepared_source->token_id ); |
|
185 | + $wc_token = WC_Payment_Tokens::get($prepared_source->token_id); |
|
186 | 186 | $wc_token->delete(); |
187 | - $localized_message = __( 'This card is no longer available and has been removed.', 'woocommerce-gateway-stripe' ); |
|
188 | - $order->add_order_note( $localized_message ); |
|
189 | - throw new WC_Stripe_Exception( print_r( $response, true ), $localized_message ); |
|
187 | + $localized_message = __('This card is no longer available and has been removed.', 'woocommerce-gateway-stripe'); |
|
188 | + $order->add_order_note($localized_message); |
|
189 | + throw new WC_Stripe_Exception(print_r($response, true), $localized_message); |
|
190 | 190 | } |
191 | 191 | |
192 | 192 | // We want to retry. |
193 | - if ( $this->is_retryable_error( $response->error ) ) { |
|
194 | - if ( $retry ) { |
|
193 | + if ($this->is_retryable_error($response->error)) { |
|
194 | + if ($retry) { |
|
195 | 195 | // Don't do anymore retries after this. |
196 | - if ( 5 <= $this->retry_interval ) { |
|
196 | + if (5 <= $this->retry_interval) { |
|
197 | 197 | |
198 | - return $this->process_webhook_payment( $notification, false ); |
|
198 | + return $this->process_webhook_payment($notification, false); |
|
199 | 199 | } |
200 | 200 | |
201 | - sleep( $this->retry_interval ); |
|
201 | + sleep($this->retry_interval); |
|
202 | 202 | |
203 | 203 | $this->retry_interval++; |
204 | - return $this->process_webhook_payment( $notification, true ); |
|
204 | + return $this->process_webhook_payment($notification, true); |
|
205 | 205 | } else { |
206 | - $localized_message = __( 'Sorry, we are unable to process your payment at this time. Please retry later.', 'woocommerce-gateway-stripe' ); |
|
207 | - $order->add_order_note( $localized_message ); |
|
208 | - throw new WC_Stripe_Exception( print_r( $response, true ), $localized_message ); |
|
206 | + $localized_message = __('Sorry, we are unable to process your payment at this time. Please retry later.', 'woocommerce-gateway-stripe'); |
|
207 | + $order->add_order_note($localized_message); |
|
208 | + throw new WC_Stripe_Exception(print_r($response, true), $localized_message); |
|
209 | 209 | } |
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', $order, $notification, $e ); |
|
237 | + do_action('wc_gateway_stripe_process_webhook_payment_error', $order, $notification, $e); |
|
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,44 +277,44 @@ 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 | 304 | // Check and see if capture is partial. |
305 | - if ( $this->is_partial_capture( $notification ) ) { |
|
306 | - $partial_amount = $this->get_partial_amount_to_charge( $notification ); |
|
307 | - $order->set_total( $partial_amount ); |
|
305 | + if ($this->is_partial_capture($notification)) { |
|
306 | + $partial_amount = $this->get_partial_amount_to_charge($notification); |
|
307 | + $order->set_total($partial_amount); |
|
308 | 308 | /* translators: partial captured amount */ |
309 | - $order->add_order_note( sprintf( __( 'This charge was partially captured via Stripe Dashboard in the amount of: %s', 'woocommerce-gateway-stripe' ), $partial_amount ) ); |
|
309 | + $order->add_order_note(sprintf(__('This charge was partially captured via Stripe Dashboard in the amount of: %s', 'woocommerce-gateway-stripe'), $partial_amount)); |
|
310 | 310 | } else { |
311 | - $order->payment_complete( $notification->data->object->id ); |
|
311 | + $order->payment_complete($notification->data->object->id); |
|
312 | 312 | |
313 | 313 | /* translators: transaction id */ |
314 | - $order->add_order_note( sprintf( __( 'Stripe charge complete (Charge ID: %s)', 'woocommerce-gateway-stripe' ), $notification->data->object->id ) ); |
|
314 | + $order->add_order_note(sprintf(__('Stripe charge complete (Charge ID: %s)', 'woocommerce-gateway-stripe'), $notification->data->object->id)); |
|
315 | 315 | } |
316 | 316 | |
317 | - if ( is_callable( array( $order, 'save' ) ) ) { |
|
317 | + if (is_callable(array($order, 'save'))) { |
|
318 | 318 | $order->save(); |
319 | 319 | } |
320 | 320 | } |
@@ -329,38 +329,38 @@ discard block |
||
329 | 329 | * @version 4.0.0 |
330 | 330 | * @param object $notification |
331 | 331 | */ |
332 | - public function process_webhook_charge_succeeded( $notification ) { |
|
332 | + public function process_webhook_charge_succeeded($notification) { |
|
333 | 333 | // The following payment methods are synchronous so does not need to be handle via webhook. |
334 | - 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 ) ) { |
|
334 | + 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)) { |
|
335 | 335 | return; |
336 | 336 | } |
337 | 337 | |
338 | - $order = WC_Stripe_Helper::get_order_by_charge_id( $notification->data->object->id ); |
|
338 | + $order = WC_Stripe_Helper::get_order_by_charge_id($notification->data->object->id); |
|
339 | 339 | |
340 | - if ( ! $order ) { |
|
341 | - WC_Stripe_Logger::log( 'Could not find order via charge ID: ' . $notification->data->object->id ); |
|
340 | + if ( ! $order) { |
|
341 | + WC_Stripe_Logger::log('Could not find order via charge ID: ' . $notification->data->object->id); |
|
342 | 342 | return; |
343 | 343 | } |
344 | 344 | |
345 | 345 | $order_id = WC_Stripe_Helper::is_pre_30() ? $order->id : $order->get_id(); |
346 | 346 | |
347 | - if ( 'on-hold' !== $order->get_status() ) { |
|
347 | + if ('on-hold' !== $order->get_status()) { |
|
348 | 348 | return; |
349 | 349 | } |
350 | 350 | |
351 | 351 | // Store other data such as fees |
352 | - 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 ); |
|
352 | + 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); |
|
353 | 353 | |
354 | - if ( isset( $notification->data->object->balance_transaction ) ) { |
|
355 | - $this->update_fees( $order, $notification->data->object->balance_transaction ); |
|
354 | + if (isset($notification->data->object->balance_transaction)) { |
|
355 | + $this->update_fees($order, $notification->data->object->balance_transaction); |
|
356 | 356 | } |
357 | 357 | |
358 | - $order->payment_complete( $notification->data->object->id ); |
|
358 | + $order->payment_complete($notification->data->object->id); |
|
359 | 359 | |
360 | 360 | /* translators: transaction id */ |
361 | - $order->add_order_note( sprintf( __( 'Stripe charge complete (Charge ID: %s)', 'woocommerce-gateway-stripe' ), $notification->data->object->id ) ); |
|
361 | + $order->add_order_note(sprintf(__('Stripe charge complete (Charge ID: %s)', 'woocommerce-gateway-stripe'), $notification->data->object->id)); |
|
362 | 362 | |
363 | - if ( is_callable( array( $order, 'save' ) ) ) { |
|
363 | + if (is_callable(array($order, 'save'))) { |
|
364 | 364 | $order->save(); |
365 | 365 | } |
366 | 366 | } |
@@ -372,24 +372,24 @@ discard block |
||
372 | 372 | * @since 4.1.5 Can handle any fail payments from any methods. |
373 | 373 | * @param object $notification |
374 | 374 | */ |
375 | - public function process_webhook_charge_failed( $notification ) { |
|
376 | - $order = WC_Stripe_Helper::get_order_by_charge_id( $notification->data->object->id ); |
|
375 | + public function process_webhook_charge_failed($notification) { |
|
376 | + $order = WC_Stripe_Helper::get_order_by_charge_id($notification->data->object->id); |
|
377 | 377 | |
378 | - if ( ! $order ) { |
|
379 | - WC_Stripe_Logger::log( 'Could not find order via charge ID: ' . $notification->data->object->id ); |
|
378 | + if ( ! $order) { |
|
379 | + WC_Stripe_Logger::log('Could not find order via charge ID: ' . $notification->data->object->id); |
|
380 | 380 | return; |
381 | 381 | } |
382 | 382 | |
383 | 383 | $order_id = WC_Stripe_Helper::is_pre_30() ? $order->id : $order->get_id(); |
384 | 384 | |
385 | 385 | // If order status is already in failed status don't continue. |
386 | - if ( 'failed' === $order->get_status() ) { |
|
386 | + if ('failed' === $order->get_status()) { |
|
387 | 387 | return; |
388 | 388 | } |
389 | 389 | |
390 | - $order->update_status( 'failed', __( 'This payment failed to clear.', 'woocommerce-gateway-stripe' ) ); |
|
390 | + $order->update_status('failed', __('This payment failed to clear.', 'woocommerce-gateway-stripe')); |
|
391 | 391 | |
392 | - do_action( 'wc_gateway_stripe_process_webhook_payment_error', $order, $notification ); |
|
392 | + do_action('wc_gateway_stripe_process_webhook_payment_error', $order, $notification); |
|
393 | 393 | } |
394 | 394 | |
395 | 395 | /** |
@@ -400,23 +400,23 @@ discard block |
||
400 | 400 | * @version 4.0.0 |
401 | 401 | * @param object $notification |
402 | 402 | */ |
403 | - public function process_webhook_source_canceled( $notification ) { |
|
404 | - $order = WC_Stripe_Helper::get_order_by_charge_id( $notification->data->object->id ); |
|
403 | + public function process_webhook_source_canceled($notification) { |
|
404 | + $order = WC_Stripe_Helper::get_order_by_charge_id($notification->data->object->id); |
|
405 | 405 | |
406 | - if ( ! $order ) { |
|
407 | - WC_Stripe_Logger::log( 'Could not find order via charge ID: ' . $notification->data->object->id ); |
|
406 | + if ( ! $order) { |
|
407 | + WC_Stripe_Logger::log('Could not find order via charge ID: ' . $notification->data->object->id); |
|
408 | 408 | return; |
409 | 409 | } |
410 | 410 | |
411 | 411 | $order_id = WC_Stripe_Helper::is_pre_30() ? $order->id : $order->get_id(); |
412 | 412 | |
413 | - if ( 'on-hold' !== $order->get_status() || 'cancelled' !== $order->get_status() ) { |
|
413 | + if ('on-hold' !== $order->get_status() || 'cancelled' !== $order->get_status()) { |
|
414 | 414 | return; |
415 | 415 | } |
416 | 416 | |
417 | - $order->update_status( 'cancelled', __( 'This payment has cancelled.', 'woocommerce-gateway-stripe' ) ); |
|
417 | + $order->update_status('cancelled', __('This payment has cancelled.', 'woocommerce-gateway-stripe')); |
|
418 | 418 | |
419 | - do_action( 'wc_gateway_stripe_process_webhook_payment_error', $order, $notification ); |
|
419 | + do_action('wc_gateway_stripe_process_webhook_payment_error', $order, $notification); |
|
420 | 420 | } |
421 | 421 | |
422 | 422 | /** |
@@ -426,57 +426,57 @@ discard block |
||
426 | 426 | * @version 4.0.0 |
427 | 427 | * @param object $notification |
428 | 428 | */ |
429 | - public function process_webhook_refund( $notification ) { |
|
430 | - $order = WC_Stripe_Helper::get_order_by_charge_id( $notification->data->object->id ); |
|
429 | + public function process_webhook_refund($notification) { |
|
430 | + $order = WC_Stripe_Helper::get_order_by_charge_id($notification->data->object->id); |
|
431 | 431 | |
432 | - if ( ! $order ) { |
|
433 | - WC_Stripe_Logger::log( 'Could not find order via charge ID: ' . $notification->data->object->id ); |
|
432 | + if ( ! $order) { |
|
433 | + WC_Stripe_Logger::log('Could not find order via charge ID: ' . $notification->data->object->id); |
|
434 | 434 | return; |
435 | 435 | } |
436 | 436 | |
437 | 437 | $order_id = WC_Stripe_Helper::is_pre_30() ? $order->id : $order->get_id(); |
438 | 438 | |
439 | - if ( 'stripe' === ( WC_Stripe_Helper::is_pre_30() ? $order->payment_method : $order->get_payment_method() ) ) { |
|
440 | - $charge = WC_Stripe_Helper::is_pre_30() ? get_post_meta( $order_id, '_transaction_id', true ) : $order->get_transaction_id(); |
|
441 | - $captured = WC_Stripe_Helper::is_pre_30() ? get_post_meta( $order_id, '_stripe_charge_captured', true ) : $order->get_meta( '_stripe_charge_captured', true ); |
|
442 | - $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 | + if ('stripe' === (WC_Stripe_Helper::is_pre_30() ? $order->payment_method : $order->get_payment_method())) { |
|
440 | + $charge = WC_Stripe_Helper::is_pre_30() ? get_post_meta($order_id, '_transaction_id', true) : $order->get_transaction_id(); |
|
441 | + $captured = WC_Stripe_Helper::is_pre_30() ? get_post_meta($order_id, '_stripe_charge_captured', true) : $order->get_meta('_stripe_charge_captured', true); |
|
442 | + $refund_id = WC_Stripe_Helper::is_pre_30() ? get_post_meta($order_id, '_stripe_refund_id', true) : $order->get_meta('_stripe_refund_id', true); |
|
443 | 443 | |
444 | 444 | // If the refund ID matches, don't continue to prevent double refunding. |
445 | - if ( $notification->data->object->refunds->data[0]->id === $refund_id ) { |
|
445 | + if ($notification->data->object->refunds->data[0]->id === $refund_id) { |
|
446 | 446 | return; |
447 | 447 | } |
448 | 448 | |
449 | 449 | // Only refund captured charge. |
450 | - if ( $charge ) { |
|
451 | - $reason = ( isset( $captured ) && 'yes' === $captured ) ? __( 'Refunded via Stripe Dashboard', 'woocommerce-gateway-stripe' ) : __( 'Pre-Authorization Released via Stripe Dashboard', 'woocommerce-gateway-stripe' ); |
|
450 | + if ($charge) { |
|
451 | + $reason = (isset($captured) && 'yes' === $captured) ? __('Refunded via Stripe Dashboard', 'woocommerce-gateway-stripe') : __('Pre-Authorization Released via Stripe Dashboard', 'woocommerce-gateway-stripe'); |
|
452 | 452 | |
453 | 453 | // Create the refund. |
454 | - $refund = wc_create_refund( array( |
|
454 | + $refund = wc_create_refund(array( |
|
455 | 455 | 'order_id' => $order_id, |
456 | - 'amount' => $this->get_refund_amount( $notification ), |
|
456 | + 'amount' => $this->get_refund_amount($notification), |
|
457 | 457 | 'reason' => $reason, |
458 | - ) ); |
|
458 | + )); |
|
459 | 459 | |
460 | - if ( is_wp_error( $refund ) ) { |
|
461 | - WC_Stripe_Logger::log( $refund->get_error_message() ); |
|
460 | + if (is_wp_error($refund)) { |
|
461 | + WC_Stripe_Logger::log($refund->get_error_message()); |
|
462 | 462 | } |
463 | 463 | |
464 | - WC_Stripe_Helper::is_pre_30() ? update_post_meta( $order_id, '_stripe_refund_id', $notification->data->object->refunds->data[0]->id ) : $order->update_meta_data( '_stripe_refund_id', $notification->data->object->refunds->data[0]->id ); |
|
464 | + WC_Stripe_Helper::is_pre_30() ? update_post_meta($order_id, '_stripe_refund_id', $notification->data->object->refunds->data[0]->id) : $order->update_meta_data('_stripe_refund_id', $notification->data->object->refunds->data[0]->id); |
|
465 | 465 | |
466 | - $amount = wc_price( $notification->data->object->refunds->data[0]->amount / 100 ); |
|
466 | + $amount = wc_price($notification->data->object->refunds->data[0]->amount / 100); |
|
467 | 467 | |
468 | - if ( in_array( strtolower( WC_Stripe_Helper::is_pre_30() ? $order->get_order_currency() : $order->get_currency() ), WC_Stripe_Helper::no_decimal_currencies() ) ) { |
|
469 | - $amount = wc_price( $notification->data->object->refunds->data[0]->amount ); |
|
468 | + if (in_array(strtolower(WC_Stripe_Helper::is_pre_30() ? $order->get_order_currency() : $order->get_currency()), WC_Stripe_Helper::no_decimal_currencies())) { |
|
469 | + $amount = wc_price($notification->data->object->refunds->data[0]->amount); |
|
470 | 470 | } |
471 | 471 | |
472 | - if ( isset( $notification->data->object->refunds->data[0]->balance_transaction ) ) { |
|
473 | - $this->update_fees( $order, $notification->data->object->refunds->data[0]->balance_transaction ); |
|
472 | + if (isset($notification->data->object->refunds->data[0]->balance_transaction)) { |
|
473 | + $this->update_fees($order, $notification->data->object->refunds->data[0]->balance_transaction); |
|
474 | 474 | } |
475 | 475 | |
476 | 476 | /* translators: 1) dollar amount 2) transaction id 3) refund message */ |
477 | - $refund_message = ( isset( $captured ) && 'yes' === $captured ) ? sprintf( __( 'Refunded %1$s - Refund ID: %2$s - %3$s', 'woocommerce-gateway-stripe' ), $amount, $notification->data->object->refunds->data[0]->id, $reason ) : __( 'Pre-Authorization Released via Stripe Dashboard', 'woocommerce-gateway-stripe' ); |
|
477 | + $refund_message = (isset($captured) && 'yes' === $captured) ? sprintf(__('Refunded %1$s - Refund ID: %2$s - %3$s', 'woocommerce-gateway-stripe'), $amount, $notification->data->object->refunds->data[0]->id, $reason) : __('Pre-Authorization Released via Stripe Dashboard', 'woocommerce-gateway-stripe'); |
|
478 | 478 | |
479 | - $order->add_order_note( $refund_message ); |
|
479 | + $order->add_order_note($refund_message); |
|
480 | 480 | } |
481 | 481 | } |
482 | 482 | } |
@@ -487,21 +487,21 @@ discard block |
||
487 | 487 | * @since 4.0.6 |
488 | 488 | * @param object $notification |
489 | 489 | */ |
490 | - public function process_review_opened( $notification ) { |
|
491 | - $order = WC_Stripe_Helper::get_order_by_charge_id( $notification->data->object->charge ); |
|
490 | + public function process_review_opened($notification) { |
|
491 | + $order = WC_Stripe_Helper::get_order_by_charge_id($notification->data->object->charge); |
|
492 | 492 | |
493 | - if ( ! $order ) { |
|
494 | - WC_Stripe_Logger::log( 'Could not find order via charge ID: ' . $notification->data->object->charge ); |
|
493 | + if ( ! $order) { |
|
494 | + WC_Stripe_Logger::log('Could not find order via charge ID: ' . $notification->data->object->charge); |
|
495 | 495 | return; |
496 | 496 | } |
497 | 497 | |
498 | 498 | /* translators: 1) The URL to the order. 2) The reason type. */ |
499 | - $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 ); |
|
499 | + $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); |
|
500 | 500 | |
501 | - if ( apply_filters( 'wc_stripe_webhook_review_change_order_status', true, $order, $notification ) ) { |
|
502 | - $order->update_status( 'on-hold', $message ); |
|
501 | + if (apply_filters('wc_stripe_webhook_review_change_order_status', true, $order, $notification)) { |
|
502 | + $order->update_status('on-hold', $message); |
|
503 | 503 | } else { |
504 | - $order->add_order_note( $message ); |
|
504 | + $order->add_order_note($message); |
|
505 | 505 | } |
506 | 506 | } |
507 | 507 | |
@@ -511,25 +511,25 @@ discard block |
||
511 | 511 | * @since 4.0.6 |
512 | 512 | * @param object $notification |
513 | 513 | */ |
514 | - public function process_review_closed( $notification ) { |
|
515 | - $order = WC_Stripe_Helper::get_order_by_charge_id( $notification->data->object->charge ); |
|
514 | + public function process_review_closed($notification) { |
|
515 | + $order = WC_Stripe_Helper::get_order_by_charge_id($notification->data->object->charge); |
|
516 | 516 | |
517 | - if ( ! $order ) { |
|
518 | - WC_Stripe_Logger::log( 'Could not find order via charge ID: ' . $notification->data->object->charge ); |
|
517 | + if ( ! $order) { |
|
518 | + WC_Stripe_Logger::log('Could not find order via charge ID: ' . $notification->data->object->charge); |
|
519 | 519 | return; |
520 | 520 | } |
521 | 521 | |
522 | 522 | /* translators: 1) The reason type. */ |
523 | - $message = sprintf( __( 'The opened review for this order is now closed. Reason: (%s)', 'woocommerce-gateway-stripe' ), $notification->data->object->reason ); |
|
523 | + $message = sprintf(__('The opened review for this order is now closed. Reason: (%s)', 'woocommerce-gateway-stripe'), $notification->data->object->reason); |
|
524 | 524 | |
525 | - if ( 'on-hold' === $order->get_status() ) { |
|
526 | - if ( apply_filters( 'wc_stripe_webhook_review_change_order_status', true, $order, $notification ) ) { |
|
527 | - $order->update_status( 'processing', $message ); |
|
525 | + if ('on-hold' === $order->get_status()) { |
|
526 | + if (apply_filters('wc_stripe_webhook_review_change_order_status', true, $order, $notification)) { |
|
527 | + $order->update_status('processing', $message); |
|
528 | 528 | } else { |
529 | - $order->add_order_note( $message ); |
|
529 | + $order->add_order_note($message); |
|
530 | 530 | } |
531 | 531 | } else { |
532 | - $order->add_order_note( $message ); |
|
532 | + $order->add_order_note($message); |
|
533 | 533 | } |
534 | 534 | } |
535 | 535 | |
@@ -540,7 +540,7 @@ discard block |
||
540 | 540 | * @version 4.0.0 |
541 | 541 | * @param object $notification |
542 | 542 | */ |
543 | - public function is_partial_capture( $notification ) { |
|
543 | + public function is_partial_capture($notification) { |
|
544 | 544 | return 0 < $notification->data->object->amount_refunded; |
545 | 545 | } |
546 | 546 | |
@@ -551,11 +551,11 @@ discard block |
||
551 | 551 | * @version 4.0.0 |
552 | 552 | * @param object $notification |
553 | 553 | */ |
554 | - public function get_refund_amount( $notification ) { |
|
555 | - if ( $this->is_partial_capture( $notification ) ) { |
|
554 | + public function get_refund_amount($notification) { |
|
555 | + if ($this->is_partial_capture($notification)) { |
|
556 | 556 | $amount = $notification->data->object->refunds->data[0]->amount / 100; |
557 | 557 | |
558 | - if ( in_array( strtolower( $notification->data->object->currency ), WC_Stripe_Helper::no_decimal_currencies() ) ) { |
|
558 | + if (in_array(strtolower($notification->data->object->currency), WC_Stripe_Helper::no_decimal_currencies())) { |
|
559 | 559 | $amount = $notification->data->object->refunds->data[0]->amount; |
560 | 560 | } |
561 | 561 | |
@@ -572,12 +572,12 @@ discard block |
||
572 | 572 | * @version 4.0.0 |
573 | 573 | * @param object $notification |
574 | 574 | */ |
575 | - public function get_partial_amount_to_charge( $notification ) { |
|
576 | - if ( $this->is_partial_capture( $notification ) ) { |
|
577 | - $amount = ( $notification->data->object->amount - $notification->data->object->amount_refunded ) / 100; |
|
575 | + public function get_partial_amount_to_charge($notification) { |
|
576 | + if ($this->is_partial_capture($notification)) { |
|
577 | + $amount = ($notification->data->object->amount - $notification->data->object->amount_refunded) / 100; |
|
578 | 578 | |
579 | - if ( in_array( strtolower( $notification->data->object->currency ), WC_Stripe_Helper::no_decimal_currencies() ) ) { |
|
580 | - $amount = ( $notification->data->object->amount - $notification->data->object->amount_refunded ); |
|
579 | + if (in_array(strtolower($notification->data->object->currency), WC_Stripe_Helper::no_decimal_currencies())) { |
|
580 | + $amount = ($notification->data->object->amount - $notification->data->object->amount_refunded); |
|
581 | 581 | } |
582 | 582 | |
583 | 583 | return $amount; |
@@ -593,44 +593,44 @@ discard block |
||
593 | 593 | * @version 4.0.0 |
594 | 594 | * @param string $request_body |
595 | 595 | */ |
596 | - public function process_webhook( $request_body ) { |
|
597 | - $notification = json_decode( $request_body ); |
|
596 | + public function process_webhook($request_body) { |
|
597 | + $notification = json_decode($request_body); |
|
598 | 598 | |
599 | - switch ( $notification->type ) { |
|
599 | + switch ($notification->type) { |
|
600 | 600 | case 'source.chargeable': |
601 | - $this->process_webhook_payment( $notification ); |
|
601 | + $this->process_webhook_payment($notification); |
|
602 | 602 | break; |
603 | 603 | |
604 | 604 | case 'source.canceled': |
605 | - $this->process_webhook_source_canceled( $notification ); |
|
605 | + $this->process_webhook_source_canceled($notification); |
|
606 | 606 | break; |
607 | 607 | |
608 | 608 | case 'charge.succeeded': |
609 | - $this->process_webhook_charge_succeeded( $notification ); |
|
609 | + $this->process_webhook_charge_succeeded($notification); |
|
610 | 610 | break; |
611 | 611 | |
612 | 612 | case 'charge.failed': |
613 | - $this->process_webhook_charge_failed( $notification ); |
|
613 | + $this->process_webhook_charge_failed($notification); |
|
614 | 614 | break; |
615 | 615 | |
616 | 616 | case 'charge.captured': |
617 | - $this->process_webhook_capture( $notification ); |
|
617 | + $this->process_webhook_capture($notification); |
|
618 | 618 | break; |
619 | 619 | |
620 | 620 | case 'charge.dispute.created': |
621 | - $this->process_webhook_dispute( $notification ); |
|
621 | + $this->process_webhook_dispute($notification); |
|
622 | 622 | break; |
623 | 623 | |
624 | 624 | case 'charge.refunded': |
625 | - $this->process_webhook_refund( $notification ); |
|
625 | + $this->process_webhook_refund($notification); |
|
626 | 626 | break; |
627 | 627 | |
628 | 628 | case 'review.opened': |
629 | - $this->process_review_opened( $notification ); |
|
629 | + $this->process_review_opened($notification); |
|
630 | 630 | break; |
631 | 631 | |
632 | 632 | case 'review.closed': |
633 | - $this->process_review_closed( $notification ); |
|
633 | + $this->process_review_closed($notification); |
|
634 | 634 | break; |
635 | 635 | |
636 | 636 | } |
@@ -1,5 +1,5 @@ discard block |
||
1 | 1 | <?php |
2 | -if ( ! defined( 'ABSPATH' ) ) { |
|
2 | +if ( ! defined('ABSPATH')) { |
|
3 | 3 | exit; |
4 | 4 | } |
5 | 5 | |
@@ -72,9 +72,9 @@ discard block |
||
72 | 72 | public function __construct() { |
73 | 73 | $this->retry_interval = 1; |
74 | 74 | $this->id = 'stripe_sepa'; |
75 | - $this->method_title = __( 'Stripe SEPA Direct Debit', 'woocommerce-gateway-stripe' ); |
|
75 | + $this->method_title = __('Stripe SEPA Direct Debit', 'woocommerce-gateway-stripe'); |
|
76 | 76 | /* translators: link */ |
77 | - $this->method_description = sprintf( __( 'All other general Stripe settings can be adjusted <a href="%s">here</a>.', 'woocommerce-gateway-stripe' ), admin_url( 'admin.php?page=wc-settings&tab=checkout§ion=stripe' ) ); |
|
77 | + $this->method_description = sprintf(__('All other general Stripe settings can be adjusted <a href="%s">here</a>.', 'woocommerce-gateway-stripe'), admin_url('admin.php?page=wc-settings&tab=checkout§ion=stripe')); |
|
78 | 78 | $this->supports = array( |
79 | 79 | 'products', |
80 | 80 | 'refunds', |
@@ -99,28 +99,28 @@ discard block |
||
99 | 99 | // Load the settings. |
100 | 100 | $this->init_settings(); |
101 | 101 | |
102 | - $main_settings = get_option( 'woocommerce_stripe_settings' ); |
|
103 | - $this->title = $this->get_option( 'title' ); |
|
104 | - $this->description = $this->get_option( 'description' ); |
|
105 | - $this->enabled = $this->get_option( 'enabled' ); |
|
106 | - $this->testmode = ( ! empty( $main_settings['testmode'] ) && 'yes' === $main_settings['testmode'] ) ? true : false; |
|
107 | - $this->saved_cards = ( ! empty( $main_settings['saved_cards'] ) && 'yes' === $main_settings['saved_cards'] ) ? true : false; |
|
108 | - $this->publishable_key = ! empty( $main_settings['publishable_key'] ) ? $main_settings['publishable_key'] : ''; |
|
109 | - $this->secret_key = ! empty( $main_settings['secret_key'] ) ? $main_settings['secret_key'] : ''; |
|
110 | - $this->statement_descriptor = ! empty( $main_settings['statement_descriptor'] ) ? $main_settings['statement_descriptor'] : ''; |
|
111 | - |
|
112 | - if ( $this->testmode ) { |
|
113 | - $this->publishable_key = ! empty( $main_settings['test_publishable_key'] ) ? $main_settings['test_publishable_key'] : ''; |
|
114 | - $this->secret_key = ! empty( $main_settings['test_secret_key'] ) ? $main_settings['test_secret_key'] : ''; |
|
102 | + $main_settings = get_option('woocommerce_stripe_settings'); |
|
103 | + $this->title = $this->get_option('title'); |
|
104 | + $this->description = $this->get_option('description'); |
|
105 | + $this->enabled = $this->get_option('enabled'); |
|
106 | + $this->testmode = ( ! empty($main_settings['testmode']) && 'yes' === $main_settings['testmode']) ? true : false; |
|
107 | + $this->saved_cards = ( ! empty($main_settings['saved_cards']) && 'yes' === $main_settings['saved_cards']) ? true : false; |
|
108 | + $this->publishable_key = ! empty($main_settings['publishable_key']) ? $main_settings['publishable_key'] : ''; |
|
109 | + $this->secret_key = ! empty($main_settings['secret_key']) ? $main_settings['secret_key'] : ''; |
|
110 | + $this->statement_descriptor = ! empty($main_settings['statement_descriptor']) ? $main_settings['statement_descriptor'] : ''; |
|
111 | + |
|
112 | + if ($this->testmode) { |
|
113 | + $this->publishable_key = ! empty($main_settings['test_publishable_key']) ? $main_settings['test_publishable_key'] : ''; |
|
114 | + $this->secret_key = ! empty($main_settings['test_secret_key']) ? $main_settings['test_secret_key'] : ''; |
|
115 | 115 | } |
116 | 116 | |
117 | - add_action( 'woocommerce_update_options_payment_gateways_' . $this->id, array( $this, 'process_admin_options' ) ); |
|
118 | - add_action( 'wp_enqueue_scripts', array( $this, 'payment_scripts' ) ); |
|
117 | + add_action('woocommerce_update_options_payment_gateways_' . $this->id, array($this, 'process_admin_options')); |
|
118 | + add_action('wp_enqueue_scripts', array($this, 'payment_scripts')); |
|
119 | 119 | |
120 | - if ( WC_Stripe_Helper::is_pre_orders_exists() ) { |
|
120 | + if (WC_Stripe_Helper::is_pre_orders_exists()) { |
|
121 | 121 | $this->pre_orders = new WC_Stripe_Pre_Orders_Compat(); |
122 | 122 | |
123 | - add_action( 'wc_pre_orders_process_pre_order_completion_payment_' . $this->id, array( $this->pre_orders, 'process_pre_order_release_payment' ) ); |
|
123 | + add_action('wc_pre_orders_process_pre_order_completion_payment_' . $this->id, array($this->pre_orders, 'process_pre_order_release_payment')); |
|
124 | 124 | } |
125 | 125 | } |
126 | 126 | |
@@ -132,9 +132,9 @@ discard block |
||
132 | 132 | * @return array |
133 | 133 | */ |
134 | 134 | public function get_supported_currency() { |
135 | - return apply_filters( 'wc_stripe_sepa_supported_currencies', array( |
|
135 | + return apply_filters('wc_stripe_sepa_supported_currencies', array( |
|
136 | 136 | 'EUR', |
137 | - ) ); |
|
137 | + )); |
|
138 | 138 | } |
139 | 139 | |
140 | 140 | /** |
@@ -145,11 +145,11 @@ discard block |
||
145 | 145 | * @return bool |
146 | 146 | */ |
147 | 147 | public function is_available() { |
148 | - if ( ! in_array( get_woocommerce_currency(), $this->get_supported_currency() ) ) { |
|
148 | + if ( ! in_array(get_woocommerce_currency(), $this->get_supported_currency())) { |
|
149 | 149 | return false; |
150 | 150 | } |
151 | 151 | |
152 | - if ( is_add_payment_method_page() && ! $this->saved_cards ) { |
|
152 | + if (is_add_payment_method_page() && ! $this->saved_cards) { |
|
153 | 153 | return false; |
154 | 154 | } |
155 | 155 | |
@@ -170,7 +170,7 @@ discard block |
||
170 | 170 | |
171 | 171 | $icons_str .= $icons['sepa']; |
172 | 172 | |
173 | - return apply_filters( 'woocommerce_gateway_icon', $icons_str, $this->id ); |
|
173 | + return apply_filters('woocommerce_gateway_icon', $icons_str, $this->id); |
|
174 | 174 | } |
175 | 175 | |
176 | 176 | /** |
@@ -181,19 +181,19 @@ discard block |
||
181 | 181 | * @access public |
182 | 182 | */ |
183 | 183 | public function payment_scripts() { |
184 | - if ( ! is_cart() && ! is_checkout() && ! isset( $_GET['pay_for_order'] ) && ! is_add_payment_method_page() ) { |
|
184 | + if ( ! is_cart() && ! is_checkout() && ! isset($_GET['pay_for_order']) && ! is_add_payment_method_page()) { |
|
185 | 185 | return; |
186 | 186 | } |
187 | 187 | |
188 | - wp_enqueue_style( 'stripe_styles' ); |
|
189 | - wp_enqueue_script( 'woocommerce_stripe' ); |
|
188 | + wp_enqueue_style('stripe_styles'); |
|
189 | + wp_enqueue_script('woocommerce_stripe'); |
|
190 | 190 | } |
191 | 191 | |
192 | 192 | /** |
193 | 193 | * Initialize Gateway Settings Form Fields. |
194 | 194 | */ |
195 | 195 | public function init_form_fields() { |
196 | - $this->form_fields = require( WC_STRIPE_PLUGIN_PATH . '/includes/admin/stripe-sepa-settings.php' ); |
|
196 | + $this->form_fields = require(WC_STRIPE_PLUGIN_PATH . '/includes/admin/stripe-sepa-settings.php'); |
|
197 | 197 | } |
198 | 198 | |
199 | 199 | /** |
@@ -205,7 +205,7 @@ discard block |
||
205 | 205 | */ |
206 | 206 | public function mandate_display() { |
207 | 207 | /* translators: statement descriptor */ |
208 | - 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 ) ); |
|
208 | + printf(__('By providing your IBAN and confirming this payment, you are authorizing %s and Stripe, our payment service provider, to send instructions to your bank to debit your account and your bank to debit your account in accordance with those instructions. You are entitled to a refund from your bank under the terms and conditions of your agreement with your bank. A refund must be claimed within 8 weeks starting from the date on which your account was debited.', 'woocommerce-gateway-stripe'), WC_Stripe_Helper::clean_statement_descriptor($this->statement_descriptor)); |
|
209 | 209 | } |
210 | 210 | |
211 | 211 | /** |
@@ -216,24 +216,24 @@ discard block |
||
216 | 216 | */ |
217 | 217 | public function form() { |
218 | 218 | ?> |
219 | - <fieldset id="wc-<?php echo esc_attr( $this->id ); ?>-form" class="wc-payment-form"> |
|
220 | - <?php do_action( 'woocommerce_credit_card_form_start', $this->id ); ?> |
|
219 | + <fieldset id="wc-<?php echo esc_attr($this->id); ?>-form" class="wc-payment-form"> |
|
220 | + <?php do_action('woocommerce_credit_card_form_start', $this->id); ?> |
|
221 | 221 | <p class="wc-stripe-sepa-mandate" style="margin-bottom:40px;"><?php $this->mandate_display(); ?></p> |
222 | 222 | <p class="form-row form-row-wide"> |
223 | 223 | <label for="stripe-sepa-owner"> |
224 | - <?php esc_html_e( 'IBAN Account Name.', 'woocommerce-gateway-stripe' ); ?> <span class="required">*</span> |
|
224 | + <?php esc_html_e('IBAN Account Name.', 'woocommerce-gateway-stripe'); ?> <span class="required">*</span> |
|
225 | 225 | </label> |
226 | 226 | <input id="stripe-sepa-owner" class="wc-stripe-elements-field" name="stripe_sepa_owner" value="" /> |
227 | 227 | </p> |
228 | 228 | <p class="form-row form-row-wide"> |
229 | 229 | <label for="stripe-sepa-iban"> |
230 | - <?php esc_html_e( 'IBAN Account Number.', 'woocommerce-gateway-stripe' ); ?> <span class="required">*</span> |
|
230 | + <?php esc_html_e('IBAN Account Number.', 'woocommerce-gateway-stripe'); ?> <span class="required">*</span> |
|
231 | 231 | </label> |
232 | 232 | <input id="stripe-sepa-iban" class="wc-stripe-elements-field" name="stripe_sepa_iban" value="" /> |
233 | 233 | </p> |
234 | 234 | <!-- Used to display form errors --> |
235 | 235 | <div class="stripe-source-errors" role="alert"></div> |
236 | - <?php do_action( 'woocommerce_credit_card_form_end', $this->id ); ?> |
|
236 | + <?php do_action('woocommerce_credit_card_form_end', $this->id); ?> |
|
237 | 237 | <div class="clear"></div> |
238 | 238 | </fieldset> |
239 | 239 | <?php |
@@ -244,40 +244,40 @@ discard block |
||
244 | 244 | */ |
245 | 245 | public function payment_fields() { |
246 | 246 | $total = WC()->cart->total; |
247 | - $display_tokenization = $this->supports( 'tokenization' ) && is_checkout() && $this->saved_cards; |
|
247 | + $display_tokenization = $this->supports('tokenization') && is_checkout() && $this->saved_cards; |
|
248 | 248 | $description = $this->get_description() ? $this->get_description() : ''; |
249 | 249 | |
250 | 250 | // If paying from order, we need to get total from order not cart. |
251 | - if ( isset( $_GET['pay_for_order'] ) && ! empty( $_GET['key'] ) ) { |
|
252 | - $order = wc_get_order( wc_get_order_id_by_order_key( wc_clean( $_GET['key'] ) ) ); |
|
251 | + if (isset($_GET['pay_for_order']) && ! empty($_GET['key'])) { |
|
252 | + $order = wc_get_order(wc_get_order_id_by_order_key(wc_clean($_GET['key']))); |
|
253 | 253 | $total = $order->get_total(); |
254 | 254 | } |
255 | 255 | |
256 | - if ( is_add_payment_method_page() ) { |
|
256 | + if (is_add_payment_method_page()) { |
|
257 | 257 | $total = ''; |
258 | 258 | } |
259 | 259 | |
260 | 260 | echo '<div |
261 | 261 | id="stripe-sepa_debit-payment-data" |
262 | - data-amount="' . esc_attr( WC_Stripe_Helper::get_stripe_amount( $total ) ) . '" |
|
263 | - data-currency="' . esc_attr( strtolower( get_woocommerce_currency() ) ) . '">'; |
|
262 | + data-amount="' . esc_attr(WC_Stripe_Helper::get_stripe_amount($total)) . '" |
|
263 | + data-currency="' . esc_attr(strtolower(get_woocommerce_currency())) . '">'; |
|
264 | 264 | |
265 | - if ( $description ) { |
|
266 | - if ( $this->testmode ) { |
|
267 | - $description .= ' ' . __( 'TEST MODE ENABLED. In test mode, you can use IBAN number DE89370400440532013000.', 'woocommerce-gateway-stripe' ); |
|
268 | - $description = trim( $description ); |
|
265 | + if ($description) { |
|
266 | + if ($this->testmode) { |
|
267 | + $description .= ' ' . __('TEST MODE ENABLED. In test mode, you can use IBAN number DE89370400440532013000.', 'woocommerce-gateway-stripe'); |
|
268 | + $description = trim($description); |
|
269 | 269 | } |
270 | - echo apply_filters( 'wc_stripe_description', wpautop( wp_kses_post( $description ) ), $this->id ); |
|
270 | + echo apply_filters('wc_stripe_description', wpautop(wp_kses_post($description)), $this->id); |
|
271 | 271 | } |
272 | 272 | |
273 | - if ( $display_tokenization ) { |
|
273 | + if ($display_tokenization) { |
|
274 | 274 | $this->tokenization_script(); |
275 | 275 | $this->saved_payment_methods(); |
276 | 276 | } |
277 | 277 | |
278 | 278 | $this->form(); |
279 | 279 | |
280 | - if ( apply_filters( 'wc_stripe_display_save_payment_method_checkbox', $display_tokenization ) && ! is_add_payment_method_page() && ! isset( $_GET['change_payment_method'] ) ) { |
|
280 | + if (apply_filters('wc_stripe_display_save_payment_method_checkbox', $display_tokenization) && ! is_add_payment_method_page() && ! isset($_GET['change_payment_method'])) { |
|
281 | 281 | $this->save_payment_method_checkbox(); |
282 | 282 | } |
283 | 283 | |
@@ -295,99 +295,99 @@ discard block |
||
295 | 295 | * |
296 | 296 | * @return array|void |
297 | 297 | */ |
298 | - public function process_payment( $order_id, $retry = true, $force_save_source = false ) { |
|
298 | + public function process_payment($order_id, $retry = true, $force_save_source = false) { |
|
299 | 299 | try { |
300 | - $order = wc_get_order( $order_id ); |
|
300 | + $order = wc_get_order($order_id); |
|
301 | 301 | |
302 | - if ( $this->maybe_process_pre_orders( $order_id ) ) { |
|
303 | - return $this->pre_orders->process_pre_order( $order_id ); |
|
302 | + if ($this->maybe_process_pre_orders($order_id)) { |
|
303 | + return $this->pre_orders->process_pre_order($order_id); |
|
304 | 304 | } |
305 | 305 | |
306 | 306 | // This comes from the create account checkbox in the checkout page. |
307 | - $create_account = ! empty( $_POST['createaccount'] ) ? true : false; |
|
307 | + $create_account = ! empty($_POST['createaccount']) ? true : false; |
|
308 | 308 | |
309 | - if ( $create_account ) { |
|
309 | + if ($create_account) { |
|
310 | 310 | $new_customer_id = WC_Stripe_Helper::is_pre_30() ? $order->customer_user : $order->get_customer_id(); |
311 | - $new_stripe_customer = new WC_Stripe_Customer( $new_customer_id ); |
|
311 | + $new_stripe_customer = new WC_Stripe_Customer($new_customer_id); |
|
312 | 312 | $new_stripe_customer->create_customer(); |
313 | 313 | } |
314 | 314 | |
315 | - $prepared_source = $this->prepare_source( get_current_user_id(), $force_save_source ); |
|
315 | + $prepared_source = $this->prepare_source(get_current_user_id(), $force_save_source); |
|
316 | 316 | |
317 | - $this->save_source_to_order( $order, $prepared_source ); |
|
317 | + $this->save_source_to_order($order, $prepared_source); |
|
318 | 318 | |
319 | 319 | // Result from Stripe API request. |
320 | 320 | $response = null; |
321 | 321 | |
322 | - if ( $order->get_total() > 0 ) { |
|
322 | + if ($order->get_total() > 0) { |
|
323 | 323 | // This will throw exception if not valid. |
324 | - $this->validate_minimum_order_amount( $order ); |
|
324 | + $this->validate_minimum_order_amount($order); |
|
325 | 325 | |
326 | - WC_Stripe_Logger::log( "Info: Begin processing payment for order $order_id for the amount of {$order->get_total()}" ); |
|
326 | + WC_Stripe_Logger::log("Info: Begin processing payment for order $order_id for the amount of {$order->get_total()}"); |
|
327 | 327 | |
328 | 328 | // Make the request. |
329 | - $response = WC_Stripe_API::request( $this->generate_payment_request( $order, $prepared_source ) ); |
|
329 | + $response = WC_Stripe_API::request($this->generate_payment_request($order, $prepared_source)); |
|
330 | 330 | |
331 | - if ( ! empty( $response->error ) ) { |
|
331 | + if ( ! empty($response->error)) { |
|
332 | 332 | // Customer param wrong? The user may have been deleted on stripe's end. Remove customer_id. Can be retried without. |
333 | - if ( $this->is_no_such_customer_error( $response->error ) ) { |
|
334 | - if ( WC_Stripe_Helper::is_pre_30() ) { |
|
335 | - delete_user_meta( $order->customer_user, '_stripe_customer_id' ); |
|
336 | - delete_post_meta( $order_id, '_stripe_customer_id' ); |
|
333 | + if ($this->is_no_such_customer_error($response->error)) { |
|
334 | + if (WC_Stripe_Helper::is_pre_30()) { |
|
335 | + delete_user_meta($order->customer_user, '_stripe_customer_id'); |
|
336 | + delete_post_meta($order_id, '_stripe_customer_id'); |
|
337 | 337 | } else { |
338 | - delete_user_meta( $order->get_customer_id(), '_stripe_customer_id' ); |
|
339 | - $order->delete_meta_data( '_stripe_customer_id' ); |
|
338 | + delete_user_meta($order->get_customer_id(), '_stripe_customer_id'); |
|
339 | + $order->delete_meta_data('_stripe_customer_id'); |
|
340 | 340 | $order->save(); |
341 | 341 | } |
342 | 342 | } |
343 | 343 | |
344 | - if ( $this->is_no_such_token_error( $response->error ) && $prepared_source->token_id ) { |
|
344 | + if ($this->is_no_such_token_error($response->error) && $prepared_source->token_id) { |
|
345 | 345 | // Source param wrong? The CARD may have been deleted on stripe's end. Remove token and show message. |
346 | - $wc_token = WC_Payment_Tokens::get( $prepared_source->token_id ); |
|
346 | + $wc_token = WC_Payment_Tokens::get($prepared_source->token_id); |
|
347 | 347 | $wc_token->delete(); |
348 | - $localized_message = __( 'This card is no longer available and has been removed.', 'woocommerce-gateway-stripe' ); |
|
349 | - $order->add_order_note( $localized_message ); |
|
350 | - throw new WC_Stripe_Exception( print_r( $response, true ), $localized_message ); |
|
348 | + $localized_message = __('This card is no longer available and has been removed.', 'woocommerce-gateway-stripe'); |
|
349 | + $order->add_order_note($localized_message); |
|
350 | + throw new WC_Stripe_Exception(print_r($response, true), $localized_message); |
|
351 | 351 | } |
352 | 352 | |
353 | 353 | // We want to retry. |
354 | - if ( $this->is_retryable_error( $response->error ) ) { |
|
355 | - if ( $retry ) { |
|
354 | + if ($this->is_retryable_error($response->error)) { |
|
355 | + if ($retry) { |
|
356 | 356 | // Don't do anymore retries after this. |
357 | - if ( 5 <= $this->retry_interval ) { |
|
357 | + if (5 <= $this->retry_interval) { |
|
358 | 358 | |
359 | - return $this->process_payment( $order_id, false, $force_save_source ); |
|
359 | + return $this->process_payment($order_id, false, $force_save_source); |
|
360 | 360 | } |
361 | 361 | |
362 | - sleep( $this->retry_interval ); |
|
362 | + sleep($this->retry_interval); |
|
363 | 363 | |
364 | 364 | $this->retry_interval++; |
365 | 365 | |
366 | - return $this->process_payment( $order_id, true, $force_save_source ); |
|
366 | + return $this->process_payment($order_id, true, $force_save_source); |
|
367 | 367 | } else { |
368 | - $localized_message = __( 'Sorry, we are unable to process your payment at this time. Please retry later.', 'woocommerce-gateway-stripe' ); |
|
369 | - $order->add_order_note( $localized_message ); |
|
370 | - throw new WC_Stripe_Exception( print_r( $response, true ), $localized_message ); |
|
368 | + $localized_message = __('Sorry, we are unable to process your payment at this time. Please retry later.', 'woocommerce-gateway-stripe'); |
|
369 | + $order->add_order_note($localized_message); |
|
370 | + throw new WC_Stripe_Exception(print_r($response, true), $localized_message); |
|
371 | 371 | } |
372 | 372 | } |
373 | 373 | |
374 | 374 | $localized_messages = WC_Stripe_Helper::get_localized_messages(); |
375 | 375 | |
376 | - if ( 'card_error' === $response->error->type ) { |
|
377 | - $localized_message = isset( $localized_messages[ $response->error->code ] ) ? $localized_messages[ $response->error->code ] : $response->error->message; |
|
376 | + if ('card_error' === $response->error->type) { |
|
377 | + $localized_message = isset($localized_messages[$response->error->code]) ? $localized_messages[$response->error->code] : $response->error->message; |
|
378 | 378 | } else { |
379 | - $localized_message = isset( $localized_messages[ $response->error->type ] ) ? $localized_messages[ $response->error->type ] : $response->error->message; |
|
379 | + $localized_message = isset($localized_messages[$response->error->type]) ? $localized_messages[$response->error->type] : $response->error->message; |
|
380 | 380 | } |
381 | 381 | |
382 | - $order->add_order_note( $localized_message ); |
|
382 | + $order->add_order_note($localized_message); |
|
383 | 383 | |
384 | - throw new WC_Stripe_Exception( print_r( $response, true ), $localized_message ); |
|
384 | + throw new WC_Stripe_Exception(print_r($response, true), $localized_message); |
|
385 | 385 | } |
386 | 386 | |
387 | - do_action( 'wc_gateway_stripe_process_payment', $response, $order ); |
|
387 | + do_action('wc_gateway_stripe_process_payment', $response, $order); |
|
388 | 388 | |
389 | 389 | // Process valid response. |
390 | - $this->process_response( $response, $order ); |
|
390 | + $this->process_response($response, $order); |
|
391 | 391 | } else { |
392 | 392 | $order->payment_complete(); |
393 | 393 | } |
@@ -398,17 +398,17 @@ discard block |
||
398 | 398 | // Return thank you page redirect. |
399 | 399 | return array( |
400 | 400 | 'result' => 'success', |
401 | - 'redirect' => $this->get_return_url( $order ), |
|
401 | + 'redirect' => $this->get_return_url($order), |
|
402 | 402 | ); |
403 | 403 | |
404 | - } catch ( WC_Stripe_Exception $e ) { |
|
405 | - wc_add_notice( $e->getLocalizedMessage(), 'error' ); |
|
406 | - WC_Stripe_Logger::log( 'Error: ' . $e->getMessage() ); |
|
404 | + } catch (WC_Stripe_Exception $e) { |
|
405 | + wc_add_notice($e->getLocalizedMessage(), 'error'); |
|
406 | + WC_Stripe_Logger::log('Error: ' . $e->getMessage()); |
|
407 | 407 | |
408 | - do_action( 'wc_gateway_stripe_process_payment_error', $e, $order ); |
|
408 | + do_action('wc_gateway_stripe_process_payment_error', $e, $order); |
|
409 | 409 | |
410 | - if ( $order->has_status( array( 'pending', 'failed' ) ) ) { |
|
411 | - $this->send_failed_order_email( $order_id ); |
|
410 | + if ($order->has_status(array('pending', 'failed'))) { |
|
411 | + $this->send_failed_order_email($order_id); |
|
412 | 412 | } |
413 | 413 | |
414 | 414 | return array( |
@@ -15,7 +15,7 @@ discard block |
||
15 | 15 | * |
16 | 16 | */ |
17 | 17 | |
18 | -if ( ! defined( 'ABSPATH' ) ) { |
|
18 | +if ( ! defined('ABSPATH')) { |
|
19 | 19 | exit; |
20 | 20 | } |
21 | 21 | |
@@ -27,29 +27,29 @@ discard block |
||
27 | 27 | */ |
28 | 28 | function woocommerce_stripe_missing_wc_notice() { |
29 | 29 | /* translators: 1. URL link. */ |
30 | - echo '<div class="error"><p><strong>' . sprintf( esc_html__( 'Stripe requires WooCommerce to be installed and active. You can download %s here.', 'woocommerce-gateway-stripe' ), '<a href="https://woocommerce.com/" target="_blank">WooCommerce</a>' ) . '</strong></p></div>'; |
|
30 | + echo '<div class="error"><p><strong>' . sprintf(esc_html__('Stripe requires WooCommerce to be installed and active. You can download %s here.', 'woocommerce-gateway-stripe'), '<a href="https://woocommerce.com/" target="_blank">WooCommerce</a>') . '</strong></p></div>'; |
|
31 | 31 | } |
32 | 32 | |
33 | -add_action( 'plugins_loaded', 'woocommerce_gateway_stripe_init' ); |
|
33 | +add_action('plugins_loaded', 'woocommerce_gateway_stripe_init'); |
|
34 | 34 | |
35 | 35 | function woocommerce_gateway_stripe_init() { |
36 | - load_plugin_textdomain( 'woocommerce-gateway-stripe', false, plugin_basename( dirname( __FILE__ ) ) . '/languages' ); |
|
36 | + load_plugin_textdomain('woocommerce-gateway-stripe', false, plugin_basename(dirname(__FILE__)) . '/languages'); |
|
37 | 37 | |
38 | - if ( ! class_exists( 'WooCommerce' ) ) { |
|
39 | - add_action( 'admin_notices', 'woocommerce_stripe_missing_wc_notice' ); |
|
38 | + if ( ! class_exists('WooCommerce')) { |
|
39 | + add_action('admin_notices', 'woocommerce_stripe_missing_wc_notice'); |
|
40 | 40 | return; |
41 | 41 | } |
42 | 42 | |
43 | - if ( ! class_exists( 'WC_Stripe' ) ) : |
|
43 | + if ( ! class_exists('WC_Stripe')) : |
|
44 | 44 | /** |
45 | 45 | * Required minimums and constants |
46 | 46 | */ |
47 | - define( 'WC_STRIPE_VERSION', '4.1.5' ); |
|
48 | - define( 'WC_STRIPE_MIN_PHP_VER', '5.6.0' ); |
|
49 | - define( 'WC_STRIPE_MIN_WC_VER', '2.6.0' ); |
|
50 | - define( 'WC_STRIPE_MAIN_FILE', __FILE__ ); |
|
51 | - define( 'WC_STRIPE_PLUGIN_URL', untrailingslashit( plugins_url( basename( plugin_dir_path( __FILE__ ) ), basename( __FILE__ ) ) ) ); |
|
52 | - define( 'WC_STRIPE_PLUGIN_PATH', untrailingslashit( plugin_dir_path( __FILE__ ) ) ); |
|
47 | + define('WC_STRIPE_VERSION', '4.1.5'); |
|
48 | + define('WC_STRIPE_MIN_PHP_VER', '5.6.0'); |
|
49 | + define('WC_STRIPE_MIN_WC_VER', '2.6.0'); |
|
50 | + define('WC_STRIPE_MAIN_FILE', __FILE__); |
|
51 | + define('WC_STRIPE_PLUGIN_URL', untrailingslashit(plugins_url(basename(plugin_dir_path(__FILE__)), basename(__FILE__)))); |
|
52 | + define('WC_STRIPE_PLUGIN_PATH', untrailingslashit(plugin_dir_path(__FILE__))); |
|
53 | 53 | |
54 | 54 | class WC_Stripe { |
55 | 55 | |
@@ -69,7 +69,7 @@ discard block |
||
69 | 69 | * @return Singleton The *Singleton* instance. |
70 | 70 | */ |
71 | 71 | public static function get_instance() { |
72 | - if ( null === self::$instance ) { |
|
72 | + if (null === self::$instance) { |
|
73 | 73 | self::$instance = new self(); |
74 | 74 | } |
75 | 75 | return self::$instance; |
@@ -96,7 +96,7 @@ discard block |
||
96 | 96 | * *Singleton* via the `new` operator from outside of this class. |
97 | 97 | */ |
98 | 98 | private function __construct() { |
99 | - add_action( 'admin_init', array( $this, 'install' ) ); |
|
99 | + add_action('admin_init', array($this, 'install')); |
|
100 | 100 | $this->init(); |
101 | 101 | } |
102 | 102 | |
@@ -107,48 +107,48 @@ discard block |
||
107 | 107 | * @version 4.0.0 |
108 | 108 | */ |
109 | 109 | public function init() { |
110 | - if ( is_admin() ) { |
|
111 | - require_once( dirname( __FILE__ ) . '/includes/admin/class-wc-stripe-privacy.php' ); |
|
110 | + if (is_admin()) { |
|
111 | + require_once(dirname(__FILE__) . '/includes/admin/class-wc-stripe-privacy.php'); |
|
112 | 112 | } |
113 | 113 | |
114 | - require_once( dirname( __FILE__ ) . '/includes/class-wc-stripe-exception.php' ); |
|
115 | - require_once( dirname( __FILE__ ) . '/includes/class-wc-stripe-logger.php' ); |
|
116 | - require_once( dirname( __FILE__ ) . '/includes/class-wc-stripe-helper.php' ); |
|
117 | - include_once( dirname( __FILE__ ) . '/includes/class-wc-stripe-api.php' ); |
|
118 | - require_once( dirname( __FILE__ ) . '/includes/abstracts/abstract-wc-stripe-payment-gateway.php' ); |
|
119 | - require_once( dirname( __FILE__ ) . '/includes/class-wc-stripe-webhook-handler.php' ); |
|
120 | - require_once( dirname( __FILE__ ) . '/includes/class-wc-stripe-sepa-payment-token.php' ); |
|
121 | - require_once( dirname( __FILE__ ) . '/includes/class-wc-stripe-apple-pay-registration.php' ); |
|
122 | - require_once( dirname( __FILE__ ) . '/includes/compat/class-wc-stripe-pre-orders-compat.php' ); |
|
123 | - require_once( dirname( __FILE__ ) . '/includes/class-wc-gateway-stripe.php' ); |
|
124 | - require_once( dirname( __FILE__ ) . '/includes/payment-methods/class-wc-gateway-stripe-bancontact.php' ); |
|
125 | - require_once( dirname( __FILE__ ) . '/includes/payment-methods/class-wc-gateway-stripe-sofort.php' ); |
|
126 | - require_once( dirname( __FILE__ ) . '/includes/payment-methods/class-wc-gateway-stripe-giropay.php' ); |
|
127 | - require_once( dirname( __FILE__ ) . '/includes/payment-methods/class-wc-gateway-stripe-eps.php' ); |
|
128 | - require_once( dirname( __FILE__ ) . '/includes/payment-methods/class-wc-gateway-stripe-ideal.php' ); |
|
129 | - require_once( dirname( __FILE__ ) . '/includes/payment-methods/class-wc-gateway-stripe-p24.php' ); |
|
130 | - require_once( dirname( __FILE__ ) . '/includes/payment-methods/class-wc-gateway-stripe-alipay.php' ); |
|
131 | - require_once( dirname( __FILE__ ) . '/includes/payment-methods/class-wc-gateway-stripe-sepa.php' ); |
|
132 | - require_once( dirname( __FILE__ ) . '/includes/payment-methods/class-wc-gateway-stripe-multibanco.php' ); |
|
133 | - require_once( dirname( __FILE__ ) . '/includes/payment-methods/class-wc-stripe-payment-request.php' ); |
|
134 | - require_once( dirname( __FILE__ ) . '/includes/compat/class-wc-stripe-subs-compat.php' ); |
|
135 | - require_once( dirname( __FILE__ ) . '/includes/compat/class-wc-stripe-sepa-subs-compat.php' ); |
|
136 | - require_once( dirname( __FILE__ ) . '/includes/class-wc-stripe-order-handler.php' ); |
|
137 | - require_once( dirname( __FILE__ ) . '/includes/class-wc-stripe-payment-tokens.php' ); |
|
138 | - require_once( dirname( __FILE__ ) . '/includes/class-wc-stripe-customer.php' ); |
|
139 | - |
|
140 | - if ( is_admin() ) { |
|
141 | - require_once( dirname( __FILE__ ) . '/includes/admin/class-wc-stripe-admin-notices.php' ); |
|
114 | + require_once(dirname(__FILE__) . '/includes/class-wc-stripe-exception.php'); |
|
115 | + require_once(dirname(__FILE__) . '/includes/class-wc-stripe-logger.php'); |
|
116 | + require_once(dirname(__FILE__) . '/includes/class-wc-stripe-helper.php'); |
|
117 | + include_once(dirname(__FILE__) . '/includes/class-wc-stripe-api.php'); |
|
118 | + require_once(dirname(__FILE__) . '/includes/abstracts/abstract-wc-stripe-payment-gateway.php'); |
|
119 | + require_once(dirname(__FILE__) . '/includes/class-wc-stripe-webhook-handler.php'); |
|
120 | + require_once(dirname(__FILE__) . '/includes/class-wc-stripe-sepa-payment-token.php'); |
|
121 | + require_once(dirname(__FILE__) . '/includes/class-wc-stripe-apple-pay-registration.php'); |
|
122 | + require_once(dirname(__FILE__) . '/includes/compat/class-wc-stripe-pre-orders-compat.php'); |
|
123 | + require_once(dirname(__FILE__) . '/includes/class-wc-gateway-stripe.php'); |
|
124 | + require_once(dirname(__FILE__) . '/includes/payment-methods/class-wc-gateway-stripe-bancontact.php'); |
|
125 | + require_once(dirname(__FILE__) . '/includes/payment-methods/class-wc-gateway-stripe-sofort.php'); |
|
126 | + require_once(dirname(__FILE__) . '/includes/payment-methods/class-wc-gateway-stripe-giropay.php'); |
|
127 | + require_once(dirname(__FILE__) . '/includes/payment-methods/class-wc-gateway-stripe-eps.php'); |
|
128 | + require_once(dirname(__FILE__) . '/includes/payment-methods/class-wc-gateway-stripe-ideal.php'); |
|
129 | + require_once(dirname(__FILE__) . '/includes/payment-methods/class-wc-gateway-stripe-p24.php'); |
|
130 | + require_once(dirname(__FILE__) . '/includes/payment-methods/class-wc-gateway-stripe-alipay.php'); |
|
131 | + require_once(dirname(__FILE__) . '/includes/payment-methods/class-wc-gateway-stripe-sepa.php'); |
|
132 | + require_once(dirname(__FILE__) . '/includes/payment-methods/class-wc-gateway-stripe-multibanco.php'); |
|
133 | + require_once(dirname(__FILE__) . '/includes/payment-methods/class-wc-stripe-payment-request.php'); |
|
134 | + require_once(dirname(__FILE__) . '/includes/compat/class-wc-stripe-subs-compat.php'); |
|
135 | + require_once(dirname(__FILE__) . '/includes/compat/class-wc-stripe-sepa-subs-compat.php'); |
|
136 | + require_once(dirname(__FILE__) . '/includes/class-wc-stripe-order-handler.php'); |
|
137 | + require_once(dirname(__FILE__) . '/includes/class-wc-stripe-payment-tokens.php'); |
|
138 | + require_once(dirname(__FILE__) . '/includes/class-wc-stripe-customer.php'); |
|
139 | + |
|
140 | + if (is_admin()) { |
|
141 | + require_once(dirname(__FILE__) . '/includes/admin/class-wc-stripe-admin-notices.php'); |
|
142 | 142 | } |
143 | 143 | |
144 | 144 | // REMOVE IN THE FUTURE. |
145 | - require_once( dirname( __FILE__ ) . '/includes/deprecated/class-wc-stripe-apple-pay.php' ); |
|
145 | + require_once(dirname(__FILE__) . '/includes/deprecated/class-wc-stripe-apple-pay.php'); |
|
146 | 146 | |
147 | - add_filter( 'woocommerce_payment_gateways', array( $this, 'add_gateways' ) ); |
|
148 | - add_filter( 'plugin_action_links_' . plugin_basename( __FILE__ ), array( $this, 'plugin_action_links' ) ); |
|
147 | + add_filter('woocommerce_payment_gateways', array($this, 'add_gateways')); |
|
148 | + add_filter('plugin_action_links_' . plugin_basename(__FILE__), array($this, 'plugin_action_links')); |
|
149 | 149 | |
150 | - if ( version_compare( WC_VERSION, '3.4', '<' ) ) { |
|
151 | - add_filter( 'woocommerce_get_sections_checkout', array( $this, 'filter_gateway_order_admin' ) ); |
|
150 | + if (version_compare(WC_VERSION, '3.4', '<')) { |
|
151 | + add_filter('woocommerce_get_sections_checkout', array($this, 'filter_gateway_order_admin')); |
|
152 | 152 | } |
153 | 153 | } |
154 | 154 | |
@@ -159,8 +159,8 @@ discard block |
||
159 | 159 | * @version 4.0.0 |
160 | 160 | */ |
161 | 161 | public function update_plugin_version() { |
162 | - delete_option( 'wc_stripe_version' ); |
|
163 | - update_option( 'wc_stripe_version', WC_STRIPE_VERSION ); |
|
162 | + delete_option('wc_stripe_version'); |
|
163 | + update_option('wc_stripe_version', WC_STRIPE_VERSION); |
|
164 | 164 | } |
165 | 165 | |
166 | 166 | /** |
@@ -170,15 +170,15 @@ discard block |
||
170 | 170 | * @version 3.1.0 |
171 | 171 | */ |
172 | 172 | public function install() { |
173 | - if ( ! is_plugin_active( plugin_basename( __FILE__ ) ) ) { |
|
173 | + if ( ! is_plugin_active(plugin_basename(__FILE__))) { |
|
174 | 174 | return; |
175 | 175 | } |
176 | 176 | |
177 | - if ( ! defined( 'IFRAME_REQUEST' ) && ( WC_STRIPE_VERSION !== get_option( 'wc_stripe_version' ) ) ) { |
|
178 | - do_action( 'woocommerce_stripe_updated' ); |
|
177 | + if ( ! defined('IFRAME_REQUEST') && (WC_STRIPE_VERSION !== get_option('wc_stripe_version'))) { |
|
178 | + do_action('woocommerce_stripe_updated'); |
|
179 | 179 | |
180 | - if ( ! defined( 'WC_STRIPE_INSTALLING' ) ) { |
|
181 | - define( 'WC_STRIPE_INSTALLING', true ); |
|
180 | + if ( ! defined('WC_STRIPE_INSTALLING')) { |
|
181 | + define('WC_STRIPE_INSTALLING', true); |
|
182 | 182 | } |
183 | 183 | |
184 | 184 | $this->update_plugin_version(); |
@@ -191,13 +191,13 @@ discard block |
||
191 | 191 | * @since 1.0.0 |
192 | 192 | * @version 4.0.0 |
193 | 193 | */ |
194 | - public function plugin_action_links( $links ) { |
|
194 | + public function plugin_action_links($links) { |
|
195 | 195 | $plugin_links = array( |
196 | - '<a href="admin.php?page=wc-settings&tab=checkout§ion=stripe">' . esc_html__( 'Settings', 'woocommerce-gateway-stripe' ) . '</a>', |
|
197 | - '<a href="https://docs.woocommerce.com/document/stripe/">' . esc_html__( 'Docs', 'woocommerce-gateway-stripe' ) . '</a>', |
|
198 | - '<a href="https://woocommerce.com/contact-us/">' . esc_html__( 'Support', 'woocommerce-gateway-stripe' ) . '</a>', |
|
196 | + '<a href="admin.php?page=wc-settings&tab=checkout§ion=stripe">' . esc_html__('Settings', 'woocommerce-gateway-stripe') . '</a>', |
|
197 | + '<a href="https://docs.woocommerce.com/document/stripe/">' . esc_html__('Docs', 'woocommerce-gateway-stripe') . '</a>', |
|
198 | + '<a href="https://woocommerce.com/contact-us/">' . esc_html__('Support', 'woocommerce-gateway-stripe') . '</a>', |
|
199 | 199 | ); |
200 | - return array_merge( $plugin_links, $links ); |
|
200 | + return array_merge($plugin_links, $links); |
|
201 | 201 | } |
202 | 202 | |
203 | 203 | /** |
@@ -206,8 +206,8 @@ discard block |
||
206 | 206 | * @since 1.0.0 |
207 | 207 | * @version 4.0.0 |
208 | 208 | */ |
209 | - public function add_gateways( $methods ) { |
|
210 | - if ( class_exists( 'WC_Subscriptions_Order' ) && function_exists( 'wcs_create_renewal_order' ) ) { |
|
209 | + public function add_gateways($methods) { |
|
210 | + if (class_exists('WC_Subscriptions_Order') && function_exists('wcs_create_renewal_order')) { |
|
211 | 211 | $methods[] = 'WC_Stripe_Subs_Compat'; |
212 | 212 | $methods[] = 'WC_Stripe_Sepa_Subs_Compat'; |
213 | 213 | } else { |
@@ -233,28 +233,28 @@ discard block |
||
233 | 233 | * @since 4.0.0 |
234 | 234 | * @version 4.0.0 |
235 | 235 | */ |
236 | - public function filter_gateway_order_admin( $sections ) { |
|
237 | - unset( $sections['stripe'] ); |
|
238 | - unset( $sections['stripe_bancontact'] ); |
|
239 | - unset( $sections['stripe_sofort'] ); |
|
240 | - unset( $sections['stripe_giropay'] ); |
|
241 | - unset( $sections['stripe_eps'] ); |
|
242 | - unset( $sections['stripe_ideal'] ); |
|
243 | - unset( $sections['stripe_p24'] ); |
|
244 | - unset( $sections['stripe_alipay'] ); |
|
245 | - unset( $sections['stripe_sepa'] ); |
|
246 | - unset( $sections['stripe_multibanco'] ); |
|
236 | + public function filter_gateway_order_admin($sections) { |
|
237 | + unset($sections['stripe']); |
|
238 | + unset($sections['stripe_bancontact']); |
|
239 | + unset($sections['stripe_sofort']); |
|
240 | + unset($sections['stripe_giropay']); |
|
241 | + unset($sections['stripe_eps']); |
|
242 | + unset($sections['stripe_ideal']); |
|
243 | + unset($sections['stripe_p24']); |
|
244 | + unset($sections['stripe_alipay']); |
|
245 | + unset($sections['stripe_sepa']); |
|
246 | + unset($sections['stripe_multibanco']); |
|
247 | 247 | |
248 | 248 | $sections['stripe'] = 'Stripe'; |
249 | - $sections['stripe_bancontact'] = __( 'Stripe Bancontact', 'woocommerce-gateway-stripe' ); |
|
250 | - $sections['stripe_sofort'] = __( 'Stripe SOFORT', 'woocommerce-gateway-stripe' ); |
|
251 | - $sections['stripe_giropay'] = __( 'Stripe Giropay', 'woocommerce-gateway-stripe' ); |
|
252 | - $sections['stripe_eps'] = __( 'Stripe EPS', 'woocommerce-gateway-stripe' ); |
|
253 | - $sections['stripe_ideal'] = __( 'Stripe iDeal', 'woocommerce-gateway-stripe' ); |
|
254 | - $sections['stripe_p24'] = __( 'Stripe P24', 'woocommerce-gateway-stripe' ); |
|
255 | - $sections['stripe_alipay'] = __( 'Stripe Alipay', 'woocommerce-gateway-stripe' ); |
|
256 | - $sections['stripe_sepa'] = __( 'Stripe SEPA Direct Debit', 'woocommerce-gateway-stripe' ); |
|
257 | - $sections['stripe_multibanco'] = __( 'Stripe Multibanco', 'woocommerce-gateway-stripe' ); |
|
249 | + $sections['stripe_bancontact'] = __('Stripe Bancontact', 'woocommerce-gateway-stripe'); |
|
250 | + $sections['stripe_sofort'] = __('Stripe SOFORT', 'woocommerce-gateway-stripe'); |
|
251 | + $sections['stripe_giropay'] = __('Stripe Giropay', 'woocommerce-gateway-stripe'); |
|
252 | + $sections['stripe_eps'] = __('Stripe EPS', 'woocommerce-gateway-stripe'); |
|
253 | + $sections['stripe_ideal'] = __('Stripe iDeal', 'woocommerce-gateway-stripe'); |
|
254 | + $sections['stripe_p24'] = __('Stripe P24', 'woocommerce-gateway-stripe'); |
|
255 | + $sections['stripe_alipay'] = __('Stripe Alipay', 'woocommerce-gateway-stripe'); |
|
256 | + $sections['stripe_sepa'] = __('Stripe SEPA Direct Debit', 'woocommerce-gateway-stripe'); |
|
257 | + $sections['stripe_multibanco'] = __('Stripe Multibanco', 'woocommerce-gateway-stripe'); |
|
258 | 258 | |
259 | 259 | return $sections; |
260 | 260 | } |