Version Description
- TUESDAY, 15 MARCH 2022 =
- New: Express checkout class layout support.
- Improvement: Added localization for Stripe error messages.
- Improvement: Added compatibility with popular themes.
- Fix: Express checkout console error.
- Fix: Express checkout's broken admin preview.
Download this release
Release Info
Developer | brainstormworg |
Plugin | Stripe Payments For WooCommerce by Checkout Plugins |
Version | 1.4.1 |
Comparing to | |
See all releases |
Code changes from version 1.4.0 to 1.4.1
- admin/admin-controller.php +15 -0
- admin/assets/js/express-checkout.js +43 -6
- assets/css/express-checkout.css +98 -1
- assets/css/stripe-elements.css +0 -1
- assets/js/payment-request.js +18 -1
- assets/js/stripe-elements.js +20 -15
- autoloader.php +12 -2
- checkout-plugins-stripe-woo.php +2 -2
- gateway/local-gateway.php +2 -1
- gateway/stripe/card-payments.php +9 -0
- gateway/stripe/frontend-scripts.php +2 -1
- gateway/stripe/payment-request-api.php +21 -7
- inc/helper.php +151 -50
- inc/traits/subscriptions.php +1 -1
- languages/checkout-plugins-stripe-woo.pot +339 -110
- readme.txt +8 -1
admin/admin-controller.php
CHANGED
@@ -1057,6 +1057,7 @@ class Admin_Controller {
|
|
1057 |
}
|
1058 |
|
1059 |
$this->settings['cpsw_auto_connect'] = 'yes';
|
|
|
1060 |
$this->update_options( $this->settings );
|
1061 |
do_action( 'cpsw_after_connect_with_stripe', $this->settings['cpsw_con_status'] );
|
1062 |
}
|
@@ -1201,6 +1202,7 @@ class Admin_Controller {
|
|
1201 |
if ( isset( $_POST['error'] ) ) {
|
1202 |
$error = $_POST['error'];
|
1203 |
$error_message = $error['message'] . ' (' . $error['type'] . ')';
|
|
|
1204 |
Logger::error( $error_message, true );
|
1205 |
return wp_send_json_success( [ 'message' => $error_message ] );
|
1206 |
}
|
@@ -1697,6 +1699,19 @@ class Admin_Controller {
|
|
1697 |
'id' => 'cpsw_express_checkout_checkout_page',
|
1698 |
'class' => 'cpsw_checkout_options',
|
1699 |
],
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1700 |
'checkout_button_position' => [
|
1701 |
'title' => __( 'Button position', 'checkout-plugins-stripe-woo' ),
|
1702 |
'type' => 'select',
|
1057 |
}
|
1058 |
|
1059 |
$this->settings['cpsw_auto_connect'] = 'yes';
|
1060 |
+
$this->settings['cpsw_debug_log'] = 'yes';
|
1061 |
$this->update_options( $this->settings );
|
1062 |
do_action( 'cpsw_after_connect_with_stripe', $this->settings['cpsw_con_status'] );
|
1063 |
}
|
1202 |
if ( isset( $_POST['error'] ) ) {
|
1203 |
$error = $_POST['error'];
|
1204 |
$error_message = $error['message'] . ' (' . $error['type'] . ')';
|
1205 |
+
$error_message = Helper::get_localized_messages( $error['code'], $error_message );
|
1206 |
Logger::error( $error_message, true );
|
1207 |
return wp_send_json_success( [ 'message' => $error_message ] );
|
1208 |
}
|
1699 |
'id' => 'cpsw_express_checkout_checkout_page',
|
1700 |
'class' => 'cpsw_checkout_options',
|
1701 |
],
|
1702 |
+
'checkout_button_layout' => [
|
1703 |
+
'title' => __( 'Layout', 'checkout-plugins-stripe-woo' ),
|
1704 |
+
'type' => 'select',
|
1705 |
+
'class' => 'cpsw_checkout_options',
|
1706 |
+
'id' => 'cpsw_express_checkout_checkout_page_layout',
|
1707 |
+
'desc' => __( 'Select the layout of Express Checkout button. This option will work only for Checkout page.', 'checkout-plugins-stripe-woo' ),
|
1708 |
+
'value' => $values['express_checkout_checkout_page_layout'],
|
1709 |
+
'options' => [
|
1710 |
+
'custom' => __( 'Custom', 'checkout-plugins-stripe-woo' ),
|
1711 |
+
'classic' => __( 'Classic', 'checkout-plugins-stripe-woo' ),
|
1712 |
+
],
|
1713 |
+
'desc_tip' => true,
|
1714 |
+
],
|
1715 |
'checkout_button_position' => [
|
1716 |
'title' => __( 'Button position', 'checkout-plugins-stripe-woo' ),
|
1717 |
'type' => 'select',
|
admin/assets/js/express-checkout.js
CHANGED
@@ -44,13 +44,24 @@
|
|
44 |
$( '.cpsw_preview_tagline' ).html( $( '#cpsw_express_checkout_tagline' ).val() );
|
45 |
|
46 |
const buttonWidth = $( '#cpsw_express_checkout_button_width' ).val() ? $( '#cpsw_express_checkout_button_width' ).val() + 'px' : '100%';
|
47 |
-
$( '
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
48 |
|
49 |
-
$( '.cpsw_express_checkout_preview_wrapper' ).css( { textAlign:
|
50 |
-
if (
|
51 |
$( '.cpsw-payment-request-custom-button-admin' ).css( { margin: '0 auto', float: 'none' } );
|
52 |
} else {
|
53 |
-
$( '.cpsw-payment-request-custom-button-admin' ).css( { marginBottom: '1em', float:
|
54 |
}
|
55 |
|
56 |
if ( result.applePay ) {
|
@@ -169,10 +180,23 @@
|
|
169 |
}
|
170 |
}
|
171 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
172 |
$( document ).ready( function() {
|
173 |
$( '.cpsw_express_checkout_location' ).selectWoo();
|
174 |
generateExpressCheckoutDemo( style );
|
175 |
toggleOptions();
|
|
|
176 |
|
177 |
$( '#cpsw_express_checkout_button_text, #cpsw_express_checkout_button_theme' ).change( function() {
|
178 |
style = {
|
@@ -183,6 +207,10 @@
|
|
183 |
generateExpressCheckoutDemo( style );
|
184 |
} );
|
185 |
|
|
|
|
|
|
|
|
|
186 |
$( '#cpsw_express_checkout_location' ).change( function() {
|
187 |
toggleOptions();
|
188 |
} );
|
@@ -193,7 +221,7 @@
|
|
193 |
$( '.submit' ).after( '<div class="cpsw_floating_preview"><span class="cpsw_button_preview_label">Button preview</div>' );
|
194 |
$( '.cpsw_floating_preview' ).append( buttonPreview );
|
195 |
|
196 |
-
const maxTop = $( '#cpsw_express_checkout-description' ).offset().top;
|
197 |
const absoluteLeft = 900 - jQuery( '#adminmenuwrap' ).width();
|
198 |
$( '.cpsw_floating_preview' ).css(
|
199 |
{
|
@@ -238,7 +266,16 @@
|
|
238 |
if ( '' === buttonWidth ) {
|
239 |
buttonWidth = '100%';
|
240 |
}
|
241 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
242 |
} );
|
243 |
|
244 |
$( '#cpsw_express_checkout_button_alignment' ).change( function() {
|
44 |
$( '.cpsw_preview_tagline' ).html( $( '#cpsw_express_checkout_tagline' ).val() );
|
45 |
|
46 |
const buttonWidth = $( '#cpsw_express_checkout_button_width' ).val() ? $( '#cpsw_express_checkout_button_width' ).val() + 'px' : '100%';
|
47 |
+
const buttonWidthOriginVal = $( '#cpsw_express_checkout_button_width' ).val();
|
48 |
+
const expressButtonAlignment = $( '#cpsw_express_checkout_button_alignment' ).val();
|
49 |
+
|
50 |
+
if ( buttonWidthOriginVal > 380 ) {
|
51 |
+
prButton.css( 'max-width', buttonWidth );
|
52 |
+
prButton.css( 'width', '100%' );
|
53 |
+
} else if ( '' !== buttonWidthOriginVal && buttonWidthOriginVal < 101 ) {
|
54 |
+
prButton.css( 'width', '112px' );
|
55 |
+
prButton.css( 'min-width', '112px' );
|
56 |
+
} else {
|
57 |
+
prButton.css( 'min-width', buttonWidth );
|
58 |
+
}
|
59 |
|
60 |
+
$( '.cpsw_express_checkout_preview_wrapper' ).css( { textAlign: expressButtonAlignment } );
|
61 |
+
if ( expressButtonAlignment === 'center' ) {
|
62 |
$( '.cpsw-payment-request-custom-button-admin' ).css( { margin: '0 auto', float: 'none' } );
|
63 |
} else {
|
64 |
+
$( '.cpsw-payment-request-custom-button-admin' ).css( { marginBottom: '1em', float: expressButtonAlignment } );
|
65 |
}
|
66 |
|
67 |
if ( result.applePay ) {
|
180 |
}
|
181 |
}
|
182 |
|
183 |
+
function cpswExpressCheckoutLayoutEffects() {
|
184 |
+
const checkoutPageLayout = $( '#cpsw_express_checkout_checkout_page_layout' ).val();
|
185 |
+
|
186 |
+
if ( checkoutPageLayout === 'classic' ) {
|
187 |
+
$( '#cpsw_express_checkout_button_alignment' ).parents( 'tr' ).hide();
|
188 |
+
$( '.cpsw_express_checkout_preview_wrapper' ).addClass( 'cpsw-classic' );
|
189 |
+
} else {
|
190 |
+
$( '#cpsw_express_checkout_button_alignment' ).parents( 'tr' ).show();
|
191 |
+
$( '.cpsw_express_checkout_preview_wrapper' ).removeClass( 'cpsw-classic' );
|
192 |
+
}
|
193 |
+
}
|
194 |
+
|
195 |
$( document ).ready( function() {
|
196 |
$( '.cpsw_express_checkout_location' ).selectWoo();
|
197 |
generateExpressCheckoutDemo( style );
|
198 |
toggleOptions();
|
199 |
+
cpswExpressCheckoutLayoutEffects();
|
200 |
|
201 |
$( '#cpsw_express_checkout_button_text, #cpsw_express_checkout_button_theme' ).change( function() {
|
202 |
style = {
|
207 |
generateExpressCheckoutDemo( style );
|
208 |
} );
|
209 |
|
210 |
+
$( '#cpsw_express_checkout_checkout_page_layout' ).change( function() {
|
211 |
+
cpswExpressCheckoutLayoutEffects();
|
212 |
+
} );
|
213 |
+
|
214 |
$( '#cpsw_express_checkout_location' ).change( function() {
|
215 |
toggleOptions();
|
216 |
} );
|
221 |
$( '.submit' ).after( '<div class="cpsw_floating_preview"><span class="cpsw_button_preview_label">Button preview</div>' );
|
222 |
$( '.cpsw_floating_preview' ).append( buttonPreview );
|
223 |
|
224 |
+
const maxTop = $( '#cpsw_express_checkout-description' ).offset().top - 60;
|
225 |
const absoluteLeft = 900 - jQuery( '#adminmenuwrap' ).width();
|
226 |
$( '.cpsw_floating_preview' ).css(
|
227 |
{
|
266 |
if ( '' === buttonWidth ) {
|
267 |
buttonWidth = '100%';
|
268 |
}
|
269 |
+
|
270 |
+
if ( buttonWidth > 380 ) {
|
271 |
+
$( '.cpsw-payment-request-custom-button-render' ).css( 'max-width', buttonWidth );
|
272 |
+
$( '.cpsw-payment-request-custom-button-render' ).css( 'width', '100%' );
|
273 |
+
} else if ( buttonWidth < 100 && '' !== buttonWidth ) {
|
274 |
+
$( '.cpsw-payment-request-custom-button-render' ).css( 'width', '112px' );
|
275 |
+
$( '.cpsw-payment-request-custom-button-render' ).css( 'min-width', '112px' );
|
276 |
+
} else {
|
277 |
+
$( '.cpsw-payment-request-custom-button-render' ).width( buttonWidth );
|
278 |
+
}
|
279 |
} );
|
280 |
|
281 |
$( '#cpsw_express_checkout_button_alignment' ).change( function() {
|
assets/css/express-checkout.css
CHANGED
@@ -36,6 +36,83 @@
|
|
36 |
display: none;
|
37 |
}
|
38 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
39 |
/* Custom express checkout button style */
|
40 |
.cpsw-payment-request-custom-button-render {
|
41 |
overflow: hidden !important;
|
@@ -311,7 +388,9 @@
|
|
311 |
}
|
312 |
|
313 |
#cpsw-payment-request-wrapper.cpsw-product.below,
|
314 |
-
#cpsw-payment-request-wrapper.cpsw-product.above
|
|
|
|
|
315 |
float: left;
|
316 |
overflow: visible;
|
317 |
}
|
@@ -336,6 +415,24 @@
|
|
336 |
margin-bottom: 0;
|
337 |
}
|
338 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
339 |
@keyframes cpsw_shine {
|
340 |
|
341 |
0% {
|
36 |
display: none;
|
37 |
}
|
38 |
|
39 |
+
#cpsw-payment-request-wrapper.checkout.cpsw-classic .cpsw-payment-request-button-wrapper,
|
40 |
+
.cpsw_express_checkout_preview_wrapper.cpsw-classic {
|
41 |
+
display: flex;
|
42 |
+
align-items: flex-start;
|
43 |
+
flex-wrap: wrap;
|
44 |
+
position: relative;
|
45 |
+
border: 1px solid #e6e6e6;
|
46 |
+
border-radius: 5px;
|
47 |
+
padding: 1em 2em 2em;
|
48 |
+
justify-content: center;
|
49 |
+
margin-bottom: 1em !important;
|
50 |
+
}
|
51 |
+
|
52 |
+
.cpsw_floating_preview .cpsw_express_checkout_preview_wrapper.cpsw-classic {
|
53 |
+
border: 1px solid #c3c4c7;
|
54 |
+
text-align: center !important;
|
55 |
+
}
|
56 |
+
|
57 |
+
.cpsw_floating_preview .cpsw_express_checkout_preview_wrapper.cpsw-classic #cpsw-payment-request-custom-button {
|
58 |
+
text-align: center !important;
|
59 |
+
overflow: hidden;
|
60 |
+
max-width: 380px;
|
61 |
+
}
|
62 |
+
|
63 |
+
.cpsw_floating_preview .cpsw_express_checkout_preview_wrapper.cpsw-classic .cpsw-payment-request-custom-button-admin,
|
64 |
+
.cpsw_floating_preview .cpsw_express_checkout_preview_wrapper.cpsw-classic .cpsw-payment-request-custom-button-render {
|
65 |
+
max-width: 380px !important;
|
66 |
+
}
|
67 |
+
|
68 |
+
#cpsw-payment-request-wrapper.checkout.cpsw-classic #cpsw-payment-request-title,
|
69 |
+
.cpsw_express_checkout_preview_wrapper.cpsw-classic .cpsw_preview_title {
|
70 |
+
font-size: 14px;
|
71 |
+
margin: 0;
|
72 |
+
position: absolute;
|
73 |
+
top: -12px;
|
74 |
+
left: 50%;
|
75 |
+
transform: translateX(-50%) translateZ(0);
|
76 |
+
background: #fff;
|
77 |
+
padding: 0 0.75em;
|
78 |
+
font-weight: 400;
|
79 |
+
white-space: nowrap;
|
80 |
+
border: none;
|
81 |
+
}
|
82 |
+
|
83 |
+
.cpsw_floating_preview .cpsw_express_checkout_preview_wrapper.cpsw-classic .cpsw_preview_title {
|
84 |
+
background: #f0f0f1;
|
85 |
+
}
|
86 |
+
|
87 |
+
#cpsw-payment-request-wrapper.checkout.cpsw-classic #cpsw-payment-request-separator::before,
|
88 |
+
#cpsw-payment-request-wrapper.checkout.cpsw-classic #cpsw-payment-request-separator::after {
|
89 |
+
content: "";
|
90 |
+
display: block;
|
91 |
+
position: absolute;
|
92 |
+
top: 50%;
|
93 |
+
left: 0;
|
94 |
+
z-index: 2;
|
95 |
+
height: 1px;
|
96 |
+
background: #e6e6e6;
|
97 |
+
width: 48%;
|
98 |
+
}
|
99 |
+
|
100 |
+
#cpsw-payment-request-wrapper.checkout.cpsw-classic #cpsw-payment-request-custom-button {
|
101 |
+
width: 100%;
|
102 |
+
}
|
103 |
+
|
104 |
+
#cpsw-payment-request-wrapper.checkout.cpsw-classic #cpsw-payment-request-separator::after {
|
105 |
+
right: 0;
|
106 |
+
left: auto;
|
107 |
+
}
|
108 |
+
|
109 |
+
#cpsw-payment-request-wrapper.checkout.cpsw-classic #cpsw-payment-request-separator {
|
110 |
+
text-transform: none;
|
111 |
+
white-space: nowrap;
|
112 |
+
padding: 0.5em 1em;
|
113 |
+
position: relative;
|
114 |
+
}
|
115 |
+
|
116 |
/* Custom express checkout button style */
|
117 |
.cpsw-payment-request-custom-button-render {
|
118 |
overflow: hidden !important;
|
388 |
}
|
389 |
|
390 |
#cpsw-payment-request-wrapper.cpsw-product.below,
|
391 |
+
#cpsw-payment-request-wrapper.cpsw-product.above,
|
392 |
+
#cpsw-payment-request-wrapper.cpsw-product.below .cpsw-payment-request-button-wrapper,
|
393 |
+
#cpsw-payment-request-wrapper.cpsw-product.above .cpsw-payment-request-separator {
|
394 |
float: left;
|
395 |
overflow: visible;
|
396 |
}
|
415 |
margin-bottom: 0;
|
416 |
}
|
417 |
|
418 |
+
.theme-neve .entry-summary > form.cart,
|
419 |
+
.theme-blocksy form.cart .ct-cart-actions,
|
420 |
+
.theme-neve .woocommerce .wc-proceed-to-checkout,
|
421 |
+
.theme-neve.woocommerce.single .woocommerce-variation-add-to-cart {
|
422 |
+
display: initial !important;
|
423 |
+
}
|
424 |
+
|
425 |
+
form.cart button.single_add_to_cart_button {
|
426 |
+
--item-order: initial !important;
|
427 |
+
flex: initial;
|
428 |
+
}
|
429 |
+
|
430 |
+
.theme-blocksy form.cart #cpsw-payment-request-wrapper.cpsw-product.below,
|
431 |
+
.theme-blocksy form.cart #cpsw-payment-request-wrapper.cpsw-product.below .cpsw-payment-request-button-wrapper,
|
432 |
+
.theme-blocksy form.cart #cpsw-payment-request-wrapper.cpsw-product.below .cpsw-payment-request-custom-button-render {
|
433 |
+
width: 100% !important;
|
434 |
+
}
|
435 |
+
|
436 |
@keyframes cpsw_shine {
|
437 |
|
438 |
0% {
|
assets/css/stripe-elements.css
CHANGED
@@ -130,7 +130,6 @@
|
|
130 |
}
|
131 |
|
132 |
#cpsw-payment-request-wrapper.checkout #cpsw-payment-request-title {
|
133 |
-
font-weight: 600;
|
134 |
margin-bottom: 0.5em;
|
135 |
}
|
136 |
|
130 |
}
|
131 |
|
132 |
#cpsw-payment-request-wrapper.checkout #cpsw-payment-request-title {
|
|
|
133 |
margin-bottom: 0.5em;
|
134 |
}
|
135 |
|
assets/js/payment-request.js
CHANGED
@@ -10,6 +10,7 @@
|
|
10 |
const endpoint = cpsw_payment_request.ajax_endpoint;
|
11 |
const isResponsive = cpsw_payment_request.is_responsive;
|
12 |
let addToCartButton = '';
|
|
|
13 |
let productWrapper = '';
|
14 |
let quantityInput = '';
|
15 |
let addToCartHeight = '';
|
@@ -542,15 +543,24 @@
|
|
542 |
let addToCartMinWidth = wcAddToCartButton.outerWidth() + $( 'form.cart .quantity' ).width() + parseInt( $( 'form.cart .quantity' ).css( 'marginRight' ).replace( 'px', '' ) );
|
543 |
|
544 |
if ( 'inline' === style.button_position ) {
|
545 |
-
addToCartMinWidth = wcAddToCartButton.
|
|
|
546 |
|
547 |
if ( $( 'form.cart' ).width() < 500 ) {
|
548 |
makeButtonInline();
|
549 |
}
|
|
|
|
|
|
|
550 |
}
|
551 |
|
552 |
cpswExpressCheckoutWrapper.css( makeWidth, addToCartMinWidth + 'px' );
|
553 |
cpswExpressCheckoutButton.css( makeWidth, addToCartMinWidth + 'px' );
|
|
|
|
|
|
|
|
|
|
|
554 |
}
|
555 |
|
556 |
cpswStyleExpressCheckoutButton( cpswExpressCheckoutButton, wcAddToCartButton );
|
@@ -665,6 +675,7 @@
|
|
665 |
if ( $( '#cpsw-payment-request-wrapper' ).hasClass( 'inline' ) && ! $( '#cpsw-payment-request-wrapper' ).hasClass( 'sticky' ) ) {
|
666 |
productWrapper = $( '#cpsw-payment-request-wrapper' ).parent();
|
667 |
addToCartButton = productWrapper.children( '.single_add_to_cart_button' );
|
|
|
668 |
quantityInput = productWrapper.children( '.quantity' );
|
669 |
|
670 |
addToCartButton.css( { marginRight: quantityInput.css( 'marginRight' ) } );
|
@@ -689,6 +700,12 @@
|
|
689 |
addToCartButton.css( {
|
690 |
margin: '10px 0',
|
691 |
clear: 'both',
|
|
|
|
|
|
|
|
|
|
|
|
|
692 |
} );
|
693 |
|
694 |
$( '#cpsw-payment-request-wrapper' ).css( {
|
10 |
const endpoint = cpsw_payment_request.ajax_endpoint;
|
11 |
const isResponsive = cpsw_payment_request.is_responsive;
|
12 |
let addToCartButton = '';
|
13 |
+
let addToCartQuantity = '';
|
14 |
let productWrapper = '';
|
15 |
let quantityInput = '';
|
16 |
let addToCartHeight = '';
|
543 |
let addToCartMinWidth = wcAddToCartButton.outerWidth() + $( 'form.cart .quantity' ).width() + parseInt( $( 'form.cart .quantity' ).css( 'marginRight' ).replace( 'px', '' ) );
|
544 |
|
545 |
if ( 'inline' === style.button_position ) {
|
546 |
+
addToCartMinWidth = wcAddToCartButton.outerWidth();
|
547 |
+
addToCartMinWidth = addToCartMinWidth < 120 ? 150 : addToCartMinWidth;
|
548 |
|
549 |
if ( $( 'form.cart' ).width() < 500 ) {
|
550 |
makeButtonInline();
|
551 |
}
|
552 |
+
wcAddToCartButton.css( makeWidth, addToCartMinWidth + 'px' );
|
553 |
+
} else {
|
554 |
+
$( 'form.grouped_form button.single_add_to_cart_button' ).css( makeWidth, addToCartMinWidth + 'px' );
|
555 |
}
|
556 |
|
557 |
cpswExpressCheckoutWrapper.css( makeWidth, addToCartMinWidth + 'px' );
|
558 |
cpswExpressCheckoutButton.css( makeWidth, addToCartMinWidth + 'px' );
|
559 |
+
|
560 |
+
if ( 'below' === style.button_position ) {
|
561 |
+
$( '.theme-twentytwentytwo .cpsw-payment-request-custom-button-render' ).css( makeWidth, wcAddToCartButton.outerWidth() + 'px' );
|
562 |
+
$( '.theme-twentytwentytwo #cpsw-payment-request-separator' ).css( makeWidth, wcAddToCartButton.outerWidth() + 'px' );
|
563 |
+
}
|
564 |
}
|
565 |
|
566 |
cpswStyleExpressCheckoutButton( cpswExpressCheckoutButton, wcAddToCartButton );
|
675 |
if ( $( '#cpsw-payment-request-wrapper' ).hasClass( 'inline' ) && ! $( '#cpsw-payment-request-wrapper' ).hasClass( 'sticky' ) ) {
|
676 |
productWrapper = $( '#cpsw-payment-request-wrapper' ).parent();
|
677 |
addToCartButton = productWrapper.children( '.single_add_to_cart_button' );
|
678 |
+
addToCartQuantity = productWrapper.children( '.theme-flatsome .cart .quantity' );
|
679 |
quantityInput = productWrapper.children( '.quantity' );
|
680 |
|
681 |
addToCartButton.css( { marginRight: quantityInput.css( 'marginRight' ) } );
|
700 |
addToCartButton.css( {
|
701 |
margin: '10px 0',
|
702 |
clear: 'both',
|
703 |
+
flex: 'initial',
|
704 |
+
} );
|
705 |
+
|
706 |
+
addToCartQuantity.css( {
|
707 |
+
width: '100%',
|
708 |
+
clear: 'both',
|
709 |
} );
|
710 |
|
711 |
$( '#cpsw-payment-request-wrapper' ).css( {
|
assets/js/stripe-elements.js
CHANGED
@@ -8,6 +8,7 @@
|
|
8 |
const notAllowedString = cpsw_global_settings.not_allowed_string;
|
9 |
const defaultCards = cpsw_global_settings.default_cards;
|
10 |
const homeURL = cpsw_global_settings.get_home_url;
|
|
|
11 |
|
12 |
if ( '' === pubKey || ( 'live' === mode && ! cpsw_global_settings.is_ssl ) ) {
|
13 |
return;
|
@@ -83,7 +84,7 @@
|
|
83 |
}
|
84 |
}
|
85 |
if ( error ) {
|
86 |
-
$( '.cpsw-stripe-error' ).html( error.message );
|
87 |
} else {
|
88 |
$( '.cpsw-stripe-error' ).html( '' );
|
89 |
}
|
@@ -122,21 +123,21 @@
|
|
122 |
}
|
123 |
|
124 |
if ( error ) {
|
125 |
-
$( '.cpsw-number-error' ).html( error.message );
|
126 |
} else {
|
127 |
$( '.cpsw-number-error' ).html( '' );
|
128 |
}
|
129 |
} );
|
130 |
cardExpiry.on( 'change', ( { error } ) => {
|
131 |
if ( error ) {
|
132 |
-
$( '.cpsw-expiry-error' ).html( error.message );
|
133 |
} else {
|
134 |
$( '.cpsw-expiry-error' ).html( '' );
|
135 |
}
|
136 |
} );
|
137 |
cardCvc.on( 'change', ( { error } ) => {
|
138 |
if ( error ) {
|
139 |
-
$( '.cpsw-cvc-error' ).html( error.message );
|
140 |
} else {
|
141 |
$( '.cpsw-cvc-error' ).html( '' );
|
142 |
}
|
@@ -274,7 +275,7 @@
|
|
274 |
$( 'form#order_review' ).unblock();
|
275 |
$( 'form#add_payment_method' ).unblock();
|
276 |
logError( result.error );
|
277 |
-
$( '.woocommerce-notices-wrapper:first-child' ).html( '<div class="woocommerce-error cpsw-errors">' + result.error.message + '</div>' ).show();
|
278 |
window.scrollTo( { top: 0, behavior: 'smooth' } );
|
279 |
return false;
|
280 |
}
|
@@ -303,7 +304,7 @@
|
|
303 |
$( '.woocommerce-error' ).remove();
|
304 |
$( 'form.woocommerce-checkout' ).unblock();
|
305 |
logError( result.error );
|
306 |
-
$( '.woocommerce-notices-wrapper:first-child' ).html( '<div class="woocommerce-error cpsw-errors">' + result.error.message + '</div>' ).show();
|
307 |
window.scrollTo( { top: 0, behavior: 'smooth' } );
|
308 |
$( 'form#order_review' ).unblock();
|
309 |
$( 'form#add_payment_method' ).unblock();
|
@@ -329,7 +330,7 @@
|
|
329 |
$( '.woocommerce-error' ).remove();
|
330 |
wcCheckoutForm.unblock();
|
331 |
logError( result.error );
|
332 |
-
$( '.woocommerce-notices-wrapper:first-child' ).html( '<div class="woocommerce-error cpsw-errors">' + result.error.message + '</div>' ).show();
|
333 |
window.scrollTo( { top: 0, behavior: 'smooth' } );
|
334 |
} else {
|
335 |
// The payment has been processed!
|
@@ -352,7 +353,7 @@
|
|
352 |
$( '.woocommerce-error' ).remove();
|
353 |
wcCheckoutForm.unblock();
|
354 |
logError( result.error );
|
355 |
-
$( '.woocommerce-notices-wrapper:first-child' ).html( '<div class="woocommerce-error cpsw-errors">' + result.error.message + '</div>' ).show();
|
356 |
window.scrollTo( { top: 0, behavior: 'smooth' } );
|
357 |
}
|
358 |
} );
|
@@ -369,7 +370,7 @@
|
|
369 |
$( '.woocommerce-error' ).remove();
|
370 |
wcCheckoutForm.unblock();
|
371 |
logError( result.error );
|
372 |
-
$( '.woocommerce-notices-wrapper:first-child' ).html( '<div class="woocommerce-error cpsw-errors">' + result.error.message + '</div>' ).show();
|
373 |
window.scrollTo( { top: 0, behavior: 'smooth' } );
|
374 |
wcCheckoutForm.removeClass( 'processing' );
|
375 |
}
|
@@ -387,7 +388,7 @@
|
|
387 |
$( '.woocommerce-error' ).remove();
|
388 |
wcCheckoutForm.unblock();
|
389 |
logError( result.error );
|
390 |
-
$( '.woocommerce-notices-wrapper:first-child' ).html( '<div class="woocommerce-error cpsw-errors">' + result.error.message + '</div>' ).show();
|
391 |
window.scrollTo( { top: 0, behavior: 'smooth' } );
|
392 |
wcCheckoutForm.removeClass( 'processing' );
|
393 |
}
|
@@ -405,7 +406,7 @@
|
|
405 |
$( '.woocommerce-error' ).remove();
|
406 |
wcCheckoutForm.unblock();
|
407 |
logError( result.error );
|
408 |
-
$( '.woocommerce-notices-wrapper:first-child' ).html( '<div class="woocommerce-error cpsw-errors">' + result.error.message + '</div>' ).show();
|
409 |
window.scrollTo( { top: 0, behavior: 'smooth' } );
|
410 |
wcCheckoutForm.removeClass( 'processing' );
|
411 |
}
|
@@ -419,7 +420,7 @@
|
|
419 |
$( '.woocommerce-error' ).remove();
|
420 |
$( 'form.woocommerce-checkout' ).unblock();
|
421 |
logError( result.error );
|
422 |
-
$( '.woocommerce-notices-wrapper:first-child' ).html( '<div class="woocommerce-error cpsw-errors">' + result.error.message + '</div>' ).show();
|
423 |
window.scrollTo( { top: 0, behavior: 'smooth' } );
|
424 |
} else {
|
425 |
// The payment has been processed!
|
@@ -441,7 +442,7 @@
|
|
441 |
$( '.woocommerce-error' ).remove();
|
442 |
$( 'form.woocommerce-checkout' ).unblock();
|
443 |
logError( result.error );
|
444 |
-
$( '.woocommerce-notices-wrapper:first-child' ).html( '<div class="woocommerce-error cpsw-errors">' + result.error.message + '</div>' ).show();
|
445 |
window.scrollTo( { top: 0, behavior: 'smooth' } );
|
446 |
} else {
|
447 |
// The payment has been processed!
|
@@ -478,7 +479,7 @@
|
|
478 |
$( '.woocommerce-error' ).remove();
|
479 |
wcCheckoutForm.unblock();
|
480 |
logError( result.error );
|
481 |
-
$( '.woocommerce-notices-wrapper:first-child' ).html( '<div class="woocommerce-error cpsw-errors">' + result.error.message + '</div>' ).show();
|
482 |
window.scrollTo( { top: 0, behavior: 'smooth' } );
|
483 |
} else {
|
484 |
// The payment has been processed!
|
@@ -489,7 +490,7 @@
|
|
489 |
$( '.woocommerce-error' ).remove();
|
490 |
wcCheckoutForm.unblock();
|
491 |
logError( result.paymentIntent.last_payment_error );
|
492 |
-
$( '.woocommerce-notices-wrapper:first-child' ).html( '<div class="woocommerce-error cpsw-errors">' + result.paymentIntent.last_payment_error.message + '</div>' ).show();
|
493 |
window.scrollTo( { top: 0, behavior: 'smooth' } );
|
494 |
wcCheckoutForm.removeClass( 'processing' );
|
495 |
} else {
|
@@ -504,6 +505,10 @@
|
|
504 |
}
|
505 |
}
|
506 |
|
|
|
|
|
|
|
|
|
507 |
function getBillingDetails() {
|
508 |
if ( ! $( 'form.woocommerce-checkout' ).length ) {
|
509 |
return currentUserBilling;
|
8 |
const notAllowedString = cpsw_global_settings.not_allowed_string;
|
9 |
const defaultCards = cpsw_global_settings.default_cards;
|
10 |
const homeURL = cpsw_global_settings.get_home_url;
|
11 |
+
const stripeLocalized = cpsw_global_settings.stripe_localized;
|
12 |
|
13 |
if ( '' === pubKey || ( 'live' === mode && ! cpsw_global_settings.is_ssl ) ) {
|
14 |
return;
|
84 |
}
|
85 |
}
|
86 |
if ( error ) {
|
87 |
+
$( '.cpsw-stripe-error' ).html( getStripeLocalizedMessage( error.code, error.message ) );
|
88 |
} else {
|
89 |
$( '.cpsw-stripe-error' ).html( '' );
|
90 |
}
|
123 |
}
|
124 |
|
125 |
if ( error ) {
|
126 |
+
$( '.cpsw-number-error' ).html( getStripeLocalizedMessage( error.code, error.message ) );
|
127 |
} else {
|
128 |
$( '.cpsw-number-error' ).html( '' );
|
129 |
}
|
130 |
} );
|
131 |
cardExpiry.on( 'change', ( { error } ) => {
|
132 |
if ( error ) {
|
133 |
+
$( '.cpsw-expiry-error' ).html( getStripeLocalizedMessage( error.code, error.message ) );
|
134 |
} else {
|
135 |
$( '.cpsw-expiry-error' ).html( '' );
|
136 |
}
|
137 |
} );
|
138 |
cardCvc.on( 'change', ( { error } ) => {
|
139 |
if ( error ) {
|
140 |
+
$( '.cpsw-cvc-error' ).html( getStripeLocalizedMessage( error.code, error.message ) );
|
141 |
} else {
|
142 |
$( '.cpsw-cvc-error' ).html( '' );
|
143 |
}
|
275 |
$( 'form#order_review' ).unblock();
|
276 |
$( 'form#add_payment_method' ).unblock();
|
277 |
logError( result.error );
|
278 |
+
$( '.woocommerce-notices-wrapper:first-child' ).html( '<div class="woocommerce-error cpsw-errors">' + getStripeLocalizedMessage( result.error.code, result.error.message ) + '</div>' ).show();
|
279 |
window.scrollTo( { top: 0, behavior: 'smooth' } );
|
280 |
return false;
|
281 |
}
|
304 |
$( '.woocommerce-error' ).remove();
|
305 |
$( 'form.woocommerce-checkout' ).unblock();
|
306 |
logError( result.error );
|
307 |
+
$( '.woocommerce-notices-wrapper:first-child' ).html( '<div class="woocommerce-error cpsw-errors">' + getStripeLocalizedMessage( result.error.code, result.error.message ) + '</div>' ).show();
|
308 |
window.scrollTo( { top: 0, behavior: 'smooth' } );
|
309 |
$( 'form#order_review' ).unblock();
|
310 |
$( 'form#add_payment_method' ).unblock();
|
330 |
$( '.woocommerce-error' ).remove();
|
331 |
wcCheckoutForm.unblock();
|
332 |
logError( result.error );
|
333 |
+
$( '.woocommerce-notices-wrapper:first-child' ).html( '<div class="woocommerce-error cpsw-errors">' + getStripeLocalizedMessage( result.error.code, result.error.message ) + '</div>' ).show();
|
334 |
window.scrollTo( { top: 0, behavior: 'smooth' } );
|
335 |
} else {
|
336 |
// The payment has been processed!
|
353 |
$( '.woocommerce-error' ).remove();
|
354 |
wcCheckoutForm.unblock();
|
355 |
logError( result.error );
|
356 |
+
$( '.woocommerce-notices-wrapper:first-child' ).html( '<div class="woocommerce-error cpsw-errors">' + getStripeLocalizedMessage( result.error.code, result.error.message ) + '</div>' ).show();
|
357 |
window.scrollTo( { top: 0, behavior: 'smooth' } );
|
358 |
}
|
359 |
} );
|
370 |
$( '.woocommerce-error' ).remove();
|
371 |
wcCheckoutForm.unblock();
|
372 |
logError( result.error );
|
373 |
+
$( '.woocommerce-notices-wrapper:first-child' ).html( '<div class="woocommerce-error cpsw-errors">' + getStripeLocalizedMessage( result.error.code, result.error.message ) + '</div>' ).show();
|
374 |
window.scrollTo( { top: 0, behavior: 'smooth' } );
|
375 |
wcCheckoutForm.removeClass( 'processing' );
|
376 |
}
|
388 |
$( '.woocommerce-error' ).remove();
|
389 |
wcCheckoutForm.unblock();
|
390 |
logError( result.error );
|
391 |
+
$( '.woocommerce-notices-wrapper:first-child' ).html( '<div class="woocommerce-error cpsw-errors">' + getStripeLocalizedMessage( result.error.code, result.error.message ) + '</div>' ).show();
|
392 |
window.scrollTo( { top: 0, behavior: 'smooth' } );
|
393 |
wcCheckoutForm.removeClass( 'processing' );
|
394 |
}
|
406 |
$( '.woocommerce-error' ).remove();
|
407 |
wcCheckoutForm.unblock();
|
408 |
logError( result.error );
|
409 |
+
$( '.woocommerce-notices-wrapper:first-child' ).html( '<div class="woocommerce-error cpsw-errors">' + getStripeLocalizedMessage( result.error.code, result.error.message ) + '</div>' ).show();
|
410 |
window.scrollTo( { top: 0, behavior: 'smooth' } );
|
411 |
wcCheckoutForm.removeClass( 'processing' );
|
412 |
}
|
420 |
$( '.woocommerce-error' ).remove();
|
421 |
$( 'form.woocommerce-checkout' ).unblock();
|
422 |
logError( result.error );
|
423 |
+
$( '.woocommerce-notices-wrapper:first-child' ).html( '<div class="woocommerce-error cpsw-errors">' + getStripeLocalizedMessage( result.error.code, result.error.message ) + '</div>' ).show();
|
424 |
window.scrollTo( { top: 0, behavior: 'smooth' } );
|
425 |
} else {
|
426 |
// The payment has been processed!
|
442 |
$( '.woocommerce-error' ).remove();
|
443 |
$( 'form.woocommerce-checkout' ).unblock();
|
444 |
logError( result.error );
|
445 |
+
$( '.woocommerce-notices-wrapper:first-child' ).html( '<div class="woocommerce-error cpsw-errors">' + getStripeLocalizedMessage( result.error.code, result.error.message ) + '</div>' ).show();
|
446 |
window.scrollTo( { top: 0, behavior: 'smooth' } );
|
447 |
} else {
|
448 |
// The payment has been processed!
|
479 |
$( '.woocommerce-error' ).remove();
|
480 |
wcCheckoutForm.unblock();
|
481 |
logError( result.error );
|
482 |
+
$( '.woocommerce-notices-wrapper:first-child' ).html( '<div class="woocommerce-error cpsw-errors">' + getStripeLocalizedMessage( result.error.code, result.error.message ) + '</div>' ).show();
|
483 |
window.scrollTo( { top: 0, behavior: 'smooth' } );
|
484 |
} else {
|
485 |
// The payment has been processed!
|
490 |
$( '.woocommerce-error' ).remove();
|
491 |
wcCheckoutForm.unblock();
|
492 |
logError( result.paymentIntent.last_payment_error );
|
493 |
+
$( '.woocommerce-notices-wrapper:first-child' ).html( '<div class="woocommerce-error cpsw-errors">' + getStripeLocalizedMessage( result.paymentIntent.last_payment_error.code, result.paymentIntent.last_payment_error.message ) + '</div>' ).show();
|
494 |
window.scrollTo( { top: 0, behavior: 'smooth' } );
|
495 |
wcCheckoutForm.removeClass( 'processing' );
|
496 |
} else {
|
505 |
}
|
506 |
}
|
507 |
|
508 |
+
function getStripeLocalizedMessage( type, message ) {
|
509 |
+
return ( null !== stripeLocalized[ type ] && undefined !== stripeLocalized[ type ] ) ? stripeLocalized[ type ] : message;
|
510 |
+
}
|
511 |
+
|
512 |
function getBillingDetails() {
|
513 |
if ( ! $( 'form.woocommerce-checkout' ).length ) {
|
514 |
return currentUserBilling;
|
autoloader.php
CHANGED
@@ -97,8 +97,11 @@ class CPSW_Loader {
|
|
97 |
add_action( 'plugins_loaded', [ $this, 'load_classes' ] );
|
98 |
add_filter( 'plugin_action_links_' . CPSW_BASE, [ $this, 'action_links' ] );
|
99 |
add_action( 'woocommerce_init', [ $this, 'frontend_scripts' ] );
|
100 |
-
add_action( 'admin_init', [ $this, 'check_for_onboarding' ] );
|
101 |
add_action( 'plugins_loaded', [ $this, 'load_cpsw_textdomain' ] );
|
|
|
|
|
|
|
|
|
102 |
}
|
103 |
|
104 |
/**
|
@@ -217,17 +220,24 @@ class CPSW_Loader {
|
|
217 |
* @since 1.3.0
|
218 |
*/
|
219 |
public function check_for_onboarding() {
|
|
|
|
|
|
|
|
|
|
|
220 |
if ( ! get_option( 'cpsw_start_onboarding', false ) ) {
|
221 |
return;
|
222 |
}
|
|
|
223 |
$onboarding_url = admin_url( 'index.php?page=cpsw-onboarding' );
|
224 |
|
225 |
if ( ! class_exists( 'woocommerce' ) ) {
|
226 |
$onboarding_url = add_query_arg( 'cpsw_call', 'setup-woocommerce', $onboarding_url );
|
227 |
}
|
228 |
|
229 |
-
wp_safe_redirect( esc_url_raw( $onboarding_url ) );
|
230 |
delete_option( 'cpsw_start_onboarding' );
|
|
|
|
|
231 |
}
|
232 |
|
233 |
/**
|
97 |
add_action( 'plugins_loaded', [ $this, 'load_classes' ] );
|
98 |
add_filter( 'plugin_action_links_' . CPSW_BASE, [ $this, 'action_links' ] );
|
99 |
add_action( 'woocommerce_init', [ $this, 'frontend_scripts' ] );
|
|
|
100 |
add_action( 'plugins_loaded', [ $this, 'load_cpsw_textdomain' ] );
|
101 |
+
|
102 |
+
if ( is_admin() ) {
|
103 |
+
add_action( 'admin_init', [ $this, 'check_for_onboarding' ] );
|
104 |
+
}
|
105 |
}
|
106 |
|
107 |
/**
|
220 |
* @since 1.3.0
|
221 |
*/
|
222 |
public function check_for_onboarding() {
|
223 |
+
|
224 |
+
if ( ! current_user_can( 'manage_options' ) ) {
|
225 |
+
return;
|
226 |
+
}
|
227 |
+
|
228 |
if ( ! get_option( 'cpsw_start_onboarding', false ) ) {
|
229 |
return;
|
230 |
}
|
231 |
+
|
232 |
$onboarding_url = admin_url( 'index.php?page=cpsw-onboarding' );
|
233 |
|
234 |
if ( ! class_exists( 'woocommerce' ) ) {
|
235 |
$onboarding_url = add_query_arg( 'cpsw_call', 'setup-woocommerce', $onboarding_url );
|
236 |
}
|
237 |
|
|
|
238 |
delete_option( 'cpsw_start_onboarding' );
|
239 |
+
|
240 |
+
wp_safe_redirect( esc_url_raw( $onboarding_url ) );
|
241 |
}
|
242 |
|
243 |
/**
|
checkout-plugins-stripe-woo.php
CHANGED
@@ -3,7 +3,7 @@
|
|
3 |
* Plugin Name: Checkout Plugins - Stripe for WooCommerce
|
4 |
* Plugin URI: https://www.checkoutplugins.com/
|
5 |
* Description: Stripe for WooCommerce delivers a simple, secure way to accept credit card payments in your WooCommerce store. Reduce payment friction and boost conversions using this free plugin!
|
6 |
-
* Version: 1.4.
|
7 |
* Author: Checkout Plugins
|
8 |
* Author URI: https://checkoutplugins.com/
|
9 |
* License: GPLv2 or later
|
@@ -20,6 +20,6 @@ define( 'CPSW_FILE', __FILE__ );
|
|
20 |
define( 'CPSW_BASE', plugin_basename( CPSW_FILE ) );
|
21 |
define( 'CPSW_DIR', plugin_dir_path( CPSW_FILE ) );
|
22 |
define( 'CPSW_URL', plugins_url( '/', CPSW_FILE ) );
|
23 |
-
define( 'CPSW_VERSION', '1.4.
|
24 |
|
25 |
require_once 'autoloader.php';
|
3 |
* Plugin Name: Checkout Plugins - Stripe for WooCommerce
|
4 |
* Plugin URI: https://www.checkoutplugins.com/
|
5 |
* Description: Stripe for WooCommerce delivers a simple, secure way to accept credit card payments in your WooCommerce store. Reduce payment friction and boost conversions using this free plugin!
|
6 |
+
* Version: 1.4.1
|
7 |
* Author: Checkout Plugins
|
8 |
* Author URI: https://checkoutplugins.com/
|
9 |
* License: GPLv2 or later
|
20 |
define( 'CPSW_BASE', plugin_basename( CPSW_FILE ) );
|
21 |
define( 'CPSW_DIR', plugin_dir_path( CPSW_FILE ) );
|
22 |
define( 'CPSW_URL', plugins_url( '/', CPSW_FILE ) );
|
23 |
+
define( 'CPSW_VERSION', '1.4.1' );
|
24 |
|
25 |
require_once 'autoloader.php';
|
gateway/local-gateway.php
CHANGED
@@ -579,10 +579,11 @@ class Local_Gateway extends Abstract_Payment_Gateway {
|
|
579 |
wp_safe_redirect( $redirect_url );
|
580 |
} elseif ( isset( $response['data']->last_payment_error ) ) {
|
581 |
$message = isset( $response['data']->last_payment_error->message ) ? $response['data']->last_payment_error->message : '';
|
|
|
582 |
$order->update_status( 'wc-failed' );
|
583 |
|
584 |
// translators: %s: payment fail message.
|
585 |
-
wc_add_notice( sprintf( __( 'Payment failed. %s', 'checkout-plugins-stripe-woo' ), $message ), 'error' );
|
586 |
wp_safe_redirect( wc_get_checkout_url() );
|
587 |
}
|
588 |
exit();
|
579 |
wp_safe_redirect( $redirect_url );
|
580 |
} elseif ( isset( $response['data']->last_payment_error ) ) {
|
581 |
$message = isset( $response['data']->last_payment_error->message ) ? $response['data']->last_payment_error->message : '';
|
582 |
+
$code = isset( $response['data']->last_payment_error->code ) ? $response['data']->last_payment_error->code : '';
|
583 |
$order->update_status( 'wc-failed' );
|
584 |
|
585 |
// translators: %s: payment fail message.
|
586 |
+
wc_add_notice( sprintf( __( 'Payment failed. %s', 'checkout-plugins-stripe-woo' ), Helper::get_localized_messages( $code, $message ) ), 'error' );
|
587 |
wp_safe_redirect( wc_get_checkout_url() );
|
588 |
}
|
589 |
exit();
|
gateway/stripe/card-payments.php
CHANGED
@@ -356,7 +356,16 @@ $ */
|
|
356 |
$redirect_to = $this->process_order( end( $intent->charges->data ), $order_id );
|
357 |
$redirect_url = apply_filters( 'cpsw_redirect_order_url', ! empty( $redirect ) ? $redirect : $redirect_to, $order );
|
358 |
wp_safe_redirect( $redirect_url );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
359 |
}
|
|
|
360 |
exit();
|
361 |
}
|
362 |
|
356 |
$redirect_to = $this->process_order( end( $intent->charges->data ), $order_id );
|
357 |
$redirect_url = apply_filters( 'cpsw_redirect_order_url', ! empty( $redirect ) ? $redirect : $redirect_to, $order );
|
358 |
wp_safe_redirect( $redirect_url );
|
359 |
+
} elseif ( isset( $response['data']->last_payment_error ) ) {
|
360 |
+
$message = isset( $response['data']->last_payment_error->message ) ? $response['data']->last_payment_error->message : '';
|
361 |
+
$code = isset( $response['data']->last_payment_error->code ) ? $response['data']->last_payment_error->code : '';
|
362 |
+
$order->update_status( 'wc-failed' );
|
363 |
+
|
364 |
+
// translators: %s: payment fail message.
|
365 |
+
wc_add_notice( sprintf( __( 'Payment failed. %s', 'checkout-plugins-stripe-woo' ), Helper::get_localized_messages( $code, $message ) ), 'error' );
|
366 |
+
wp_safe_redirect( wc_get_checkout_url() );
|
367 |
}
|
368 |
+
|
369 |
exit();
|
370 |
}
|
371 |
|
gateway/stripe/frontend-scripts.php
CHANGED
@@ -104,6 +104,7 @@ class Frontend_Scripts {
|
|
104 |
'ajax_url' => admin_url( 'admin-ajax.php' ),
|
105 |
'js_nonce' => wp_create_nonce( 'cpsw_js_error_nonce' ),
|
106 |
'allowed_cards' => Helper::get_setting( 'allowed_cards', 'cpsw_stripe' ),
|
|
|
107 |
'default_cards' => [
|
108 |
'mastercard' => __( 'MasterCard', 'checkout-plugins-stripe-woo' ),
|
109 |
'visa' => __( 'Visa', 'checkout-plugins-stripe-woo' ),
|
@@ -132,7 +133,7 @@ class Frontend_Scripts {
|
|
132 |
]
|
133 |
);
|
134 |
|
135 |
-
if ( 'yes' === Helper::get_setting( 'express_checkout_enabled', 'cpsw_stripe' ) ) {
|
136 |
wp_register_script( $this->prefix . 'payment-request', $this->assets_url . 'js/payment-request.js', [ 'jquery', $this->prefix . 'stripe-external', $this->prefix . 'stripe-elements' ], $this->version, true );
|
137 |
wp_enqueue_script( $this->prefix . 'payment-request' );
|
138 |
|
104 |
'ajax_url' => admin_url( 'admin-ajax.php' ),
|
105 |
'js_nonce' => wp_create_nonce( 'cpsw_js_error_nonce' ),
|
106 |
'allowed_cards' => Helper::get_setting( 'allowed_cards', 'cpsw_stripe' ),
|
107 |
+
'stripe_localized' => Helper::get_localized_messages(),
|
108 |
'default_cards' => [
|
109 |
'mastercard' => __( 'MasterCard', 'checkout-plugins-stripe-woo' ),
|
110 |
'visa' => __( 'Visa', 'checkout-plugins-stripe-woo' ),
|
133 |
]
|
134 |
);
|
135 |
|
136 |
+
if ( 'yes' === Helper::get_setting( 'enabled', 'cpsw_stripe' ) && 'yes' === Helper::get_setting( 'express_checkout_enabled', 'cpsw_stripe' ) ) {
|
137 |
wp_register_script( $this->prefix . 'payment-request', $this->assets_url . 'js/payment-request.js', [ 'jquery', $this->prefix . 'stripe-external', $this->prefix . 'stripe-elements' ], $this->version, true );
|
138 |
wp_enqueue_script( $this->prefix . 'payment-request' );
|
139 |
|
gateway/stripe/payment-request-api.php
CHANGED
@@ -143,20 +143,30 @@ class Payment_Request_Api extends Card_Payments {
|
|
143 |
$button_tag = 'a';
|
144 |
}
|
145 |
|
146 |
-
$options
|
147 |
-
$separator_below
|
148 |
-
$position_class
|
149 |
-
$alignment_class
|
150 |
-
$button_width
|
151 |
-
$
|
|
|
152 |
|
153 |
if ( 'checkout' === $container_class ) {
|
154 |
$alignment_class = $options['express_checkout_button_alignment'];
|
155 |
if ( ! empty( $options['express_checkout_button_width'] && $options['express_checkout_button_width'] > 0 ) ) {
|
156 |
$button_width = 'min-width:' . (int) $options['express_checkout_button_width'] . 'px';
|
|
|
|
|
|
|
|
|
|
|
157 |
} else {
|
158 |
$button_width = 'width: 100%';
|
159 |
}
|
|
|
|
|
|
|
|
|
160 |
}
|
161 |
|
162 |
if ( 'cpsw-product' === $container_class ) {
|
@@ -196,7 +206,7 @@ class Payment_Request_Api extends Card_Payments {
|
|
196 |
}
|
197 |
?>
|
198 |
<div id="cpsw-payment-request-custom-button" style="<?php echo esc_attr( $button_width ); ?>">
|
199 |
-
<<?php echo esc_attr( $button_tag ); ?> lang="auto" class="cpsw-payment-request-custom-button-render cpsw_express_checkout_button cpsw-express-checkout-button <?php echo esc_attr( $button_class ); ?>" style="<?php echo esc_attr( $button_width ); ?>">
|
200 |
<div class="cpsw-express-checkout-button-inner" tabindex="-1">
|
201 |
<div class="cpsw-express-checkout-button-shines">
|
202 |
<div class="cpsw-express-checkout-button-shine cpsw-express-checkout-button-shine--scroll"></div>
|
@@ -252,6 +262,10 @@ class Payment_Request_Api extends Card_Payments {
|
|
252 |
if ( ! empty( $options['express_checkout_separator_checkout'] ) ) {
|
253 |
$separator_text = $options['express_checkout_separator_checkout'];
|
254 |
}
|
|
|
|
|
|
|
|
|
255 |
}
|
256 |
|
257 |
if ( 'cart' === $container_class && ! empty( $options['express_checkout_separator_cart'] ) ) {
|
143 |
$button_tag = 'a';
|
144 |
}
|
145 |
|
146 |
+
$options = Helper::get_gateway_settings( 'cpsw_stripe' );
|
147 |
+
$separator_below = true;
|
148 |
+
$position_class = 'above';
|
149 |
+
$alignment_class = '';
|
150 |
+
$button_width = '';
|
151 |
+
$button_inner_width = '';
|
152 |
+
$button_label = '' === $options['express_checkout_button_text'] ? __( 'Pay now', 'checkout-plugins-stripe-woo' ) : ucfirst( $options['express_checkout_button_text'] );
|
153 |
|
154 |
if ( 'checkout' === $container_class ) {
|
155 |
$alignment_class = $options['express_checkout_button_alignment'];
|
156 |
if ( ! empty( $options['express_checkout_button_width'] && $options['express_checkout_button_width'] > 0 ) ) {
|
157 |
$button_width = 'min-width:' . (int) $options['express_checkout_button_width'] . 'px';
|
158 |
+
|
159 |
+
if ( (int) $options['express_checkout_button_width'] > 500 ) {
|
160 |
+
$button_width = 'max-width:' . (int) $options['express_checkout_button_width'] . 'px;';
|
161 |
+
$button_inner_width = 'width:100%;';
|
162 |
+
}
|
163 |
} else {
|
164 |
$button_width = 'width: 100%';
|
165 |
}
|
166 |
+
|
167 |
+
if ( 'classic' === $options['express_checkout_checkout_page_layout'] ) {
|
168 |
+
$alignment_class = 'center cpsw-classic';
|
169 |
+
}
|
170 |
}
|
171 |
|
172 |
if ( 'cpsw-product' === $container_class ) {
|
206 |
}
|
207 |
?>
|
208 |
<div id="cpsw-payment-request-custom-button" style="<?php echo esc_attr( $button_width ); ?>">
|
209 |
+
<<?php echo esc_attr( $button_tag ); ?> lang="auto" class="cpsw-payment-request-custom-button-render cpsw_express_checkout_button cpsw-express-checkout-button <?php echo esc_attr( $button_class ); ?>" style="<?php echo esc_attr( $button_width ); ?> <?php echo esc_attr( $button_inner_width ); ?>">
|
210 |
<div class="cpsw-express-checkout-button-inner" tabindex="-1">
|
211 |
<div class="cpsw-express-checkout-button-shines">
|
212 |
<div class="cpsw-express-checkout-button-shine cpsw-express-checkout-button-shine--scroll"></div>
|
262 |
if ( ! empty( $options['express_checkout_separator_checkout'] ) ) {
|
263 |
$separator_text = $options['express_checkout_separator_checkout'];
|
264 |
}
|
265 |
+
|
266 |
+
if ( 'classic' === $options['express_checkout_checkout_page_layout'] ) {
|
267 |
+
$alignment_class = 'center';
|
268 |
+
}
|
269 |
}
|
270 |
|
271 |
if ( 'cart' === $container_class && ! empty( $options['express_checkout_separator_cart'] ) ) {
|
inc/helper.php
CHANGED
@@ -8,57 +8,11 @@
|
|
8 |
|
9 |
namespace CPSW\Inc;
|
10 |
|
11 |
-
use Exception;
|
12 |
-
|
13 |
/**
|
14 |
* Stripe Webhook.
|
15 |
*/
|
16 |
class Helper {
|
17 |
|
18 |
-
/**
|
19 |
-
* Default gateway values
|
20 |
-
*
|
21 |
-
* @var array
|
22 |
-
*/
|
23 |
-
private static $gateway_defaults = [
|
24 |
-
'woocommerce_cpsw_stripe_settings' => [
|
25 |
-
'enabled' => 'no',
|
26 |
-
'inline_cc' => 'yes',
|
27 |
-
'order_status' => '',
|
28 |
-
'allowed_cards' => [
|
29 |
-
'mastercard',
|
30 |
-
'visa',
|
31 |
-
'diners',
|
32 |
-
'discover',
|
33 |
-
'amex',
|
34 |
-
'jcb',
|
35 |
-
'unionpay',
|
36 |
-
],
|
37 |
-
'express_checkout_location' => [
|
38 |
-
'product',
|
39 |
-
'cart',
|
40 |
-
'checkout',
|
41 |
-
],
|
42 |
-
'express_checkout_enabled' => 'no',
|
43 |
-
'express_checkout_button_text' => 'Pay now',
|
44 |
-
'express_checkout_button_theme' => 'dark',
|
45 |
-
'express_checkout_button_height' => '40',
|
46 |
-
'express_checkout_title' => 'Express Checkout',
|
47 |
-
'express_checkout_tagline' => 'Checkout faster with one of our express checkout options.',
|
48 |
-
'express_checkout_product_page_position' => 'above',
|
49 |
-
'express_checkout_product_sticky_footer' => 'yes',
|
50 |
-
'express_checkout_separator_product' => 'OR',
|
51 |
-
'express_checkout_button_width' => '',
|
52 |
-
'express_checkout_button_alignment' => 'left',
|
53 |
-
'express_checkout_separator_cart' => 'OR',
|
54 |
-
'express_checkout_separator_checkout' => 'OR',
|
55 |
-
'express_checkout_checkout_page_position' => 'above-checkout',
|
56 |
-
],
|
57 |
-
'woocommerce_cpsw_alipay_settings' => [
|
58 |
-
'enabled' => 'no',
|
59 |
-
],
|
60 |
-
];
|
61 |
-
|
62 |
/**
|
63 |
* Default global values
|
64 |
*
|
@@ -75,7 +29,7 @@ class Helper {
|
|
75 |
'cpsw_live_webhook_secret' => '',
|
76 |
'cpsw_test_webhook_secret' => '',
|
77 |
'cpsw_account_id' => '',
|
78 |
-
'cpsw_debug_log' => '
|
79 |
];
|
80 |
|
81 |
/**
|
@@ -99,6 +53,56 @@ class Helper {
|
|
99 |
return apply_filters( 'cpsw_settings', $response );
|
100 |
}
|
101 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
102 |
/**
|
103 |
* Get all settings of a particular gateway
|
104 |
*
|
@@ -108,10 +112,11 @@ class Helper {
|
|
108 |
public static function get_gateway_settings( $gateway = 'cpsw_stripe' ) {
|
109 |
$default_settings = [];
|
110 |
$setting_name = 'woocommerce_' . $gateway . '_settings';
|
111 |
-
$saved_settings = get_option( $setting_name, [] );
|
|
|
112 |
|
113 |
-
if ( isset(
|
114 |
-
$default_settings =
|
115 |
}
|
116 |
|
117 |
$settings = array_merge( $default_settings, $saved_settings );
|
@@ -195,4 +200,100 @@ class Helper {
|
|
195 |
|
196 |
return $endpoint_secret;
|
197 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
198 |
}
|
8 |
|
9 |
namespace CPSW\Inc;
|
10 |
|
|
|
|
|
11 |
/**
|
12 |
* Stripe Webhook.
|
13 |
*/
|
14 |
class Helper {
|
15 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
16 |
/**
|
17 |
* Default global values
|
18 |
*
|
29 |
'cpsw_live_webhook_secret' => '',
|
30 |
'cpsw_test_webhook_secret' => '',
|
31 |
'cpsw_account_id' => '',
|
32 |
+
'cpsw_debug_log' => 'yes',
|
33 |
];
|
34 |
|
35 |
/**
|
53 |
return apply_filters( 'cpsw_settings', $response );
|
54 |
}
|
55 |
|
56 |
+
/**
|
57 |
+
* Stripe get all settings
|
58 |
+
*
|
59 |
+
* @return $global_settings array It returns all stripe settings in an array.
|
60 |
+
*/
|
61 |
+
public static function get_gateway_defaults() {
|
62 |
+
return apply_filters(
|
63 |
+
'cpsw_stripe_gateway_defaults_settings',
|
64 |
+
[
|
65 |
+
'woocommerce_cpsw_stripe_settings' => [
|
66 |
+
'enabled' => 'no',
|
67 |
+
'inline_cc' => 'yes',
|
68 |
+
'order_status' => '',
|
69 |
+
'allowed_cards' => [
|
70 |
+
'mastercard',
|
71 |
+
'visa',
|
72 |
+
'diners',
|
73 |
+
'discover',
|
74 |
+
'amex',
|
75 |
+
'jcb',
|
76 |
+
'unionpay',
|
77 |
+
],
|
78 |
+
'express_checkout_location' => [
|
79 |
+
'product',
|
80 |
+
'cart',
|
81 |
+
'checkout',
|
82 |
+
],
|
83 |
+
'express_checkout_enabled' => 'no',
|
84 |
+
'express_checkout_button_text' => __( 'Pay now', 'checkout-plugins-stripe-woo' ),
|
85 |
+
'express_checkout_button_theme' => 'dark',
|
86 |
+
'express_checkout_button_height' => '40',
|
87 |
+
'express_checkout_title' => __( 'Express Checkout', 'checkout-plugins-stripe-woo' ),
|
88 |
+
'express_checkout_tagline' => __( 'Checkout faster with one of our express checkout options.', 'checkout-plugins-stripe-woo' ),
|
89 |
+
'express_checkout_product_page_position' => 'above',
|
90 |
+
'express_checkout_product_sticky_footer' => 'yes',
|
91 |
+
'express_checkout_separator_product' => __( 'OR', 'checkout-plugins-stripe-woo' ),
|
92 |
+
'express_checkout_button_width' => '',
|
93 |
+
'express_checkout_button_alignment' => 'left',
|
94 |
+
'express_checkout_separator_cart' => __( 'OR', 'checkout-plugins-stripe-woo' ),
|
95 |
+
'express_checkout_separator_checkout' => __( 'OR', 'checkout-plugins-stripe-woo' ),
|
96 |
+
'express_checkout_checkout_page_position' => 'above-checkout',
|
97 |
+
'express_checkout_checkout_page_layout' => 'custom',
|
98 |
+
],
|
99 |
+
'woocommerce_cpsw_alipay_settings' => [
|
100 |
+
'enabled' => 'no',
|
101 |
+
],
|
102 |
+
]
|
103 |
+
);
|
104 |
+
}
|
105 |
+
|
106 |
/**
|
107 |
* Get all settings of a particular gateway
|
108 |
*
|
112 |
public static function get_gateway_settings( $gateway = 'cpsw_stripe' ) {
|
113 |
$default_settings = [];
|
114 |
$setting_name = 'woocommerce_' . $gateway . '_settings';
|
115 |
+
$saved_settings = is_array( get_option( $setting_name, [] ) ) ? get_option( $setting_name, [] ) : [];
|
116 |
+
$gateway_defaults = self::get_gateway_defaults();
|
117 |
|
118 |
+
if ( isset( $gateway_defaults[ $setting_name ] ) ) {
|
119 |
+
$default_settings = $gateway_defaults[ $setting_name ];
|
120 |
}
|
121 |
|
122 |
$settings = array_merge( $default_settings, $saved_settings );
|
200 |
|
201 |
return $endpoint_secret;
|
202 |
}
|
203 |
+
|
204 |
+
/**
|
205 |
+
* Localize Stripe messages based on code
|
206 |
+
*
|
207 |
+
* @since 1.4.1
|
208 |
+
*
|
209 |
+
* @param string $code Stripe error code.
|
210 |
+
* @param string $message Stripe error message.
|
211 |
+
*
|
212 |
+
* @return string
|
213 |
+
*/
|
214 |
+
public static function get_localized_messages( $code = '', $message = '' ) {
|
215 |
+
$localized_messages = apply_filters(
|
216 |
+
'cpsw_stripe_localized_messages',
|
217 |
+
[
|
218 |
+
'account_country_invalid_address' => __( 'The business address that you provided does not match the country set in your account. Please enter an address that falls within the same country.', 'checkout-plugins-stripe-woo' ),
|
219 |
+
'account_invalid' => __( 'The account ID provided in the Stripe-Account header is invalid. Please check that your requests specify a valid account ID.', 'checkout-plugins-stripe-woo' ),
|
220 |
+
'amount_too_large' => __( 'The specified amount is greater than the maximum amount allowed. Use a lower amount and try again.', 'checkout-plugins-stripe-woo' ),
|
221 |
+
'amount_too_small' => __( 'The specified amount is less than the minimum amount allowed. Use a higher amount and try again.', 'checkout-plugins-stripe-woo' ),
|
222 |
+
'api_key_expired' => __( 'Your API Key has expired. Please update your integration with the latest API key available in your Dashboard.', 'checkout-plugins-stripe-woo' ),
|
223 |
+
'authentication_required' => __( 'The payment requires authentication to proceed. If your customer is off session, notify your customer to return to your application and complete the payment. If you provided the error_on_requires_action parameter, then your customer should try another card that does not require authentication.', 'checkout-plugins-stripe-woo' ),
|
224 |
+
'balance_insufficient' => __( 'The transfer or payout could not be completed because the associated account does not have a sufficient balance available. Create a new transfer or payout using an amount less than or equal to the account’s available balance.', 'checkout-plugins-stripe-woo' ),
|
225 |
+
'bank_account_declined' => __( 'The bank account provided can not be used either because it is not verified yet or it is not supported.', 'checkout-plugins-stripe-woo' ),
|
226 |
+
'bank_account_unusable' => __( 'The bank account provided cannot be used. Please try a different bank account.', 'checkout-plugins-stripe-woo' ),
|
227 |
+
'setup_intent_unexpected_state' => __( 'The SetupIntent\'s state was incompatible with the operation you were trying to perform.', 'checkout-plugins-stripe-woo' ),
|
228 |
+
'payment_intent_action_required' => __( 'The provided payment method requires customer action to complete. If you\'d like to add this payment method, please upgrade your integration to handle actions.', 'checkout-plugins-stripe-woo' ),
|
229 |
+
'payment_intent_authentication_failure' => __( 'The provided payment method failed authentication. Provide a new payment method to attempt this payment again.', 'checkout-plugins-stripe-woo' ),
|
230 |
+
'payment_intent_incompatible_payment_method' => __( 'The Payment expected a payment method with different properties than what was provided.', 'checkout-plugins-stripe-woo' ),
|
231 |
+
'payment_intent_invalid_parameter' => __( 'One or more provided parameters was not allowed for the given operation on the Payment.', 'checkout-plugins-stripe-woo' ),
|
232 |
+
'payment_intent_mandate_invalid' => __( 'The provided mandate is invalid and can not be used for the payment intent.', 'checkout-plugins-stripe-woo' ),
|
233 |
+
'payment_intent_payment_attempt_expired' => __( 'The latest attempt for this Payment has expired. Provide a new payment method to attempt this Payment again.', 'checkout-plugins-stripe-woo' ),
|
234 |
+
'payment_intent_unexpected_state' => __( 'The PaymentIntent\'s state was incompatible with the operation you were trying to perform.', 'checkout-plugins-stripe-woo' ),
|
235 |
+
'payment_method_billing_details_address_missing' => __( 'The PaymentMethod\'s billing details is missing address details. Please update the missing fields and try again.', 'checkout-plugins-stripe-woo' ),
|
236 |
+
'payment_method_currency_mismatch' => __( 'The currency specified does not match the currency for the attached payment method. A payment can only be created for the same currency as the corresponding payment method.', 'checkout-plugins-stripe-woo' ),
|
237 |
+
'processing_error' => __( 'An error occurred while processing the card. Use a different payment method or try again later.', 'checkout-plugins-stripe-woo' ),
|
238 |
+
'token_already_used' => __( 'The token provided has already been used. You must create a new token before you can retry this request.', 'checkout-plugins-stripe-woo' ),
|
239 |
+
'invalid_number' => __( 'The card number is invalid. Check the card details or use a different card.', 'checkout-plugins-stripe-woo' ),
|
240 |
+
'invalid_card_type' => __( 'The card provided as an external account is not supported for payouts. Provide a non-prepaid debit card instead.', 'checkout-plugins-stripe-woo' ),
|
241 |
+
'invalid_charge_amount' => __( 'The specified amount is invalid. The charge amount must be a positive integer in the smallest currency unit, and not exceed the minimum or maximum amount.', 'checkout-plugins-stripe-woo' ),
|
242 |
+
'invalid_cvc' => __( 'The card\'s security code is invalid. Check the card\'s security code or use a different card.', 'checkout-plugins-stripe-woo' ),
|
243 |
+
'invalid_expiry_year' => __( 'The card\'s expiration year is incorrect. Check the expiration date or use a different card.', 'checkout-plugins-stripe-woo' ),
|
244 |
+
'invalid_source_usage' => __( 'The source cannot be used because it is not in the correct state.', 'checkout-plugins-stripe-woo' ),
|
245 |
+
'incorrect_address' => __( 'The address entered for the card is invalid. Please check the address or try a different card.', 'checkout-plugins-stripe-woo' ),
|
246 |
+
'incorrect_cvc' => __( 'The security code entered is invalid. Please try again.', 'checkout-plugins-stripe-woo' ),
|
247 |
+
'incorrect_number' => __( 'The card number entered is invalid. Please try again with a valid card number or use a different card.', 'checkout-plugins-stripe-woo' ),
|
248 |
+
'incorrect_zip' => __( 'The postal code entered for the card is invalid. Please try again.', 'checkout-plugins-stripe-woo' ),
|
249 |
+
'missing' => __( 'Both a customer and source ID have been provided, but the source has not been saved to the customer. To create a charge for a customer with a specified source, you must first save the card details.', 'checkout-plugins-stripe-woo' ),
|
250 |
+
'email_invalid' => __( 'The email address is invalid. Check that the email address is properly formatted and only includes allowed characters.', 'checkout-plugins-stripe-woo' ),
|
251 |
+
'card_declined' => __( 'The card has been declined. When a card is declined, the error returned also includes the decline_code attribute with the reason why the card was declined.', 'checkout-plugins-stripe-woo' ),
|
252 |
+
'parameter_unknown' => __( 'The request contains one or more unexpected parameters. Remove these and try again.', 'checkout-plugins-stripe-woo' ),
|
253 |
+
'incomplete_number' => __( 'Your card number is incomplete.', 'checkout-plugins-stripe-woo' ),
|
254 |
+
'incomplete_expiry' => __( 'Your card\'s expiration date is incomplete.', 'checkout-plugins-stripe-woo' ),
|
255 |
+
'incomplete_cvc' => __( 'Your card\'s security code is incomplete.', 'checkout-plugins-stripe-woo' ),
|
256 |
+
'incomplete_zip' => __( 'Your card\'s zip code is incomplete.', 'checkout-plugins-stripe-woo' ),
|
257 |
+
'stripe_cc_generic' => __( 'There was an error processing your credit card.', 'checkout-plugins-stripe-woo' ),
|
258 |
+
'invalid_expiry_year_past' => __( 'Your card\'s expiration year is in the past.', 'checkout-plugins-stripe-woo' ),
|
259 |
+
'bank_account_verification_failed' => __(
|
260 |
+
'The bank account cannot be verified, either because the microdeposit amounts provided do not match the actual amounts, or because verification has failed too many times.',
|
261 |
+
'checkout-plugins-stripe-woo'
|
262 |
+
),
|
263 |
+
'card_decline_rate_limit_exceeded' => __(
|
264 |
+
'This card has been declined too many times. You can try to charge this card again after 24 hours. We suggest reaching out to your customer to make sure they have entered all of their information correctly and that there are no issues with their card.',
|
265 |
+
'checkout-plugins-stripe-woo'
|
266 |
+
),
|
267 |
+
'charge_already_captured' => __( 'The charge you\'re attempting to capture has already been captured. Update the request with an uncaptured charge ID.', 'checkout-plugins-stripe-woo' ),
|
268 |
+
'charge_already_refunded' => __(
|
269 |
+
'The charge you\'re attempting to refund has already been refunded. Update the request to use the ID of a charge that has not been refunded.',
|
270 |
+
'checkout-plugins-stripe-woo'
|
271 |
+
),
|
272 |
+
'charge_disputed' => __(
|
273 |
+
'The charge you\'re attempting to refund has been charged back. Check the disputes documentation to learn how to respond to the dispute.',
|
274 |
+
'checkout-plugins-stripe-woo'
|
275 |
+
),
|
276 |
+
'charge_exceeds_source_limit' => __(
|
277 |
+
'This charge would cause you to exceed your rolling-window processing limit for this source type. Please retry the charge later, or contact us to request a higher processing limit.',
|
278 |
+
'checkout-plugins-stripe-woo'
|
279 |
+
),
|
280 |
+
'charge_expired_for_capture' => __(
|
281 |
+
'The charge cannot be captured as the authorization has expired. Auth and capture charges must be captured within seven days.',
|
282 |
+
'checkout-plugins-stripe-woo'
|
283 |
+
),
|
284 |
+
'charge_invalid_parameter' => __(
|
285 |
+
'One or more provided parameters was not allowed for the given operation on the Charge. Check our API reference or the returned error message to see which values were not correct for that Charge.',
|
286 |
+
'checkout-plugins-stripe-woo'
|
287 |
+
),
|
288 |
+
'account_number_invalid' => __( 'The bank account number provided is invalid (e.g., missing digits). Bank account information varies from country to country. We recommend creating validations in your entry forms based on the bank account formats we provide.', 'checkout-plugins-stripe-woo' ),
|
289 |
+
]
|
290 |
+
);
|
291 |
+
|
292 |
+
// if need all messages.
|
293 |
+
if ( empty( $code ) ) {
|
294 |
+
return $localized_messages;
|
295 |
+
}
|
296 |
+
|
297 |
+
return isset( $localized_messages[ $code ] ) ? $localized_messages[ $code ] : $message;
|
298 |
+
}
|
299 |
}
|
inc/traits/subscriptions.php
CHANGED
@@ -258,7 +258,7 @@ trait Subscriptions {
|
|
258 |
$order_id = $renewal_order->get_id();
|
259 |
|
260 |
$renewal_order->set_transaction_id( $id );
|
261 |
-
/* translators: %s is the charge Id */
|
262 |
$renewal_order->update_status( 'failed', sprintf( __( 'Stripe charge awaiting authentication by user: %s.', 'checkout-plugins-stripe-woo' ), $id ) );
|
263 |
if ( is_callable( [ $renewal_order, 'save' ] ) ) {
|
264 |
$renewal_order->save();
|
258 |
$order_id = $renewal_order->get_id();
|
259 |
|
260 |
$renewal_order->set_transaction_id( $id );
|
261 |
+
/* translators: %s is the stripe charge Id */
|
262 |
$renewal_order->update_status( 'failed', sprintf( __( 'Stripe charge awaiting authentication by user: %s.', 'checkout-plugins-stripe-woo' ), $id ) );
|
263 |
if ( is_callable( [ $renewal_order, 'save' ] ) ) {
|
264 |
$renewal_order->save();
|
languages/checkout-plugins-stripe-woo.pot
CHANGED
@@ -2,14 +2,14 @@
|
|
2 |
# This file is distributed under the GPLv2 or later.
|
3 |
msgid ""
|
4 |
msgstr ""
|
5 |
-
"Project-Id-Version: Checkout Plugins - Stripe for WooCommerce 1.4.
|
6 |
"Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/checkout-plugins-stripe-woo\n"
|
7 |
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
8 |
"Language-Team: LANGUAGE <LL@li.org>\n"
|
9 |
"MIME-Version: 1.0\n"
|
10 |
"Content-Type: text/plain; charset=UTF-8\n"
|
11 |
"Content-Transfer-Encoding: 8bit\n"
|
12 |
-
"POT-Creation-Date: 2022-
|
13 |
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
14 |
"X-Generator: WP-CLI 2.5.0\n"
|
15 |
"X-Domain: checkout-plugins-stripe-woo\n"
|
@@ -45,7 +45,8 @@ msgid "Credit Cards"
|
|
45 |
msgstr ""
|
46 |
|
47 |
#: admin/admin-controller.php:81
|
48 |
-
#: admin/admin-controller.php:
|
|
|
49 |
#: wizard/build/app.js:1
|
50 |
msgid "Express Checkout"
|
51 |
msgstr ""
|
@@ -116,8 +117,9 @@ msgstr ""
|
|
116 |
|
117 |
#: admin/admin-controller.php:291
|
118 |
#: admin/admin-controller.php:315
|
119 |
-
#: gateway/stripe/frontend-scripts.php:
|
120 |
-
#: gateway/stripe/payment-request-api.php:
|
|
|
121 |
msgid "Pay now"
|
122 |
msgstr ""
|
123 |
|
@@ -142,13 +144,13 @@ msgstr ""
|
|
142 |
|
143 |
#: admin/admin-controller.php:347
|
144 |
#: admin/admin-controller.php:548
|
145 |
-
#: admin/admin-controller.php:
|
146 |
msgid "Hide API keys"
|
147 |
msgstr ""
|
148 |
|
149 |
#: admin/admin-controller.php:349
|
150 |
#: admin/admin-controller.php:545
|
151 |
-
#: admin/admin-controller.php:
|
152 |
#: wizard/build/app.js:1
|
153 |
msgid "Manage API keys manually"
|
154 |
msgstr ""
|
@@ -171,8 +173,8 @@ msgid "We were not able to connect your Stripe account. Please try again. "
|
|
171 |
msgstr ""
|
172 |
|
173 |
#: admin/admin-controller.php:399
|
174 |
-
#: admin/admin-controller.php:
|
175 |
-
#: admin/admin-controller.php:
|
176 |
msgid "Error: The current user doesn’t have sufficient permissions to perform this action. Please reload the page and try again."
|
177 |
msgstr ""
|
178 |
|
@@ -342,265 +344,281 @@ msgstr ""
|
|
342 |
msgid "Please try again."
|
343 |
msgstr ""
|
344 |
|
345 |
-
#: admin/admin-controller.php:
|
346 |
-
#: admin/admin-controller.php:
|
347 |
msgid "Error: Sorry, the nonce security check didn’t pass. Please reload the page and try again."
|
348 |
msgstr ""
|
349 |
|
350 |
-
#: admin/admin-controller.php:
|
351 |
-
#: admin/admin-controller.php:
|
352 |
msgid "Test Mode:"
|
353 |
msgstr ""
|
354 |
|
355 |
-
#: admin/admin-controller.php:
|
356 |
msgid "Please enter secret key to test."
|
357 |
msgstr ""
|
358 |
|
359 |
-
#: admin/admin-controller.php:
|
360 |
-
#: admin/admin-controller.php:
|
361 |
msgid "Live Mode:"
|
362 |
msgstr ""
|
363 |
|
364 |
-
#: admin/admin-controller.php:
|
365 |
msgid "Please enter secret key to live."
|
366 |
msgstr ""
|
367 |
|
368 |
-
#: admin/admin-controller.php:
|
369 |
msgid "Error: Empty String provided for keys"
|
370 |
msgstr ""
|
371 |
|
372 |
#. translators: %1$1s mode
|
373 |
-
#: admin/admin-controller.php:
|
374 |
msgid "My first %1s customer (created for API docs)"
|
375 |
msgstr ""
|
376 |
|
377 |
-
#: admin/admin-controller.php:
|
378 |
msgid "Connected to Stripe successfully"
|
379 |
msgstr ""
|
380 |
|
381 |
-
#: admin/admin-controller.php:
|
382 |
msgid "Stripe keys are reset successfully."
|
383 |
msgstr ""
|
384 |
|
385 |
-
#: admin/admin-controller.php:
|
386 |
#: inc/traits/subscriptions.php:346
|
387 |
msgid "Invalid Nonce"
|
388 |
msgstr ""
|
389 |
|
390 |
-
#: admin/admin-controller.php:
|
391 |
msgid "My First Test Customer (created for API docs)"
|
392 |
msgstr ""
|
393 |
|
394 |
-
#: admin/admin-controller.php:
|
395 |
msgid "My First Live Customer (created for API docs)"
|
396 |
msgstr ""
|
397 |
|
398 |
-
#: admin/admin-controller.php:
|
399 |
msgid "Express Checkout is a feature of Card Payments. Enable Card Payments to use Express Checkout"
|
400 |
msgstr ""
|
401 |
|
402 |
#. translators: HTML Markup
|
403 |
-
#: admin/admin-controller.php:
|
404 |
msgid "Accept payment using Apple Pay, Google Pay, Browser Payment Method.%1$1sExpress Checkout uses Payment Request API which is based on client's browser and saved cards.%1$1sPlease check %2$2sprerequisite%3$3s for Apple Pay, Google Pay and Browser Payment Method."
|
405 |
msgstr ""
|
406 |
|
407 |
-
#: admin/admin-controller.php:
|
408 |
#: wizard/build/app.js:1
|
409 |
msgid "Enable Express Checkout"
|
410 |
msgstr ""
|
411 |
|
412 |
-
#: admin/admin-controller.php:
|
413 |
msgid "Show button on"
|
414 |
msgstr ""
|
415 |
|
416 |
-
#: admin/admin-controller.php:
|
417 |
msgid "Choose page to display Express Checkout buttons."
|
418 |
msgstr ""
|
419 |
|
420 |
-
#: admin/admin-controller.php:
|
421 |
msgid "Product"
|
422 |
msgstr ""
|
423 |
|
424 |
-
#: admin/admin-controller.php:
|
425 |
msgid "Cart"
|
426 |
msgstr ""
|
427 |
|
428 |
-
#: admin/admin-controller.php:
|
429 |
msgid "Checkout"
|
430 |
msgstr ""
|
431 |
|
432 |
-
#: admin/admin-controller.php:
|
433 |
msgid "Button text"
|
434 |
msgstr ""
|
435 |
|
436 |
-
#: admin/admin-controller.php:
|
437 |
msgid "Add label text for the Express Checkout button."
|
438 |
msgstr ""
|
439 |
|
440 |
-
#: admin/admin-controller.php:
|
441 |
msgid "Button theme"
|
442 |
msgstr ""
|
443 |
|
444 |
-
#: admin/admin-controller.php:
|
445 |
msgid "Select theme for Express Checkout button."
|
446 |
msgstr ""
|
447 |
|
448 |
-
#: admin/admin-controller.php:
|
449 |
msgid "Dark"
|
450 |
msgstr ""
|
451 |
|
452 |
-
#: admin/admin-controller.php:
|
453 |
msgid "Light"
|
454 |
msgstr ""
|
455 |
|
456 |
-
#: admin/admin-controller.php:
|
457 |
msgid "Light Outline"
|
458 |
msgstr ""
|
459 |
|
460 |
-
#: admin/admin-controller.php:
|
461 |
msgid "Button Preview"
|
462 |
msgstr ""
|
463 |
|
464 |
-
#: admin/admin-controller.php:
|
465 |
msgid "Product page options"
|
466 |
msgstr ""
|
467 |
|
468 |
-
#: admin/admin-controller.php:
|
469 |
msgid "Advanced customization options for product page."
|
470 |
msgstr ""
|
471 |
|
472 |
-
#: admin/admin-controller.php:
|
473 |
-
#: admin/admin-controller.php:
|
474 |
msgid "Button position"
|
475 |
msgstr ""
|
476 |
|
477 |
-
#: admin/admin-controller.php:
|
478 |
msgid "Select the position of Express Checkout button. This option will work only for Product page."
|
479 |
msgstr ""
|
480 |
|
481 |
-
#: admin/admin-controller.php:
|
482 |
msgid "Above Add to Cart"
|
483 |
msgstr ""
|
484 |
|
485 |
-
#: admin/admin-controller.php:
|
486 |
msgid "Below Add to Cart"
|
487 |
msgstr ""
|
488 |
|
489 |
-
#: admin/admin-controller.php:
|
490 |
msgid "Inline Button"
|
491 |
msgstr ""
|
492 |
|
493 |
-
#: admin/admin-controller.php:
|
494 |
-
#: admin/admin-controller.php:
|
495 |
-
#: admin/admin-controller.php:
|
496 |
msgid "Separator text"
|
497 |
msgstr ""
|
498 |
|
499 |
-
#: admin/admin-controller.php:
|
500 |
msgid "Add separator text for the Express Checkout button. This will help to distinguish between Express Checkout and other buttons."
|
501 |
msgstr ""
|
502 |
|
503 |
-
#: admin/admin-controller.php:
|
504 |
msgid "Responsive behaviour"
|
505 |
msgstr ""
|
506 |
|
507 |
#. translators: HTML Markup
|
508 |
-
#: admin/admin-controller.php:
|
509 |
msgid "If checked the Express Checkout button will stick%1$1sat bottom of screen on responsive devices."
|
510 |
msgstr ""
|
511 |
|
512 |
-
#: admin/admin-controller.php:
|
513 |
msgid "Cart page options"
|
514 |
msgstr ""
|
515 |
|
516 |
-
#: admin/admin-controller.php:
|
517 |
msgid "Advanced customization options for Cart page."
|
518 |
msgstr ""
|
519 |
|
520 |
-
#: admin/admin-controller.php:
|
521 |
msgid "Add separator text for Cart page. If empty will show default separator text."
|
522 |
msgstr ""
|
523 |
|
524 |
-
#: admin/admin-controller.php:
|
525 |
msgid "Checkout page options"
|
526 |
msgstr ""
|
527 |
|
528 |
-
#: admin/admin-controller.php:
|
529 |
msgid "Advanced customization options for Checkout page."
|
530 |
msgstr ""
|
531 |
|
532 |
-
#: admin/admin-controller.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
533 |
msgid "Select the position of Express Checkout button. This option will work only for Checkout page."
|
534 |
msgstr ""
|
535 |
|
536 |
-
#: admin/admin-controller.php:
|
537 |
msgid "Above checkout form"
|
538 |
msgstr ""
|
539 |
|
540 |
-
#: admin/admin-controller.php:
|
541 |
msgid "Above billing details"
|
542 |
msgstr ""
|
543 |
|
544 |
-
#: admin/admin-controller.php:
|
545 |
#: gateway/local-gateway.php:125
|
546 |
#: gateway/stripe/card-payments.php:111
|
547 |
msgid "Title"
|
548 |
msgstr ""
|
549 |
|
550 |
-
#: admin/admin-controller.php:
|
551 |
msgid "Add a title above Express Checkout button on Checkout page."
|
552 |
msgstr ""
|
553 |
|
554 |
-
#: admin/admin-controller.php:
|
555 |
msgid "Tagline"
|
556 |
msgstr ""
|
557 |
|
558 |
-
#: admin/admin-controller.php:
|
559 |
msgid "Add a tagline below the title on Checkout page."
|
560 |
msgstr ""
|
561 |
|
562 |
-
#: admin/admin-controller.php:
|
563 |
msgid "Button width"
|
564 |
msgstr ""
|
565 |
|
566 |
-
#: admin/admin-controller.php:
|
567 |
msgid "Select width for button (in px). Default width 100%"
|
568 |
msgstr ""
|
569 |
|
570 |
-
#: admin/admin-controller.php:
|
571 |
msgid "Alignment"
|
572 |
msgstr ""
|
573 |
|
574 |
-
#: admin/admin-controller.php:
|
575 |
msgid "This setting will align title, tagline and button based on selection on Checkout page."
|
576 |
msgstr ""
|
577 |
|
578 |
-
#: admin/admin-controller.php:
|
579 |
msgid "Left"
|
580 |
msgstr ""
|
581 |
|
582 |
-
#: admin/admin-controller.php:
|
583 |
msgid "Center"
|
584 |
msgstr ""
|
585 |
|
586 |
-
#: admin/admin-controller.php:
|
587 |
msgid "Right"
|
588 |
msgstr ""
|
589 |
|
590 |
-
#: admin/admin-controller.php:
|
591 |
msgid "Add separator text for Checkout page. If empty will show default separator text."
|
592 |
msgstr ""
|
593 |
|
594 |
-
#: autoloader.php:
|
595 |
msgid "Settings"
|
596 |
msgstr ""
|
597 |
|
598 |
-
#: autoloader.php:
|
599 |
msgid "Documentation"
|
600 |
msgstr ""
|
601 |
|
602 |
#. translators: 1$-2$: opening and closing <strong> tags, 3$-4$: link tags, takes to woocommerce plugin on wp.org, 5$-6$: opening and closing link tags, leads to plugins.php in admin.
|
603 |
-
#: autoloader.php:
|
604 |
msgid "%1$sCheckout Plugins - Stripe for WooCommerce is inactive.%2$s The %3$sWooCommerce plugin%4$s must be active for Checkout Plugins - Stripe for WooCommerce to work. Please %5$sinstall & activate WooCommerce »%6$s"
|
605 |
msgstr ""
|
606 |
|
@@ -894,7 +912,8 @@ msgid "Store currency doesn't match stripe currency. "
|
|
894 |
msgstr ""
|
895 |
|
896 |
#. translators: %s: payment fail message.
|
897 |
-
#: gateway/local-gateway.php:
|
|
|
898 |
#: gateway/stripe/sepa.php:510
|
899 |
msgid "Payment failed. %s"
|
900 |
msgstr ""
|
@@ -1094,68 +1113,68 @@ msgid "Payment method tokenized for Order id - %1$1s with token id - %2$2s"
|
|
1094 |
msgstr ""
|
1095 |
|
1096 |
#. translators: %1$1s, %2$2s: HTML Markup
|
1097 |
-
#: gateway/stripe/card-payments.php:
|
1098 |
msgid "Live Stripe.js integrations must use HTTPS. %1$1s For more information:%2$2s"
|
1099 |
msgstr ""
|
1100 |
|
1101 |
-
#: gateway/stripe/card-payments.php:
|
1102 |
msgid "Enter Card Details"
|
1103 |
msgstr ""
|
1104 |
|
1105 |
-
#: gateway/stripe/card-payments.php:
|
1106 |
msgid "Expiry Date"
|
1107 |
msgstr ""
|
1108 |
|
1109 |
-
#: gateway/stripe/card-payments.php:
|
1110 |
msgid "CVC"
|
1111 |
msgstr ""
|
1112 |
|
1113 |
-
#: gateway/stripe/card-payments.php:
|
1114 |
msgid "Save Card for Future Payments"
|
1115 |
msgstr ""
|
1116 |
|
1117 |
#. translators: %1$1s - %6$6s: HTML Markup
|
1118 |
-
#: gateway/stripe/card-payments.php:
|
1119 |
msgid "%1$1s Test Mode Enabled:%2$2s Use demo card 4242424242424242 with any future date and CVV. Check more %3$3sdemo cards%4$4s"
|
1120 |
msgstr ""
|
1121 |
|
1122 |
-
#: gateway/stripe/frontend-scripts.php:
|
1123 |
msgid "MasterCard"
|
1124 |
msgstr ""
|
1125 |
|
1126 |
-
#: gateway/stripe/frontend-scripts.php:
|
1127 |
msgid "Visa"
|
1128 |
msgstr ""
|
1129 |
|
1130 |
-
#: gateway/stripe/frontend-scripts.php:
|
1131 |
msgid "American Express"
|
1132 |
msgstr ""
|
1133 |
|
1134 |
-
#: gateway/stripe/frontend-scripts.php:
|
1135 |
msgid "Discover"
|
1136 |
msgstr ""
|
1137 |
|
1138 |
-
#: gateway/stripe/frontend-scripts.php:
|
1139 |
msgid "JCB"
|
1140 |
msgstr ""
|
1141 |
|
1142 |
-
#: gateway/stripe/frontend-scripts.php:
|
1143 |
msgid "Diners Club"
|
1144 |
msgstr ""
|
1145 |
|
1146 |
-
#: gateway/stripe/frontend-scripts.php:
|
1147 |
msgid "UnionPay"
|
1148 |
msgstr ""
|
1149 |
|
1150 |
-
#: gateway/stripe/frontend-scripts.php:
|
1151 |
msgid "is not allowed"
|
1152 |
msgstr ""
|
1153 |
|
1154 |
-
#: gateway/stripe/frontend-scripts.php:
|
1155 |
msgid "Please enter a IBAN number to proceed."
|
1156 |
msgstr ""
|
1157 |
|
1158 |
-
#: gateway/stripe/frontend-scripts.php:
|
1159 |
msgid "Please select a bank to proceed."
|
1160 |
msgstr ""
|
1161 |
|
@@ -1183,51 +1202,51 @@ msgstr ""
|
|
1183 |
msgid "Accept payment using Przelewy24. %1$s %2$s"
|
1184 |
msgstr ""
|
1185 |
|
1186 |
-
#: gateway/stripe/payment-request-api.php:
|
1187 |
msgid "Empty cart"
|
1188 |
msgstr ""
|
1189 |
|
1190 |
-
#: gateway/stripe/payment-request-api.php:
|
1191 |
msgid "Sign up Fee"
|
1192 |
msgstr ""
|
1193 |
|
1194 |
-
#: gateway/stripe/payment-request-api.php:
|
1195 |
-
#: gateway/stripe/payment-request-api.php:
|
1196 |
-
#: gateway/stripe/payment-request-api.php:
|
1197 |
msgid "Tax"
|
1198 |
msgstr ""
|
1199 |
|
1200 |
-
#: gateway/stripe/payment-request-api.php:
|
1201 |
-
#: gateway/stripe/payment-request-api.php:
|
1202 |
-
#: gateway/stripe/payment-request-api.php:
|
1203 |
msgid "Shipping"
|
1204 |
msgstr ""
|
1205 |
|
1206 |
-
#: gateway/stripe/payment-request-api.php:
|
1207 |
-
#: gateway/stripe/payment-request-api.php:
|
1208 |
msgid "Pending"
|
1209 |
msgstr ""
|
1210 |
|
1211 |
-
#: gateway/stripe/payment-request-api.php:
|
1212 |
msgid "Discount"
|
1213 |
msgstr ""
|
1214 |
|
1215 |
#. translators: %d is the product Id
|
1216 |
-
#: gateway/stripe/payment-request-api.php:
|
1217 |
msgid "Product with the ID (%d) cannot be found."
|
1218 |
msgstr ""
|
1219 |
|
1220 |
#. translators: 1: product name 2: quantity in stock
|
1221 |
-
#: gateway/stripe/payment-request-api.php:
|
1222 |
msgid "You cannot add that amount of \"%1$s\"; to the cart because there is not enough stock (%2$s remaining)."
|
1223 |
msgstr ""
|
1224 |
|
1225 |
-
#: gateway/stripe/payment-request-api.php:
|
1226 |
-
#: gateway/stripe/payment-request-api.php:
|
1227 |
msgid "Unable to find shipping method for address."
|
1228 |
msgstr ""
|
1229 |
|
1230 |
-
#: gateway/stripe/payment-request-api.php:
|
1231 |
msgid "Unable to provide shipping options for Payment Requests."
|
1232 |
msgstr ""
|
1233 |
|
@@ -1394,6 +1413,216 @@ msgstr ""
|
|
1394 |
msgid "%1$1s%2$2sTest Mode Enabled%3$3s : A QR code will pop up, scan and pay with WeChat."
|
1395 |
msgstr ""
|
1396 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1397 |
#. translators: last 4 digits of IBAN account
|
1398 |
#: inc/token.php:54
|
1399 |
msgid "SEPA IBAN ending in %s"
|
2 |
# This file is distributed under the GPLv2 or later.
|
3 |
msgid ""
|
4 |
msgstr ""
|
5 |
+
"Project-Id-Version: Checkout Plugins - Stripe for WooCommerce 1.4.1\n"
|
6 |
"Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/checkout-plugins-stripe-woo\n"
|
7 |
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
8 |
"Language-Team: LANGUAGE <LL@li.org>\n"
|
9 |
"MIME-Version: 1.0\n"
|
10 |
"Content-Type: text/plain; charset=UTF-8\n"
|
11 |
"Content-Transfer-Encoding: 8bit\n"
|
12 |
+
"POT-Creation-Date: 2022-03-15T09:11:26+00:00\n"
|
13 |
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
14 |
"X-Generator: WP-CLI 2.5.0\n"
|
15 |
"X-Domain: checkout-plugins-stripe-woo\n"
|
45 |
msgstr ""
|
46 |
|
47 |
#: admin/admin-controller.php:81
|
48 |
+
#: admin/admin-controller.php:1578
|
49 |
+
#: inc/helper.php:87
|
50 |
#: wizard/build/app.js:1
|
51 |
msgid "Express Checkout"
|
52 |
msgstr ""
|
117 |
|
118 |
#: admin/admin-controller.php:291
|
119 |
#: admin/admin-controller.php:315
|
120 |
+
#: gateway/stripe/frontend-scripts.php:144
|
121 |
+
#: gateway/stripe/payment-request-api.php:152
|
122 |
+
#: inc/helper.php:84
|
123 |
msgid "Pay now"
|
124 |
msgstr ""
|
125 |
|
144 |
|
145 |
#: admin/admin-controller.php:347
|
146 |
#: admin/admin-controller.php:548
|
147 |
+
#: admin/admin-controller.php:1527
|
148 |
msgid "Hide API keys"
|
149 |
msgstr ""
|
150 |
|
151 |
#: admin/admin-controller.php:349
|
152 |
#: admin/admin-controller.php:545
|
153 |
+
#: admin/admin-controller.php:1523
|
154 |
#: wizard/build/app.js:1
|
155 |
msgid "Manage API keys manually"
|
156 |
msgstr ""
|
173 |
msgstr ""
|
174 |
|
175 |
#: admin/admin-controller.php:399
|
176 |
+
#: admin/admin-controller.php:1079
|
177 |
+
#: admin/admin-controller.php:1181
|
178 |
msgid "Error: The current user doesn’t have sufficient permissions to perform this action. Please reload the page and try again."
|
179 |
msgstr ""
|
180 |
|
344 |
msgid "Please try again."
|
345 |
msgstr ""
|
346 |
|
347 |
+
#: admin/admin-controller.php:1075
|
348 |
+
#: admin/admin-controller.php:1177
|
349 |
msgid "Error: Sorry, the nonce security check didn’t pass. Please reload the page and try again."
|
350 |
msgstr ""
|
351 |
|
352 |
+
#: admin/admin-controller.php:1088
|
353 |
+
#: admin/admin-controller.php:1153
|
354 |
msgid "Test Mode:"
|
355 |
msgstr ""
|
356 |
|
357 |
+
#: admin/admin-controller.php:1090
|
358 |
msgid "Please enter secret key to test."
|
359 |
msgstr ""
|
360 |
|
361 |
+
#: admin/admin-controller.php:1095
|
362 |
+
#: admin/admin-controller.php:1157
|
363 |
msgid "Live Mode:"
|
364 |
msgstr ""
|
365 |
|
366 |
+
#: admin/admin-controller.php:1097
|
367 |
msgid "Please enter secret key to live."
|
368 |
msgstr ""
|
369 |
|
370 |
+
#: admin/admin-controller.php:1101
|
371 |
msgid "Error: Empty String provided for keys"
|
372 |
msgstr ""
|
373 |
|
374 |
#. translators: %1$1s mode
|
375 |
+
#: admin/admin-controller.php:1113
|
376 |
msgid "My first %1s customer (created for API docs)"
|
377 |
msgstr ""
|
378 |
|
379 |
+
#: admin/admin-controller.php:1118
|
380 |
msgid "Connected to Stripe successfully"
|
381 |
msgstr ""
|
382 |
|
383 |
+
#: admin/admin-controller.php:1187
|
384 |
msgid "Stripe keys are reset successfully."
|
385 |
msgstr ""
|
386 |
|
387 |
+
#: admin/admin-controller.php:1199
|
388 |
#: inc/traits/subscriptions.php:346
|
389 |
msgid "Invalid Nonce"
|
390 |
msgstr ""
|
391 |
|
392 |
+
#: admin/admin-controller.php:1330
|
393 |
msgid "My First Test Customer (created for API docs)"
|
394 |
msgstr ""
|
395 |
|
396 |
+
#: admin/admin-controller.php:1379
|
397 |
msgid "My First Live Customer (created for API docs)"
|
398 |
msgstr ""
|
399 |
|
400 |
+
#: admin/admin-controller.php:1571
|
401 |
msgid "Express Checkout is a feature of Card Payments. Enable Card Payments to use Express Checkout"
|
402 |
msgstr ""
|
403 |
|
404 |
#. translators: HTML Markup
|
405 |
+
#: admin/admin-controller.php:1581
|
406 |
msgid "Accept payment using Apple Pay, Google Pay, Browser Payment Method.%1$1sExpress Checkout uses Payment Request API which is based on client's browser and saved cards.%1$1sPlease check %2$2sprerequisite%3$3s for Apple Pay, Google Pay and Browser Payment Method."
|
407 |
msgstr ""
|
408 |
|
409 |
+
#: admin/admin-controller.php:1585
|
410 |
#: wizard/build/app.js:1
|
411 |
msgid "Enable Express Checkout"
|
412 |
msgstr ""
|
413 |
|
414 |
+
#: admin/admin-controller.php:1591
|
415 |
msgid "Show button on"
|
416 |
msgstr ""
|
417 |
|
418 |
+
#: admin/admin-controller.php:1595
|
419 |
msgid "Choose page to display Express Checkout buttons."
|
420 |
msgstr ""
|
421 |
|
422 |
+
#: admin/admin-controller.php:1597
|
423 |
msgid "Product"
|
424 |
msgstr ""
|
425 |
|
426 |
+
#: admin/admin-controller.php:1598
|
427 |
msgid "Cart"
|
428 |
msgstr ""
|
429 |
|
430 |
+
#: admin/admin-controller.php:1599
|
431 |
msgid "Checkout"
|
432 |
msgstr ""
|
433 |
|
434 |
+
#: admin/admin-controller.php:1604
|
435 |
msgid "Button text"
|
436 |
msgstr ""
|
437 |
|
438 |
+
#: admin/admin-controller.php:1607
|
439 |
msgid "Add label text for the Express Checkout button."
|
440 |
msgstr ""
|
441 |
|
442 |
+
#: admin/admin-controller.php:1612
|
443 |
msgid "Button theme"
|
444 |
msgstr ""
|
445 |
|
446 |
+
#: admin/admin-controller.php:1615
|
447 |
msgid "Select theme for Express Checkout button."
|
448 |
msgstr ""
|
449 |
|
450 |
+
#: admin/admin-controller.php:1618
|
451 |
msgid "Dark"
|
452 |
msgstr ""
|
453 |
|
454 |
+
#: admin/admin-controller.php:1619
|
455 |
msgid "Light"
|
456 |
msgstr ""
|
457 |
|
458 |
+
#: admin/admin-controller.php:1620
|
459 |
msgid "Light Outline"
|
460 |
msgstr ""
|
461 |
|
462 |
+
#: admin/admin-controller.php:1625
|
463 |
msgid "Button Preview"
|
464 |
msgstr ""
|
465 |
|
466 |
+
#: admin/admin-controller.php:1634
|
467 |
msgid "Product page options"
|
468 |
msgstr ""
|
469 |
|
470 |
+
#: admin/admin-controller.php:1636
|
471 |
msgid "Advanced customization options for product page."
|
472 |
msgstr ""
|
473 |
|
474 |
+
#: admin/admin-controller.php:1640
|
475 |
+
#: admin/admin-controller.php:1716
|
476 |
msgid "Button position"
|
477 |
msgstr ""
|
478 |
|
479 |
+
#: admin/admin-controller.php:1644
|
480 |
msgid "Select the position of Express Checkout button. This option will work only for Product page."
|
481 |
msgstr ""
|
482 |
|
483 |
+
#: admin/admin-controller.php:1647
|
484 |
msgid "Above Add to Cart"
|
485 |
msgstr ""
|
486 |
|
487 |
+
#: admin/admin-controller.php:1648
|
488 |
msgid "Below Add to Cart"
|
489 |
msgstr ""
|
490 |
|
491 |
+
#: admin/admin-controller.php:1649
|
492 |
msgid "Inline Button"
|
493 |
msgstr ""
|
494 |
|
495 |
+
#: admin/admin-controller.php:1654
|
496 |
+
#: admin/admin-controller.php:1683
|
497 |
+
#: admin/admin-controller.php:1770
|
498 |
msgid "Separator text"
|
499 |
msgstr ""
|
500 |
|
501 |
+
#: admin/admin-controller.php:1657
|
502 |
msgid "Add separator text for the Express Checkout button. This will help to distinguish between Express Checkout and other buttons."
|
503 |
msgstr ""
|
504 |
|
505 |
+
#: admin/admin-controller.php:1663
|
506 |
msgid "Responsive behaviour"
|
507 |
msgstr ""
|
508 |
|
509 |
#. translators: HTML Markup
|
510 |
+
#: admin/admin-controller.php:1665
|
511 |
msgid "If checked the Express Checkout button will stick%1$1sat bottom of screen on responsive devices."
|
512 |
msgstr ""
|
513 |
|
514 |
+
#: admin/admin-controller.php:1676
|
515 |
msgid "Cart page options"
|
516 |
msgstr ""
|
517 |
|
518 |
+
#: admin/admin-controller.php:1678
|
519 |
msgid "Advanced customization options for Cart page."
|
520 |
msgstr ""
|
521 |
|
522 |
+
#: admin/admin-controller.php:1687
|
523 |
msgid "Add separator text for Cart page. If empty will show default separator text."
|
524 |
msgstr ""
|
525 |
|
526 |
+
#: admin/admin-controller.php:1696
|
527 |
msgid "Checkout page options"
|
528 |
msgstr ""
|
529 |
|
530 |
+
#: admin/admin-controller.php:1698
|
531 |
msgid "Advanced customization options for Checkout page."
|
532 |
msgstr ""
|
533 |
|
534 |
+
#: admin/admin-controller.php:1703
|
535 |
+
msgid "Layout"
|
536 |
+
msgstr ""
|
537 |
+
|
538 |
+
#: admin/admin-controller.php:1707
|
539 |
+
msgid "Select the layout of Express Checkout button. This option will work only for Checkout page."
|
540 |
+
msgstr ""
|
541 |
+
|
542 |
+
#: admin/admin-controller.php:1710
|
543 |
+
msgid "Custom"
|
544 |
+
msgstr ""
|
545 |
+
|
546 |
+
#: admin/admin-controller.php:1711
|
547 |
+
msgid "Classic"
|
548 |
+
msgstr ""
|
549 |
+
|
550 |
+
#: admin/admin-controller.php:1720
|
551 |
msgid "Select the position of Express Checkout button. This option will work only for Checkout page."
|
552 |
msgstr ""
|
553 |
|
554 |
+
#: admin/admin-controller.php:1723
|
555 |
msgid "Above checkout form"
|
556 |
msgstr ""
|
557 |
|
558 |
+
#: admin/admin-controller.php:1724
|
559 |
msgid "Above billing details"
|
560 |
msgstr ""
|
561 |
|
562 |
+
#: admin/admin-controller.php:1729
|
563 |
#: gateway/local-gateway.php:125
|
564 |
#: gateway/stripe/card-payments.php:111
|
565 |
msgid "Title"
|
566 |
msgstr ""
|
567 |
|
568 |
+
#: admin/admin-controller.php:1733
|
569 |
msgid "Add a title above Express Checkout button on Checkout page."
|
570 |
msgstr ""
|
571 |
|
572 |
+
#: admin/admin-controller.php:1738
|
573 |
msgid "Tagline"
|
574 |
msgstr ""
|
575 |
|
576 |
+
#: admin/admin-controller.php:1742
|
577 |
msgid "Add a tagline below the title on Checkout page."
|
578 |
msgstr ""
|
579 |
|
580 |
+
#: admin/admin-controller.php:1747
|
581 |
msgid "Button width"
|
582 |
msgstr ""
|
583 |
|
584 |
+
#: admin/admin-controller.php:1751
|
585 |
msgid "Select width for button (in px). Default width 100%"
|
586 |
msgstr ""
|
587 |
|
588 |
+
#: admin/admin-controller.php:1756
|
589 |
msgid "Alignment"
|
590 |
msgstr ""
|
591 |
|
592 |
+
#: admin/admin-controller.php:1760
|
593 |
msgid "This setting will align title, tagline and button based on selection on Checkout page."
|
594 |
msgstr ""
|
595 |
|
596 |
+
#: admin/admin-controller.php:1763
|
597 |
msgid "Left"
|
598 |
msgstr ""
|
599 |
|
600 |
+
#: admin/admin-controller.php:1764
|
601 |
msgid "Center"
|
602 |
msgstr ""
|
603 |
|
604 |
+
#: admin/admin-controller.php:1765
|
605 |
msgid "Right"
|
606 |
msgstr ""
|
607 |
|
608 |
+
#: admin/admin-controller.php:1774
|
609 |
msgid "Add separator text for Checkout page. If empty will show default separator text."
|
610 |
msgstr ""
|
611 |
|
612 |
+
#: autoloader.php:143
|
613 |
msgid "Settings"
|
614 |
msgstr ""
|
615 |
|
616 |
+
#: autoloader.php:144
|
617 |
msgid "Documentation"
|
618 |
msgstr ""
|
619 |
|
620 |
#. translators: 1$-2$: opening and closing <strong> tags, 3$-4$: link tags, takes to woocommerce plugin on wp.org, 5$-6$: opening and closing link tags, leads to plugins.php in admin.
|
621 |
+
#: autoloader.php:197
|
622 |
msgid "%1$sCheckout Plugins - Stripe for WooCommerce is inactive.%2$s The %3$sWooCommerce plugin%4$s must be active for Checkout Plugins - Stripe for WooCommerce to work. Please %5$sinstall & activate WooCommerce »%6$s"
|
623 |
msgstr ""
|
624 |
|
912 |
msgstr ""
|
913 |
|
914 |
#. translators: %s: payment fail message.
|
915 |
+
#: gateway/local-gateway.php:586
|
916 |
+
#: gateway/stripe/card-payments.php:365
|
917 |
#: gateway/stripe/sepa.php:510
|
918 |
msgid "Payment failed. %s"
|
919 |
msgstr ""
|
1113 |
msgstr ""
|
1114 |
|
1115 |
#. translators: %1$1s, %2$2s: HTML Markup
|
1116 |
+
#: gateway/stripe/card-payments.php:482
|
1117 |
msgid "Live Stripe.js integrations must use HTTPS. %1$1s For more information:%2$2s"
|
1118 |
msgstr ""
|
1119 |
|
1120 |
+
#: gateway/stripe/card-payments.php:512
|
1121 |
msgid "Enter Card Details"
|
1122 |
msgstr ""
|
1123 |
|
1124 |
+
#: gateway/stripe/card-payments.php:515
|
1125 |
msgid "Expiry Date"
|
1126 |
msgstr ""
|
1127 |
|
1128 |
+
#: gateway/stripe/card-payments.php:519
|
1129 |
msgid "CVC"
|
1130 |
msgstr ""
|
1131 |
|
1132 |
+
#: gateway/stripe/card-payments.php:524
|
1133 |
msgid "Save Card for Future Payments"
|
1134 |
msgstr ""
|
1135 |
|
1136 |
#. translators: %1$1s - %6$6s: HTML Markup
|
1137 |
+
#: gateway/stripe/card-payments.php:530
|
1138 |
msgid "%1$1s Test Mode Enabled:%2$2s Use demo card 4242424242424242 with any future date and CVV. Check more %3$3sdemo cards%4$4s"
|
1139 |
msgstr ""
|
1140 |
|
1141 |
+
#: gateway/stripe/frontend-scripts.php:109
|
1142 |
msgid "MasterCard"
|
1143 |
msgstr ""
|
1144 |
|
1145 |
+
#: gateway/stripe/frontend-scripts.php:110
|
1146 |
msgid "Visa"
|
1147 |
msgstr ""
|
1148 |
|
1149 |
+
#: gateway/stripe/frontend-scripts.php:111
|
1150 |
msgid "American Express"
|
1151 |
msgstr ""
|
1152 |
|
1153 |
+
#: gateway/stripe/frontend-scripts.php:112
|
1154 |
msgid "Discover"
|
1155 |
msgstr ""
|
1156 |
|
1157 |
+
#: gateway/stripe/frontend-scripts.php:113
|
1158 |
msgid "JCB"
|
1159 |
msgstr ""
|
1160 |
|
1161 |
+
#: gateway/stripe/frontend-scripts.php:114
|
1162 |
msgid "Diners Club"
|
1163 |
msgstr ""
|
1164 |
|
1165 |
+
#: gateway/stripe/frontend-scripts.php:115
|
1166 |
msgid "UnionPay"
|
1167 |
msgstr ""
|
1168 |
|
1169 |
+
#: gateway/stripe/frontend-scripts.php:117
|
1170 |
msgid "is not allowed"
|
1171 |
msgstr ""
|
1172 |
|
1173 |
+
#: gateway/stripe/frontend-scripts.php:131
|
1174 |
msgid "Please enter a IBAN number to proceed."
|
1175 |
msgstr ""
|
1176 |
|
1177 |
+
#: gateway/stripe/frontend-scripts.php:132
|
1178 |
msgid "Please select a bank to proceed."
|
1179 |
msgstr ""
|
1180 |
|
1202 |
msgid "Accept payment using Przelewy24. %1$s %2$s"
|
1203 |
msgstr ""
|
1204 |
|
1205 |
+
#: gateway/stripe/payment-request-api.php:297
|
1206 |
msgid "Empty cart"
|
1207 |
msgstr ""
|
1208 |
|
1209 |
+
#: gateway/stripe/payment-request-api.php:392
|
1210 |
msgid "Sign up Fee"
|
1211 |
msgstr ""
|
1212 |
|
1213 |
+
#: gateway/stripe/payment-request-api.php:404
|
1214 |
+
#: gateway/stripe/payment-request-api.php:505
|
1215 |
+
#: gateway/stripe/payment-request-api.php:678
|
1216 |
msgid "Tax"
|
1217 |
msgstr ""
|
1218 |
|
1219 |
+
#: gateway/stripe/payment-request-api.php:412
|
1220 |
+
#: gateway/stripe/payment-request-api.php:512
|
1221 |
+
#: gateway/stripe/payment-request-api.php:686
|
1222 |
msgid "Shipping"
|
1223 |
msgstr ""
|
1224 |
|
1225 |
+
#: gateway/stripe/payment-request-api.php:419
|
1226 |
+
#: gateway/stripe/payment-request-api.php:693
|
1227 |
msgid "Pending"
|
1228 |
msgstr ""
|
1229 |
|
1230 |
+
#: gateway/stripe/payment-request-api.php:519
|
1231 |
msgid "Discount"
|
1232 |
msgstr ""
|
1233 |
|
1234 |
#. translators: %d is the product Id
|
1235 |
+
#: gateway/stripe/payment-request-api.php:640
|
1236 |
msgid "Product with the ID (%d) cannot be found."
|
1237 |
msgstr ""
|
1238 |
|
1239 |
#. translators: 1: product name 2: quantity in stock
|
1240 |
+
#: gateway/stripe/payment-request-api.php:661
|
1241 |
msgid "You cannot add that amount of \"%1$s\"; to the cart because there is not enough stock (%2$s remaining)."
|
1242 |
msgstr ""
|
1243 |
|
1244 |
+
#: gateway/stripe/payment-request-api.php:790
|
1245 |
+
#: gateway/stripe/payment-request-api.php:807
|
1246 |
msgid "Unable to find shipping method for address."
|
1247 |
msgstr ""
|
1248 |
|
1249 |
+
#: gateway/stripe/payment-request-api.php:795
|
1250 |
msgid "Unable to provide shipping options for Payment Requests."
|
1251 |
msgstr ""
|
1252 |
|
1413 |
msgid "%1$1s%2$2sTest Mode Enabled%3$3s : A QR code will pop up, scan and pay with WeChat."
|
1414 |
msgstr ""
|
1415 |
|
1416 |
+
#: inc/helper.php:88
|
1417 |
+
msgid "Checkout faster with one of our express checkout options."
|
1418 |
+
msgstr ""
|
1419 |
+
|
1420 |
+
#: inc/helper.php:91
|
1421 |
+
#: inc/helper.php:94
|
1422 |
+
#: inc/helper.php:95
|
1423 |
+
msgid "OR"
|
1424 |
+
msgstr ""
|
1425 |
+
|
1426 |
+
#: inc/helper.php:218
|
1427 |
+
msgid "The business address that you provided does not match the country set in your account. Please enter an address that falls within the same country."
|
1428 |
+
msgstr ""
|
1429 |
+
|
1430 |
+
#: inc/helper.php:219
|
1431 |
+
msgid "The account ID provided in the Stripe-Account header is invalid. Please check that your requests specify a valid account ID."
|
1432 |
+
msgstr ""
|
1433 |
+
|
1434 |
+
#: inc/helper.php:220
|
1435 |
+
msgid "The specified amount is greater than the maximum amount allowed. Use a lower amount and try again."
|
1436 |
+
msgstr ""
|
1437 |
+
|
1438 |
+
#: inc/helper.php:221
|
1439 |
+
msgid "The specified amount is less than the minimum amount allowed. Use a higher amount and try again."
|
1440 |
+
msgstr ""
|
1441 |
+
|
1442 |
+
#: inc/helper.php:222
|
1443 |
+
msgid "Your API Key has expired. Please update your integration with the latest API key available in your Dashboard."
|
1444 |
+
msgstr ""
|
1445 |
+
|
1446 |
+
#: inc/helper.php:223
|
1447 |
+
msgid "The payment requires authentication to proceed. If your customer is off session, notify your customer to return to your application and complete the payment. If you provided the error_on_requires_action parameter, then your customer should try another card that does not require authentication."
|
1448 |
+
msgstr ""
|
1449 |
+
|
1450 |
+
#: inc/helper.php:224
|
1451 |
+
msgid "The transfer or payout could not be completed because the associated account does not have a sufficient balance available. Create a new transfer or payout using an amount less than or equal to the account’s available balance."
|
1452 |
+
msgstr ""
|
1453 |
+
|
1454 |
+
#: inc/helper.php:225
|
1455 |
+
msgid "The bank account provided can not be used either because it is not verified yet or it is not supported."
|
1456 |
+
msgstr ""
|
1457 |
+
|
1458 |
+
#: inc/helper.php:226
|
1459 |
+
msgid "The bank account provided cannot be used. Please try a different bank account."
|
1460 |
+
msgstr ""
|
1461 |
+
|
1462 |
+
#: inc/helper.php:227
|
1463 |
+
msgid "The SetupIntent's state was incompatible with the operation you were trying to perform."
|
1464 |
+
msgstr ""
|
1465 |
+
|
1466 |
+
#: inc/helper.php:228
|
1467 |
+
msgid "The provided payment method requires customer action to complete. If you'd like to add this payment method, please upgrade your integration to handle actions."
|
1468 |
+
msgstr ""
|
1469 |
+
|
1470 |
+
#: inc/helper.php:229
|
1471 |
+
msgid "The provided payment method failed authentication. Provide a new payment method to attempt this payment again."
|
1472 |
+
msgstr ""
|
1473 |
+
|
1474 |
+
#: inc/helper.php:230
|
1475 |
+
msgid "The Payment expected a payment method with different properties than what was provided."
|
1476 |
+
msgstr ""
|
1477 |
+
|
1478 |
+
#: inc/helper.php:231
|
1479 |
+
msgid "One or more provided parameters was not allowed for the given operation on the Payment."
|
1480 |
+
msgstr ""
|
1481 |
+
|
1482 |
+
#: inc/helper.php:232
|
1483 |
+
msgid "The provided mandate is invalid and can not be used for the payment intent."
|
1484 |
+
msgstr ""
|
1485 |
+
|
1486 |
+
#: inc/helper.php:233
|
1487 |
+
msgid "The latest attempt for this Payment has expired. Provide a new payment method to attempt this Payment again."
|
1488 |
+
msgstr ""
|
1489 |
+
|
1490 |
+
#: inc/helper.php:234
|
1491 |
+
msgid "The PaymentIntent's state was incompatible with the operation you were trying to perform."
|
1492 |
+
msgstr ""
|
1493 |
+
|
1494 |
+
#: inc/helper.php:235
|
1495 |
+
msgid "The PaymentMethod's billing details is missing address details. Please update the missing fields and try again."
|
1496 |
+
msgstr ""
|
1497 |
+
|
1498 |
+
#: inc/helper.php:236
|
1499 |
+
msgid "The currency specified does not match the currency for the attached payment method. A payment can only be created for the same currency as the corresponding payment method."
|
1500 |
+
msgstr ""
|
1501 |
+
|
1502 |
+
#: inc/helper.php:237
|
1503 |
+
msgid "An error occurred while processing the card. Use a different payment method or try again later."
|
1504 |
+
msgstr ""
|
1505 |
+
|
1506 |
+
#: inc/helper.php:238
|
1507 |
+
msgid "The token provided has already been used. You must create a new token before you can retry this request."
|
1508 |
+
msgstr ""
|
1509 |
+
|
1510 |
+
#: inc/helper.php:239
|
1511 |
+
msgid "The card number is invalid. Check the card details or use a different card."
|
1512 |
+
msgstr ""
|
1513 |
+
|
1514 |
+
#: inc/helper.php:240
|
1515 |
+
msgid "The card provided as an external account is not supported for payouts. Provide a non-prepaid debit card instead."
|
1516 |
+
msgstr ""
|
1517 |
+
|
1518 |
+
#: inc/helper.php:241
|
1519 |
+
msgid "The specified amount is invalid. The charge amount must be a positive integer in the smallest currency unit, and not exceed the minimum or maximum amount."
|
1520 |
+
msgstr ""
|
1521 |
+
|
1522 |
+
#: inc/helper.php:242
|
1523 |
+
msgid "The card's security code is invalid. Check the card's security code or use a different card."
|
1524 |
+
msgstr ""
|
1525 |
+
|
1526 |
+
#: inc/helper.php:243
|
1527 |
+
msgid "The card's expiration year is incorrect. Check the expiration date or use a different card."
|
1528 |
+
msgstr ""
|
1529 |
+
|
1530 |
+
#: inc/helper.php:244
|
1531 |
+
msgid "The source cannot be used because it is not in the correct state."
|
1532 |
+
msgstr ""
|
1533 |
+
|
1534 |
+
#: inc/helper.php:245
|
1535 |
+
msgid "The address entered for the card is invalid. Please check the address or try a different card."
|
1536 |
+
msgstr ""
|
1537 |
+
|
1538 |
+
#: inc/helper.php:246
|
1539 |
+
msgid "The security code entered is invalid. Please try again."
|
1540 |
+
msgstr ""
|
1541 |
+
|
1542 |
+
#: inc/helper.php:247
|
1543 |
+
msgid "The card number entered is invalid. Please try again with a valid card number or use a different card."
|
1544 |
+
msgstr ""
|
1545 |
+
|
1546 |
+
#: inc/helper.php:248
|
1547 |
+
msgid "The postal code entered for the card is invalid. Please try again."
|
1548 |
+
msgstr ""
|
1549 |
+
|
1550 |
+
#: inc/helper.php:249
|
1551 |
+
msgid "Both a customer and source ID have been provided, but the source has not been saved to the customer. To create a charge for a customer with a specified source, you must first save the card details."
|
1552 |
+
msgstr ""
|
1553 |
+
|
1554 |
+
#: inc/helper.php:250
|
1555 |
+
msgid "The email address is invalid. Check that the email address is properly formatted and only includes allowed characters."
|
1556 |
+
msgstr ""
|
1557 |
+
|
1558 |
+
#: inc/helper.php:251
|
1559 |
+
msgid "The card has been declined. When a card is declined, the error returned also includes the decline_code attribute with the reason why the card was declined."
|
1560 |
+
msgstr ""
|
1561 |
+
|
1562 |
+
#: inc/helper.php:252
|
1563 |
+
msgid "The request contains one or more unexpected parameters. Remove these and try again."
|
1564 |
+
msgstr ""
|
1565 |
+
|
1566 |
+
#: inc/helper.php:253
|
1567 |
+
msgid "Your card number is incomplete."
|
1568 |
+
msgstr ""
|
1569 |
+
|
1570 |
+
#: inc/helper.php:254
|
1571 |
+
msgid "Your card's expiration date is incomplete."
|
1572 |
+
msgstr ""
|
1573 |
+
|
1574 |
+
#: inc/helper.php:255
|
1575 |
+
msgid "Your card's security code is incomplete."
|
1576 |
+
msgstr ""
|
1577 |
+
|
1578 |
+
#: inc/helper.php:256
|
1579 |
+
msgid "Your card's zip code is incomplete."
|
1580 |
+
msgstr ""
|
1581 |
+
|
1582 |
+
#: inc/helper.php:257
|
1583 |
+
msgid "There was an error processing your credit card."
|
1584 |
+
msgstr ""
|
1585 |
+
|
1586 |
+
#: inc/helper.php:258
|
1587 |
+
msgid "Your card's expiration year is in the past."
|
1588 |
+
msgstr ""
|
1589 |
+
|
1590 |
+
#: inc/helper.php:259
|
1591 |
+
msgid "The bank account cannot be verified, either because the microdeposit amounts provided do not match the actual amounts, or because verification has failed too many times."
|
1592 |
+
msgstr ""
|
1593 |
+
|
1594 |
+
#: inc/helper.php:263
|
1595 |
+
msgid "This card has been declined too many times. You can try to charge this card again after 24 hours. We suggest reaching out to your customer to make sure they have entered all of their information correctly and that there are no issues with their card."
|
1596 |
+
msgstr ""
|
1597 |
+
|
1598 |
+
#: inc/helper.php:267
|
1599 |
+
msgid "The charge you're attempting to capture has already been captured. Update the request with an uncaptured charge ID."
|
1600 |
+
msgstr ""
|
1601 |
+
|
1602 |
+
#: inc/helper.php:268
|
1603 |
+
msgid "The charge you're attempting to refund has already been refunded. Update the request to use the ID of a charge that has not been refunded."
|
1604 |
+
msgstr ""
|
1605 |
+
|
1606 |
+
#: inc/helper.php:272
|
1607 |
+
msgid "The charge you're attempting to refund has been charged back. Check the disputes documentation to learn how to respond to the dispute."
|
1608 |
+
msgstr ""
|
1609 |
+
|
1610 |
+
#: inc/helper.php:276
|
1611 |
+
msgid "This charge would cause you to exceed your rolling-window processing limit for this source type. Please retry the charge later, or contact us to request a higher processing limit."
|
1612 |
+
msgstr ""
|
1613 |
+
|
1614 |
+
#: inc/helper.php:280
|
1615 |
+
msgid "The charge cannot be captured as the authorization has expired. Auth and capture charges must be captured within seven days."
|
1616 |
+
msgstr ""
|
1617 |
+
|
1618 |
+
#: inc/helper.php:284
|
1619 |
+
msgid "One or more provided parameters was not allowed for the given operation on the Charge. Check our API reference or the returned error message to see which values were not correct for that Charge."
|
1620 |
+
msgstr ""
|
1621 |
+
|
1622 |
+
#: inc/helper.php:288
|
1623 |
+
msgid "The bank account number provided is invalid (e.g., missing digits). Bank account information varies from country to country. We recommend creating validations in your entry forms based on the bank account formats we provide."
|
1624 |
+
msgstr ""
|
1625 |
+
|
1626 |
#. translators: last 4 digits of IBAN account
|
1627 |
#: inc/token.php:54
|
1628 |
msgid "SEPA IBAN ending in %s"
|
readme.txt
CHANGED
@@ -3,7 +3,7 @@ Contributors: brainstormforce
|
|
3 |
Tags: stripe, credit card
|
4 |
Requires at least: 5.4
|
5 |
Tested up to: 5.9
|
6 |
-
Stable tag: 1.4.
|
7 |
Requires PHP: 5.6
|
8 |
License: GPLv2 or later
|
9 |
License URI: https://www.gnu.org/licenses/gpl-2.0.html
|
@@ -108,6 +108,13 @@ We understand the need for a quality product backed by dedicated support that ca
|
|
108 |
|
109 |
== Changelog ==
|
110 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
111 |
= 1.4.0 - TUESDAY, 22ND FEBRUARY 2022 =
|
112 |
* New: Supports SEPA payment method.
|
113 |
* New: Supports WeChat payment method.
|
3 |
Tags: stripe, credit card
|
4 |
Requires at least: 5.4
|
5 |
Tested up to: 5.9
|
6 |
+
Stable tag: 1.4.1
|
7 |
Requires PHP: 5.6
|
8 |
License: GPLv2 or later
|
9 |
License URI: https://www.gnu.org/licenses/gpl-2.0.html
|
108 |
|
109 |
== Changelog ==
|
110 |
|
111 |
+
= 1.4.1 - TUESDAY, 15 MARCH 2022 =
|
112 |
+
* New: Express checkout class layout support.
|
113 |
+
* Improvement: Added localization for Stripe error messages.
|
114 |
+
* Improvement: Added compatibility with popular themes.
|
115 |
+
* Fix: Express checkout console error.
|
116 |
+
* Fix: Express checkout's broken admin preview.
|
117 |
+
|
118 |
= 1.4.0 - TUESDAY, 22ND FEBRUARY 2022 =
|
119 |
* New: Supports SEPA payment method.
|
120 |
* New: Supports WeChat payment method.
|