From ccb5fe37b56bb5e5495225fbca8488196d1ee1e2 Mon Sep 17 00:00:00 2001
From: WooCommerce
Date: Fri, 13 Sep 2024 10:14:49 +0000
Subject: [PATCH] Updates to 6.6.2
---
changelog.txt | 11 +
.../class-wc-subscriptions-switcher.php | 2 +-
languages/woocommerce-subscriptions.pot | 248 +++++++++---------
vendor/autoload.php | 2 +-
vendor/composer/autoload_real.php | 8 +-
vendor/composer/autoload_static.php | 8 +-
vendor/composer/installed.json | 14 +-
vendor/composer/installed.php | 18 +-
.../subscriptions-core/changelog.txt | 9 +
.../admin/class-wc-subscriptions-admin.php | 63 ++---
.../admin/class-wcs-admin-post-types.php | 2 +-
.../admin/class-wcs-admin-system-status.php | 2 +-
.../views/html-unknown-related-orders-row.php | 13 +-
.../includes/class-wc-subscription.php | 10 +-
.../class-wc-subscriptions-core-plugin.php | 6 +-
.../class-wc-subscriptions-synchroniser.php | 2 +-
.../includes/class-wcs-cart-renewal.php | 9 +-
.../class-wcs-dependent-hook-manager.php | 2 +-
...ss-wcs-failed-scheduled-action-manager.php | 2 +-
...ass-wcs-related-order-store-cached-cpt.php | 29 ++
...wc-subscriptions-core-payment-gateways.php | 2 +-
.../includes/admin/class-wcs-paypal-admin.php | 11 +-
...-paypal-standard-change-payment-method.php | 2 +-
.../templates/html-ipn-failure-notice.php | 18 +-
.../class-wc-subscriptions-upgrader.php | 2 +-
.../includes/upgrades/templates/wcs-about.php | 12 +-
.../includes/wcs-compatibility-functions.php | 8 +-
.../html-failed-scheduled-action-notice.php | 2 +-
.../woocommerce-subscriptions-core.php | 2 +-
woocommerce-subscriptions.php | 6 +-
30 files changed, 291 insertions(+), 234 deletions(-)
diff --git a/changelog.txt b/changelog.txt
index 1c1e655..eb587d2 100644
--- a/changelog.txt
+++ b/changelog.txt
@@ -1,5 +1,16 @@
*** WooCommerce Subscriptions Changelog ***
+2024-09-13 - version 6.7.0
+* Fix: Resolved two issues preventing the correct display of the "Subscription items can no longer be edited." message on the Edit Subscription page.
+* Fix: Checks for the existence of `wc_get_page_screen_id` before calling it on `wcs_get_page_screen_id`, and for the admin context before calling `list_table_primary_column` to prevent fatal errors.
+* Fix: Blocks the reactivation of a subscription when the end date is in the past.
+* Fix: Ensure a subscription's modified date is updated when its related order cache is updated on non-HPOS sites.
+* Fix: Ensure trial period form data is set before use to prevent fatal errors when the data is missing.
+* Fix: Resolved an error with coupon discount calculations for manual or early renewal orders on stores with tax-inclusive pricing.
+* Fix: Add the theme-compatible button class to the switch button on the My Account > Subscription page.
+* Dev: Removing the unused method `maybe_remove_formatted_order_total_filter` hooked to `woocommerce_get_formatted_order_total` which was deprecated.
+* Dev: Update subscriptions-core to 7.5.0
+
2024-09-05 - version 6.6.2
* Fix: Prevent errors during checkout when a customer is switching their subscription product and does not require payment.
* Dev: Update subscriptions-core to 7.4.3.
diff --git a/includes/switching/class-wc-subscriptions-switcher.php b/includes/switching/class-wc-subscriptions-switcher.php
index 7a2fd4b..0d73f62 100644
--- a/includes/switching/class-wc-subscriptions-switcher.php
+++ b/includes/switching/class-wc-subscriptions-switcher.php
@@ -550,7 +550,7 @@ public static function print_switch_link( $item_id, $item, $subscription ) {
$switch_url = esc_url( self::get_switch_url( $item_id, $item, $subscription ) );
$switch_text = apply_filters( 'woocommerce_subscriptions_switch_link_text', get_option( WC_Subscriptions_Admin::$option_prefix . '_switch_button_text', __( 'Upgrade or Downgrade', 'woocommerce-subscriptions' ) ), $item_id, $item, $subscription );
- $switch_classes = apply_filters( 'woocommerce_subscriptions_switch_link_classes', array( 'wcs-switch-link', 'button' ), $item_id, $item, $subscription );
+ $switch_classes = apply_filters( 'woocommerce_subscriptions_switch_link_classes', array( 'wcs-switch-link', 'button', wc_wp_theme_get_element_class_name( 'button' ) ), $item_id, $item, $subscription );
$switch_link = sprintf( '%s', $switch_url, implode( ' ', (array) $switch_classes ), $switch_text );
diff --git a/languages/woocommerce-subscriptions.pot b/languages/woocommerce-subscriptions.pot
index dc0a0ca..85aa1e0 100644
--- a/languages/woocommerce-subscriptions.pot
+++ b/languages/woocommerce-subscriptions.pot
@@ -2,14 +2,14 @@
# This file is distributed under the same license as the WooCommerce Subscriptions plugin.
msgid ""
msgstr ""
-"Project-Id-Version: WooCommerce Subscriptions 6.6.2\n"
+"Project-Id-Version: WooCommerce Subscriptions 6.7.0\n"
"Report-Msgid-Bugs-To: https://woocommerce.com/contact-us\n"
"Last-Translator: FULL NAME \n"
"Language-Team: LANGUAGE \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"POT-Creation-Date: 2024-09-05T03:31:47+00:00\n"
+"POT-Creation-Date: 2024-09-13T00:40:26+00:00\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"X-Generator: WP-CLI 2.9.0\n"
"X-Domain: woocommerce-subscriptions\n"
@@ -50,8 +50,8 @@ msgstr ""
#: includes/admin/class-wcs-admin-reports.php:81
#: includes/admin/reports/class-wcs-report-subscription-events-by-date.php:922
#: includes/api/class-wc-rest-subscriptions-settings.php:29
-#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:1030
-#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:1182
+#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:1027
+#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:1179
#: vendor/woocommerce/subscriptions-core/includes/admin/class-wcs-admin-system-status.php:59
#: vendor/woocommerce/subscriptions-core/includes/admin/class-wcs-wc-admin-manager.php:38
#: vendor/woocommerce/subscriptions-core/includes/admin/class-wcs-wc-admin-manager.php:48
@@ -99,14 +99,14 @@ msgid "Report Cache Enabled"
msgstr ""
#: includes/admin/reports/class-wcs-report-cache-manager.php:316
-#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:1724
-#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:1793
+#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:1721
+#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:1790
#: vendor/woocommerce/subscriptions-core/includes/admin/class-wcs-admin-system-status.php:98
msgid "Yes"
msgstr ""
#: includes/admin/reports/class-wcs-report-cache-manager.php:316
-#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:1724
+#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:1721
#: vendor/woocommerce/subscriptions-core/includes/admin/class-wcs-admin-system-status.php:98
msgid "No"
msgstr ""
@@ -1939,70 +1939,70 @@ msgstr ""
msgid "Invalid relation type: %1$s. Order relationship type must be one of: %2$s."
msgstr ""
-#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:214
+#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:211
msgid "Simple subscription"
msgstr ""
-#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:215
+#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:212
msgid "Variable subscription"
msgstr ""
-#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:236
+#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:233
msgid "Downloadable"
msgstr ""
-#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:237
+#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:234
msgid "Virtual"
msgstr ""
-#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:301
+#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:298
msgid "Choose the subscription price, billing interval and period."
msgstr ""
#. translators: placeholder is trial period validation message if passed an invalid value (e.g. "Trial period can not exceed 4 weeks")
-#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:303
+#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:300
msgctxt "Trial period field tooltip on Edit Product administration screen"
msgid "An optional period of time to wait before charging the first recurring payment. Any sign up fee will still be charged at the outset of the subscription. %s"
msgstr ""
#. translators: %s: currency symbol.
#. translators: placeholder is a currency symbol / code
-#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:317
+#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:314
#: vendor/woocommerce/subscriptions-core/templates/admin/html-variation-price.php:44
msgid "Subscription price (%s)"
msgstr ""
-#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:321
+#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:318
msgctxt "example price"
msgid "e.g. 5.90"
msgstr ""
-#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:322
+#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:319
msgid "Subscription interval"
msgstr ""
-#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:328
-#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:484
+#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:325
+#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:481
msgid "Subscription period"
msgstr ""
-#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:344
-#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:485
+#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:341
+#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:482
#: vendor/woocommerce/subscriptions-core/templates/admin/html-variation-price.php:66
msgid "Stop renewing after"
msgstr ""
-#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:347
+#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:344
msgid "Automatically stop renewing the subscription after this length of time. This length is in addition to any free trial or amount of time provided before a synchronised first renewal date."
msgstr ""
#. translators: %s is a currency symbol / code
-#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:358
+#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:355
#: vendor/woocommerce/subscriptions-core/templates/admin/html-variation-price.php:20
msgid "Sign-up fee (%s)"
msgstr ""
-#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:359
+#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:356
#: vendor/woocommerce/subscriptions-core/templates/admin/deprecated/html-variation-price.php:31
#: vendor/woocommerce/subscriptions-core/templates/admin/deprecated/html-variation-price.php:86
#: vendor/woocommerce/subscriptions-core/templates/admin/html-variation-price.php:21
@@ -2011,90 +2011,90 @@ msgctxt "example price"
msgid "e.g. 9.90"
msgstr ""
-#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:360
+#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:357
msgid "Optionally include an amount to be charged at the outset of the subscription. The sign-up fee will be charged immediately, even if the product has a free trial or the payment dates are synced."
msgstr ""
-#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:374
+#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:371
#: vendor/woocommerce/subscriptions-core/includes/class-wc-subscriptions-cart.php:2479
#: vendor/woocommerce/subscriptions-core/templates/admin/html-variation-price.php:25
msgid "Free trial"
msgstr ""
-#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:377
+#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:374
#: vendor/woocommerce/subscriptions-core/templates/admin/deprecated/html-variation-price.php:115
msgid "Subscription Trial Period"
msgstr ""
-#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:417
+#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:414
msgid "One time shipping"
msgstr ""
-#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:418
+#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:415
msgid "Shipping for subscription products is normally charged on the initial order and all renewal orders. Enable this to only charge shipping once on the initial order. Note: for this setting to be enabled the subscription must not have a free trial or a synced renewal date."
msgstr ""
-#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:481
+#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:478
msgid "Subscription pricing"
msgstr ""
-#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:482
+#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:479
msgid "Subscription sign-up fee"
msgstr ""
-#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:483
+#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:480
msgid "Subscription billing interval"
msgstr ""
-#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:486
+#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:483
msgid "Free trial length"
msgstr ""
-#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:487
+#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:484
msgid "Free trial period"
msgstr ""
#. translators: %s: subscription status.
-#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:810
+#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:807
msgid "Unable to change subscription status to \"%s\". Please assign a customer to the subscription to activate it."
msgstr ""
-#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:864
+#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:861
msgid "Trashing this order will also trash the subscriptions purchased with the order."
msgstr ""
-#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:877
+#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:874
msgid "Enter the new period, either day, week, month or year:"
msgstr ""
-#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:878
+#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:875
msgid "Enter a new length (e.g. 5):"
msgstr ""
-#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:879
+#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:876
msgid "Enter a new interval as a single number (e.g. to charge every 2nd month, enter 2):"
msgstr ""
-#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:880
+#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:877
msgid "Delete all variations without a subscription"
msgstr ""
-#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:886
+#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:883
msgid "An error occurred determining if that variation can be deleted. Please try again."
msgstr ""
-#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:887
+#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:884
msgid "That variation can not be removed because it is associated with active subscriptions. To remove this variation, please cancel and delete the subscriptions for it."
msgstr ""
-#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:892
+#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:889
msgid ""
"You are about to trash one or more orders which contain a subscription.\n"
"\n"
"Trashing the orders will also trash the subscriptions purchased with these orders."
msgstr ""
-#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:900
+#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:897
msgid ""
"WARNING: Bad things are about to happen!\n"
"\n"
@@ -2103,179 +2103,179 @@ msgid ""
"Changes to the billing period, recurring discount, recurring tax or recurring total may not be reflected in the amount charged by the payment gateway."
msgstr ""
-#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:901
+#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:898
msgid "You are deleting a subscription item. You will also need to manually cancel and trash the subscription on the Manage Subscriptions screen."
msgstr ""
-#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:908
+#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:905
msgid ""
"Warning: Deleting a user will also delete the user's subscriptions. The user's orders will remain but be reassigned to the 'Guest' user.\n"
"\n"
"Do you want to continue to delete this user and any associated subscriptions?"
msgstr ""
-#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:912
+#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:909
msgid "PayPal Standard has a number of limitations and does not support all subscription features."
msgstr ""
-#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:912
+#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:909
msgid "Because of this, it is not recommended as a payment method for Subscriptions unless it is the only available option for your country."
msgstr ""
-#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:915
+#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:912
msgid "This action cannot be reversed. Are you sure you wish to erase personal data from the selected subscriptions?"
msgstr ""
#. translators: placeholders are for HTML tags. They are 1$: "", 2$: "
", 3$: "", 4$: "", 5$: "", 6$: "", 7$: "", 8$: "
"
-#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:932
+#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:929
msgctxt "used in admin pointer script params in javascript as type pointer content"
msgid "%1$sChoose Subscription%2$s%3$sThe WooCommerce Subscriptions extension adds two new subscription product types - %4$sSimple subscription%5$s and %6$sVariable subscription%7$s.%8$s"
msgstr ""
#. translators: placeholders are for HTML tags. They are 1$: "", 2$: "
", 3$: "", 4$: "
"
-#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:934
+#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:931
msgctxt "used in admin pointer script params in javascript as price pointer content"
msgid "%1$sSet a Price%2$s%3$sSubscription prices are a little different to other product prices. For a subscription, you can set a billing period, length, sign-up fee and free trial.%4$s"
msgstr ""
-#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:960
+#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:957
msgid "Active subscriber?"
msgstr ""
-#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:1004
+#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:1001
msgid "Manage Subscriptions"
msgstr ""
-#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:1008
+#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:1005
#: vendor/woocommerce/subscriptions-core/includes/class-wc-subscriptions-core-plugin.php:381
msgid "Search Subscriptions"
msgstr ""
-#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:1234
+#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:1231
msgctxt "options section heading"
msgid "Miscellaneous"
msgstr ""
-#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:1241
+#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:1238
msgid "Mixed Checkout"
msgstr ""
-#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:1242
+#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:1239
msgid "Allow multiple subscriptions and products to be purchased simultaneously."
msgstr ""
-#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:1246
+#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:1243
msgid "Allow a subscription product to be purchased with other products and subscriptions in the same transaction."
msgstr ""
#. translators: placeholder is a number
#. translators: placeholder is a subscription ID.
-#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:1348
-#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:1590
+#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:1345
+#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:1587
msgid "We can't find a subscription with ID #%d. Perhaps it was deleted?"
msgstr ""
#. translators: Placeholders are opening and closing link tags.
-#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:1441
-#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:1503
+#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:1438
+#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:1500
msgid "We weren't able to locate the set of report results you requested. Please regenerate the link from the %1$sSubscription Reports screen%2$s."
msgstr ""
-#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:1558
+#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:1555
msgid "We can't find a paid subscription order for this user."
msgstr ""
#. translators: placeholders are opening link tag, ID of sub, and closing link tag
-#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:1597
+#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:1594
msgid "Showing orders for %1$sSubscription %2$s%3$s"
msgstr ""
#. translators: number of 1$: days, 2$: weeks, 3$: months, 4$: years
-#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:1620
+#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:1617
msgid "The trial period can not exceed: %1$s, %2$s, %3$s or %4$s."
msgstr ""
#. translators: placeholder is a time period (e.g. "4 weeks")
-#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:1625
+#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:1622
msgid "The trial period can not exceed %s."
msgstr ""
-#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:1650
+#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:1647
msgid "Please log in to your account to view your subscriptions."
msgstr ""
-#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:1687
+#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:1684
msgid "No subscriptions found for that customer."
msgstr ""
-#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:1689
+#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:1686
msgid "You do not have permission to view those subscriptions."
msgstr ""
-#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:1723
+#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:1720
#: vendor/woocommerce/subscriptions-core/includes/admin/class-wcs-admin-system-status.php:96
msgctxt "label that indicates whether debugging is turned on for the plugin"
msgid "WCS_DEBUG"
msgstr ""
-#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:1729
+#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:1726
#: vendor/woocommerce/subscriptions-core/includes/admin/class-wcs-admin-system-status.php:110
msgctxt "Live or Staging, Label on WooCommerce -> System Status page"
msgid "Subscriptions Mode"
msgstr ""
-#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:1730
+#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:1727
#: vendor/woocommerce/subscriptions-core/includes/admin/class-wcs-admin-system-status.php:112
msgctxt "refers to staging site"
msgid "Staging"
msgstr ""
-#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:1730
+#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:1727
#: vendor/woocommerce/subscriptions-core/includes/admin/class-wcs-admin-system-status.php:112
msgctxt "refers to live site"
msgid "Live"
msgstr ""
-#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:1760
+#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:1757
msgid "Automatic Recurring Payments"
msgstr ""
-#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:1793
+#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:1790
msgid "Supports automatic renewal payments."
msgstr ""
-#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:1891
+#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:1871
msgid "Subscription items can no longer be edited."
msgstr ""
-#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:1895
+#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:1876
msgid "This subscription is no longer editable because the payment gateway does not allow modification of recurring amounts."
msgstr ""
#. translators: $1-2: opening and closing tags of a link that takes to Woo marketplace / Stripe product page
-#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:1914
+#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:1895
msgid "No payment gateways capable of processing automatic subscription payments are enabled. If you would like to process automatic payments, we recommend the %1$sfree Stripe extension%2$s."
msgstr ""
-#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:1921
+#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:1902
msgid "Recurring Payments"
msgstr ""
#. translators: placeholders are opening and closing link tags
-#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:1929
+#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:1910
msgid "Payment gateways which don't support automatic recurring payments can be used to process %1$smanual subscription renewal payments%2$s."
msgstr ""
-#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:2049
+#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:2030
msgid "Note that purchasing a subscription still requires an account."
msgstr ""
-#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:2063
+#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:2044
msgid "The product type can not be changed because this product is associated with subscriptions."
msgstr ""
-#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:2120
-#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:2121
+#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:2101
+#: vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php:2102
msgid "Allow subscription customers to create an account during checkout"
msgstr ""
@@ -2540,7 +2540,7 @@ msgstr[1] ""
#. translators: placeholder is the display name of a payment gateway a subscription was paid by
#. translators: %s: payment method.
#: vendor/woocommerce/subscriptions-core/includes/admin/class-wcs-admin-post-types.php:652
-#: vendor/woocommerce/subscriptions-core/includes/class-wc-subscription.php:2158
+#: vendor/woocommerce/subscriptions-core/includes/class-wc-subscription.php:2164
msgid "Via %s"
msgstr ""
@@ -2608,7 +2608,7 @@ msgid "None"
msgstr ""
#: vendor/woocommerce/subscriptions-core/includes/admin/class-wcs-admin-post-types.php:1174
-#: vendor/woocommerce/subscriptions-core/includes/class-wc-subscription.php:2140
+#: vendor/woocommerce/subscriptions-core/includes/class-wc-subscription.php:2146
#: vendor/woocommerce/subscriptions-core/includes/class-wcs-change-payment-method-admin.php:170
msgid "Manual Renewal"
msgstr ""
@@ -2959,7 +2959,7 @@ msgid "Error: unable to find timezone of your browser."
msgstr ""
#. Translators: The %1 placeholder is the translated order relationship ("Parent Order"), %2 placeholder is a
HTML tag.
-#: vendor/woocommerce/subscriptions-core/includes/admin/meta-boxes/views/html-unknown-related-orders-row.php:24
+#: vendor/woocommerce/subscriptions-core/includes/admin/meta-boxes/views/html-unknown-related-orders-row.php:25
msgid "This %1$s couldn't be loaded from the database. %1$s Click to learn more."
msgstr ""
@@ -2968,139 +2968,139 @@ msgid "Read more"
msgstr ""
#. translators: %s: subscription status.
-#: vendor/woocommerce/subscriptions-core/includes/class-wc-subscription.php:437
+#: vendor/woocommerce/subscriptions-core/includes/class-wc-subscription.php:443
msgid "Unable to change subscription status to \"%s\"."
msgstr ""
#. translators: 1: subscription status, 2: error message.
-#: vendor/woocommerce/subscriptions-core/includes/class-wc-subscription.php:560
+#: vendor/woocommerce/subscriptions-core/includes/class-wc-subscription.php:566
msgid "Unable to change subscription status to \"%1$s\". Exception: %2$s"
msgstr ""
#. translators: 1: old subscription status 2: new subscription status
-#: vendor/woocommerce/subscriptions-core/includes/class-wc-subscription.php:593
+#: vendor/woocommerce/subscriptions-core/includes/class-wc-subscription.php:599
msgid "Status changed from %1$s to %2$s."
msgstr ""
#. translators: %s: new order status
-#: vendor/woocommerce/subscriptions-core/includes/class-wc-subscription.php:607
+#: vendor/woocommerce/subscriptions-core/includes/class-wc-subscription.php:613
msgid "Status set to %s."
msgstr ""
-#: vendor/woocommerce/subscriptions-core/includes/class-wc-subscription.php:621
+#: vendor/woocommerce/subscriptions-core/includes/class-wc-subscription.php:627
msgid "Error during subscription status transition."
msgstr ""
#. translators: placeholder is human time diff (e.g. "3 weeks")
-#: vendor/woocommerce/subscriptions-core/includes/class-wc-subscription.php:1308
+#: vendor/woocommerce/subscriptions-core/includes/class-wc-subscription.php:1314
#: vendor/woocommerce/subscriptions-core/includes/class-wc-subscriptions-manager.php:2405
msgid "In %s"
msgstr ""
#. translators: placeholder is human time diff (e.g. "3 weeks")
-#: vendor/woocommerce/subscriptions-core/includes/class-wc-subscription.php:1311
+#: vendor/woocommerce/subscriptions-core/includes/class-wc-subscription.php:1317
#: vendor/woocommerce/subscriptions-core/includes/wcs-formatting-functions.php:246
msgid "%s ago"
msgstr ""
-#: vendor/woocommerce/subscriptions-core/includes/class-wc-subscription.php:1318
+#: vendor/woocommerce/subscriptions-core/includes/class-wc-subscription.php:1324
msgid "Not yet ended"
msgstr ""
-#: vendor/woocommerce/subscriptions-core/includes/class-wc-subscription.php:1321
+#: vendor/woocommerce/subscriptions-core/includes/class-wc-subscription.php:1327
msgid "Not cancelled"
msgstr ""
-#: vendor/woocommerce/subscriptions-core/includes/class-wc-subscription.php:1326
+#: vendor/woocommerce/subscriptions-core/includes/class-wc-subscription.php:1332
msgctxt "original denotes there is no date to display"
msgid "-"
msgstr ""
-#: vendor/woocommerce/subscriptions-core/includes/class-wc-subscription.php:1434
+#: vendor/woocommerce/subscriptions-core/includes/class-wc-subscription.php:1440
msgid "The creation date of a subscription can not be deleted, only updated."
msgstr ""
-#: vendor/woocommerce/subscriptions-core/includes/class-wc-subscription.php:1437
+#: vendor/woocommerce/subscriptions-core/includes/class-wc-subscription.php:1443
msgid "The start date of a subscription can not be deleted, only updated."
msgstr ""
#. translators: %s: date type (e.g. "trial_end").
-#: vendor/woocommerce/subscriptions-core/includes/class-wc-subscription.php:1442
+#: vendor/woocommerce/subscriptions-core/includes/class-wc-subscription.php:1448
msgid "The %s date of a subscription can not be deleted. You must delete the order."
msgstr ""
#. translators: %d: subscription ID.
#. translators: %d: order ID.
-#: vendor/woocommerce/subscriptions-core/includes/class-wc-subscription.php:1451
-#: vendor/woocommerce/subscriptions-core/includes/class-wc-subscription.php:2581
+#: vendor/woocommerce/subscriptions-core/includes/class-wc-subscription.php:1457
+#: vendor/woocommerce/subscriptions-core/includes/class-wc-subscription.php:2587
msgid "Subscription #%d: "
msgstr ""
-#: vendor/woocommerce/subscriptions-core/includes/class-wc-subscription.php:1865
+#: vendor/woocommerce/subscriptions-core/includes/class-wc-subscription.php:1871
msgid "Payment status marked complete."
msgstr ""
-#: vendor/woocommerce/subscriptions-core/includes/class-wc-subscription.php:1907
+#: vendor/woocommerce/subscriptions-core/includes/class-wc-subscription.php:1913
msgid "Payment failed."
msgstr ""
-#: vendor/woocommerce/subscriptions-core/includes/class-wc-subscription.php:1912
+#: vendor/woocommerce/subscriptions-core/includes/class-wc-subscription.php:1918
msgid "Subscription Cancelled: maximum number of failed payments reached."
msgstr ""
-#: vendor/woocommerce/subscriptions-core/includes/class-wc-subscription.php:2022
+#: vendor/woocommerce/subscriptions-core/includes/class-wc-subscription.php:2028
msgid "The \"all\" value for $order_type parameter is deprecated. It was a misnomer, as it did not return resubscribe orders. It was also inconsistent with order type values accepted by wcs_get_subscription_orders(). Use array( \"parent\", \"renewal\", \"switch\" ) to maintain previous behaviour, or \"any\" to receive all order types, including switch and resubscribe."
msgstr ""
-#: vendor/woocommerce/subscriptions-core/includes/class-wc-subscription.php:2237
+#: vendor/woocommerce/subscriptions-core/includes/class-wc-subscription.php:2243
#: vendor/woocommerce/subscriptions-core/wcs-functions.php:834
msgid "Payment method meta must be an array."
msgstr ""
-#: vendor/woocommerce/subscriptions-core/includes/class-wc-subscription.php:2473
+#: vendor/woocommerce/subscriptions-core/includes/class-wc-subscription.php:2479
msgid "Invalid format. First parameter needs to be an array."
msgstr ""
-#: vendor/woocommerce/subscriptions-core/includes/class-wc-subscription.php:2477
+#: vendor/woocommerce/subscriptions-core/includes/class-wc-subscription.php:2483
msgid "Invalid data. First parameter was empty when passed to update_dates()."
msgstr ""
-#: vendor/woocommerce/subscriptions-core/includes/class-wc-subscription.php:2484
+#: vendor/woocommerce/subscriptions-core/includes/class-wc-subscription.php:2490
msgid "Invalid data. First parameter has a date that is not in the registered date types."
msgstr ""
#. translators: placeholder is date type (e.g. "end", "next_payment"...)
-#: vendor/woocommerce/subscriptions-core/includes/class-wc-subscription.php:2511
+#: vendor/woocommerce/subscriptions-core/includes/class-wc-subscription.php:2517
msgctxt "appears in an error message if date is wrong format"
msgid "Invalid %s date. The date must be of the format: \"Y-m-d H:i:s\"."
msgstr ""
#. translators: %s: date type (e.g. "end").
-#: vendor/woocommerce/subscriptions-core/includes/class-wc-subscription.php:2549
+#: vendor/woocommerce/subscriptions-core/includes/class-wc-subscription.php:2555
msgid "The %s date must occur after the cancellation date."
msgstr ""
#. translators: %s: date type (e.g. "end").
-#: vendor/woocommerce/subscriptions-core/includes/class-wc-subscription.php:2555
+#: vendor/woocommerce/subscriptions-core/includes/class-wc-subscription.php:2561
msgid "The %s date must occur after the last payment date."
msgstr ""
#. translators: %s: date type (e.g. "end").
-#: vendor/woocommerce/subscriptions-core/includes/class-wc-subscription.php:2560
+#: vendor/woocommerce/subscriptions-core/includes/class-wc-subscription.php:2566
msgid "The %s date must occur after the next payment date."
msgstr ""
#. translators: %s: date type (e.g. "end").
-#: vendor/woocommerce/subscriptions-core/includes/class-wc-subscription.php:2566
+#: vendor/woocommerce/subscriptions-core/includes/class-wc-subscription.php:2572
msgid "The %s date must occur after the trial end date."
msgstr ""
#. translators: %s: date type (e.g. "next_payment").
-#: vendor/woocommerce/subscriptions-core/includes/class-wc-subscription.php:2571
+#: vendor/woocommerce/subscriptions-core/includes/class-wc-subscription.php:2577
msgid "The %s date must occur after the start date."
msgstr ""
-#: vendor/woocommerce/subscriptions-core/includes/class-wc-subscription.php:2601
+#: vendor/woocommerce/subscriptions-core/includes/class-wc-subscription.php:2607
#: vendor/woocommerce/subscriptions-core/includes/class-wc-subscriptions-checkout.php:348
msgid "Backordered"
msgstr ""
@@ -3455,9 +3455,9 @@ msgstr ""
msgid "Support"
msgstr ""
-#. translators: placeholders are opening and closing tags. Leads to docs on version 2
+#. translators: placeholders are opening and closing tags. Leads to docs on upgrading WooCommerce Subscriptions
#: vendor/woocommerce/subscriptions-core/includes/class-wc-subscriptions-core-plugin.php:573
-msgid "Warning! Version 2.0 is a major update to the WooCommerce Subscriptions extension. Before updating, please create a backup, update all WooCommerce extensions and test all plugins, custom code and payment gateways with version 2.0 on a staging site. %1$sLearn more about the changes in version 2.0 »%2$s"
+msgid "Warning! Version 2.0 is a major update to the WooCommerce Subscriptions extension. Before updating, please create a backup, update all WooCommerce extensions and test all plugins, custom code and payment gateways with version 2.0 on a staging site. %1$sLearn more about updating older versions of WooCommerce Subscriptions »%2$s"
msgstr ""
#: vendor/woocommerce/subscriptions-core/includes/class-wc-subscriptions-coupon.php:134
@@ -4207,7 +4207,7 @@ msgctxt "Used in WooCommerce by removed item notification: \"_All linked subscri
msgid "All linked subscription items were"
msgstr ""
-#: vendor/woocommerce/subscriptions-core/includes/class-wcs-cart-renewal.php:1543
+#: vendor/woocommerce/subscriptions-core/includes/class-wcs-cart-renewal.php:1548
msgctxt "The place order button text while renewing a subscription"
msgid "Renew subscription"
msgstr ""
@@ -5117,18 +5117,14 @@ msgid "PayPal API error - credentials are incorrect."
msgstr ""
#: vendor/woocommerce/subscriptions-core/includes/gateways/paypal/includes/templates/html-ipn-failure-notice.php:18
-msgid "A fatal error has occurred while processing a recent subscription payment with PayPal. Please %1$sopen a new ticket at WooCommerce Support%3$s immediately to get this resolved. %2$sLearn more »%3$s"
-msgstr ""
-
-#: vendor/woocommerce/subscriptions-core/includes/gateways/paypal/includes/templates/html-ipn-failure-notice.php:29
-msgid "To resolve this as quickly as possible, please create a %1$stemporary administrator account%3$s with the user email woologin@woocommerce.com and share the credentials with us via %2$sQuickForget.com%3$s."
+msgid "A fatal error has occurred while processing a recent subscription payment with PayPal. Please %1$sopen a new ticket at WooCommerce Support%3$s immediately to get this resolved. See our documentation on %2$sdebugging IPN issues in PayPal Standard to Learn more »%3$s"
msgstr ""
-#: vendor/woocommerce/subscriptions-core/includes/gateways/paypal/includes/templates/html-ipn-failure-notice.php:36
+#: vendor/woocommerce/subscriptions-core/includes/gateways/paypal/includes/templates/html-ipn-failure-notice.php:26
msgid "Last recorded error:"
msgstr ""
-#: vendor/woocommerce/subscriptions-core/includes/gateways/paypal/includes/templates/html-ipn-failure-notice.php:46
+#: vendor/woocommerce/subscriptions-core/includes/gateways/paypal/includes/templates/html-ipn-failure-notice.php:36
msgid "To see the full error, view the %1$s log file from the %2$sWooCommerce logs screen.%3$s."
msgstr ""
diff --git a/vendor/autoload.php b/vendor/autoload.php
index 5ba82ab..ddabd56 100644
--- a/vendor/autoload.php
+++ b/vendor/autoload.php
@@ -22,4 +22,4 @@
require_once __DIR__ . '/composer/autoload_real.php';
-return ComposerAutoloaderInit7e691db14332db79e94ffb5244979d5e::getLoader();
+return ComposerAutoloaderInit0a0744246f082255078926698437a7a5::getLoader();
diff --git a/vendor/composer/autoload_real.php b/vendor/composer/autoload_real.php
index 2d7ce60..59bc872 100644
--- a/vendor/composer/autoload_real.php
+++ b/vendor/composer/autoload_real.php
@@ -2,7 +2,7 @@
// autoload_real.php @generated by Composer
-class ComposerAutoloaderInit7e691db14332db79e94ffb5244979d5e
+class ComposerAutoloaderInit0a0744246f082255078926698437a7a5
{
private static $loader;
@@ -24,12 +24,12 @@ public static function getLoader()
require __DIR__ . '/platform_check.php';
- spl_autoload_register(array('ComposerAutoloaderInit7e691db14332db79e94ffb5244979d5e', 'loadClassLoader'), true, true);
+ spl_autoload_register(array('ComposerAutoloaderInit0a0744246f082255078926698437a7a5', 'loadClassLoader'), true, true);
self::$loader = $loader = new \Composer\Autoload\ClassLoader(\dirname(__DIR__));
- spl_autoload_unregister(array('ComposerAutoloaderInit7e691db14332db79e94ffb5244979d5e', 'loadClassLoader'));
+ spl_autoload_unregister(array('ComposerAutoloaderInit0a0744246f082255078926698437a7a5', 'loadClassLoader'));
require __DIR__ . '/autoload_static.php';
- call_user_func(\Composer\Autoload\ComposerStaticInit7e691db14332db79e94ffb5244979d5e::getInitializer($loader));
+ call_user_func(\Composer\Autoload\ComposerStaticInit0a0744246f082255078926698437a7a5::getInitializer($loader));
$loader->register(true);
diff --git a/vendor/composer/autoload_static.php b/vendor/composer/autoload_static.php
index bb89710..c279058 100644
--- a/vendor/composer/autoload_static.php
+++ b/vendor/composer/autoload_static.php
@@ -4,7 +4,7 @@
namespace Composer\Autoload;
-class ComposerStaticInit7e691db14332db79e94ffb5244979d5e
+class ComposerStaticInit0a0744246f082255078926698437a7a5
{
public static $prefixLengthsPsr4 = array (
'C' =>
@@ -129,9 +129,9 @@ class ComposerStaticInit7e691db14332db79e94ffb5244979d5e
public static function getInitializer(ClassLoader $loader)
{
return \Closure::bind(function () use ($loader) {
- $loader->prefixLengthsPsr4 = ComposerStaticInit7e691db14332db79e94ffb5244979d5e::$prefixLengthsPsr4;
- $loader->prefixDirsPsr4 = ComposerStaticInit7e691db14332db79e94ffb5244979d5e::$prefixDirsPsr4;
- $loader->classMap = ComposerStaticInit7e691db14332db79e94ffb5244979d5e::$classMap;
+ $loader->prefixLengthsPsr4 = ComposerStaticInit0a0744246f082255078926698437a7a5::$prefixLengthsPsr4;
+ $loader->prefixDirsPsr4 = ComposerStaticInit0a0744246f082255078926698437a7a5::$prefixDirsPsr4;
+ $loader->classMap = ComposerStaticInit0a0744246f082255078926698437a7a5::$classMap;
}, null, ClassLoader::class);
}
diff --git a/vendor/composer/installed.json b/vendor/composer/installed.json
index e8f0fbb..03624c5 100644
--- a/vendor/composer/installed.json
+++ b/vendor/composer/installed.json
@@ -156,17 +156,17 @@
},
{
"name": "woocommerce/subscriptions-core",
- "version": "7.4.3",
- "version_normalized": "7.4.3.0",
+ "version": "7.5.0",
+ "version_normalized": "7.5.0.0",
"source": {
"type": "git",
"url": "https://github.com/Automattic/woocommerce-subscriptions-core.git",
- "reference": "eba9c58a2fd2a65e55c533f24cd20af2084a8265"
+ "reference": "32bcb16e1a0d87e55214aaff1fa80b45bd1b43df"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/Automattic/woocommerce-subscriptions-core/zipball/eba9c58a2fd2a65e55c533f24cd20af2084a8265",
- "reference": "eba9c58a2fd2a65e55c533f24cd20af2084a8265",
+ "url": "https://api.github.com/repos/Automattic/woocommerce-subscriptions-core/zipball/32bcb16e1a0d87e55214aaff1fa80b45bd1b43df",
+ "reference": "32bcb16e1a0d87e55214aaff1fa80b45bd1b43df",
"shasum": ""
},
"require": {
@@ -179,7 +179,7 @@
"woocommerce/woocommerce-sniffs": "0.1.0",
"yoast/phpunit-polyfills": "1.1.0"
},
- "time": "2024-09-05T02:55:11+00:00",
+ "time": "2024-09-12T23:46:14+00:00",
"type": "wordpress-plugin",
"extra": {
"phpcodesniffer-search-depth": 2
@@ -209,7 +209,7 @@
"description": "Sell products and services with recurring payments in your WooCommerce Store.",
"homepage": "https://github.com/Automattic/woocommerce-subscriptions-core",
"support": {
- "source": "https://github.com/Automattic/woocommerce-subscriptions-core/tree/7.4.3",
+ "source": "https://github.com/Automattic/woocommerce-subscriptions-core/tree/7.5.0",
"issues": "https://github.com/Automattic/woocommerce-subscriptions-core/issues"
},
"install-path": "../woocommerce/subscriptions-core"
diff --git a/vendor/composer/installed.php b/vendor/composer/installed.php
index 574210b..d85a2e9 100644
--- a/vendor/composer/installed.php
+++ b/vendor/composer/installed.php
@@ -1,9 +1,9 @@
array(
'name' => 'woocommerce/woocommerce-subscriptions',
- 'pretty_version' => 'dev-release/6.6.2',
- 'version' => 'dev-release/6.6.2',
- 'reference' => 'dfdcf5705059ca03ecc9c5b2c21910f8c932b082',
+ 'pretty_version' => 'dev-release/6.7.0',
+ 'version' => 'dev-release/6.7.0',
+ 'reference' => '094d1fce371e91c7c3ac11ce7f11eda8f2002eeb',
'type' => 'wordpress-plugin',
'install_path' => __DIR__ . '/../../',
'aliases' => array(),
@@ -32,18 +32,18 @@
),
),
'woocommerce/subscriptions-core' => array(
- 'pretty_version' => '7.4.3',
- 'version' => '7.4.3.0',
- 'reference' => 'eba9c58a2fd2a65e55c533f24cd20af2084a8265',
+ 'pretty_version' => '7.5.0',
+ 'version' => '7.5.0.0',
+ 'reference' => '32bcb16e1a0d87e55214aaff1fa80b45bd1b43df',
'type' => 'wordpress-plugin',
'install_path' => __DIR__ . '/../woocommerce/subscriptions-core',
'aliases' => array(),
'dev_requirement' => false,
),
'woocommerce/woocommerce-subscriptions' => array(
- 'pretty_version' => 'dev-release/6.6.2',
- 'version' => 'dev-release/6.6.2',
- 'reference' => 'dfdcf5705059ca03ecc9c5b2c21910f8c932b082',
+ 'pretty_version' => 'dev-release/6.7.0',
+ 'version' => 'dev-release/6.7.0',
+ 'reference' => '094d1fce371e91c7c3ac11ce7f11eda8f2002eeb',
'type' => 'wordpress-plugin',
'install_path' => __DIR__ . '/../../',
'aliases' => array(),
diff --git a/vendor/woocommerce/subscriptions-core/changelog.txt b/vendor/woocommerce/subscriptions-core/changelog.txt
index 97814c0..45e04be 100644
--- a/vendor/woocommerce/subscriptions-core/changelog.txt
+++ b/vendor/woocommerce/subscriptions-core/changelog.txt
@@ -1,5 +1,14 @@
*** WooCommerce Subscriptions Core Changelog ***
+= 7.5.0 - 2024-09-12 =
+* Dev - Removing the unused method `maybe_remove_formatted_order_total_filter` hooked to `woocommerce_get_formatted_order_total` which was deprecated.
+* Fix - Resolved two issues preventing the correct display of the "Subscription items can no longer be edited." message on the Edit Subscription page.
+* Fix - Checks for the existence of `wc_get_page_screen_id` before calling it on `wcs_get_page_screen_id`, and for the admin context before calling `list_table_primary_column` to prevent fatal errors.
+* Fix - Blocks the reactivation of a subscription when the end date is in the past.
+* Fix - Ensure a subscription's modified date is updated when its related order cache is updated on non-HPOS sites.
+* Fix - Ensure trial period form data is set before use to prevent fatal errors when the data is missing.
+* Fix - Resolved an error with coupon discount calculations for manual or early renewal orders on stores with tax-inclusive pricing.
+
= 7.4.3 - 2024-09-05 =
* Fix - Prevent errors during checkout when a customer is switching their subscription product and does not require payment.
diff --git a/vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php b/vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php
index d2e5803..a612224 100644
--- a/vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php
+++ b/vendor/woocommerce/subscriptions-core/includes/admin/class-wc-subscriptions-admin.php
@@ -132,9 +132,6 @@ public static function init() {
add_action( 'woocommerce_payment_gateways_setting_column_renewals', array( __CLASS__, 'payment_gateways_renewal_support' ) );
- // Do not display formatted order total on the Edit Order administration screen
- add_filter( 'woocommerce_get_formatted_order_total', __CLASS__ . '::maybe_remove_formatted_order_total_filter', 0, 2 );
-
add_action( 'woocommerce_payment_gateways_settings', __CLASS__ . '::add_recurring_payment_gateway_information', 10, 1 );
// Change text for when order items cannot be edited
@@ -536,9 +533,9 @@ public static function save_subscription_meta( $post_id ) {
// Make sure trial period is within allowable range
$subscription_ranges = wcs_get_subscription_ranges();
- $max_trial_length = count( $subscription_ranges[ $_POST['_subscription_trial_period'] ] ) - 1;
+ $max_trial_length = ! empty( $_POST['_subscription_trial_period'] ) ? count( $subscription_ranges[ $_POST['_subscription_trial_period'] ] ) - 1 : 0;
- $_POST['_subscription_trial_length'] = absint( $_POST['_subscription_trial_length'] );
+ $_POST['_subscription_trial_length'] = ! empty( $_POST['_subscription_trial_length'] ) ? absint( $_POST['_subscription_trial_length'] ) : 0;
if ( $_POST['_subscription_trial_length'] > $max_trial_length ) {
$_POST['_subscription_trial_length'] = $max_trial_length;
@@ -754,9 +751,9 @@ public static function save_product_variation( $variation_id, $index ) {
// Make sure trial period is within allowable range
$subscription_ranges = wcs_get_subscription_ranges();
- $max_trial_length = count( $subscription_ranges[ $_POST['variable_subscription_trial_period'][ $index ] ] ) - 1;
+ $max_trial_length = ! empty( $_POST['variable_subscription_trial_period'][ $index ] ) ? count( $subscription_ranges[ $_POST['variable_subscription_trial_period'][ $index ] ] ) - 1 : 0;
- $_POST['variable_subscription_trial_length'][ $index ] = absint( $_POST['variable_subscription_trial_length'][ $index ] );
+ $_POST['variable_subscription_trial_length'][ $index ] = ! empty( $_POST['variable_subscription_trial_length'][ $index ] ) ? absint( $_POST['variable_subscription_trial_length'][ $index ] ) : 0;
if ( $_POST['variable_subscription_trial_length'][ $index ] > $max_trial_length ) {
$_POST['variable_subscription_trial_length'][ $index ] = $max_trial_length;
@@ -1829,18 +1826,10 @@ public static function payment_gateways_rewewal_support( $gateway ) {
* Do not display formatted order total on the Edit Order administration screen
*
* @since 1.0.0 - Migrated from WooCommerce Subscriptions v1.5.17
+ * @deprecated 7.5.0
*/
public static function maybe_remove_formatted_order_total_filter( $formatted_total, $order ) {
-
- // Check if we're on the Edit Order screen - get_current_screen() only exists on admin pages so order of operations matters here
- if ( is_admin() && function_exists( 'get_current_screen' ) ) {
-
- $screen = get_current_screen();
-
- if ( is_object( $screen ) && 'shop_order' == $screen->id ) {
- remove_filter( 'woocommerce_get_formatted_order_total', 'WC_Subscriptions_Order::get_formatted_order_total', 10 );
- }
- }
+ wcs_deprecated_function( __METHOD__, '7.5.0' );
return $formatted_total;
}
@@ -1852,12 +1841,8 @@ public static function maybe_remove_formatted_order_total_filter( $formatted_tot
*/
public static function maybe_attach_gettext_callback() {
- if ( is_admin() && function_exists( 'get_current_screen' ) ) {
- $screen = get_current_screen();
-
- if ( is_object( $screen ) && 'shop_subscription' === $screen->id ) {
- add_filter( 'gettext', array( __CLASS__, 'change_order_item_editable_text' ), 10, 3 );
- }
+ if ( self::is_edit_subscription_page() ) {
+ add_filter( 'gettext', array( __CLASS__, 'change_order_item_editable_text' ), 10, 3 );
}
}
@@ -1868,16 +1853,11 @@ public static function maybe_attach_gettext_callback() {
*/
public static function maybe_unattach_gettext_callback() {
- if ( is_admin() && function_exists( 'get_current_screen' ) ) {
- $screen = get_current_screen();
-
- if ( is_object( $screen ) && 'shop_subscription' === $screen->id ) {
- remove_filter( 'gettext', array( __CLASS__, 'change_order_item_editable_text' ), 10 );
- }
+ if ( self::is_edit_subscription_page() ) {
+ remove_filter( 'gettext', array( __CLASS__, 'change_order_item_editable_text' ), 10 );
}
}
-
/**
* When subscription items not editable (such as due to the payment gateway not supporting modifications),
* change the text to explain why
@@ -1892,6 +1872,7 @@ public static function change_order_item_editable_text( $translated_text, $text,
break;
case 'To edit this order change the status back to "Pending"':
+ case 'To edit this order change the status back to "Pending payment"':
$translated_text = __( 'This subscription is no longer editable because the payment gateway does not allow modification of recurring amounts.', 'woocommerce-subscriptions' );
break;
}
@@ -1926,7 +1907,7 @@ public static function add_recurring_payment_gateway_information( $settings ) {
array(
// translators: placeholders are opening and closing link tags
- 'desc' => sprintf( __( 'Payment gateways which don\'t support automatic recurring payments can be used to process %1$smanual subscription renewal payments%2$s.', 'woocommerce-subscriptions' ), '', '' ),
+ 'desc' => sprintf( __( 'Payment gateways which don\'t support automatic recurring payments can be used to process %1$smanual subscription renewal payments%2$s.', 'woocommerce-subscriptions' ), '', '' ),
'id' => self::$option_prefix . '_payment_gateways_additional',
'type' => 'informational',
),
@@ -2250,4 +2231,24 @@ public static function maybe_keep_variations( $delete_variations, $product, $fro
return $delete_variations;
}
+
+ /**
+ * Check if the current page is the Edit Subscription page
+ *
+ * @return bool True if the current page is the Edit Subscription page
+ *
+ * @since 7.5.0
+ */
+ private static function is_edit_subscription_page() {
+ if ( ! is_admin() || ! function_exists( 'get_current_screen' ) ) {
+ return false;
+ }
+
+ $screen = get_current_screen();
+ if ( ! is_object( $screen ) ) {
+ return false;
+ }
+
+ return wcs_get_page_screen_id( 'shop_subscription' ) === $screen->id;
+ }
}
diff --git a/vendor/woocommerce/subscriptions-core/includes/admin/class-wcs-admin-post-types.php b/vendor/woocommerce/subscriptions-core/includes/admin/class-wcs-admin-post-types.php
index 1254c03..0a29754 100644
--- a/vendor/woocommerce/subscriptions-core/includes/admin/class-wcs-admin-post-types.php
+++ b/vendor/woocommerce/subscriptions-core/includes/admin/class-wcs-admin-post-types.php
@@ -1186,7 +1186,7 @@ public static function restrict_by_payment_method( $order_type = '' ) {
*/
public function list_table_primary_column( $default, $screen_id ) {
- if ( in_array( $screen_id, [ wcs_get_page_screen_id( 'shop_subscription' ), 'edit-shop_subscription' ], true ) ) {
+ if ( is_admin() && in_array( $screen_id, [ wcs_get_page_screen_id( 'shop_subscription' ), 'edit-shop_subscription' ], true ) ) {
$default = 'order_title';
}
diff --git a/vendor/woocommerce/subscriptions-core/includes/admin/class-wcs-admin-system-status.php b/vendor/woocommerce/subscriptions-core/includes/admin/class-wcs-admin-system-status.php
index 99bd314..0adb756 100644
--- a/vendor/woocommerce/subscriptions-core/includes/admin/class-wcs-admin-system-status.php
+++ b/vendor/woocommerce/subscriptions-core/includes/admin/class-wcs-admin-system-status.php
@@ -158,7 +158,7 @@ private static function set_theme_overrides( &$debug_data ) {
$debug_data['wcs_theme_overrides'] += array(
'mark_icon' => 'warning',
// translators: placeholders are opening/closing tags linking to documentation on outdated templates.
- 'note' => sprintf( __( '%1$sLearn how to update%2$s', 'woocommerce-subscriptions' ), '', '' ),
+ 'note' => sprintf( __( '%1$sLearn how to update%2$s', 'woocommerce-subscriptions' ), '', '' ),
);
}
}
diff --git a/vendor/woocommerce/subscriptions-core/includes/admin/meta-boxes/views/html-unknown-related-orders-row.php b/vendor/woocommerce/subscriptions-core/includes/admin/meta-boxes/views/html-unknown-related-orders-row.php
index a83dcd2..bc9b88e 100644
--- a/vendor/woocommerce/subscriptions-core/includes/admin/meta-boxes/views/html-unknown-related-orders-row.php
+++ b/vendor/woocommerce/subscriptions-core/includes/admin/meta-boxes/views/html-unknown-related-orders-row.php
@@ -18,10 +18,15 @@
echo sprintf( esc_html_x( '#%s', 'hash before order number', 'woocommerce-subscriptions' ), esc_html( $order_id ) );
?>
diff --git a/vendor/woocommerce/subscriptions-core/includes/class-wc-subscription.php b/vendor/woocommerce/subscriptions-core/includes/class-wc-subscription.php
index b3d6120..30dcf61 100644
--- a/vendor/woocommerce/subscriptions-core/includes/class-wc-subscription.php
+++ b/vendor/woocommerce/subscriptions-core/includes/class-wc-subscription.php
@@ -340,7 +340,13 @@ public function can_be_updated_to( $new_status ) {
case 'completed': // core WC order status mapped internally to avoid exceptions
case 'active':
if ( $this->payment_method_supports( 'subscription_reactivation' ) && $this->has_status( 'on-hold' ) ) {
- $can_be_updated = true;
+ // If the subscription's end date is in the past, it cannot be reactivated.
+ $end_time = $this->get_time( 'end' );
+ if ( 0 !== $end_time && $end_time < gmdate( 'U' ) ) {
+ $can_be_updated = false;
+ } else {
+ $can_be_updated = true;
+ }
} elseif ( $this->has_status( 'pending' ) ) {
$can_be_updated = true;
} elseif ( $this->has_status( 'pending-cancel' ) && $this->get_time( 'end' ) > gmdate( 'U' ) && ( $this->is_manual() || ( false === $this->payment_method_supports( 'gateway_scheduled_payments' ) && $this->payment_method_supports( 'subscription_date_changes' ) && $this->payment_method_supports( 'subscription_reactivation' ) ) ) ) {
@@ -364,7 +370,7 @@ public function can_be_updated_to( $new_status ) {
$can_be_updated = false;
}
break;
- case 'pending-cancel' :
+ case 'pending-cancel':
// Only active subscriptions can be given the "pending cancellation" status, because it is used to account for a prepaid term
if ( $this->payment_method_supports( 'subscription_cancellation' ) ) {
if ( $this->has_status( 'active' ) ) {
diff --git a/vendor/woocommerce/subscriptions-core/includes/class-wc-subscriptions-core-plugin.php b/vendor/woocommerce/subscriptions-core/includes/class-wc-subscriptions-core-plugin.php
index 3834ac5..2d80622 100644
--- a/vendor/woocommerce/subscriptions-core/includes/class-wc-subscriptions-core-plugin.php
+++ b/vendor/woocommerce/subscriptions-core/includes/class-wc-subscriptions-core-plugin.php
@@ -16,7 +16,7 @@ class WC_Subscriptions_Core_Plugin {
* The version of subscriptions-core library.
* @var string
*/
- protected $library_version = '7.4.3'; // WRCS: DEFINED_VERSION.
+ protected $library_version = '7.5.0'; // WRCS: DEFINED_VERSION.
/**
* The subscription scheduler instance.
@@ -569,8 +569,8 @@ public function update_notice( $plugin_data, $r ) {
}
$update_notice = '';
- // translators: placeholders are opening and closing tags. Leads to docs on version 2
- $update_notice .= sprintf( __( 'Warning! Version 2.0 is a major update to the WooCommerce Subscriptions extension. Before updating, please create a backup, update all WooCommerce extensions and test all plugins, custom code and payment gateways with version 2.0 on a staging site. %1$sLearn more about the changes in version 2.0 »%2$s', 'woocommerce-subscriptions' ), '
', '' );
+ // translators: placeholders are opening and closing tags. Leads to docs on upgrading WooCommerce Subscriptions
+ $update_notice .= sprintf( __( 'Warning! Version 2.0 is a major update to the WooCommerce Subscriptions extension. Before updating, please create a backup, update all WooCommerce extensions and test all plugins, custom code and payment gateways with version 2.0 on a staging site. %1$sLearn more about updating older versions of WooCommerce Subscriptions »%2$s', 'woocommerce-subscriptions' ), '
', '' );
$update_notice .= '
';
echo wp_kses_post( $update_notice );
diff --git a/vendor/woocommerce/subscriptions-core/includes/class-wc-subscriptions-synchroniser.php b/vendor/woocommerce/subscriptions-core/includes/class-wc-subscriptions-synchroniser.php
index e156376..b9f4427 100644
--- a/vendor/woocommerce/subscriptions-core/includes/class-wc-subscriptions-synchroniser.php
+++ b/vendor/woocommerce/subscriptions-core/includes/class-wc-subscriptions-synchroniser.php
@@ -200,7 +200,7 @@ public static function add_settings( $settings ) {
'name' => __( 'Synchronisation', 'woocommerce-subscriptions' ),
'type' => 'title',
// translators: placeholders are opening and closing link tags
- 'desc' => sprintf( _x( 'Align subscription renewal to a specific day of the week, month or year. For example, the first day of the month. %1$sLearn more%2$s.', 'used in the general subscription options page', 'woocommerce-subscriptions' ), '', '' ),
+ 'desc' => sprintf( _x( 'Align subscription renewal to a specific day of the week, month or year. For example, the first day of the month. %1$sLearn more%2$s.', 'used in the general subscription options page', 'woocommerce-subscriptions' ), '', '' ),
'id' => self::$setting_id . '_title',
),
diff --git a/vendor/woocommerce/subscriptions-core/includes/class-wcs-cart-renewal.php b/vendor/woocommerce/subscriptions-core/includes/class-wcs-cart-renewal.php
index bd6c7e0..a9692b2 100644
--- a/vendor/woocommerce/subscriptions-core/includes/class-wcs-cart-renewal.php
+++ b/vendor/woocommerce/subscriptions-core/includes/class-wcs-cart-renewal.php
@@ -1371,8 +1371,9 @@ public function maybe_update_shipping_packages( $packages ) {
* @since 1.0.0 - Migrated from WooCommerce Subscriptions v2.4.3
*/
public function setup_discounts( $order ) {
- $order_discount = $order->get_total_discount( ! $order->get_prices_include_tax() );
- $coupon_items = $order->get_items( 'coupon' );
+ $prices_include_tax = $order->get_prices_include_tax();
+ $order_discount = $order->get_total_discount( ! $prices_include_tax );
+ $coupon_items = $order->get_items( 'coupon' );
if ( empty( $order_discount ) && empty( $coupon_items ) ) {
return;
@@ -1381,6 +1382,10 @@ public function setup_discounts( $order ) {
$total_coupon_discount = floatval( array_sum( wc_list_pluck( $coupon_items, 'get_discount' ) ) );
$coupons = array();
+ if ( $prices_include_tax ) {
+ $total_coupon_discount += floatval( array_sum( wc_list_pluck( $coupon_items, 'get_discount_tax' ) ) );
+ }
+
// If the order total discount is different from the discount applied from coupons we have a manually applied discount.
$order_has_manual_discount = $order_discount !== $total_coupon_discount;
diff --git a/vendor/woocommerce/subscriptions-core/includes/class-wcs-dependent-hook-manager.php b/vendor/woocommerce/subscriptions-core/includes/class-wcs-dependent-hook-manager.php
index 41e4997..b0fdfe8 100644
--- a/vendor/woocommerce/subscriptions-core/includes/class-wcs-dependent-hook-manager.php
+++ b/vendor/woocommerce/subscriptions-core/includes/class-wcs-dependent-hook-manager.php
@@ -48,7 +48,7 @@ public static function attach_woocommerce_dependent_hooks() {
foreach ( self::$dependent_callbacks['woocommerce'] as $wc_version => $operators ) {
foreach ( $operators as $operator => $callbacks ) {
- if ( ! version_compare( WC_VERSION, $wc_version, $operator ) ) {
+ if ( ! defined( 'WC_VERSION' ) || ! version_compare( WC_VERSION, $wc_version, $operator ) ) {
continue;
}
diff --git a/vendor/woocommerce/subscriptions-core/includes/class-wcs-failed-scheduled-action-manager.php b/vendor/woocommerce/subscriptions-core/includes/class-wcs-failed-scheduled-action-manager.php
index 6c6b71e..2867b1a 100644
--- a/vendor/woocommerce/subscriptions-core/includes/class-wcs-failed-scheduled-action-manager.php
+++ b/vendor/woocommerce/subscriptions-core/includes/class-wcs-failed-scheduled-action-manager.php
@@ -230,7 +230,7 @@ public function maybe_show_admin_notice() {
),
array(
'name' => __( 'Learn more', 'woocommerce-subscriptions' ),
- 'url' => 'https://docs.woocommerce.com/document/subscriptions/scheduled-action-errors/',
+ 'url' => 'https://woocommerce.com/document/subscriptions/scheduled-action-errors/',
'class' => 'button button-primary',
),
) );
diff --git a/vendor/woocommerce/subscriptions-core/includes/data-stores/class-wcs-related-order-store-cached-cpt.php b/vendor/woocommerce/subscriptions-core/includes/data-stores/class-wcs-related-order-store-cached-cpt.php
index 73abf06..ebf8e0d 100644
--- a/vendor/woocommerce/subscriptions-core/includes/data-stores/class-wcs-related-order-store-cached-cpt.php
+++ b/vendor/woocommerce/subscriptions-core/includes/data-stores/class-wcs-related-order-store-cached-cpt.php
@@ -290,6 +290,11 @@ protected function update_related_order_id_cache( $subscription, array $related_
'value' => $related_order_ids,
);
+ // Update the subscription's modified date if the related order cache has changed. Only necessary on non-HPOS environments.
+ if ( ! wcs_is_custom_order_tables_usage_enabled() ) {
+ $this->update_modified_date_for_related_order_cache( $subscription, $related_order_ids, $current_metadata );
+ }
+
// Check if HPOS and data syncing is enabled then manually backfill the related orders cache values to WP Posts table.
$this->maybe_backfill_related_order_cache( $subscription, $relation_type, $new_metadata );
@@ -654,4 +659,28 @@ protected function get_related_order_metadata( WC_Subscription $subscription, $r
return false;
}
+
+ /**
+ * Updates the subscription's modified date if the related order cache has changed.
+ *
+ * @param WC_Subscription $subscription The subscription to update the modified date for.
+ * @param array $related_order_ids The related order IDs to compare with the current related order IDs.
+ * @param object $current_metadata The current related order cache metadata.
+ */
+ protected function update_modified_date_for_related_order_cache( $subscription, $related_order_ids, $current_metadata ) {
+ $subscription_modified = $subscription->get_date_modified( 'edit' );
+
+ // If the subscription's modified date is already up-to-date, don't update it again.
+ if ( $subscription_modified && (int) $subscription_modified->getTimestamp() === time() ) {
+ return;
+ }
+
+ $current_related_order_ids = $current_metadata ? maybe_unserialize( $current_metadata->meta_value ) : [];
+
+ // If the new related order IDs are different from the current ones, update the subscription's modified date.
+ if ( $current_related_order_ids !== $related_order_ids ) {
+ $subscription->set_date_modified( time() );
+ $subscription->save();
+ }
+ }
}
diff --git a/vendor/woocommerce/subscriptions-core/includes/gateways/class-wc-subscriptions-core-payment-gateways.php b/vendor/woocommerce/subscriptions-core/includes/gateways/class-wc-subscriptions-core-payment-gateways.php
index 95edafd..c7ee59c 100644
--- a/vendor/woocommerce/subscriptions-core/includes/gateways/class-wc-subscriptions-core-payment-gateways.php
+++ b/vendor/woocommerce/subscriptions-core/includes/gateways/class-wc-subscriptions-core-payment-gateways.php
@@ -175,7 +175,7 @@ public static function no_available_payment_methods_message( $no_gateways_messag
if ( WC_Subscriptions_Cart::cart_contains_subscription() && ! wcs_is_manual_renewal_enabled() ) {
if ( current_user_can( 'manage_woocommerce' ) ) {
// translators: 1-2: opening/closing tags - link to documentation.
- $no_gateways_message = sprintf( __( 'Sorry, it seems there are no available payment methods which support subscriptions. Please see %1$sEnabling Payment Gateways for Subscriptions%2$s if you require assistance.', 'woocommerce-subscriptions' ), '', '' );
+ $no_gateways_message = sprintf( __( 'Sorry, it seems there are no available payment methods which support subscriptions. Please see %1$sEnabling Payment Gateways for Subscriptions%2$s if you require assistance.', 'woocommerce-subscriptions' ), '', '' );
} else {
$no_gateways_message = __( 'Sorry, it seems there are no available payment methods which support subscriptions. Please contact us if you require assistance or wish to make alternate arrangements.', 'woocommerce-subscriptions' );
}
diff --git a/vendor/woocommerce/subscriptions-core/includes/gateways/paypal/includes/admin/class-wcs-paypal-admin.php b/vendor/woocommerce/subscriptions-core/includes/gateways/paypal/includes/admin/class-wcs-paypal-admin.php
index f714324..63a32f2 100644
--- a/vendor/woocommerce/subscriptions-core/includes/gateways/paypal/includes/admin/class-wcs-paypal-admin.php
+++ b/vendor/woocommerce/subscriptions-core/includes/gateways/paypal/includes/admin/class-wcs-paypal-admin.php
@@ -112,7 +112,7 @@ public static function maybe_show_admin_notices() {
'type' => 'warning',
// translators: placeholders are opening and closing link tags. 1$-2$: to docs on woocommerce, 3$-4$ to gateway settings on the site
'text' => sprintf( esc_html__( 'PayPal is inactive for subscription transactions. Please %1$sset up the PayPal IPN%2$s and %3$senter your API credentials%4$s to enable PayPal for Subscriptions.', 'woocommerce-subscriptions' ),
- '',
+ '',
'',
'',
''
@@ -136,7 +136,7 @@ public static function maybe_show_admin_notices() {
'text' => sprintf( $notice_text,
'',
'',
- '',
+ '',
'',
'
',
'',
@@ -163,7 +163,7 @@ public static function maybe_show_admin_notices() {
'text' => sprintf( esc_html__( 'There is a problem with PayPal. Your API credentials may be incorrect. Please update your %1$sAPI credentials%2$s. %3$sLearn more%4$s.', 'woocommerce-subscriptions' ),
'',
'',
- '',
+ '',
''
),
);
@@ -174,7 +174,7 @@ public static function maybe_show_admin_notices() {
'type' => 'error',
// translators: placeholders are opening and closing link tags. 1$-2$: docs on woocommerce, 3$-4$: dismiss link
'text' => sprintf( esc_html__( 'There is a problem with PayPal. Your PayPal account is issuing out-of-date subscription IDs. %1$sLearn more%2$s. %3$sDismiss%4$s.', 'woocommerce-subscriptions' ),
- '',
+ '',
'',
'',
''
@@ -322,7 +322,8 @@ public static function add_enable_for_subscriptions_setting( $settings ) {
$setting['description'] = sprintf(
/* translators: Placeholders are the opening and closing link tags.*/
__( "Before enabling PayPal Standard for Subscriptions, please note, when using PayPal Standard, customers are locked into using PayPal Standard for the life of their subscription, and PayPal Standard has a number of limitations. Please read the guide on %1\$swhy we don't recommend PayPal Standard%2\$s for Subscriptions before choosing to enable this option.", 'woocommerce-subscriptions' ),
- '', ''
+ '',
+ ''
);
}
diff --git a/vendor/woocommerce/subscriptions-core/includes/gateways/paypal/includes/class-wcs-paypal-standard-change-payment-method.php b/vendor/woocommerce/subscriptions-core/includes/gateways/paypal/includes/class-wcs-paypal-standard-change-payment-method.php
index 8fbb050..959bade 100644
--- a/vendor/woocommerce/subscriptions-core/includes/gateways/paypal/includes/class-wcs-paypal-standard-change-payment-method.php
+++ b/vendor/woocommerce/subscriptions-core/includes/gateways/paypal/includes/class-wcs-paypal-standard-change-payment-method.php
@@ -4,7 +4,7 @@
*
* Handles the process of a customer changing the payment method on a subscription via their My Account page from or to PayPal Standard.
*
- * @link http://docs.woocommerce.com/document/subscriptions/customers-view/#section-5
+ * @link https://woocommerce.com/document/subscriptions/customers-view/
*
* @package WooCommerce Subscriptions
* @subpackage Gateways/PayPal
diff --git a/vendor/woocommerce/subscriptions-core/includes/gateways/paypal/includes/templates/html-ipn-failure-notice.php b/vendor/woocommerce/subscriptions-core/includes/gateways/paypal/includes/templates/html-ipn-failure-notice.php
index 088b3b5..10bf57d 100644
--- a/vendor/woocommerce/subscriptions-core/includes/gateways/paypal/includes/templates/html-ipn-failure-notice.php
+++ b/vendor/woocommerce/subscriptions-core/includes/gateways/paypal/includes/templates/html-ipn-failure-notice.php
@@ -15,24 +15,14 @@
',
- '',
- ''
- );
- ?>
-
-
- ',
- '',
+ esc_html__( 'A fatal error has occurred while processing a recent subscription payment with PayPal. Please %1$sopen a new ticket at WooCommerce Support%3$s immediately to get this resolved. See our documentation on %2$sdebugging IPN issues in PayPal Standard to Learn more »%3$s', 'woocommerce-subscriptions' ),
+ '',
+ '',
''
);
?>
+
' . WC_Subscriptions_Core_Plugin::instance()->get_library_version() . '
',
'',
'',
- '',
+ '',
''
)
);
diff --git a/vendor/woocommerce/subscriptions-core/includes/upgrades/templates/wcs-about.php b/vendor/woocommerce/subscriptions-core/includes/upgrades/templates/wcs-about.php
index 2fdf7f5..bfec576 100644
--- a/vendor/woocommerce/subscriptions-core/includes/upgrades/templates/wcs-about.php
+++ b/vendor/woocommerce/subscriptions-core/includes/upgrades/templates/wcs-about.php
@@ -32,7 +32,7 @@
-
+
@@ -52,7 +52,7 @@
-
+
@@ -76,7 +76,7 @@
-
+
@@ -97,7 +97,7 @@
Settings > Emails%s administration screen.', 'woocommerce-subscriptions' ), '', '' ); ?>
-
+
@@ -167,7 +167,7 @@
', '' ); ?>
+ printf( esc_html__( '%sLearn more »%s', 'woocommerce-subscriptions' ), '', '' ); ?>
@@ -203,7 +203,7 @@
tags
- printf( esc_html__( 'Subscriptions also now uses the renewal order to setup the cart for %smanual renewals%s, making it easier to add products or discounts to a single renewal paid manually.', 'woocommerce-subscriptions' ), '', '' ); ?>
+ printf( esc_html__( 'Subscriptions also now uses the renewal order to setup the cart for %smanual renewals%s, making it easier to add products or discounts to a single renewal paid manually.', 'woocommerce-subscriptions' ), '', '' ); ?>
diff --git a/vendor/woocommerce/subscriptions-core/includes/wcs-compatibility-functions.php b/vendor/woocommerce/subscriptions-core/includes/wcs-compatibility-functions.php
index 84613c2..2210e9c 100644
--- a/vendor/woocommerce/subscriptions-core/includes/wcs-compatibility-functions.php
+++ b/vendor/woocommerce/subscriptions-core/includes/wcs-compatibility-functions.php
@@ -173,7 +173,7 @@ function wcs_set_objects_property( &$object, $key, $value, $save = 'save', $meta
$object->{ "set$prefixed_key" }( $value );
- // If there is a setter without the order prefix (eg set_order_total -> set_total)
+ // If there is a setter without the order prefix (eg set_order_total -> set_total)
} elseif ( is_callable( array( $object, 'set' . str_replace( '_order', '', $prefixed_key ) ) ) ) {
$function_name = 'set' . str_replace( '_order', '', $prefixed_key );
$object->$function_name( $value );
@@ -657,7 +657,11 @@ function wcs_set_order_address( $order, $address, $address_type = 'billing' ) {
* @return string The page screen ID. On CPT stores, the screen ID is equal to the post type. On HPOS, the screen ID is generated by WC and fetched via wc_get_page_screen_id().
*/
function wcs_get_page_screen_id( $object_type ) {
- return wcs_is_woocommerce_pre( '7.3.0' ) ? $object_type : wc_get_page_screen_id( $object_type );
+ if ( ! function_exists( 'wc_get_page_screen_id' ) || wcs_is_woocommerce_pre( '7.3.0' ) ) {
+ return $object_type;
+ }
+
+ return wc_get_page_screen_id( $object_type );
}
/**
diff --git a/vendor/woocommerce/subscriptions-core/templates/admin/html-failed-scheduled-action-notice.php b/vendor/woocommerce/subscriptions-core/templates/admin/html-failed-scheduled-action-notice.php
index ff69ba3..2991ada 100644
--- a/vendor/woocommerce/subscriptions-core/templates/admin/html-failed-scheduled-action-notice.php
+++ b/vendor/woocommerce/subscriptions-core/templates/admin/html-failed-scheduled-action-notice.php
@@ -29,7 +29,7 @@
count( $failed_scheduled_actions ),
'woocommerce-subscriptions'
) ),
- '',
+ '',
''
)?>
diff --git a/vendor/woocommerce/subscriptions-core/woocommerce-subscriptions-core.php b/vendor/woocommerce/subscriptions-core/woocommerce-subscriptions-core.php
index 3c99e9f..fe844c2 100644
--- a/vendor/woocommerce/subscriptions-core/woocommerce-subscriptions-core.php
+++ b/vendor/woocommerce/subscriptions-core/woocommerce-subscriptions-core.php
@@ -6,5 +6,5 @@
* Author: Automattic
* Author URI: https://woocommerce.com/
* Requires WP: 5.6
- * Version: 7.4.3
+ * Version: 7.5.0
*/
diff --git a/woocommerce-subscriptions.php b/woocommerce-subscriptions.php
index 2407718..64102f1 100644
--- a/woocommerce-subscriptions.php
+++ b/woocommerce-subscriptions.php
@@ -5,11 +5,11 @@
* Description: Sell products and services with recurring payments in your WooCommerce Store.
* Author: WooCommerce
* Author URI: https://woocommerce.com/
- * Version: 6.6.2
+ * Version: 6.7.0
* Requires Plugins: woocommerce
*
* WC requires at least: 8.7.1
- * WC tested up to: 9.2.0
+ * WC tested up to: 9.3.0
* Woo: 27147:6115e6d7e297b623a169fdcf5728b224
*
* Copyright 2019 WooCommerce
@@ -78,7 +78,7 @@ class WC_Subscriptions {
public static $plugin_file = __FILE__;
/** @var string */
- public static $version = '6.6.2'; // WRCS: DEFINED_VERSION.
+ public static $version = '6.7.0'; // WRCS: DEFINED_VERSION.
/** @var string */
public static $wc_minimum_supported_version = '7.7';