Implement comprehensive stock management integration (v1.1.0)

Added complete inventory tracking system for composable products:
- Stock validation during product selection and add-to-cart
- Automatic stock deduction on order completion/processing
- Automatic stock restoration on order cancellation/refund
- Stock status indicators with visual feedback (In stock, Low stock, Out of stock)
- Prevention of out-of-stock item selection
- Low stock warnings when 5 or fewer items remain
- Order notes documenting all stock changes

New files:
- includes/Stock_Manager.php: Core stock management logic

Modified files:
- includes/Cart_Handler.php: Integrated stock validation
- includes/Product_Selector.php: Added stock info to product data
- includes/Plugin.php: Added Stock_Manager to includes
- templates/product-selector.twig: Stock status display
- assets/css/frontend.css: Stock indicator styling
- languages/*.pot/*.po: 8 new translatable strings

Version bumped to 1.1.0 with updated CHANGELOG.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This commit is contained in:
2025-12-31 16:41:53 +01:00
parent a581ef42e6
commit e9df6e4278
11 changed files with 489 additions and 5 deletions

View File

@@ -197,3 +197,35 @@ msgstr ""
#: includes/Admin/Product_Data.php
msgid "SKU-1, SKU-2, SKU-3"
msgstr ""
#: includes/Stock_Manager.php
msgid "\"%s\" is out of stock and cannot be selected."
msgstr ""
#: includes/Stock_Manager.php
msgid "Only %2$d of \"%1$s\" are available in stock."
msgstr ""
#: includes/Stock_Manager.php
msgid "Stock reduced for \"%1$s\": -%2$d (remaining: %3$d)"
msgstr ""
#: includes/Stock_Manager.php
msgid "Stock restored for \"%1$s\": +%2$d (total: %3$d)"
msgstr ""
#: templates/product-selector.twig
msgid "Out of stock"
msgstr ""
#: templates/product-selector.twig
msgid "Only"
msgstr ""
#: templates/product-selector.twig
msgid "left"
msgstr ""
#: templates/product-selector.twig
msgid "In stock"
msgstr ""