@@ -1,5 +1,5 @@ discard block |
||
1 | 1 | <?php |
2 | -if ( ! defined( 'ABSPATH' ) ) { |
|
2 | +if ( ! defined('ABSPATH')) { |
|
3 | 3 | exit; |
4 | 4 | } |
5 | 5 | |
@@ -7,160 +7,160 @@ discard block |
||
7 | 7 | 'wc_stripe_settings', |
8 | 8 | array( |
9 | 9 | 'enabled' => array( |
10 | - 'title' => __( 'Enable/Disable', 'woocommerce-gateway-stripe' ), |
|
11 | - 'label' => __( 'Enable Stripe', 'woocommerce-gateway-stripe' ), |
|
10 | + 'title' => __('Enable/Disable', 'woocommerce-gateway-stripe'), |
|
11 | + 'label' => __('Enable Stripe', 'woocommerce-gateway-stripe'), |
|
12 | 12 | 'type' => 'checkbox', |
13 | 13 | 'description' => '', |
14 | 14 | 'default' => 'no', |
15 | 15 | ), |
16 | 16 | 'title' => array( |
17 | - 'title' => __( 'Title', 'woocommerce-gateway-stripe' ), |
|
17 | + 'title' => __('Title', 'woocommerce-gateway-stripe'), |
|
18 | 18 | 'type' => 'text', |
19 | - 'description' => __( 'This controls the title which the user sees during checkout.', 'woocommerce-gateway-stripe' ), |
|
20 | - 'default' => __( 'Credit Card (Stripe)', 'woocommerce-gateway-stripe' ), |
|
19 | + 'description' => __('This controls the title which the user sees during checkout.', 'woocommerce-gateway-stripe'), |
|
20 | + 'default' => __('Credit Card (Stripe)', 'woocommerce-gateway-stripe'), |
|
21 | 21 | 'desc_tip' => true, |
22 | 22 | ), |
23 | 23 | 'description' => array( |
24 | - 'title' => __( 'Description', 'woocommerce-gateway-stripe' ), |
|
24 | + 'title' => __('Description', 'woocommerce-gateway-stripe'), |
|
25 | 25 | 'type' => 'text', |
26 | - 'description' => __( 'This controls the description which the user sees during checkout.', 'woocommerce-gateway-stripe' ), |
|
27 | - 'default' => __( 'Pay with your credit card via Stripe.', 'woocommerce-gateway-stripe' ), |
|
26 | + 'description' => __('This controls the description which the user sees during checkout.', 'woocommerce-gateway-stripe'), |
|
27 | + 'default' => __('Pay with your credit card via Stripe.', 'woocommerce-gateway-stripe'), |
|
28 | 28 | 'desc_tip' => true, |
29 | 29 | ), |
30 | 30 | 'webhook' => array( |
31 | - 'title' => __( 'Webhook Endpoints', 'woocommerce-gateway-stripe' ), |
|
31 | + 'title' => __('Webhook Endpoints', 'woocommerce-gateway-stripe'), |
|
32 | 32 | 'type' => 'title', |
33 | 33 | /* translators: webhook URL */ |
34 | 34 | 'description' => $this->display_admin_settings_webhook_description(), |
35 | 35 | ), |
36 | 36 | 'testmode' => array( |
37 | - 'title' => __( 'Test mode', 'woocommerce-gateway-stripe' ), |
|
38 | - 'label' => __( 'Enable Test Mode', 'woocommerce-gateway-stripe' ), |
|
37 | + 'title' => __('Test mode', 'woocommerce-gateway-stripe'), |
|
38 | + 'label' => __('Enable Test Mode', 'woocommerce-gateway-stripe'), |
|
39 | 39 | 'type' => 'checkbox', |
40 | - 'description' => __( 'Place the payment gateway in test mode using test API keys.', 'woocommerce-gateway-stripe' ), |
|
40 | + 'description' => __('Place the payment gateway in test mode using test API keys.', 'woocommerce-gateway-stripe'), |
|
41 | 41 | 'default' => 'yes', |
42 | 42 | 'desc_tip' => true, |
43 | 43 | ), |
44 | 44 | 'test_publishable_key' => array( |
45 | - 'title' => __( 'Test Publishable Key', 'woocommerce-gateway-stripe' ), |
|
45 | + 'title' => __('Test Publishable Key', 'woocommerce-gateway-stripe'), |
|
46 | 46 | 'type' => 'text', |
47 | - 'description' => __( 'Get your API keys from your stripe account.', 'woocommerce-gateway-stripe' ), |
|
47 | + 'description' => __('Get your API keys from your stripe account.', 'woocommerce-gateway-stripe'), |
|
48 | 48 | 'default' => '', |
49 | 49 | 'desc_tip' => true, |
50 | 50 | ), |
51 | 51 | 'test_secret_key' => array( |
52 | - 'title' => __( 'Test Secret Key', 'woocommerce-gateway-stripe' ), |
|
52 | + 'title' => __('Test Secret Key', 'woocommerce-gateway-stripe'), |
|
53 | 53 | 'type' => 'password', |
54 | - 'description' => __( 'Get your API keys from your stripe account.', 'woocommerce-gateway-stripe' ), |
|
54 | + 'description' => __('Get your API keys from your stripe account.', 'woocommerce-gateway-stripe'), |
|
55 | 55 | 'default' => '', |
56 | 56 | 'desc_tip' => true, |
57 | 57 | ), |
58 | 58 | 'test_webhook_secret' => array( |
59 | - 'title' => __( 'Test Webhook Secret', 'woocommerce-gateway-stripe' ), |
|
59 | + 'title' => __('Test Webhook Secret', 'woocommerce-gateway-stripe'), |
|
60 | 60 | 'type' => 'password', |
61 | - 'description' => __( 'Get your webhook signing secret from the webhooks section in your stripe account.', 'woocommerce-gateway-stripe' ), |
|
61 | + 'description' => __('Get your webhook signing secret from the webhooks section in your stripe account.', 'woocommerce-gateway-stripe'), |
|
62 | 62 | 'default' => '', |
63 | 63 | 'desc_tip' => true, |
64 | 64 | ), |
65 | 65 | 'publishable_key' => array( |
66 | - 'title' => __( 'Live Publishable Key', 'woocommerce-gateway-stripe' ), |
|
66 | + 'title' => __('Live Publishable Key', 'woocommerce-gateway-stripe'), |
|
67 | 67 | 'type' => 'text', |
68 | - 'description' => __( 'Get your API keys from your stripe account.', 'woocommerce-gateway-stripe' ), |
|
68 | + 'description' => __('Get your API keys from your stripe account.', 'woocommerce-gateway-stripe'), |
|
69 | 69 | 'default' => '', |
70 | 70 | 'desc_tip' => true, |
71 | 71 | ), |
72 | 72 | 'secret_key' => array( |
73 | - 'title' => __( 'Live Secret Key', 'woocommerce-gateway-stripe' ), |
|
73 | + 'title' => __('Live Secret Key', 'woocommerce-gateway-stripe'), |
|
74 | 74 | 'type' => 'password', |
75 | - 'description' => __( 'Get your API keys from your stripe account.', 'woocommerce-gateway-stripe' ), |
|
75 | + 'description' => __('Get your API keys from your stripe account.', 'woocommerce-gateway-stripe'), |
|
76 | 76 | 'default' => '', |
77 | 77 | 'desc_tip' => true, |
78 | 78 | ), |
79 | 79 | 'webhook_secret' => array( |
80 | - 'title' => __( 'Webhook Secret', 'woocommerce-gateway-stripe' ), |
|
80 | + 'title' => __('Webhook Secret', 'woocommerce-gateway-stripe'), |
|
81 | 81 | 'type' => 'password', |
82 | - 'description' => __( 'Get your webhook signing secret from the webhooks section in your stripe account.', 'woocommerce-gateway-stripe' ), |
|
82 | + 'description' => __('Get your webhook signing secret from the webhooks section in your stripe account.', 'woocommerce-gateway-stripe'), |
|
83 | 83 | 'default' => '', |
84 | 84 | 'desc_tip' => true, |
85 | 85 | ), |
86 | 86 | 'inline_cc_form' => array( |
87 | - 'title' => __( 'Inline Credit Card Form', 'woocommerce-gateway-stripe' ), |
|
87 | + 'title' => __('Inline Credit Card Form', 'woocommerce-gateway-stripe'), |
|
88 | 88 | 'type' => 'checkbox', |
89 | - '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' ), |
|
89 | + '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'), |
|
90 | 90 | 'default' => 'no', |
91 | 91 | 'desc_tip' => true, |
92 | 92 | ), |
93 | 93 | 'statement_descriptor' => array( |
94 | - 'title' => __( 'Statement Descriptor', 'woocommerce-gateway-stripe' ), |
|
94 | + 'title' => __('Statement Descriptor', 'woocommerce-gateway-stripe'), |
|
95 | 95 | 'type' => 'text', |
96 | - 'description' => __( 'Statement descriptors are limited to 22 characters, cannot use the special characters >, <, ", \, \', *, and must not consist solely of numbers. This will appear on your customer\'s statement in capital letters.', 'woocommerce-gateway-stripe' ), |
|
96 | + 'description' => __('Statement descriptors are limited to 22 characters, cannot use the special characters >, <, ", \, \', *, and must not consist solely of numbers. This will appear on your customer\'s statement in capital letters.', 'woocommerce-gateway-stripe'), |
|
97 | 97 | 'default' => '', |
98 | 98 | 'desc_tip' => true, |
99 | 99 | ), |
100 | 100 | 'capture' => array( |
101 | - 'title' => __( 'Capture', 'woocommerce-gateway-stripe' ), |
|
102 | - 'label' => __( 'Capture charge immediately', 'woocommerce-gateway-stripe' ), |
|
101 | + 'title' => __('Capture', 'woocommerce-gateway-stripe'), |
|
102 | + 'label' => __('Capture charge immediately', 'woocommerce-gateway-stripe'), |
|
103 | 103 | 'type' => 'checkbox', |
104 | - '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' ), |
|
104 | + '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'), |
|
105 | 105 | 'default' => 'yes', |
106 | 106 | 'desc_tip' => true, |
107 | 107 | ), |
108 | 108 | 'payment_request' => array( |
109 | - 'title' => __( 'Payment Request Buttons', 'woocommerce-gateway-stripe' ), |
|
109 | + 'title' => __('Payment Request Buttons', 'woocommerce-gateway-stripe'), |
|
110 | 110 | /* translators: 1) br tag 2) opening anchor tag 3) closing anchor tag */ |
111 | - '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>' ), |
|
111 | + '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>'), |
|
112 | 112 | 'type' => 'checkbox', |
113 | - 'description' => __( 'If enabled, users will be able to pay using Apple Pay or Chrome Payment Request if supported by the browser.', 'woocommerce-gateway-stripe' ), |
|
113 | + 'description' => __('If enabled, users will be able to pay using Apple Pay or Chrome Payment Request if supported by the browser.', 'woocommerce-gateway-stripe'), |
|
114 | 114 | 'default' => 'yes', |
115 | 115 | 'desc_tip' => true, |
116 | 116 | ), |
117 | 117 | 'payment_request_button_type' => array( |
118 | - 'title' => __( 'Payment Request Button Type', 'woocommerce-gateway-stripe' ), |
|
119 | - 'label' => __( 'Button Type', 'woocommerce-gateway-stripe' ), |
|
118 | + 'title' => __('Payment Request Button Type', 'woocommerce-gateway-stripe'), |
|
119 | + 'label' => __('Button Type', 'woocommerce-gateway-stripe'), |
|
120 | 120 | 'type' => 'select', |
121 | - 'description' => __( 'Select the button type you would like to show.', 'woocommerce-gateway-stripe' ), |
|
121 | + 'description' => __('Select the button type you would like to show.', 'woocommerce-gateway-stripe'), |
|
122 | 122 | 'default' => 'buy', |
123 | 123 | 'desc_tip' => true, |
124 | 124 | 'options' => array( |
125 | - 'default' => __( 'Default', 'woocommerce-gateway-stripe' ), |
|
126 | - 'buy' => __( 'Buy', 'woocommerce-gateway-stripe' ), |
|
127 | - 'donate' => __( 'Donate', 'woocommerce-gateway-stripe' ), |
|
125 | + 'default' => __('Default', 'woocommerce-gateway-stripe'), |
|
126 | + 'buy' => __('Buy', 'woocommerce-gateway-stripe'), |
|
127 | + 'donate' => __('Donate', 'woocommerce-gateway-stripe'), |
|
128 | 128 | ), |
129 | 129 | ), |
130 | 130 | 'payment_request_button_theme' => array( |
131 | - 'title' => __( 'Payment Request Button Theme', 'woocommerce-gateway-stripe' ), |
|
132 | - 'label' => __( 'Button Theme', 'woocommerce-gateway-stripe' ), |
|
131 | + 'title' => __('Payment Request Button Theme', 'woocommerce-gateway-stripe'), |
|
132 | + 'label' => __('Button Theme', 'woocommerce-gateway-stripe'), |
|
133 | 133 | 'type' => 'select', |
134 | - 'description' => __( 'Select the button theme you would like to show.', 'woocommerce-gateway-stripe' ), |
|
134 | + 'description' => __('Select the button theme you would like to show.', 'woocommerce-gateway-stripe'), |
|
135 | 135 | 'default' => 'dark', |
136 | 136 | 'desc_tip' => true, |
137 | 137 | 'options' => array( |
138 | - 'dark' => __( 'Dark', 'woocommerce-gateway-stripe' ), |
|
139 | - 'light' => __( 'Light', 'woocommerce-gateway-stripe' ), |
|
140 | - 'light-outline' => __( 'Light-Outline', 'woocommerce-gateway-stripe' ), |
|
138 | + 'dark' => __('Dark', 'woocommerce-gateway-stripe'), |
|
139 | + 'light' => __('Light', 'woocommerce-gateway-stripe'), |
|
140 | + 'light-outline' => __('Light-Outline', 'woocommerce-gateway-stripe'), |
|
141 | 141 | ), |
142 | 142 | ), |
143 | 143 | 'payment_request_button_height' => array( |
144 | - 'title' => __( 'Payment Request Button Height', 'woocommerce-gateway-stripe' ), |
|
145 | - 'label' => __( 'Button Height', 'woocommerce-gateway-stripe' ), |
|
144 | + 'title' => __('Payment Request Button Height', 'woocommerce-gateway-stripe'), |
|
145 | + 'label' => __('Button Height', 'woocommerce-gateway-stripe'), |
|
146 | 146 | 'type' => 'text', |
147 | - 'description' => __( 'Enter the height you would like the button to be in pixels. Width will always be 100%.', 'woocommerce-gateway-stripe' ), |
|
147 | + 'description' => __('Enter the height you would like the button to be in pixels. Width will always be 100%.', 'woocommerce-gateway-stripe'), |
|
148 | 148 | 'default' => '44', |
149 | 149 | 'desc_tip' => true, |
150 | 150 | ), |
151 | 151 | 'saved_cards' => array( |
152 | - 'title' => __( 'Saved Cards', 'woocommerce-gateway-stripe' ), |
|
153 | - 'label' => __( 'Enable Payment via Saved Cards', 'woocommerce-gateway-stripe' ), |
|
152 | + 'title' => __('Saved Cards', 'woocommerce-gateway-stripe'), |
|
153 | + 'label' => __('Enable Payment via Saved Cards', 'woocommerce-gateway-stripe'), |
|
154 | 154 | 'type' => 'checkbox', |
155 | - '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' ), |
|
155 | + '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'), |
|
156 | 156 | 'default' => 'yes', |
157 | 157 | 'desc_tip' => true, |
158 | 158 | ), |
159 | 159 | 'logging' => array( |
160 | - 'title' => __( 'Logging', 'woocommerce-gateway-stripe' ), |
|
161 | - 'label' => __( 'Log debug messages', 'woocommerce-gateway-stripe' ), |
|
160 | + 'title' => __('Logging', 'woocommerce-gateway-stripe'), |
|
161 | + 'label' => __('Log debug messages', 'woocommerce-gateway-stripe'), |
|
162 | 162 | 'type' => 'checkbox', |
163 | - 'description' => __( 'Save debug messages to the WooCommerce System Status log.', 'woocommerce-gateway-stripe' ), |
|
163 | + 'description' => __('Save debug messages to the WooCommerce System Status log.', 'woocommerce-gateway-stripe'), |
|
164 | 164 | 'default' => 'no', |
165 | 165 | 'desc_tip' => true, |
166 | 166 | ), |
@@ -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 | |
@@ -29,29 +29,29 @@ discard block |
||
29 | 29 | */ |
30 | 30 | function woocommerce_stripe_missing_wc_notice() { |
31 | 31 | /* translators: 1. URL link. */ |
32 | - 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>'; |
|
32 | + 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>'; |
|
33 | 33 | } |
34 | 34 | |
35 | -add_action( 'plugins_loaded', 'woocommerce_gateway_stripe_init' ); |
|
35 | +add_action('plugins_loaded', 'woocommerce_gateway_stripe_init'); |
|
36 | 36 | |
37 | 37 | function woocommerce_gateway_stripe_init() { |
38 | - load_plugin_textdomain( 'woocommerce-gateway-stripe', false, plugin_basename( dirname( __FILE__ ) ) . '/languages' ); |
|
38 | + load_plugin_textdomain('woocommerce-gateway-stripe', false, plugin_basename(dirname(__FILE__)) . '/languages'); |
|
39 | 39 | |
40 | - if ( ! class_exists( 'WooCommerce' ) ) { |
|
41 | - add_action( 'admin_notices', 'woocommerce_stripe_missing_wc_notice' ); |
|
40 | + if ( ! class_exists('WooCommerce')) { |
|
41 | + add_action('admin_notices', 'woocommerce_stripe_missing_wc_notice'); |
|
42 | 42 | return; |
43 | 43 | } |
44 | 44 | |
45 | - if ( ! class_exists( 'WC_Stripe' ) ) : |
|
45 | + if ( ! class_exists('WC_Stripe')) : |
|
46 | 46 | /** |
47 | 47 | * Required minimums and constants |
48 | 48 | */ |
49 | - define( 'WC_STRIPE_VERSION', '4.2.4' ); |
|
50 | - define( 'WC_STRIPE_MIN_PHP_VER', '5.6.0' ); |
|
51 | - define( 'WC_STRIPE_MIN_WC_VER', '2.6.0' ); |
|
52 | - define( 'WC_STRIPE_MAIN_FILE', __FILE__ ); |
|
53 | - define( 'WC_STRIPE_PLUGIN_URL', untrailingslashit( plugins_url( basename( plugin_dir_path( __FILE__ ) ), basename( __FILE__ ) ) ) ); |
|
54 | - define( 'WC_STRIPE_PLUGIN_PATH', untrailingslashit( plugin_dir_path( __FILE__ ) ) ); |
|
49 | + define('WC_STRIPE_VERSION', '4.2.4'); |
|
50 | + define('WC_STRIPE_MIN_PHP_VER', '5.6.0'); |
|
51 | + define('WC_STRIPE_MIN_WC_VER', '2.6.0'); |
|
52 | + define('WC_STRIPE_MAIN_FILE', __FILE__); |
|
53 | + define('WC_STRIPE_PLUGIN_URL', untrailingslashit(plugins_url(basename(plugin_dir_path(__FILE__)), basename(__FILE__)))); |
|
54 | + define('WC_STRIPE_PLUGIN_PATH', untrailingslashit(plugin_dir_path(__FILE__))); |
|
55 | 55 | |
56 | 56 | class WC_Stripe { |
57 | 57 | |
@@ -66,7 +66,7 @@ discard block |
||
66 | 66 | * @return Singleton The *Singleton* instance. |
67 | 67 | */ |
68 | 68 | public static function get_instance() { |
69 | - if ( null === self::$instance ) { |
|
69 | + if (null === self::$instance) { |
|
70 | 70 | self::$instance = new self(); |
71 | 71 | } |
72 | 72 | return self::$instance; |
@@ -93,7 +93,7 @@ discard block |
||
93 | 93 | * *Singleton* via the `new` operator from outside of this class. |
94 | 94 | */ |
95 | 95 | private function __construct() { |
96 | - add_action( 'admin_init', array( $this, 'install' ) ); |
|
96 | + add_action('admin_init', array($this, 'install')); |
|
97 | 97 | $this->init(); |
98 | 98 | } |
99 | 99 | |
@@ -104,49 +104,49 @@ discard block |
||
104 | 104 | * @version 4.0.0 |
105 | 105 | */ |
106 | 106 | public function init() { |
107 | - if ( is_admin() ) { |
|
108 | - require_once dirname( __FILE__ ) . '/includes/admin/class-wc-stripe-privacy.php'; |
|
107 | + if (is_admin()) { |
|
108 | + require_once dirname(__FILE__) . '/includes/admin/class-wc-stripe-privacy.php'; |
|
109 | 109 | } |
110 | 110 | |
111 | - require_once dirname( __FILE__ ) . '/includes/class-wc-stripe-exception.php'; |
|
112 | - require_once dirname( __FILE__ ) . '/includes/class-wc-stripe-logger.php'; |
|
113 | - require_once dirname( __FILE__ ) . '/includes/class-wc-stripe-helper.php'; |
|
114 | - include_once dirname( __FILE__ ) . '/includes/class-wc-stripe-api.php'; |
|
115 | - require_once dirname( __FILE__ ) . '/includes/abstracts/abstract-wc-stripe-payment-gateway.php'; |
|
116 | - require_once dirname( __FILE__ ) . '/includes/class-wc-stripe-webhook-handler.php'; |
|
117 | - require_once dirname( __FILE__ ) . '/includes/class-wc-stripe-sepa-payment-token.php'; |
|
118 | - require_once dirname( __FILE__ ) . '/includes/class-wc-stripe-apple-pay-registration.php'; |
|
119 | - require_once dirname( __FILE__ ) . '/includes/compat/class-wc-stripe-pre-orders-compat.php'; |
|
120 | - require_once dirname( __FILE__ ) . '/includes/class-wc-gateway-stripe.php'; |
|
121 | - require_once dirname( __FILE__ ) . '/includes/payment-methods/class-wc-gateway-stripe-bancontact.php'; |
|
122 | - require_once dirname( __FILE__ ) . '/includes/payment-methods/class-wc-gateway-stripe-sofort.php'; |
|
123 | - require_once dirname( __FILE__ ) . '/includes/payment-methods/class-wc-gateway-stripe-giropay.php'; |
|
124 | - require_once dirname( __FILE__ ) . '/includes/payment-methods/class-wc-gateway-stripe-eps.php'; |
|
125 | - require_once dirname( __FILE__ ) . '/includes/payment-methods/class-wc-gateway-stripe-ideal.php'; |
|
126 | - require_once dirname( __FILE__ ) . '/includes/payment-methods/class-wc-gateway-stripe-p24.php'; |
|
127 | - require_once dirname( __FILE__ ) . '/includes/payment-methods/class-wc-gateway-stripe-alipay.php'; |
|
128 | - require_once dirname( __FILE__ ) . '/includes/payment-methods/class-wc-gateway-stripe-sepa.php'; |
|
129 | - require_once dirname( __FILE__ ) . '/includes/payment-methods/class-wc-gateway-stripe-multibanco.php'; |
|
130 | - require_once dirname( __FILE__ ) . '/includes/payment-methods/class-wc-stripe-payment-request.php'; |
|
131 | - require_once dirname( __FILE__ ) . '/includes/compat/class-wc-stripe-subs-compat.php'; |
|
132 | - require_once dirname( __FILE__ ) . '/includes/compat/class-wc-stripe-sepa-subs-compat.php'; |
|
133 | - require_once dirname( __FILE__ ) . '/includes/class-wc-stripe-order-handler.php'; |
|
134 | - require_once dirname( __FILE__ ) . '/includes/class-wc-stripe-payment-tokens.php'; |
|
135 | - require_once dirname( __FILE__ ) . '/includes/class-wc-stripe-customer.php'; |
|
136 | - require_once dirname( __FILE__ ) . '/includes/class-wc-stripe-intent-controller.php'; |
|
137 | - |
|
138 | - if ( is_admin() ) { |
|
139 | - require_once dirname( __FILE__ ) . '/includes/admin/class-wc-stripe-admin-notices.php'; |
|
111 | + require_once dirname(__FILE__) . '/includes/class-wc-stripe-exception.php'; |
|
112 | + require_once dirname(__FILE__) . '/includes/class-wc-stripe-logger.php'; |
|
113 | + require_once dirname(__FILE__) . '/includes/class-wc-stripe-helper.php'; |
|
114 | + include_once dirname(__FILE__) . '/includes/class-wc-stripe-api.php'; |
|
115 | + require_once dirname(__FILE__) . '/includes/abstracts/abstract-wc-stripe-payment-gateway.php'; |
|
116 | + require_once dirname(__FILE__) . '/includes/class-wc-stripe-webhook-handler.php'; |
|
117 | + require_once dirname(__FILE__) . '/includes/class-wc-stripe-sepa-payment-token.php'; |
|
118 | + require_once dirname(__FILE__) . '/includes/class-wc-stripe-apple-pay-registration.php'; |
|
119 | + require_once dirname(__FILE__) . '/includes/compat/class-wc-stripe-pre-orders-compat.php'; |
|
120 | + require_once dirname(__FILE__) . '/includes/class-wc-gateway-stripe.php'; |
|
121 | + require_once dirname(__FILE__) . '/includes/payment-methods/class-wc-gateway-stripe-bancontact.php'; |
|
122 | + require_once dirname(__FILE__) . '/includes/payment-methods/class-wc-gateway-stripe-sofort.php'; |
|
123 | + require_once dirname(__FILE__) . '/includes/payment-methods/class-wc-gateway-stripe-giropay.php'; |
|
124 | + require_once dirname(__FILE__) . '/includes/payment-methods/class-wc-gateway-stripe-eps.php'; |
|
125 | + require_once dirname(__FILE__) . '/includes/payment-methods/class-wc-gateway-stripe-ideal.php'; |
|
126 | + require_once dirname(__FILE__) . '/includes/payment-methods/class-wc-gateway-stripe-p24.php'; |
|
127 | + require_once dirname(__FILE__) . '/includes/payment-methods/class-wc-gateway-stripe-alipay.php'; |
|
128 | + require_once dirname(__FILE__) . '/includes/payment-methods/class-wc-gateway-stripe-sepa.php'; |
|
129 | + require_once dirname(__FILE__) . '/includes/payment-methods/class-wc-gateway-stripe-multibanco.php'; |
|
130 | + require_once dirname(__FILE__) . '/includes/payment-methods/class-wc-stripe-payment-request.php'; |
|
131 | + require_once dirname(__FILE__) . '/includes/compat/class-wc-stripe-subs-compat.php'; |
|
132 | + require_once dirname(__FILE__) . '/includes/compat/class-wc-stripe-sepa-subs-compat.php'; |
|
133 | + require_once dirname(__FILE__) . '/includes/class-wc-stripe-order-handler.php'; |
|
134 | + require_once dirname(__FILE__) . '/includes/class-wc-stripe-payment-tokens.php'; |
|
135 | + require_once dirname(__FILE__) . '/includes/class-wc-stripe-customer.php'; |
|
136 | + require_once dirname(__FILE__) . '/includes/class-wc-stripe-intent-controller.php'; |
|
137 | + |
|
138 | + if (is_admin()) { |
|
139 | + require_once dirname(__FILE__) . '/includes/admin/class-wc-stripe-admin-notices.php'; |
|
140 | 140 | } |
141 | 141 | |
142 | 142 | // REMOVE IN THE FUTURE. |
143 | - require_once dirname( __FILE__ ) . '/includes/deprecated/class-wc-stripe-apple-pay.php'; |
|
143 | + require_once dirname(__FILE__) . '/includes/deprecated/class-wc-stripe-apple-pay.php'; |
|
144 | 144 | |
145 | - add_filter( 'woocommerce_payment_gateways', array( $this, 'add_gateways' ) ); |
|
146 | - add_filter( 'plugin_action_links_' . plugin_basename( __FILE__ ), array( $this, 'plugin_action_links' ) ); |
|
145 | + add_filter('woocommerce_payment_gateways', array($this, 'add_gateways')); |
|
146 | + add_filter('plugin_action_links_' . plugin_basename(__FILE__), array($this, 'plugin_action_links')); |
|
147 | 147 | |
148 | - if ( version_compare( WC_VERSION, '3.4', '<' ) ) { |
|
149 | - add_filter( 'woocommerce_get_sections_checkout', array( $this, 'filter_gateway_order_admin' ) ); |
|
148 | + if (version_compare(WC_VERSION, '3.4', '<')) { |
|
149 | + add_filter('woocommerce_get_sections_checkout', array($this, 'filter_gateway_order_admin')); |
|
150 | 150 | } |
151 | 151 | } |
152 | 152 | |
@@ -157,8 +157,8 @@ discard block |
||
157 | 157 | * @version 4.0.0 |
158 | 158 | */ |
159 | 159 | public function update_plugin_version() { |
160 | - delete_option( 'wc_stripe_version' ); |
|
161 | - update_option( 'wc_stripe_version', WC_STRIPE_VERSION ); |
|
160 | + delete_option('wc_stripe_version'); |
|
161 | + update_option('wc_stripe_version', WC_STRIPE_VERSION); |
|
162 | 162 | } |
163 | 163 | |
164 | 164 | /** |
@@ -168,15 +168,15 @@ discard block |
||
168 | 168 | * @version 3.1.0 |
169 | 169 | */ |
170 | 170 | public function install() { |
171 | - if ( ! is_plugin_active( plugin_basename( __FILE__ ) ) ) { |
|
171 | + if ( ! is_plugin_active(plugin_basename(__FILE__))) { |
|
172 | 172 | return; |
173 | 173 | } |
174 | 174 | |
175 | - if ( ! defined( 'IFRAME_REQUEST' ) && ( WC_STRIPE_VERSION !== get_option( 'wc_stripe_version' ) ) ) { |
|
176 | - do_action( 'woocommerce_stripe_updated' ); |
|
175 | + if ( ! defined('IFRAME_REQUEST') && (WC_STRIPE_VERSION !== get_option('wc_stripe_version'))) { |
|
176 | + do_action('woocommerce_stripe_updated'); |
|
177 | 177 | |
178 | - if ( ! defined( 'WC_STRIPE_INSTALLING' ) ) { |
|
179 | - define( 'WC_STRIPE_INSTALLING', true ); |
|
178 | + if ( ! defined('WC_STRIPE_INSTALLING')) { |
|
179 | + define('WC_STRIPE_INSTALLING', true); |
|
180 | 180 | } |
181 | 181 | |
182 | 182 | $this->update_plugin_version(); |
@@ -189,13 +189,13 @@ discard block |
||
189 | 189 | * @since 1.0.0 |
190 | 190 | * @version 4.0.0 |
191 | 191 | */ |
192 | - public function plugin_action_links( $links ) { |
|
192 | + public function plugin_action_links($links) { |
|
193 | 193 | $plugin_links = array( |
194 | - '<a href="admin.php?page=wc-settings&tab=checkout§ion=stripe">' . esc_html__( 'Settings', 'woocommerce-gateway-stripe' ) . '</a>', |
|
195 | - '<a href="https://docs.woocommerce.com/document/stripe/">' . esc_html__( 'Docs', 'woocommerce-gateway-stripe' ) . '</a>', |
|
196 | - '<a href="https://woocommerce.com/my-account/create-a-ticket?broken=primary&select=18627">' . esc_html__( 'Support', 'woocommerce-gateway-stripe' ) . '</a>', |
|
194 | + '<a href="admin.php?page=wc-settings&tab=checkout§ion=stripe">' . esc_html__('Settings', 'woocommerce-gateway-stripe') . '</a>', |
|
195 | + '<a href="https://docs.woocommerce.com/document/stripe/">' . esc_html__('Docs', 'woocommerce-gateway-stripe') . '</a>', |
|
196 | + '<a href="https://woocommerce.com/my-account/create-a-ticket?broken=primary&select=18627">' . esc_html__('Support', 'woocommerce-gateway-stripe') . '</a>', |
|
197 | 197 | ); |
198 | - return array_merge( $plugin_links, $links ); |
|
198 | + return array_merge($plugin_links, $links); |
|
199 | 199 | } |
200 | 200 | |
201 | 201 | /** |
@@ -204,8 +204,8 @@ discard block |
||
204 | 204 | * @since 1.0.0 |
205 | 205 | * @version 4.0.0 |
206 | 206 | */ |
207 | - public function add_gateways( $methods ) { |
|
208 | - if ( class_exists( 'WC_Subscriptions_Order' ) && function_exists( 'wcs_create_renewal_order' ) ) { |
|
207 | + public function add_gateways($methods) { |
|
208 | + if (class_exists('WC_Subscriptions_Order') && function_exists('wcs_create_renewal_order')) { |
|
209 | 209 | $methods[] = 'WC_Stripe_Subs_Compat'; |
210 | 210 | $methods[] = 'WC_Stripe_Sepa_Subs_Compat'; |
211 | 211 | } else { |
@@ -231,28 +231,28 @@ discard block |
||
231 | 231 | * @since 4.0.0 |
232 | 232 | * @version 4.0.0 |
233 | 233 | */ |
234 | - public function filter_gateway_order_admin( $sections ) { |
|
235 | - unset( $sections['stripe'] ); |
|
236 | - unset( $sections['stripe_bancontact'] ); |
|
237 | - unset( $sections['stripe_sofort'] ); |
|
238 | - unset( $sections['stripe_giropay'] ); |
|
239 | - unset( $sections['stripe_eps'] ); |
|
240 | - unset( $sections['stripe_ideal'] ); |
|
241 | - unset( $sections['stripe_p24'] ); |
|
242 | - unset( $sections['stripe_alipay'] ); |
|
243 | - unset( $sections['stripe_sepa'] ); |
|
244 | - unset( $sections['stripe_multibanco'] ); |
|
234 | + public function filter_gateway_order_admin($sections) { |
|
235 | + unset($sections['stripe']); |
|
236 | + unset($sections['stripe_bancontact']); |
|
237 | + unset($sections['stripe_sofort']); |
|
238 | + unset($sections['stripe_giropay']); |
|
239 | + unset($sections['stripe_eps']); |
|
240 | + unset($sections['stripe_ideal']); |
|
241 | + unset($sections['stripe_p24']); |
|
242 | + unset($sections['stripe_alipay']); |
|
243 | + unset($sections['stripe_sepa']); |
|
244 | + unset($sections['stripe_multibanco']); |
|
245 | 245 | |
246 | 246 | $sections['stripe'] = 'Stripe'; |
247 | - $sections['stripe_bancontact'] = __( 'Stripe Bancontact', 'woocommerce-gateway-stripe' ); |
|
248 | - $sections['stripe_sofort'] = __( 'Stripe SOFORT', 'woocommerce-gateway-stripe' ); |
|
249 | - $sections['stripe_giropay'] = __( 'Stripe Giropay', 'woocommerce-gateway-stripe' ); |
|
250 | - $sections['stripe_eps'] = __( 'Stripe EPS', 'woocommerce-gateway-stripe' ); |
|
251 | - $sections['stripe_ideal'] = __( 'Stripe iDeal', 'woocommerce-gateway-stripe' ); |
|
252 | - $sections['stripe_p24'] = __( 'Stripe P24', 'woocommerce-gateway-stripe' ); |
|
253 | - $sections['stripe_alipay'] = __( 'Stripe Alipay', 'woocommerce-gateway-stripe' ); |
|
254 | - $sections['stripe_sepa'] = __( 'Stripe SEPA Direct Debit', 'woocommerce-gateway-stripe' ); |
|
255 | - $sections['stripe_multibanco'] = __( 'Stripe Multibanco', 'woocommerce-gateway-stripe' ); |
|
247 | + $sections['stripe_bancontact'] = __('Stripe Bancontact', 'woocommerce-gateway-stripe'); |
|
248 | + $sections['stripe_sofort'] = __('Stripe SOFORT', 'woocommerce-gateway-stripe'); |
|
249 | + $sections['stripe_giropay'] = __('Stripe Giropay', 'woocommerce-gateway-stripe'); |
|
250 | + $sections['stripe_eps'] = __('Stripe EPS', 'woocommerce-gateway-stripe'); |
|
251 | + $sections['stripe_ideal'] = __('Stripe iDeal', 'woocommerce-gateway-stripe'); |
|
252 | + $sections['stripe_p24'] = __('Stripe P24', 'woocommerce-gateway-stripe'); |
|
253 | + $sections['stripe_alipay'] = __('Stripe Alipay', 'woocommerce-gateway-stripe'); |
|
254 | + $sections['stripe_sepa'] = __('Stripe SEPA Direct Debit', 'woocommerce-gateway-stripe'); |
|
255 | + $sections['stripe_multibanco'] = __('Stripe Multibanco', 'woocommerce-gateway-stripe'); |
|
256 | 256 | |
257 | 257 | return $sections; |
258 | 258 | } |
@@ -27,17 +27,17 @@ discard block |
||
27 | 27 | public function setUp() { |
28 | 28 | parent::setUp(); |
29 | 29 | |
30 | - $this->wc_stripe_subs_compat = $this->getMockBuilder( 'WC_Stripe_Subs_Compat' ) |
|
30 | + $this->wc_stripe_subs_compat = $this->getMockBuilder('WC_Stripe_Subs_Compat') |
|
31 | 31 | ->disableOriginalConstructor() |
32 | - ->setMethods( array( 'prepare_order_source', 'has_subscription' ) ) |
|
32 | + ->setMethods(array('prepare_order_source', 'has_subscription')) |
|
33 | 33 | ->getMock(); |
34 | 34 | |
35 | 35 | // Mocked in order to get metadata[payment_type] = recurring in the HTTP request. |
36 | 36 | $this->wc_stripe_subs_compat |
37 | - ->expects( $this->any() ) |
|
38 | - ->method( 'has_subscription' ) |
|
37 | + ->expects($this->any()) |
|
38 | + ->method('has_subscription') |
|
39 | 39 | ->will( |
40 | - $this->returnValue( true ) |
|
40 | + $this->returnValue(true) |
|
41 | 41 | ); |
42 | 42 | } |
43 | 43 | |
@@ -55,8 +55,8 @@ discard block |
||
55 | 55 | // Arrange: Some variables we'll use later. |
56 | 56 | $renewal_order = WC_Helper_Order::create_order(); |
57 | 57 | $amount = 20; // WC Subs sends an amount to be used, instead of using the order amount. |
58 | - $stripe_amount = WC_Stripe_Helper::get_stripe_amount( $amount ); |
|
59 | - $currency = strtolower( WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $renewal_order->get_order_currency() : $renewal_order->get_currency() ); |
|
58 | + $stripe_amount = WC_Stripe_Helper::get_stripe_amount($amount); |
|
59 | + $currency = strtolower(WC_Stripe_Helper::is_wc_lt('3.0') ? $renewal_order->get_order_currency() : $renewal_order->get_currency()); |
|
60 | 60 | $customer = 'cus_123abc'; |
61 | 61 | $source = 'src_123abc'; |
62 | 62 | $should_retry = false; |
@@ -66,8 +66,8 @@ discard block |
||
66 | 66 | |
67 | 67 | // Arrange: Mock prepare_order_source() so that we have a customer and source. |
68 | 68 | $this->wc_stripe_subs_compat |
69 | - ->expects( $this->any() ) |
|
70 | - ->method( 'prepare_order_source' ) |
|
69 | + ->expects($this->any()) |
|
70 | + ->method('prepare_order_source') |
|
71 | 71 | ->will( |
72 | 72 | $this->returnValue( |
73 | 73 | (object) array( |
@@ -81,7 +81,7 @@ discard block |
||
81 | 81 | |
82 | 82 | // Arrange: Add filter that will return a mocked HTTP response for the payment_intent call. |
83 | 83 | // Note: There are assertions in the callback function. |
84 | - $pre_http_request_response_callback = function( $preempt, $request_args, $url ) use ( |
|
84 | + $pre_http_request_response_callback = function($preempt, $request_args, $url) use ( |
|
85 | 85 | $renewal_order, |
86 | 86 | $stripe_amount, |
87 | 87 | $currency, |
@@ -91,35 +91,35 @@ discard block |
||
91 | 91 | &$urls_used |
92 | 92 | ) { |
93 | 93 | // Add all urls to array so we can later make assertions about which endpoints were used. |
94 | - array_push( $urls_used, $url ); |
|
94 | + array_push($urls_used, $url); |
|
95 | 95 | |
96 | 96 | // Continue without mocking the request if it's not the endpoint we care about. |
97 | - if ( $payments_intents_api_endpoint !== $url ) { |
|
97 | + if ($payments_intents_api_endpoint !== $url) { |
|
98 | 98 | return false; |
99 | 99 | } |
100 | 100 | |
101 | 101 | // Assert: the request method is POST. |
102 | - $this->assertArrayHasKey( 'method', $request_args ); |
|
103 | - $this->assertSame( 'POST', $request_args['method'] ); |
|
102 | + $this->assertArrayHasKey('method', $request_args); |
|
103 | + $this->assertSame('POST', $request_args['method']); |
|
104 | 104 | |
105 | 105 | // Assert: the request has a body. |
106 | - $this->assertArrayHasKey( 'body', $request_args ); |
|
106 | + $this->assertArrayHasKey('body', $request_args); |
|
107 | 107 | |
108 | 108 | // Assert: the request body contains these values. |
109 | 109 | $expected_request_body_values = array( |
110 | 110 | 'source' => $source, |
111 | 111 | 'amount' => $stripe_amount, |
112 | 112 | 'currency' => $currency, |
113 | - 'payment_method_types' => array( 'card' ), |
|
113 | + 'payment_method_types' => array('card'), |
|
114 | 114 | 'customer' => $customer, |
115 | 115 | 'off_session' => 'true', |
116 | 116 | 'confirm' => 'true', |
117 | 117 | 'confirmation_method' => 'automatic', |
118 | 118 | // Not mocking 'statement_descriptor' since it's not available during this test. |
119 | 119 | ); |
120 | - foreach ( $expected_request_body_values as $key => $value ) { |
|
121 | - $this->assertArrayHasKey( $key, $request_args['body'] ); |
|
122 | - $this->assertSame( $value, $request_args['body'][ $key ] ); |
|
120 | + foreach ($expected_request_body_values as $key => $value) { |
|
121 | + $this->assertArrayHasKey($key, $request_args['body']); |
|
122 | + $this->assertSame($value, $request_args['body'][$key]); |
|
123 | 123 | } |
124 | 124 | |
125 | 125 | // Assert: the request body contains these keys, without checking for their value. |
@@ -127,19 +127,19 @@ discard block |
||
127 | 127 | 'description', |
128 | 128 | 'metadata', |
129 | 129 | ); |
130 | - foreach ( $expected_request_body_keys as $key ) { |
|
131 | - $this->assertArrayHasKey( $key, $request_args['body'] ); |
|
130 | + foreach ($expected_request_body_keys as $key) { |
|
131 | + $this->assertArrayHasKey($key, $request_args['body']); |
|
132 | 132 | } |
133 | 133 | |
134 | 134 | // Assert: the body metadata has these values. |
135 | - $order_id = WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $renewal_order->id : (string) $renewal_order->get_id(); |
|
135 | + $order_id = WC_Stripe_Helper::is_wc_lt('3.0') ? $renewal_order->id : (string) $renewal_order->get_id(); |
|
136 | 136 | $expected_metadata_values = array( |
137 | 137 | 'order_id' => $order_id, |
138 | 138 | 'payment_type' => 'recurring', |
139 | 139 | ); |
140 | - foreach ( $expected_metadata_values as $key => $value ) { |
|
141 | - $this->assertArrayHasKey( $key, $request_args['body']['metadata'] ); |
|
142 | - $this->assertSame( $value, $request_args['body']['metadata'][ $key ] ); |
|
140 | + foreach ($expected_metadata_values as $key => $value) { |
|
141 | + $this->assertArrayHasKey($key, $request_args['body']['metadata']); |
|
142 | + $this->assertSame($value, $request_args['body']['metadata'][$key]); |
|
143 | 143 | } |
144 | 144 | |
145 | 145 | // Assert: the body metadata has these keys, without checking for their value. |
@@ -148,8 +148,8 @@ discard block |
||
148 | 148 | 'customer_email', |
149 | 149 | 'site_url', |
150 | 150 | ); |
151 | - foreach ( $expected_metadata_keys as $key ) { |
|
152 | - $this->assertArrayHasKey( $key, $request_args['body']['metadata'] ); |
|
151 | + foreach ($expected_metadata_keys as $key) { |
|
152 | + $this->assertArrayHasKey($key, $request_args['body']['metadata']); |
|
153 | 153 | } |
154 | 154 | |
155 | 155 | // Assert: the request body does not contains these keys. |
@@ -158,15 +158,15 @@ discard block |
||
158 | 158 | 'capture_method', // The default ('automatic') is what we want in this case, so we leave it off. |
159 | 159 | 'expand[]', |
160 | 160 | ); |
161 | - foreach ( $expected_missing_request_body_keys as $key ) { |
|
162 | - $this->assertArrayNotHasKey( $key, $request_args['body'] ); |
|
161 | + foreach ($expected_missing_request_body_keys as $key) { |
|
162 | + $this->assertArrayNotHasKey($key, $request_args['body']); |
|
163 | 163 | } |
164 | 164 | |
165 | 165 | // Arrange: return dummy content as the response. |
166 | 166 | return array( |
167 | 167 | 'headers' => array(), |
168 | 168 | // Too bad we aren't dynamically setting things 'cus_123abc' when using this file. |
169 | - 'body' => file_get_contents( 'tests/phpunit/dummy-data/subscription_renewal_response_success.json' ), |
|
169 | + 'body' => file_get_contents('tests/phpunit/dummy-data/subscription_renewal_response_success.json'), |
|
170 | 170 | 'response' => array( |
171 | 171 | 'code' => 200, |
172 | 172 | 'message' => 'OK', |
@@ -176,30 +176,30 @@ discard block |
||
176 | 176 | ); |
177 | 177 | }; |
178 | 178 | |
179 | - add_filter( 'pre_http_request', $pre_http_request_response_callback, 10, 3 ); |
|
179 | + add_filter('pre_http_request', $pre_http_request_response_callback, 10, 3); |
|
180 | 180 | |
181 | 181 | // Act: call process_subscription_payment(). |
182 | 182 | // We need to use `wc_stripe_subs_compat` here because we mocked this class earlier. |
183 | - $result = $this->wc_stripe_subs_compat->process_subscription_payment( 20, $renewal_order, $should_retry, $previous_error ); |
|
183 | + $result = $this->wc_stripe_subs_compat->process_subscription_payment(20, $renewal_order, $should_retry, $previous_error); |
|
184 | 184 | |
185 | 185 | // Assert: nothing was returned. |
186 | - $this->assertEquals( $result, null ); |
|
186 | + $this->assertEquals($result, null); |
|
187 | 187 | |
188 | 188 | // Assert that we saved the payment intent to the order. |
189 | - $order_id = WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $renewal_order->id : $renewal_order->get_id(); |
|
190 | - $order = wc_get_order( $order_id ); |
|
189 | + $order_id = WC_Stripe_Helper::is_wc_lt('3.0') ? $renewal_order->id : $renewal_order->get_id(); |
|
190 | + $order = wc_get_order($order_id); |
|
191 | 191 | $order_data = ( |
192 | - WC_Stripe_Helper::is_wc_lt( '3.0' ) |
|
193 | - ? get_post_meta( $order_id, '_stripe_intent_id', true ) |
|
194 | - : $order->get_meta( '_stripe_intent_id' ) |
|
192 | + WC_Stripe_Helper::is_wc_lt('3.0') |
|
193 | + ? get_post_meta($order_id, '_stripe_intent_id', true) |
|
194 | + : $order->get_meta('_stripe_intent_id') |
|
195 | 195 | ); |
196 | 196 | |
197 | - $this->assertEquals( $order_data, 'pi_123abc' ); |
|
197 | + $this->assertEquals($order_data, 'pi_123abc'); |
|
198 | 198 | |
199 | 199 | // Assert: called payment intents. |
200 | - $this->assertTrue( in_array( $payments_intents_api_endpoint, $urls_used ) ); |
|
200 | + $this->assertTrue(in_array($payments_intents_api_endpoint, $urls_used)); |
|
201 | 201 | |
202 | 202 | // Clean up. |
203 | - remove_filter( 'pre_http_request', array( $this, 'pre_http_request_response_success' ) ); |
|
203 | + remove_filter('pre_http_request', array($this, 'pre_http_request_response_success')); |
|
204 | 204 | } |
205 | 205 | } |
@@ -1,5 +1,5 @@ discard block |
||
1 | 1 | <?php |
2 | -if ( ! defined( 'ABSPATH' ) ) { |
|
2 | +if ( ! defined('ABSPATH')) { |
|
3 | 3 | exit; |
4 | 4 | } |
5 | 5 | |
@@ -85,9 +85,9 @@ discard block |
||
85 | 85 | public function __construct() { |
86 | 86 | $this->retry_interval = 1; |
87 | 87 | $this->id = 'stripe'; |
88 | - $this->method_title = __( 'Stripe', 'woocommerce-gateway-stripe' ); |
|
88 | + $this->method_title = __('Stripe', 'woocommerce-gateway-stripe'); |
|
89 | 89 | /* translators: 1) link to Stripe register page 2) link to Stripe api keys page */ |
90 | - $this->method_description = sprintf( __( 'Stripe works by adding payment fields on the checkout and then sending the details to Stripe for verification. <a href="%1$s" target="_blank">Sign up</a> for a Stripe account, and <a href="%2$s" target="_blank">get your Stripe account keys</a>.', 'woocommerce-gateway-stripe' ), 'https://dashboard.stripe.com/register', 'https://dashboard.stripe.com/account/apikeys' ); |
|
90 | + $this->method_description = sprintf(__('Stripe works by adding payment fields on the checkout and then sending the details to Stripe for verification. <a href="%1$s" target="_blank">Sign up</a> for a Stripe account, and <a href="%2$s" target="_blank">get your Stripe account keys</a>.', 'woocommerce-gateway-stripe'), 'https://dashboard.stripe.com/register', 'https://dashboard.stripe.com/account/apikeys'); |
|
91 | 91 | $this->has_fields = true; |
92 | 92 | $this->supports = array( |
93 | 93 | 'products', |
@@ -114,36 +114,36 @@ discard block |
||
114 | 114 | $this->init_settings(); |
115 | 115 | |
116 | 116 | // Get setting values. |
117 | - $this->title = $this->get_option( 'title' ); |
|
118 | - $this->description = $this->get_option( 'description' ); |
|
119 | - $this->enabled = $this->get_option( 'enabled' ); |
|
120 | - $this->testmode = 'yes' === $this->get_option( 'testmode' ); |
|
121 | - $this->inline_cc_form = 'yes' === $this->get_option( 'inline_cc_form' ); |
|
122 | - $this->capture = 'yes' === $this->get_option( 'capture', 'yes' ); |
|
123 | - $this->statement_descriptor = WC_Stripe_Helper::clean_statement_descriptor( $this->get_option( 'statement_descriptor' ) ); |
|
124 | - $this->saved_cards = 'yes' === $this->get_option( 'saved_cards' ); |
|
125 | - $this->secret_key = $this->testmode ? $this->get_option( 'test_secret_key' ) : $this->get_option( 'secret_key' ); |
|
126 | - $this->publishable_key = $this->testmode ? $this->get_option( 'test_publishable_key' ) : $this->get_option( 'publishable_key' ); |
|
127 | - $this->payment_request = 'yes' === $this->get_option( 'payment_request', 'yes' ); |
|
128 | - |
|
129 | - WC_Stripe_API::set_secret_key( $this->secret_key ); |
|
117 | + $this->title = $this->get_option('title'); |
|
118 | + $this->description = $this->get_option('description'); |
|
119 | + $this->enabled = $this->get_option('enabled'); |
|
120 | + $this->testmode = 'yes' === $this->get_option('testmode'); |
|
121 | + $this->inline_cc_form = 'yes' === $this->get_option('inline_cc_form'); |
|
122 | + $this->capture = 'yes' === $this->get_option('capture', 'yes'); |
|
123 | + $this->statement_descriptor = WC_Stripe_Helper::clean_statement_descriptor($this->get_option('statement_descriptor')); |
|
124 | + $this->saved_cards = 'yes' === $this->get_option('saved_cards'); |
|
125 | + $this->secret_key = $this->testmode ? $this->get_option('test_secret_key') : $this->get_option('secret_key'); |
|
126 | + $this->publishable_key = $this->testmode ? $this->get_option('test_publishable_key') : $this->get_option('publishable_key'); |
|
127 | + $this->payment_request = 'yes' === $this->get_option('payment_request', 'yes'); |
|
128 | + |
|
129 | + WC_Stripe_API::set_secret_key($this->secret_key); |
|
130 | 130 | |
131 | 131 | // Hooks. |
132 | - add_action( 'wp_enqueue_scripts', array( $this, 'payment_scripts' ) ); |
|
133 | - add_action( 'admin_enqueue_scripts', array( $this, 'admin_scripts' ) ); |
|
134 | - add_action( 'woocommerce_update_options_payment_gateways_' . $this->id, array( $this, 'process_admin_options' ) ); |
|
135 | - add_action( 'woocommerce_admin_order_totals_after_total', array( $this, 'display_order_fee' ) ); |
|
136 | - add_action( 'woocommerce_admin_order_totals_after_total', array( $this, 'display_order_payout' ), 20 ); |
|
137 | - add_action( 'woocommerce_customer_save_address', array( $this, 'show_update_card_notice' ), 10, 2 ); |
|
138 | - add_filter( 'woocommerce_available_payment_gateways', array( $this, 'prepare_order_pay_page' ) ); |
|
139 | - add_action( 'woocommerce_account_view-order_endpoint', array( $this, 'check_intent_status_on_order_page' ), 1 ); |
|
140 | - add_filter( 'woocommerce_payment_successful_result', array( $this, 'modify_successful_payment_result' ), 99999, 2 ); |
|
141 | - add_action( 'set_logged_in_cookie', array( $this, 'set_cookie_on_current_request' ) ); |
|
142 | - |
|
143 | - if ( WC_Stripe_Helper::is_pre_orders_exists() ) { |
|
132 | + add_action('wp_enqueue_scripts', array($this, 'payment_scripts')); |
|
133 | + add_action('admin_enqueue_scripts', array($this, 'admin_scripts')); |
|
134 | + add_action('woocommerce_update_options_payment_gateways_' . $this->id, array($this, 'process_admin_options')); |
|
135 | + add_action('woocommerce_admin_order_totals_after_total', array($this, 'display_order_fee')); |
|
136 | + add_action('woocommerce_admin_order_totals_after_total', array($this, 'display_order_payout'), 20); |
|
137 | + add_action('woocommerce_customer_save_address', array($this, 'show_update_card_notice'), 10, 2); |
|
138 | + add_filter('woocommerce_available_payment_gateways', array($this, 'prepare_order_pay_page')); |
|
139 | + add_action('woocommerce_account_view-order_endpoint', array($this, 'check_intent_status_on_order_page'), 1); |
|
140 | + add_filter('woocommerce_payment_successful_result', array($this, 'modify_successful_payment_result'), 99999, 2); |
|
141 | + add_action('set_logged_in_cookie', array($this, 'set_cookie_on_current_request')); |
|
142 | + |
|
143 | + if (WC_Stripe_Helper::is_pre_orders_exists()) { |
|
144 | 144 | $this->pre_orders = new WC_Stripe_Pre_Orders_Compat(); |
145 | 145 | |
146 | - add_action( 'wc_pre_orders_process_pre_order_completion_payment_' . $this->id, array( $this->pre_orders, 'process_pre_order_release_payment' ) ); |
|
146 | + add_action('wc_pre_orders_process_pre_order_completion_payment_' . $this->id, array($this->pre_orders, 'process_pre_order_release_payment')); |
|
147 | 147 | } |
148 | 148 | } |
149 | 149 | |
@@ -154,7 +154,7 @@ discard block |
||
154 | 154 | * @return bool |
155 | 155 | */ |
156 | 156 | public function are_keys_set() { |
157 | - if ( empty( $this->secret_key ) || empty( $this->publishable_key ) ) { |
|
157 | + if (empty($this->secret_key) || empty($this->publishable_key)) { |
|
158 | 158 | return false; |
159 | 159 | } |
160 | 160 | |
@@ -167,7 +167,7 @@ discard block |
||
167 | 167 | * @since 4.0.2 |
168 | 168 | */ |
169 | 169 | public function is_available() { |
170 | - if ( is_add_payment_method_page() && ! $this->saved_cards ) { |
|
170 | + if (is_add_payment_method_page() && ! $this->saved_cards) { |
|
171 | 171 | return false; |
172 | 172 | } |
173 | 173 | |
@@ -181,13 +181,13 @@ discard block |
||
181 | 181 | * @param int $user_id The ID of the current user. |
182 | 182 | * @param string $load_address The address to load. |
183 | 183 | */ |
184 | - public function show_update_card_notice( $user_id, $load_address ) { |
|
185 | - if ( ! $this->saved_cards || ! WC_Stripe_Payment_Tokens::customer_has_saved_methods( $user_id ) || 'billing' !== $load_address ) { |
|
184 | + public function show_update_card_notice($user_id, $load_address) { |
|
185 | + if ( ! $this->saved_cards || ! WC_Stripe_Payment_Tokens::customer_has_saved_methods($user_id) || 'billing' !== $load_address) { |
|
186 | 186 | return; |
187 | 187 | } |
188 | 188 | |
189 | 189 | /* translators: 1) Opening anchor tag 2) closing anchor tag */ |
190 | - wc_add_notice( sprintf( __( 'If your billing address has been changed for saved payment methods, be sure to remove any %1$ssaved payment methods%2$s on file and re-add them.', 'woocommerce-gateway-stripe' ), '<a href="' . esc_url( wc_get_endpoint_url( 'payment-methods' ) ) . '" class="wc-stripe-update-card-notice" style="text-decoration:underline;">', '</a>' ), 'notice' ); |
|
190 | + wc_add_notice(sprintf(__('If your billing address has been changed for saved payment methods, be sure to remove any %1$ssaved payment methods%2$s on file and re-add them.', 'woocommerce-gateway-stripe'), '<a href="' . esc_url(wc_get_endpoint_url('payment-methods')) . '" class="wc-stripe-update-card-notice" style="text-decoration:underline;">', '</a>'), 'notice'); |
|
191 | 191 | } |
192 | 192 | |
193 | 193 | /** |
@@ -202,24 +202,24 @@ discard block |
||
202 | 202 | |
203 | 203 | $icons_str = ''; |
204 | 204 | |
205 | - $icons_str .= isset( $icons['visa'] ) ? $icons['visa'] : ''; |
|
206 | - $icons_str .= isset( $icons['amex'] ) ? $icons['amex'] : ''; |
|
207 | - $icons_str .= isset( $icons['mastercard'] ) ? $icons['mastercard'] : ''; |
|
205 | + $icons_str .= isset($icons['visa']) ? $icons['visa'] : ''; |
|
206 | + $icons_str .= isset($icons['amex']) ? $icons['amex'] : ''; |
|
207 | + $icons_str .= isset($icons['mastercard']) ? $icons['mastercard'] : ''; |
|
208 | 208 | |
209 | - if ( 'USD' === get_woocommerce_currency() ) { |
|
210 | - $icons_str .= isset( $icons['discover'] ) ? $icons['discover'] : ''; |
|
211 | - $icons_str .= isset( $icons['jcb'] ) ? $icons['jcb'] : ''; |
|
212 | - $icons_str .= isset( $icons['diners'] ) ? $icons['diners'] : ''; |
|
209 | + if ('USD' === get_woocommerce_currency()) { |
|
210 | + $icons_str .= isset($icons['discover']) ? $icons['discover'] : ''; |
|
211 | + $icons_str .= isset($icons['jcb']) ? $icons['jcb'] : ''; |
|
212 | + $icons_str .= isset($icons['diners']) ? $icons['diners'] : ''; |
|
213 | 213 | } |
214 | 214 | |
215 | - return apply_filters( 'woocommerce_gateway_icon', $icons_str, $this->id ); |
|
215 | + return apply_filters('woocommerce_gateway_icon', $icons_str, $this->id); |
|
216 | 216 | } |
217 | 217 | |
218 | 218 | /** |
219 | 219 | * Initialise Gateway Settings Form Fields |
220 | 220 | */ |
221 | 221 | public function init_form_fields() { |
222 | - $this->form_fields = require( dirname( __FILE__ ) . '/admin/stripe-settings.php' ); |
|
222 | + $this->form_fields = require(dirname(__FILE__) . '/admin/stripe-settings.php'); |
|
223 | 223 | } |
224 | 224 | |
225 | 225 | /** |
@@ -227,34 +227,34 @@ discard block |
||
227 | 227 | */ |
228 | 228 | public function payment_fields() { |
229 | 229 | $user = wp_get_current_user(); |
230 | - $display_tokenization = $this->supports( 'tokenization' ) && is_checkout() && $this->saved_cards; |
|
230 | + $display_tokenization = $this->supports('tokenization') && is_checkout() && $this->saved_cards; |
|
231 | 231 | $total = WC()->cart->total; |
232 | 232 | $user_email = ''; |
233 | 233 | $description = $this->get_description(); |
234 | - $description = ! empty( $description ) ? $description : ''; |
|
234 | + $description = ! empty($description) ? $description : ''; |
|
235 | 235 | $firstname = ''; |
236 | 236 | $lastname = ''; |
237 | 237 | |
238 | 238 | // If paying from order, we need to get total from order not cart. |
239 | - if ( isset( $_GET['pay_for_order'] ) && ! empty( $_GET['key'] ) ) { // wpcs: csrf ok. |
|
240 | - $order = wc_get_order( wc_get_order_id_by_order_key( wc_clean( $_GET['key'] ) ) ); // wpcs: csrf ok, sanitization ok. |
|
239 | + if (isset($_GET['pay_for_order']) && ! empty($_GET['key'])) { // wpcs: csrf ok. |
|
240 | + $order = wc_get_order(wc_get_order_id_by_order_key(wc_clean($_GET['key']))); // wpcs: csrf ok, sanitization ok. |
|
241 | 241 | $total = $order->get_total(); |
242 | - $user_email = WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $order->billing_email : $order->get_billing_email(); |
|
242 | + $user_email = WC_Stripe_Helper::is_wc_lt('3.0') ? $order->billing_email : $order->get_billing_email(); |
|
243 | 243 | } else { |
244 | - if ( $user->ID ) { |
|
245 | - $user_email = get_user_meta( $user->ID, 'billing_email', true ); |
|
244 | + if ($user->ID) { |
|
245 | + $user_email = get_user_meta($user->ID, 'billing_email', true); |
|
246 | 246 | $user_email = $user_email ? $user_email : $user->user_email; |
247 | 247 | } |
248 | 248 | } |
249 | 249 | |
250 | - if ( is_add_payment_method_page() ) { |
|
251 | - $pay_button_text = __( 'Add Card', 'woocommerce-gateway-stripe' ); |
|
250 | + if (is_add_payment_method_page()) { |
|
251 | + $pay_button_text = __('Add Card', 'woocommerce-gateway-stripe'); |
|
252 | 252 | $total = ''; |
253 | 253 | $firstname = $user->user_firstname; |
254 | 254 | $lastname = $user->user_lastname; |
255 | 255 | |
256 | - } elseif ( function_exists( 'wcs_order_contains_subscription' ) && isset( $_GET['change_payment_method'] ) ) { // wpcs: csrf ok. |
|
257 | - $pay_button_text = __( 'Change Payment Method', 'woocommerce-gateway-stripe' ); |
|
256 | + } elseif (function_exists('wcs_order_contains_subscription') && isset($_GET['change_payment_method'])) { // wpcs: csrf ok. |
|
257 | + $pay_button_text = __('Change Payment Method', 'woocommerce-gateway-stripe'); |
|
258 | 258 | $total = ''; |
259 | 259 | } else { |
260 | 260 | $pay_button_text = ''; |
@@ -264,37 +264,37 @@ discard block |
||
264 | 264 | |
265 | 265 | echo '<div |
266 | 266 | id="stripe-payment-data" |
267 | - data-panel-label="' . esc_attr( $pay_button_text ) . '" |
|
268 | - data-email="' . esc_attr( $user_email ) . '" |
|
269 | - data-amount="' . esc_attr( WC_Stripe_Helper::get_stripe_amount( $total ) ) . '" |
|
270 | - data-name="' . esc_attr( $this->statement_descriptor ) . '" |
|
271 | - data-full-name="' . esc_attr( $firstname . ' ' . $lastname ) . '" |
|
272 | - data-currency="' . esc_attr( strtolower( get_woocommerce_currency() ) ) . '" |
|
273 | - data-allow-remember-me="' . esc_attr( apply_filters( 'wc_stripe_allow_remember_me', true ) ? 'true' : 'false' ) . '" |
|
267 | + data-panel-label="' . esc_attr($pay_button_text) . '" |
|
268 | + data-email="' . esc_attr($user_email) . '" |
|
269 | + data-amount="' . esc_attr(WC_Stripe_Helper::get_stripe_amount($total)) . '" |
|
270 | + data-name="' . esc_attr($this->statement_descriptor) . '" |
|
271 | + data-full-name="' . esc_attr($firstname . ' ' . $lastname) . '" |
|
272 | + data-currency="' . esc_attr(strtolower(get_woocommerce_currency())) . '" |
|
273 | + data-allow-remember-me="' . esc_attr(apply_filters('wc_stripe_allow_remember_me', true) ? 'true' : 'false') . '" |
|
274 | 274 | >'; |
275 | 275 | |
276 | - if ( $this->testmode ) { |
|
276 | + if ($this->testmode) { |
|
277 | 277 | /* translators: link to Stripe testing page */ |
278 | - $description .= ' ' . sprintf( __( 'TEST MODE ENABLED. In test mode, you can use the card number 4242424242424242 with any CVC and a valid expiration date or check the <a href="%s" target="_blank">Testing Stripe documentation</a> for more card numbers.', 'woocommerce-gateway-stripe' ), 'https://stripe.com/docs/testing' ); |
|
278 | + $description .= ' ' . sprintf(__('TEST MODE ENABLED. In test mode, you can use the card number 4242424242424242 with any CVC and a valid expiration date or check the <a href="%s" target="_blank">Testing Stripe documentation</a> for more card numbers.', 'woocommerce-gateway-stripe'), 'https://stripe.com/docs/testing'); |
|
279 | 279 | } |
280 | 280 | |
281 | - $description = trim( $description ); |
|
281 | + $description = trim($description); |
|
282 | 282 | |
283 | - echo apply_filters( 'wc_stripe_description', wpautop( wp_kses_post( $description ) ), $this->id ); // wpcs: xss ok. |
|
283 | + echo apply_filters('wc_stripe_description', wpautop(wp_kses_post($description)), $this->id); // wpcs: xss ok. |
|
284 | 284 | |
285 | - if ( $display_tokenization ) { |
|
285 | + if ($display_tokenization) { |
|
286 | 286 | $this->tokenization_script(); |
287 | 287 | $this->saved_payment_methods(); |
288 | 288 | } |
289 | 289 | |
290 | 290 | $this->elements_form(); |
291 | 291 | |
292 | - if ( apply_filters( 'wc_stripe_display_save_payment_method_checkbox', $display_tokenization ) && ! is_add_payment_method_page() && ! isset( $_GET['change_payment_method'] ) ) { // wpcs: csrf ok. |
|
292 | + if (apply_filters('wc_stripe_display_save_payment_method_checkbox', $display_tokenization) && ! is_add_payment_method_page() && ! isset($_GET['change_payment_method'])) { // wpcs: csrf ok. |
|
293 | 293 | |
294 | 294 | $this->save_payment_method_checkbox(); |
295 | 295 | } |
296 | 296 | |
297 | - do_action( 'wc_stripe_cards_payment_fields', $this->id ); |
|
297 | + do_action('wc_stripe_cards_payment_fields', $this->id); |
|
298 | 298 | |
299 | 299 | echo '</div>'; |
300 | 300 | |
@@ -309,12 +309,12 @@ discard block |
||
309 | 309 | */ |
310 | 310 | public function elements_form() { |
311 | 311 | ?> |
312 | - <fieldset id="wc-<?php echo esc_attr( $this->id ); ?>-cc-form" class="wc-credit-card-form wc-payment-form" style="background:transparent;"> |
|
313 | - <?php do_action( 'woocommerce_credit_card_form_start', $this->id ); ?> |
|
312 | + <fieldset id="wc-<?php echo esc_attr($this->id); ?>-cc-form" class="wc-credit-card-form wc-payment-form" style="background:transparent;"> |
|
313 | + <?php do_action('woocommerce_credit_card_form_start', $this->id); ?> |
|
314 | 314 | |
315 | - <?php if ( $this->inline_cc_form ) { ?> |
|
315 | + <?php if ($this->inline_cc_form) { ?> |
|
316 | 316 | <label for="card-element"> |
317 | - <?php esc_html_e( 'Credit or debit card', 'woocommerce-gateway-stripe' ); ?> |
|
317 | + <?php esc_html_e('Credit or debit card', 'woocommerce-gateway-stripe'); ?> |
|
318 | 318 | </label> |
319 | 319 | |
320 | 320 | <div id="stripe-card-element" class="wc-stripe-elements-field"> |
@@ -322,7 +322,7 @@ discard block |
||
322 | 322 | </div> |
323 | 323 | <?php } else { ?> |
324 | 324 | <div class="form-row form-row-wide"> |
325 | - <label for="stripe-card-element"><?php esc_html_e( 'Card Number', 'woocommerce-gateway-stripe' ); ?> <span class="required">*</span></label> |
|
325 | + <label for="stripe-card-element"><?php esc_html_e('Card Number', 'woocommerce-gateway-stripe'); ?> <span class="required">*</span></label> |
|
326 | 326 | <div class="stripe-card-group"> |
327 | 327 | <div id="stripe-card-element" class="wc-stripe-elements-field"> |
328 | 328 | <!-- a Stripe Element will be inserted here. --> |
@@ -333,7 +333,7 @@ discard block |
||
333 | 333 | </div> |
334 | 334 | |
335 | 335 | <div class="form-row form-row-first"> |
336 | - <label for="stripe-exp-element"><?php esc_html_e( 'Expiry Date', 'woocommerce-gateway-stripe' ); ?> <span class="required">*</span></label> |
|
336 | + <label for="stripe-exp-element"><?php esc_html_e('Expiry Date', 'woocommerce-gateway-stripe'); ?> <span class="required">*</span></label> |
|
337 | 337 | |
338 | 338 | <div id="stripe-exp-element" class="wc-stripe-elements-field"> |
339 | 339 | <!-- a Stripe Element will be inserted here. --> |
@@ -341,7 +341,7 @@ discard block |
||
341 | 341 | </div> |
342 | 342 | |
343 | 343 | <div class="form-row form-row-last"> |
344 | - <label for="stripe-cvc-element"><?php esc_html_e( 'Card Code (CVC)', 'woocommerce-gateway-stripe' ); ?> <span class="required">*</span></label> |
|
344 | + <label for="stripe-cvc-element"><?php esc_html_e('Card Code (CVC)', 'woocommerce-gateway-stripe'); ?> <span class="required">*</span></label> |
|
345 | 345 | <div id="stripe-cvc-element" class="wc-stripe-elements-field"> |
346 | 346 | <!-- a Stripe Element will be inserted here. --> |
347 | 347 | </div> |
@@ -352,7 +352,7 @@ discard block |
||
352 | 352 | <!-- Used to display form errors --> |
353 | 353 | <div class="stripe-source-errors" role="alert"></div> |
354 | 354 | <br /> |
355 | - <?php do_action( 'woocommerce_credit_card_form_end', $this->id ); ?> |
|
355 | + <?php do_action('woocommerce_credit_card_form_end', $this->id); ?> |
|
356 | 356 | <div class="clear"></div> |
357 | 357 | </fieldset> |
358 | 358 | <?php |
@@ -365,13 +365,13 @@ discard block |
||
365 | 365 | * @version 3.1.0 |
366 | 366 | */ |
367 | 367 | public function admin_scripts() { |
368 | - if ( 'woocommerce_page_wc-settings' !== get_current_screen()->id ) { |
|
368 | + if ('woocommerce_page_wc-settings' !== get_current_screen()->id) { |
|
369 | 369 | return; |
370 | 370 | } |
371 | 371 | |
372 | - $suffix = defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG ? '' : '.min'; |
|
372 | + $suffix = defined('SCRIPT_DEBUG') && SCRIPT_DEBUG ? '' : '.min'; |
|
373 | 373 | |
374 | - wp_enqueue_script( 'woocommerce_stripe_admin', plugins_url( 'assets/js/stripe-admin' . $suffix . '.js', WC_STRIPE_MAIN_FILE ), array(), WC_STRIPE_VERSION, true ); |
|
374 | + wp_enqueue_script('woocommerce_stripe_admin', plugins_url('assets/js/stripe-admin' . $suffix . '.js', WC_STRIPE_MAIN_FILE), array(), WC_STRIPE_VERSION, true); |
|
375 | 375 | } |
376 | 376 | |
377 | 377 | /** |
@@ -383,97 +383,97 @@ discard block |
||
383 | 383 | * @version 4.0.0 |
384 | 384 | */ |
385 | 385 | public function payment_scripts() { |
386 | - if ( ! is_product() && ! is_cart() && ! is_checkout() && ! isset( $_GET['pay_for_order'] ) && ! is_add_payment_method_page() && ! isset( $_GET['change_payment_method'] ) || ( is_order_received_page() ) ) { // wpcs: csrf ok. |
|
386 | + if ( ! is_product() && ! is_cart() && ! is_checkout() && ! isset($_GET['pay_for_order']) && ! is_add_payment_method_page() && ! isset($_GET['change_payment_method']) || (is_order_received_page())) { // wpcs: csrf ok. |
|
387 | 387 | return; |
388 | 388 | } |
389 | 389 | |
390 | 390 | // If Stripe is not enabled bail. |
391 | - if ( 'no' === $this->enabled ) { |
|
391 | + if ('no' === $this->enabled) { |
|
392 | 392 | return; |
393 | 393 | } |
394 | 394 | |
395 | 395 | // If keys are not set bail. |
396 | - if ( ! $this->are_keys_set() ) { |
|
397 | - WC_Stripe_Logger::log( 'Keys are not set correctly.' ); |
|
396 | + if ( ! $this->are_keys_set()) { |
|
397 | + WC_Stripe_Logger::log('Keys are not set correctly.'); |
|
398 | 398 | return; |
399 | 399 | } |
400 | 400 | |
401 | 401 | // If no SSL bail. |
402 | - if ( ! $this->testmode && ! is_ssl() ) { |
|
403 | - WC_Stripe_Logger::log( 'Stripe live mode requires SSL.' ); |
|
402 | + if ( ! $this->testmode && ! is_ssl()) { |
|
403 | + WC_Stripe_Logger::log('Stripe live mode requires SSL.'); |
|
404 | 404 | return; |
405 | 405 | } |
406 | 406 | |
407 | 407 | $current_theme = wp_get_theme(); |
408 | 408 | |
409 | - $suffix = defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG ? '' : '.min'; |
|
409 | + $suffix = defined('SCRIPT_DEBUG') && SCRIPT_DEBUG ? '' : '.min'; |
|
410 | 410 | |
411 | - wp_register_style( 'stripe_styles', plugins_url( 'assets/css/stripe-styles.css', WC_STRIPE_MAIN_FILE ), array(), WC_STRIPE_VERSION ); |
|
412 | - wp_enqueue_style( 'stripe_styles' ); |
|
411 | + wp_register_style('stripe_styles', plugins_url('assets/css/stripe-styles.css', WC_STRIPE_MAIN_FILE), array(), WC_STRIPE_VERSION); |
|
412 | + wp_enqueue_style('stripe_styles'); |
|
413 | 413 | |
414 | - wp_register_script( 'stripe', 'https://js.stripe.com/v3/', '', '3.0', true ); |
|
415 | - wp_register_script( 'woocommerce_stripe', plugins_url( 'assets/js/stripe' . $suffix . '.js', WC_STRIPE_MAIN_FILE ), array( 'jquery-payment', 'stripe' ), WC_STRIPE_VERSION, true ); |
|
414 | + wp_register_script('stripe', 'https://js.stripe.com/v3/', '', '3.0', true); |
|
415 | + wp_register_script('woocommerce_stripe', plugins_url('assets/js/stripe' . $suffix . '.js', WC_STRIPE_MAIN_FILE), array('jquery-payment', 'stripe'), WC_STRIPE_VERSION, true); |
|
416 | 416 | |
417 | 417 | $stripe_params = array( |
418 | 418 | 'key' => $this->publishable_key, |
419 | - 'i18n_terms' => __( 'Please accept the terms and conditions first', 'woocommerce-gateway-stripe' ), |
|
420 | - 'i18n_required_fields' => __( 'Please fill in required checkout fields first', 'woocommerce-gateway-stripe' ), |
|
419 | + 'i18n_terms' => __('Please accept the terms and conditions first', 'woocommerce-gateway-stripe'), |
|
420 | + 'i18n_required_fields' => __('Please fill in required checkout fields first', 'woocommerce-gateway-stripe'), |
|
421 | 421 | ); |
422 | 422 | |
423 | 423 | // If we're on the pay page we need to pass stripe.js the address of the order. |
424 | - if ( isset( $_GET['pay_for_order'] ) && 'true' === $_GET['pay_for_order'] ) { // wpcs: csrf ok. |
|
425 | - $order_id = wc_get_order_id_by_order_key( urldecode( $_GET['key'] ) ); // wpcs: csrf ok, sanitization ok, xss ok. |
|
426 | - $order = wc_get_order( $order_id ); |
|
427 | - |
|
428 | - if ( is_a( $order, 'WC_Order' ) ) { |
|
429 | - $stripe_params['billing_first_name'] = WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $order->billing_first_name : $order->get_billing_first_name(); |
|
430 | - $stripe_params['billing_last_name'] = WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $order->billing_last_name : $order->get_billing_last_name(); |
|
431 | - $stripe_params['billing_address_1'] = WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $order->billing_address_1 : $order->get_billing_address_1(); |
|
432 | - $stripe_params['billing_address_2'] = WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $order->billing_address_2 : $order->get_billing_address_2(); |
|
433 | - $stripe_params['billing_state'] = WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $order->billing_state : $order->get_billing_state(); |
|
434 | - $stripe_params['billing_city'] = WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $order->billing_city : $order->get_billing_city(); |
|
435 | - $stripe_params['billing_postcode'] = WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $order->billing_postcode : $order->get_billing_postcode(); |
|
436 | - $stripe_params['billing_country'] = WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $order->billing_country : $order->get_billing_country(); |
|
424 | + if (isset($_GET['pay_for_order']) && 'true' === $_GET['pay_for_order']) { // wpcs: csrf ok. |
|
425 | + $order_id = wc_get_order_id_by_order_key(urldecode($_GET['key'])); // wpcs: csrf ok, sanitization ok, xss ok. |
|
426 | + $order = wc_get_order($order_id); |
|
427 | + |
|
428 | + if (is_a($order, 'WC_Order')) { |
|
429 | + $stripe_params['billing_first_name'] = WC_Stripe_Helper::is_wc_lt('3.0') ? $order->billing_first_name : $order->get_billing_first_name(); |
|
430 | + $stripe_params['billing_last_name'] = WC_Stripe_Helper::is_wc_lt('3.0') ? $order->billing_last_name : $order->get_billing_last_name(); |
|
431 | + $stripe_params['billing_address_1'] = WC_Stripe_Helper::is_wc_lt('3.0') ? $order->billing_address_1 : $order->get_billing_address_1(); |
|
432 | + $stripe_params['billing_address_2'] = WC_Stripe_Helper::is_wc_lt('3.0') ? $order->billing_address_2 : $order->get_billing_address_2(); |
|
433 | + $stripe_params['billing_state'] = WC_Stripe_Helper::is_wc_lt('3.0') ? $order->billing_state : $order->get_billing_state(); |
|
434 | + $stripe_params['billing_city'] = WC_Stripe_Helper::is_wc_lt('3.0') ? $order->billing_city : $order->get_billing_city(); |
|
435 | + $stripe_params['billing_postcode'] = WC_Stripe_Helper::is_wc_lt('3.0') ? $order->billing_postcode : $order->get_billing_postcode(); |
|
436 | + $stripe_params['billing_country'] = WC_Stripe_Helper::is_wc_lt('3.0') ? $order->billing_country : $order->get_billing_country(); |
|
437 | 437 | } |
438 | 438 | } |
439 | 439 | |
440 | 440 | $sepa_elements_options = apply_filters( |
441 | 441 | 'wc_stripe_sepa_elements_options', |
442 | 442 | array( |
443 | - 'supportedCountries' => array( 'SEPA' ), |
|
443 | + 'supportedCountries' => array('SEPA'), |
|
444 | 444 | 'placeholderCountry' => WC()->countries->get_base_country(), |
445 | - 'style' => array( 'base' => array( 'fontSize' => '15px' ) ), |
|
445 | + 'style' => array('base' => array('fontSize' => '15px')), |
|
446 | 446 | ) |
447 | 447 | ); |
448 | 448 | |
449 | - $stripe_params['no_prepaid_card_msg'] = __( 'Sorry, we\'re not accepting prepaid cards at this time. Your credit card has not been charged. Please try with alternative payment method.', 'woocommerce-gateway-stripe' ); |
|
450 | - $stripe_params['no_sepa_owner_msg'] = __( 'Please enter your IBAN account name.', 'woocommerce-gateway-stripe' ); |
|
451 | - $stripe_params['no_sepa_iban_msg'] = __( 'Please enter your IBAN account number.', 'woocommerce-gateway-stripe' ); |
|
452 | - $stripe_params['payment_intent_error'] = __( 'We couldn\'t initiate the payment. Please try again.', 'woocommerce-gateway-stripe' ); |
|
453 | - $stripe_params['sepa_mandate_notification'] = apply_filters( 'wc_stripe_sepa_mandate_notification', 'email' ); |
|
454 | - $stripe_params['allow_prepaid_card'] = apply_filters( 'wc_stripe_allow_prepaid_card', true ) ? 'yes' : 'no'; |
|
449 | + $stripe_params['no_prepaid_card_msg'] = __('Sorry, we\'re not accepting prepaid cards at this time. Your credit card has not been charged. Please try with alternative payment method.', 'woocommerce-gateway-stripe'); |
|
450 | + $stripe_params['no_sepa_owner_msg'] = __('Please enter your IBAN account name.', 'woocommerce-gateway-stripe'); |
|
451 | + $stripe_params['no_sepa_iban_msg'] = __('Please enter your IBAN account number.', 'woocommerce-gateway-stripe'); |
|
452 | + $stripe_params['payment_intent_error'] = __('We couldn\'t initiate the payment. Please try again.', 'woocommerce-gateway-stripe'); |
|
453 | + $stripe_params['sepa_mandate_notification'] = apply_filters('wc_stripe_sepa_mandate_notification', 'email'); |
|
454 | + $stripe_params['allow_prepaid_card'] = apply_filters('wc_stripe_allow_prepaid_card', true) ? 'yes' : 'no'; |
|
455 | 455 | $stripe_params['inline_cc_form'] = $this->inline_cc_form ? 'yes' : 'no'; |
456 | - $stripe_params['is_checkout'] = ( is_checkout() && empty( $_GET['pay_for_order'] ) ) ? 'yes' : 'no'; // wpcs: csrf ok. |
|
456 | + $stripe_params['is_checkout'] = (is_checkout() && empty($_GET['pay_for_order'])) ? 'yes' : 'no'; // wpcs: csrf ok. |
|
457 | 457 | $stripe_params['return_url'] = $this->get_stripe_return_url(); |
458 | - $stripe_params['ajaxurl'] = WC_AJAX::get_endpoint( '%%endpoint%%' ); |
|
459 | - $stripe_params['stripe_nonce'] = wp_create_nonce( '_wc_stripe_nonce' ); |
|
458 | + $stripe_params['ajaxurl'] = WC_AJAX::get_endpoint('%%endpoint%%'); |
|
459 | + $stripe_params['stripe_nonce'] = wp_create_nonce('_wc_stripe_nonce'); |
|
460 | 460 | $stripe_params['statement_descriptor'] = $this->statement_descriptor; |
461 | - $stripe_params['elements_options'] = apply_filters( 'wc_stripe_elements_options', array() ); |
|
461 | + $stripe_params['elements_options'] = apply_filters('wc_stripe_elements_options', array()); |
|
462 | 462 | $stripe_params['sepa_elements_options'] = $sepa_elements_options; |
463 | - $stripe_params['invalid_owner_name'] = __( 'Billing First Name and Last Name are required.', 'woocommerce-gateway-stripe' ); |
|
464 | - $stripe_params['is_change_payment_page'] = isset( $_GET['change_payment_method'] ) ? 'yes' : 'no'; // wpcs: csrf ok. |
|
465 | - $stripe_params['is_add_payment_page'] = is_wc_endpoint_url( 'add-payment-method' ) ? 'yes' : 'no'; |
|
466 | - $stripe_params['is_pay_for_order_page'] = is_wc_endpoint_url( 'order-pay' ) ? 'yes' : 'no'; |
|
467 | - $stripe_params['elements_styling'] = apply_filters( 'wc_stripe_elements_styling', false ); |
|
468 | - $stripe_params['elements_classes'] = apply_filters( 'wc_stripe_elements_classes', false ); |
|
463 | + $stripe_params['invalid_owner_name'] = __('Billing First Name and Last Name are required.', 'woocommerce-gateway-stripe'); |
|
464 | + $stripe_params['is_change_payment_page'] = isset($_GET['change_payment_method']) ? 'yes' : 'no'; // wpcs: csrf ok. |
|
465 | + $stripe_params['is_add_payment_page'] = is_wc_endpoint_url('add-payment-method') ? 'yes' : 'no'; |
|
466 | + $stripe_params['is_pay_for_order_page'] = is_wc_endpoint_url('order-pay') ? 'yes' : 'no'; |
|
467 | + $stripe_params['elements_styling'] = apply_filters('wc_stripe_elements_styling', false); |
|
468 | + $stripe_params['elements_classes'] = apply_filters('wc_stripe_elements_classes', false); |
|
469 | 469 | |
470 | 470 | // Merge localized messages to be use in JS. |
471 | - $stripe_params = array_merge( $stripe_params, WC_Stripe_Helper::get_localized_messages() ); |
|
471 | + $stripe_params = array_merge($stripe_params, WC_Stripe_Helper::get_localized_messages()); |
|
472 | 472 | |
473 | - wp_localize_script( 'woocommerce_stripe', 'wc_stripe_params', apply_filters( 'wc_stripe_params', $stripe_params ) ); |
|
473 | + wp_localize_script('woocommerce_stripe', 'wc_stripe_params', apply_filters('wc_stripe_params', $stripe_params)); |
|
474 | 474 | |
475 | 475 | $this->tokenization_script(); |
476 | - wp_enqueue_script( 'woocommerce_stripe' ); |
|
476 | + wp_enqueue_script('woocommerce_stripe'); |
|
477 | 477 | } |
478 | 478 | |
479 | 479 | /** |
@@ -482,14 +482,14 @@ discard block |
||
482 | 482 | * @since 4.2.0 |
483 | 483 | * @param WC_Order $order The order that is being created. |
484 | 484 | */ |
485 | - public function maybe_create_customer( $order ) { |
|
485 | + public function maybe_create_customer($order) { |
|
486 | 486 | // This comes from the create account checkbox in the checkout page. |
487 | - if ( empty( $_POST['createaccount'] ) ) { // wpcs: csrf ok. |
|
487 | + if (empty($_POST['createaccount'])) { // wpcs: csrf ok. |
|
488 | 488 | return; |
489 | 489 | } |
490 | 490 | |
491 | - $new_customer_id = WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $order->customer_user : $order->get_customer_id(); |
|
492 | - $new_stripe_customer = new WC_Stripe_Customer( $new_customer_id ); |
|
491 | + $new_customer_id = WC_Stripe_Helper::is_wc_lt('3.0') ? $order->customer_user : $order->get_customer_id(); |
|
492 | + $new_stripe_customer = new WC_Stripe_Customer($new_customer_id); |
|
493 | 493 | $new_stripe_customer->create_customer(); |
494 | 494 | } |
495 | 495 | |
@@ -501,14 +501,14 @@ discard block |
||
501 | 501 | * @param object $prepared_source The object with source details. |
502 | 502 | * @throws WC_Stripe_Exception An exception if the card is prepaid, but prepaid cards are not allowed. |
503 | 503 | */ |
504 | - public function maybe_disallow_prepaid_card( $prepared_source ) { |
|
504 | + public function maybe_disallow_prepaid_card($prepared_source) { |
|
505 | 505 | // Check if we don't allow prepaid credit cards. |
506 | - if ( apply_filters( 'wc_stripe_allow_prepaid_card', true ) || ! $this->is_prepaid_card( $prepared_source->source_object ) ) { |
|
506 | + if (apply_filters('wc_stripe_allow_prepaid_card', true) || ! $this->is_prepaid_card($prepared_source->source_object)) { |
|
507 | 507 | return; |
508 | 508 | } |
509 | 509 | |
510 | - $localized_message = __( 'Sorry, we\'re not accepting prepaid cards at this time. Your credit card has not been charged. Please try with alternative payment method.', 'woocommerce-gateway-stripe' ); |
|
511 | - throw new WC_Stripe_Exception( print_r( $prepared_source->source_object, true ), $localized_message ); |
|
510 | + $localized_message = __('Sorry, we\'re not accepting prepaid cards at this time. Your credit card has not been charged. Please try with alternative payment method.', 'woocommerce-gateway-stripe'); |
|
511 | + throw new WC_Stripe_Exception(print_r($prepared_source->source_object, true), $localized_message); |
|
512 | 512 | } |
513 | 513 | |
514 | 514 | /** |
@@ -518,10 +518,10 @@ discard block |
||
518 | 518 | * @param object $prepared_source The source that should be verified. |
519 | 519 | * @throws WC_Stripe_Exception An exception if the source ID is missing. |
520 | 520 | */ |
521 | - public function check_source( $prepared_source ) { |
|
522 | - if ( empty( $prepared_source->source ) ) { |
|
523 | - $localized_message = __( 'Payment processing failed. Please retry.', 'woocommerce-gateway-stripe' ); |
|
524 | - throw new WC_Stripe_Exception( print_r( $prepared_source, true ), $localized_message ); |
|
521 | + public function check_source($prepared_source) { |
|
522 | + if (empty($prepared_source->source)) { |
|
523 | + $localized_message = __('Payment processing failed. Please retry.', 'woocommerce-gateway-stripe'); |
|
524 | + throw new WC_Stripe_Exception(print_r($prepared_source, true), $localized_message); |
|
525 | 525 | } |
526 | 526 | } |
527 | 527 | |
@@ -533,17 +533,17 @@ discard block |
||
533 | 533 | * @param WC_Order $order The order those payment is being processed. |
534 | 534 | * @return bool A flag that indicates that the customer does not exist and should be removed. |
535 | 535 | */ |
536 | - public function maybe_remove_non_existent_customer( $error, $order ) { |
|
537 | - if ( ! $this->is_no_such_customer_error( $error ) ) { |
|
536 | + public function maybe_remove_non_existent_customer($error, $order) { |
|
537 | + if ( ! $this->is_no_such_customer_error($error)) { |
|
538 | 538 | return false; |
539 | 539 | } |
540 | 540 | |
541 | - if ( WC_Stripe_Helper::is_wc_lt( '3.0' ) ) { |
|
542 | - delete_user_meta( $order->customer_user, '_stripe_customer_id' ); |
|
543 | - delete_post_meta( $order->get_id(), '_stripe_customer_id' ); |
|
541 | + if (WC_Stripe_Helper::is_wc_lt('3.0')) { |
|
542 | + delete_user_meta($order->customer_user, '_stripe_customer_id'); |
|
543 | + delete_post_meta($order->get_id(), '_stripe_customer_id'); |
|
544 | 544 | } else { |
545 | - delete_user_meta( $order->get_customer_id(), '_stripe_customer_id' ); |
|
546 | - $order->delete_meta_data( '_stripe_customer_id' ); |
|
545 | + delete_user_meta($order->get_customer_id(), '_stripe_customer_id'); |
|
546 | + $order->delete_meta_data('_stripe_customer_id'); |
|
547 | 547 | $order->save(); |
548 | 548 | } |
549 | 549 | |
@@ -557,7 +557,7 @@ discard block |
||
557 | 557 | * @param WC_Order $order The order to complete. |
558 | 558 | * @return array Redirection data for `process_payment`. |
559 | 559 | */ |
560 | - public function complete_free_order( $order ) { |
|
560 | + public function complete_free_order($order) { |
|
561 | 561 | $order->payment_complete(); |
562 | 562 | |
563 | 563 | // Remove cart. |
@@ -566,7 +566,7 @@ discard block |
||
566 | 566 | // Return thank you page redirect. |
567 | 567 | return array( |
568 | 568 | 'result' => 'success', |
569 | - 'redirect' => $this->get_return_url( $order ), |
|
569 | + 'redirect' => $this->get_return_url($order), |
|
570 | 570 | ); |
571 | 571 | } |
572 | 572 | |
@@ -583,68 +583,68 @@ discard block |
||
583 | 583 | * @throws Exception If payment will not be accepted. |
584 | 584 | * @return array|void |
585 | 585 | */ |
586 | - public function process_payment( $order_id, $retry = true, $force_save_source = false, $previous_error = false ) { |
|
586 | + public function process_payment($order_id, $retry = true, $force_save_source = false, $previous_error = false) { |
|
587 | 587 | try { |
588 | - $order = wc_get_order( $order_id ); |
|
588 | + $order = wc_get_order($order_id); |
|
589 | 589 | |
590 | 590 | // ToDo: `process_pre_order` saves the source to the order for a later payment. |
591 | 591 | // This might not work well with PaymentIntents. |
592 | - if ( $this->maybe_process_pre_orders( $order_id ) ) { |
|
593 | - return $this->pre_orders->process_pre_order( $order_id ); |
|
592 | + if ($this->maybe_process_pre_orders($order_id)) { |
|
593 | + return $this->pre_orders->process_pre_order($order_id); |
|
594 | 594 | } |
595 | 595 | |
596 | - $this->maybe_create_customer( $order ); |
|
596 | + $this->maybe_create_customer($order); |
|
597 | 597 | |
598 | - $prepared_source = $this->prepare_source( get_current_user_id(), $force_save_source ); |
|
598 | + $prepared_source = $this->prepare_source(get_current_user_id(), $force_save_source); |
|
599 | 599 | |
600 | - $this->maybe_disallow_prepaid_card( $prepared_source ); |
|
601 | - $this->check_source( $prepared_source ); |
|
602 | - $this->save_source_to_order( $order, $prepared_source ); |
|
600 | + $this->maybe_disallow_prepaid_card($prepared_source); |
|
601 | + $this->check_source($prepared_source); |
|
602 | + $this->save_source_to_order($order, $prepared_source); |
|
603 | 603 | |
604 | - if ( 0 >= $order->get_total() ) { |
|
605 | - return $this->complete_free_order( $order ); |
|
604 | + if (0 >= $order->get_total()) { |
|
605 | + return $this->complete_free_order($order); |
|
606 | 606 | } |
607 | 607 | |
608 | 608 | // This will throw exception if not valid. |
609 | - $this->validate_minimum_order_amount( $order ); |
|
609 | + $this->validate_minimum_order_amount($order); |
|
610 | 610 | |
611 | - WC_Stripe_Logger::log( "Info: Begin processing payment for order $order_id for the amount of {$order->get_total()}" ); |
|
611 | + WC_Stripe_Logger::log("Info: Begin processing payment for order $order_id for the amount of {$order->get_total()}"); |
|
612 | 612 | |
613 | - $intent = $this->get_intent_from_order( $order ); |
|
614 | - if ( $intent ) { |
|
615 | - $intent = $this->update_existing_intent( $intent, $order, $prepared_source ); |
|
613 | + $intent = $this->get_intent_from_order($order); |
|
614 | + if ($intent) { |
|
615 | + $intent = $this->update_existing_intent($intent, $order, $prepared_source); |
|
616 | 616 | } else { |
617 | - $intent = $this->create_intent( $order, $prepared_source ); |
|
617 | + $intent = $this->create_intent($order, $prepared_source); |
|
618 | 618 | } |
619 | 619 | |
620 | 620 | // Confirm the intent after locking the order to make sure webhooks will not interfere. |
621 | - if ( empty( $intent->error ) ) { |
|
622 | - $this->lock_order_payment( $order, $intent ); |
|
623 | - $intent = $this->confirm_intent( $intent, $order, $prepared_source ); |
|
621 | + if (empty($intent->error)) { |
|
622 | + $this->lock_order_payment($order, $intent); |
|
623 | + $intent = $this->confirm_intent($intent, $order, $prepared_source); |
|
624 | 624 | } |
625 | 625 | |
626 | - if ( ! empty( $intent->error ) ) { |
|
627 | - $this->maybe_remove_non_existent_customer( $intent->error, $order ); |
|
626 | + if ( ! empty($intent->error)) { |
|
627 | + $this->maybe_remove_non_existent_customer($intent->error, $order); |
|
628 | 628 | |
629 | 629 | // We want to retry. |
630 | - if ( $this->is_retryable_error( $intent->error ) ) { |
|
631 | - return $this->retry_after_error( $intent, $order, $retry, $force_save_source, $previous_error ); |
|
630 | + if ($this->is_retryable_error($intent->error)) { |
|
631 | + return $this->retry_after_error($intent, $order, $retry, $force_save_source, $previous_error); |
|
632 | 632 | } |
633 | 633 | |
634 | - $this->unlock_order_payment( $order ); |
|
635 | - $this->throw_localized_message( $intent, $order ); |
|
634 | + $this->unlock_order_payment($order); |
|
635 | + $this->throw_localized_message($intent, $order); |
|
636 | 636 | } |
637 | 637 | |
638 | - if ( ! empty( $intent ) ) { |
|
638 | + if ( ! empty($intent)) { |
|
639 | 639 | // Use the last charge within the intent to proceed. |
640 | - $response = end( $intent->charges->data ); |
|
640 | + $response = end($intent->charges->data); |
|
641 | 641 | |
642 | 642 | // If the intent requires a 3DS flow, redirect to it. |
643 | - if ( 'requires_action' === $intent->status ) { |
|
644 | - $this->unlock_order_payment( $order ); |
|
643 | + if ('requires_action' === $intent->status) { |
|
644 | + $this->unlock_order_payment($order); |
|
645 | 645 | |
646 | - if ( is_wc_endpoint_url( 'order-pay' ) ) { |
|
647 | - $redirect_url = add_query_arg( 'wc-stripe-confirmation', 1, $order->get_checkout_payment_url( false ) ); |
|
646 | + if (is_wc_endpoint_url('order-pay')) { |
|
647 | + $redirect_url = add_query_arg('wc-stripe-confirmation', 1, $order->get_checkout_payment_url(false)); |
|
648 | 648 | |
649 | 649 | return array( |
650 | 650 | 'result' => 'success', |
@@ -659,7 +659,7 @@ discard block |
||
659 | 659 | |
660 | 660 | return array( |
661 | 661 | 'result' => 'success', |
662 | - 'redirect' => $this->get_return_url( $order ), |
|
662 | + 'redirect' => $this->get_return_url($order), |
|
663 | 663 | 'intent_secret' => $intent->client_secret, |
664 | 664 | ); |
665 | 665 | } |
@@ -667,30 +667,30 @@ discard block |
||
667 | 667 | } |
668 | 668 | |
669 | 669 | // Process valid response. |
670 | - $this->process_response( $response, $order ); |
|
670 | + $this->process_response($response, $order); |
|
671 | 671 | |
672 | 672 | // Remove cart. |
673 | - if ( isset( WC()->cart ) ) { |
|
673 | + if (isset(WC()->cart)) { |
|
674 | 674 | WC()->cart->empty_cart(); |
675 | 675 | } |
676 | 676 | |
677 | 677 | // Unlock the order. |
678 | - $this->unlock_order_payment( $order ); |
|
678 | + $this->unlock_order_payment($order); |
|
679 | 679 | |
680 | 680 | // Return thank you page redirect. |
681 | 681 | return array( |
682 | 682 | 'result' => 'success', |
683 | - 'redirect' => $this->get_return_url( $order ), |
|
683 | + 'redirect' => $this->get_return_url($order), |
|
684 | 684 | ); |
685 | 685 | |
686 | - } catch ( WC_Stripe_Exception $e ) { |
|
687 | - wc_add_notice( $e->getLocalizedMessage(), 'error' ); |
|
688 | - WC_Stripe_Logger::log( 'Error: ' . $e->getMessage() ); |
|
686 | + } catch (WC_Stripe_Exception $e) { |
|
687 | + wc_add_notice($e->getLocalizedMessage(), 'error'); |
|
688 | + WC_Stripe_Logger::log('Error: ' . $e->getMessage()); |
|
689 | 689 | |
690 | - do_action( 'wc_gateway_stripe_process_payment_error', $e, $order ); |
|
690 | + do_action('wc_gateway_stripe_process_payment_error', $e, $order); |
|
691 | 691 | |
692 | 692 | /* translators: error message */ |
693 | - $order->update_status( 'failed' ); |
|
693 | + $order->update_status('failed'); |
|
694 | 694 | |
695 | 695 | return array( |
696 | 696 | 'result' => 'fail', |
@@ -706,17 +706,17 @@ discard block |
||
706 | 706 | * |
707 | 707 | * @param int $order_id The ID of the order. |
708 | 708 | */ |
709 | - public function display_order_fee( $order_id ) { |
|
710 | - if ( apply_filters( 'wc_stripe_hide_display_order_fee', false, $order_id ) ) { |
|
709 | + public function display_order_fee($order_id) { |
|
710 | + if (apply_filters('wc_stripe_hide_display_order_fee', false, $order_id)) { |
|
711 | 711 | return; |
712 | 712 | } |
713 | 713 | |
714 | - $order = wc_get_order( $order_id ); |
|
714 | + $order = wc_get_order($order_id); |
|
715 | 715 | |
716 | - $fee = WC_Stripe_Helper::get_stripe_fee( $order ); |
|
717 | - $currency = WC_Stripe_Helper::get_stripe_currency( $order ); |
|
716 | + $fee = WC_Stripe_Helper::get_stripe_fee($order); |
|
717 | + $currency = WC_Stripe_Helper::get_stripe_currency($order); |
|
718 | 718 | |
719 | - if ( ! $fee || ! $currency ) { |
|
719 | + if ( ! $fee || ! $currency) { |
|
720 | 720 | return; |
721 | 721 | } |
722 | 722 | |
@@ -724,12 +724,12 @@ discard block |
||
724 | 724 | |
725 | 725 | <tr> |
726 | 726 | <td class="label stripe-fee"> |
727 | - <?php echo wc_help_tip( __( 'This represents the fee Stripe collects for the transaction.', 'woocommerce-gateway-stripe' ) ); // wpcs: xss ok. ?> |
|
728 | - <?php esc_html_e( 'Stripe Fee:', 'woocommerce-gateway-stripe' ); ?> |
|
727 | + <?php echo wc_help_tip(__('This represents the fee Stripe collects for the transaction.', 'woocommerce-gateway-stripe')); // wpcs: xss ok. ?> |
|
728 | + <?php esc_html_e('Stripe Fee:', 'woocommerce-gateway-stripe'); ?> |
|
729 | 729 | </td> |
730 | 730 | <td width="1%"></td> |
731 | 731 | <td class="total"> |
732 | - - <?php echo wc_price( $fee, array( 'currency' => $currency ) ); // wpcs: xss ok. ?> |
|
732 | + - <?php echo wc_price($fee, array('currency' => $currency)); // wpcs: xss ok. ?> |
|
733 | 733 | </td> |
734 | 734 | </tr> |
735 | 735 | |
@@ -743,17 +743,17 @@ discard block |
||
743 | 743 | * |
744 | 744 | * @param int $order_id The ID of the order. |
745 | 745 | */ |
746 | - public function display_order_payout( $order_id ) { |
|
747 | - if ( apply_filters( 'wc_stripe_hide_display_order_payout', false, $order_id ) ) { |
|
746 | + public function display_order_payout($order_id) { |
|
747 | + if (apply_filters('wc_stripe_hide_display_order_payout', false, $order_id)) { |
|
748 | 748 | return; |
749 | 749 | } |
750 | 750 | |
751 | - $order = wc_get_order( $order_id ); |
|
751 | + $order = wc_get_order($order_id); |
|
752 | 752 | |
753 | - $net = WC_Stripe_Helper::get_stripe_net( $order ); |
|
754 | - $currency = WC_Stripe_Helper::get_stripe_currency( $order ); |
|
753 | + $net = WC_Stripe_Helper::get_stripe_net($order); |
|
754 | + $currency = WC_Stripe_Helper::get_stripe_currency($order); |
|
755 | 755 | |
756 | - if ( ! $net || ! $currency ) { |
|
756 | + if ( ! $net || ! $currency) { |
|
757 | 757 | return; |
758 | 758 | } |
759 | 759 | |
@@ -761,12 +761,12 @@ discard block |
||
761 | 761 | |
762 | 762 | <tr> |
763 | 763 | <td class="label stripe-payout"> |
764 | - <?php echo wc_help_tip( __( 'This represents the net total that will be credited to your Stripe bank account. This may be in the currency that is set in your Stripe account.', 'woocommerce-gateway-stripe' ) ); // wpcs: xss ok. ?> |
|
765 | - <?php esc_html_e( 'Stripe Payout:', 'woocommerce-gateway-stripe' ); ?> |
|
764 | + <?php echo wc_help_tip(__('This represents the net total that will be credited to your Stripe bank account. This may be in the currency that is set in your Stripe account.', 'woocommerce-gateway-stripe')); // wpcs: xss ok. ?> |
|
765 | + <?php esc_html_e('Stripe Payout:', 'woocommerce-gateway-stripe'); ?> |
|
766 | 766 | </td> |
767 | 767 | <td width="1%"></td> |
768 | 768 | <td class="total"> |
769 | - <?php echo wc_price( $net, array( 'currency' => $currency ) ); // wpcs: xss ok. ?> |
|
769 | + <?php echo wc_price($net, array('currency' => $currency)); // wpcs: xss ok. ?> |
|
770 | 770 | </td> |
771 | 771 | </tr> |
772 | 772 | |
@@ -781,18 +781,18 @@ discard block |
||
781 | 781 | * @param WC_Order $order The order to add a note to. |
782 | 782 | * @throws WC_Stripe_Exception An exception with the right message. |
783 | 783 | */ |
784 | - public function throw_localized_message( $response, $order ) { |
|
784 | + public function throw_localized_message($response, $order) { |
|
785 | 785 | $localized_messages = WC_Stripe_Helper::get_localized_messages(); |
786 | 786 | |
787 | - if ( 'card_error' === $response->error->type ) { |
|
788 | - $localized_message = isset( $localized_messages[ $response->error->code ] ) ? $localized_messages[ $response->error->code ] : $response->error->message; |
|
787 | + if ('card_error' === $response->error->type) { |
|
788 | + $localized_message = isset($localized_messages[$response->error->code]) ? $localized_messages[$response->error->code] : $response->error->message; |
|
789 | 789 | } else { |
790 | - $localized_message = isset( $localized_messages[ $response->error->type ] ) ? $localized_messages[ $response->error->type ] : $response->error->message; |
|
790 | + $localized_message = isset($localized_messages[$response->error->type]) ? $localized_messages[$response->error->type] : $response->error->message; |
|
791 | 791 | } |
792 | 792 | |
793 | - $order->add_order_note( $localized_message ); |
|
793 | + $order->add_order_note($localized_message); |
|
794 | 794 | |
795 | - throw new WC_Stripe_Exception( print_r( $response, true ), $localized_message ); |
|
795 | + throw new WC_Stripe_Exception(print_r($response, true), $localized_message); |
|
796 | 796 | } |
797 | 797 | |
798 | 798 | /** |
@@ -807,22 +807,22 @@ discard block |
||
807 | 807 | * @throws WC_Stripe_Exception If the payment is not accepted. |
808 | 808 | * @return array|void |
809 | 809 | */ |
810 | - public function retry_after_error( $response, $order, $retry, $force_save_source, $previous_error ) { |
|
811 | - if ( ! $retry ) { |
|
812 | - $localized_message = __( 'Sorry, we are unable to process your payment at this time. Please retry later.', 'woocommerce-gateway-stripe' ); |
|
813 | - $order->add_order_note( $localized_message ); |
|
814 | - throw new WC_Stripe_Exception( print_r( $response, true ), $localized_message ); // phpcs:ignore WordPress.PHP.DevelopmentFunctions. |
|
810 | + public function retry_after_error($response, $order, $retry, $force_save_source, $previous_error) { |
|
811 | + if ( ! $retry) { |
|
812 | + $localized_message = __('Sorry, we are unable to process your payment at this time. Please retry later.', 'woocommerce-gateway-stripe'); |
|
813 | + $order->add_order_note($localized_message); |
|
814 | + throw new WC_Stripe_Exception(print_r($response, true), $localized_message); // phpcs:ignore WordPress.PHP.DevelopmentFunctions. |
|
815 | 815 | } |
816 | 816 | |
817 | 817 | // Don't do anymore retries after this. |
818 | - if ( 5 <= $this->retry_interval ) { |
|
819 | - return $this->process_payment( $order->get_id(), false, $force_save_source, $response->error, $previous_error ); |
|
818 | + if (5 <= $this->retry_interval) { |
|
819 | + return $this->process_payment($order->get_id(), false, $force_save_source, $response->error, $previous_error); |
|
820 | 820 | } |
821 | 821 | |
822 | - sleep( $this->retry_interval ); |
|
822 | + sleep($this->retry_interval); |
|
823 | 823 | $this->retry_interval++; |
824 | 824 | |
825 | - return $this->process_payment( $order->get_id(), true, $force_save_source, $response->error, $previous_error ); |
|
825 | + return $this->process_payment($order->get_id(), true, $force_save_source, $response->error, $previous_error); |
|
826 | 826 | } |
827 | 827 | |
828 | 828 | /** |
@@ -833,16 +833,16 @@ discard block |
||
833 | 833 | * @param WC_Payment_Gateway[] $gateways A list of all available gateways. |
834 | 834 | * @return WC_Payment_Gateway[] Either the same list or an empty one in the right conditions. |
835 | 835 | */ |
836 | - public function prepare_order_pay_page( $gateways ) { |
|
837 | - if ( ! is_wc_endpoint_url( 'order-pay' ) || ! isset( $_GET['wc-stripe-confirmation'] ) ) { // wpcs: csrf ok. |
|
836 | + public function prepare_order_pay_page($gateways) { |
|
837 | + if ( ! is_wc_endpoint_url('order-pay') || ! isset($_GET['wc-stripe-confirmation'])) { // wpcs: csrf ok. |
|
838 | 838 | return $gateways; |
839 | 839 | } |
840 | 840 | |
841 | - add_filter( 'woocommerce_checkout_show_terms', '__return_false' ); |
|
842 | - add_filter( 'woocommerce_pay_order_button_html', '__return_false' ); |
|
843 | - add_filter( 'woocommerce_available_payment_gateways', array( $this, '__return_empty_array' ) ); |
|
844 | - add_filter( 'woocommerce_no_available_payment_methods_message', array( $this, 'change_no_available_methods_message' ) ); |
|
845 | - add_action( 'woocommerce_pay_order_after_submit', array( $this, 'render_payment_intent_inputs' ) ); |
|
841 | + add_filter('woocommerce_checkout_show_terms', '__return_false'); |
|
842 | + add_filter('woocommerce_pay_order_button_html', '__return_false'); |
|
843 | + add_filter('woocommerce_available_payment_gateways', array($this, '__return_empty_array')); |
|
844 | + add_filter('woocommerce_no_available_payment_methods_message', array($this, 'change_no_available_methods_message')); |
|
845 | + add_action('woocommerce_pay_order_after_submit', array($this, 'render_payment_intent_inputs')); |
|
846 | 846 | |
847 | 847 | return array(); |
848 | 848 | } |
@@ -855,7 +855,7 @@ discard block |
||
855 | 855 | * @return string the new message. |
856 | 856 | */ |
857 | 857 | public function change_no_available_methods_message() { |
858 | - return wpautop( __( "Almost there!\n\nYour order has already been created, the only thing that still needs to be done is for you to authorize the payment with your bank.", 'woocommerce-gateway-stripe' ) ); |
|
858 | + return wpautop(__("Almost there!\n\nYour order has already been created, the only thing that still needs to be done is for you to authorize the payment with your bank.", 'woocommerce-gateway-stripe')); |
|
859 | 859 | } |
860 | 860 | |
861 | 861 | /** |
@@ -864,21 +864,21 @@ discard block |
||
864 | 864 | * @since 4.2 |
865 | 865 | */ |
866 | 866 | public function render_payment_intent_inputs() { |
867 | - $order = wc_get_order( absint( get_query_var( 'order-pay' ) ) ); |
|
868 | - $intent = $this->get_intent_from_order( $order ); |
|
867 | + $order = wc_get_order(absint(get_query_var('order-pay'))); |
|
868 | + $intent = $this->get_intent_from_order($order); |
|
869 | 869 | |
870 | 870 | $verification_url = add_query_arg( |
871 | 871 | array( |
872 | 872 | 'order' => $order->get_id(), |
873 | - 'nonce' => wp_create_nonce( 'wc_stripe_confirm_pi' ), |
|
874 | - 'redirect_to' => rawurlencode( $this->get_return_url( $order ) ), |
|
873 | + 'nonce' => wp_create_nonce('wc_stripe_confirm_pi'), |
|
874 | + 'redirect_to' => rawurlencode($this->get_return_url($order)), |
|
875 | 875 | 'is_pay_for_order' => true, |
876 | 876 | ), |
877 | - WC_AJAX::get_endpoint( 'wc_stripe_verify_intent' ) |
|
877 | + WC_AJAX::get_endpoint('wc_stripe_verify_intent') |
|
878 | 878 | ); |
879 | 879 | |
880 | - echo '<input type="hidden" id="stripe-intent-id" value="' . esc_attr( $intent->client_secret ) . '" />'; |
|
881 | - echo '<input type="hidden" id="stripe-intent-return" value="' . esc_attr( $verification_url ) . '" />'; |
|
880 | + echo '<input type="hidden" id="stripe-intent-id" value="' . esc_attr($intent->client_secret) . '" />'; |
|
881 | + echo '<input type="hidden" id="stripe-intent-return" value="' . esc_attr($verification_url) . '" />'; |
|
882 | 882 | } |
883 | 883 | |
884 | 884 | /** |
@@ -888,11 +888,11 @@ discard block |
||
888 | 888 | * @param WC_Payment_Token $token Payment Token. |
889 | 889 | * @return string Generated payment method HTML |
890 | 890 | */ |
891 | - public function get_saved_payment_method_option_html( $token ) { |
|
892 | - $html = parent::get_saved_payment_method_option_html( $token ); |
|
891 | + public function get_saved_payment_method_option_html($token) { |
|
892 | + $html = parent::get_saved_payment_method_option_html($token); |
|
893 | 893 | $error_wrapper = '<div class="stripe-source-errors" role="alert"></div>'; |
894 | 894 | |
895 | - return preg_replace( '~</(\w+)>\s*$~', "$error_wrapper</$1>", $html ); |
|
895 | + return preg_replace('~</(\w+)>\s*$~', "$error_wrapper</$1>", $html); |
|
896 | 896 | } |
897 | 897 | |
898 | 898 | /** |
@@ -902,18 +902,18 @@ discard block |
||
902 | 902 | * @since 4.2.0 |
903 | 903 | * @param int $order_id The ID that will be used for the thank you page. |
904 | 904 | */ |
905 | - public function check_intent_status_on_order_page( $order_id ) { |
|
906 | - if ( empty( $order_id ) || absint( $order_id ) <= 0 ) { |
|
905 | + public function check_intent_status_on_order_page($order_id) { |
|
906 | + if (empty($order_id) || absint($order_id) <= 0) { |
|
907 | 907 | return; |
908 | 908 | } |
909 | 909 | |
910 | - $order = wc_get_order( absint( $order_id ) ); |
|
910 | + $order = wc_get_order(absint($order_id)); |
|
911 | 911 | |
912 | - if ( ! $order ) { |
|
912 | + if ( ! $order) { |
|
913 | 913 | return; |
914 | 914 | } |
915 | 915 | |
916 | - $this->verify_intent_after_checkout( $order ); |
|
916 | + $this->verify_intent_after_checkout($order); |
|
917 | 917 | } |
918 | 918 | |
919 | 919 | /** |
@@ -927,9 +927,9 @@ discard block |
||
927 | 927 | * @param int $order_id The ID of the order which is being paid for. |
928 | 928 | * @return array |
929 | 929 | */ |
930 | - public function modify_successful_payment_result( $result, $order_id ) { |
|
930 | + public function modify_successful_payment_result($result, $order_id) { |
|
931 | 931 | // Only redirects with intents need to be modified. |
932 | - if ( ! isset( $result['intent_secret'] ) ) { |
|
932 | + if ( ! isset($result['intent_secret'])) { |
|
933 | 933 | return $result; |
934 | 934 | } |
935 | 935 | |
@@ -937,14 +937,14 @@ discard block |
||
937 | 937 | $verification_url = add_query_arg( |
938 | 938 | array( |
939 | 939 | 'order' => $order_id, |
940 | - 'nonce' => wp_create_nonce( 'wc_stripe_confirm_pi' ), |
|
941 | - 'redirect_to' => rawurlencode( $result['redirect'] ), |
|
940 | + 'nonce' => wp_create_nonce('wc_stripe_confirm_pi'), |
|
941 | + 'redirect_to' => rawurlencode($result['redirect']), |
|
942 | 942 | ), |
943 | - WC_AJAX::get_endpoint( 'wc_stripe_verify_intent' ) |
|
943 | + WC_AJAX::get_endpoint('wc_stripe_verify_intent') |
|
944 | 944 | ); |
945 | 945 | |
946 | 946 | // Combine into a hash. |
947 | - $redirect = sprintf( '#confirm-pi-%s:%s', $result['intent_secret'], rawurlencode( $verification_url ) ); |
|
947 | + $redirect = sprintf('#confirm-pi-%s:%s', $result['intent_secret'], rawurlencode($verification_url)); |
|
948 | 948 | |
949 | 949 | return array( |
950 | 950 | 'result' => 'success', |
@@ -955,8 +955,8 @@ discard block |
||
955 | 955 | /** |
956 | 956 | * Proceed with current request using new login session (to ensure consistent nonce). |
957 | 957 | */ |
958 | - public function set_cookie_on_current_request( $cookie ) { |
|
959 | - $_COOKIE[ LOGGED_IN_COOKIE ] = $cookie; |
|
958 | + public function set_cookie_on_current_request($cookie) { |
|
959 | + $_COOKIE[LOGGED_IN_COOKIE] = $cookie; |
|
960 | 960 | } |
961 | 961 | |
962 | 962 | /** |
@@ -966,41 +966,41 @@ discard block |
||
966 | 966 | * @since 4.2.0 |
967 | 967 | * @param WC_Order $order The order which is in a transitional state. |
968 | 968 | */ |
969 | - public function verify_intent_after_checkout( $order ) { |
|
970 | - $payment_method = WC_Stripe_Helper::is_wc_lt( '3.0' ) ? $order->payment_method : $order->get_payment_method(); |
|
971 | - if ( $payment_method !== $this->id ) { |
|
969 | + public function verify_intent_after_checkout($order) { |
|
970 | + $payment_method = WC_Stripe_Helper::is_wc_lt('3.0') ? $order->payment_method : $order->get_payment_method(); |
|
971 | + if ($payment_method !== $this->id) { |
|
972 | 972 | // If this is not the payment method, an intent would not be available. |
973 | 973 | return; |
974 | 974 | } |
975 | 975 | |
976 | - $intent = $this->get_intent_from_order( $order ); |
|
977 | - if ( ! $intent ) { |
|
976 | + $intent = $this->get_intent_from_order($order); |
|
977 | + if ( ! $intent) { |
|
978 | 978 | // No intent, redirect to the order received page for further actions. |
979 | 979 | return; |
980 | 980 | } |
981 | 981 | |
982 | 982 | // A webhook might have modified or locked the order while the intent was retreived. This ensures we are reading the right status. |
983 | - clean_post_cache( $order->get_id() ); |
|
984 | - $order = wc_get_order( $order->get_id() ); |
|
983 | + clean_post_cache($order->get_id()); |
|
984 | + $order = wc_get_order($order->get_id()); |
|
985 | 985 | |
986 | - if ( 'pending' !== $order->get_status() && 'failed' !== $order->get_status() ) { |
|
986 | + if ('pending' !== $order->get_status() && 'failed' !== $order->get_status()) { |
|
987 | 987 | // If payment has already been completed, this function is redundant. |
988 | 988 | return; |
989 | 989 | } |
990 | 990 | |
991 | - if ( $this->lock_order_payment( $order, $intent ) ) { |
|
991 | + if ($this->lock_order_payment($order, $intent)) { |
|
992 | 992 | return; |
993 | 993 | } |
994 | 994 | |
995 | - if ( 'succeeded' === $intent->status || 'requires_capture' === $intent->status ) { |
|
995 | + if ('succeeded' === $intent->status || 'requires_capture' === $intent->status) { |
|
996 | 996 | // Proceed with the payment completion. |
997 | - $this->process_response( end( $intent->charges->data ), $order ); |
|
998 | - } else if ( 'requires_payment_method' === $intent->status ) { |
|
997 | + $this->process_response(end($intent->charges->data), $order); |
|
998 | + } else if ('requires_payment_method' === $intent->status) { |
|
999 | 999 | // `requires_payment_method` means that SCA got denied for the current payment method. |
1000 | - $this->failed_sca_auth( $order, $intent ); |
|
1000 | + $this->failed_sca_auth($order, $intent); |
|
1001 | 1001 | } |
1002 | 1002 | |
1003 | - $this->unlock_order_payment( $order ); |
|
1003 | + $this->unlock_order_payment($order); |
|
1004 | 1004 | } |
1005 | 1005 | |
1006 | 1006 | /** |
@@ -1010,19 +1010,19 @@ discard block |
||
1010 | 1010 | * @param WC_Order $order The order which should be checked. |
1011 | 1011 | * @param object $intent The intent, associated with the order. |
1012 | 1012 | */ |
1013 | - public function failed_sca_auth( $order, $intent ) { |
|
1013 | + public function failed_sca_auth($order, $intent) { |
|
1014 | 1014 | // If the order has already failed, do not repeat the same message. |
1015 | - if ( 'failed' === $order->get_status() ) { |
|
1015 | + if ('failed' === $order->get_status()) { |
|
1016 | 1016 | return; |
1017 | 1017 | } |
1018 | 1018 | |
1019 | 1019 | // Load the right message and update the status. |
1020 | - $status_message = ( $intent->last_payment_error ) |
|
1020 | + $status_message = ($intent->last_payment_error) |
|
1021 | 1021 | /* translators: 1) The error message that was received from Stripe. */ |
1022 | - ? sprintf( __( 'Stripe SCA authentication failed. Reason: %s', 'woocommerce-gateway-stripe' ), $intent->last_payment_error->message ) |
|
1023 | - : __( 'Stripe SCA authentication failed.', 'woocommerce-gateway-stripe' ); |
|
1024 | - $order->update_status( 'failed', $status_message ); |
|
1022 | + ? sprintf(__('Stripe SCA authentication failed. Reason: %s', 'woocommerce-gateway-stripe'), $intent->last_payment_error->message) |
|
1023 | + : __('Stripe SCA authentication failed.', 'woocommerce-gateway-stripe'); |
|
1024 | + $order->update_status('failed', $status_message); |
|
1025 | 1025 | |
1026 | - $this->send_failed_order_email( $order->get_id() ); |
|
1026 | + $this->send_failed_order_email($order->get_id()); |
|
1027 | 1027 | } |
1028 | 1028 | } |