From 47be8af7c86701b2d60bf299ac55e8f7b6c79b19 Mon Sep 17 00:00:00 2001 From: Ryan Turner <16946913+TheSCREWEDSoftware@users.noreply.github.com> Date: Sun, 7 Dec 2025 17:12:43 +0000 Subject: [PATCH 1/2] Update NameUnlock.php --- .../src/Hooks/WooCommerce/NameUnlock.php | 23 +++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/src/acore-wp-plugin/src/Hooks/WooCommerce/NameUnlock.php b/src/acore-wp-plugin/src/Hooks/WooCommerce/NameUnlock.php index 98b343bb..d6acf2aa 100644 --- a/src/acore-wp-plugin/src/Hooks/WooCommerce/NameUnlock.php +++ b/src/acore-wp-plugin/src/Hooks/WooCommerce/NameUnlock.php @@ -33,8 +33,31 @@ public static function init() add_action('woocommerce_checkout_order_processed', self::sprefix() . 'checkout_order_processed', 20, 2); add_action('woocommerce_add_order_item_meta', self::sprefix() . 'add_order_item_meta', 1, 3); add_action('woocommerce_payment_complete', self::sprefix() . 'payment_complete'); + add_action('woocommerce_add_to_cart_validation', [__CLASS__, 'add_to_cart_validation'], 10, 5); } + // Validator for add to cart from external sources (no character selected) or logged in required from "CartValidation") + public static function add_to_cart_validation($passed, $product_id, $quantity, $variation_id = null, $variations = null) { + $product = $variation_id ? \wc_get_product($variation_id) : \wc_get_product($product_id); + $sku = $product->get_sku(); + if (strpos($sku, 'smartstone') !== 0) { + return $passed; + } + + $current_user = wp_get_current_user(); + if (!is_user_logged_in()) { + \wc_add_notice(__('You must be logged in to buy it!', 'acore-wp-plugin'), 'error'); + return false; + } + + $guid = intval($_REQUEST['acore_char_sel'] ?? 0); + if ($guid === 0) { + \wc_add_notice(__('No character selected. Please select a character and try again.', 'acore-wp-plugin'), 'error'); + return false; + } + + return $passed; + // LIST public static function before_add_to_cart_button() { From f5b327a4d205109339b3051d4689fdaf05eb4f41 Mon Sep 17 00:00:00 2001 From: Ryan Turner <16946913+TheSCREWEDSoftware@users.noreply.github.com> Date: Mon, 8 Dec 2025 22:43:12 +0000 Subject: [PATCH 2/2] Update NameUnlock.php --- src/acore-wp-plugin/src/Hooks/WooCommerce/NameUnlock.php | 1 + 1 file changed, 1 insertion(+) diff --git a/src/acore-wp-plugin/src/Hooks/WooCommerce/NameUnlock.php b/src/acore-wp-plugin/src/Hooks/WooCommerce/NameUnlock.php index d6acf2aa..fd94bad2 100644 --- a/src/acore-wp-plugin/src/Hooks/WooCommerce/NameUnlock.php +++ b/src/acore-wp-plugin/src/Hooks/WooCommerce/NameUnlock.php @@ -57,6 +57,7 @@ public static function add_to_cart_validation($passed, $product_id, $quantity, $ } return $passed; + } // LIST public static function before_add_to_cart_button()