From a4561057fa8488a642e006ec2a4eea49a042f6d2 Mon Sep 17 00:00:00 2001 From: magdev Date: Sat, 24 Jan 2026 16:11:09 +0100 Subject: [PATCH] Update CLAUDE.md with v0.3.9 session history Co-Authored-By: Claude Opus 4.5 --- CLAUDE.md | 42 ++++++++++++++++++++++++++++++++++++++---- 1 file changed, 38 insertions(+), 4 deletions(-) diff --git a/CLAUDE.md b/CLAUDE.md index a0ff483..9ab785f 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -36,10 +36,6 @@ This project is proudly **"vibe-coded"** using Claude.AI - the entire codebase w No known bugs at the moment. -### Version 0.3.9 - -No changes at the moment. - ### Version 0.4.0 No changes at the moment. @@ -1125,3 +1121,41 @@ Fixed a critical translation bug that caused the settings page to crash with an - Created release package: `releases/wc-licensed-product-0.3.8.zip` (829 KB) - SHA256: `50ad6966c5ab8db2257572084d2d8a820448df62615678e1576696f2c0cb383d` - Tagged as `v0.3.8` and pushed to `main` branch + +### 2026-01-24 - Version 0.3.9 - Admin Order License Generation Fix + +**Overview:** + +Fixed a critical bug where licenses were not generated for orders created manually in the WordPress admin area. + +**Bug Fix:** + +- **Critical:** Licenses are now generated for orders created manually in admin area +- Previously, licenses were only generated via checkout hooks (`woocommerce_order_status_completed`, `woocommerce_order_status_processing`, `woocommerce_payment_complete`) +- Admin-created orders bypassed checkout, so the `_licensed_product_domain` meta was never set and licenses were never generated + +**Implemented:** + +- "Generate Licenses" button in order meta box for admin-created orders +- "Generate Missing Licenses" button when some products in an order already have licenses +- Warning message when order domain is not set before generating licenses +- AJAX handler `ajaxGenerateOrderLicenses()` for manual license generation + +**Modified files:** + +- `src/Admin/OrderLicenseController.php` - Added Generate button, AJAX handler, CSS styles +- `assets/js/order-licenses.js` - Added `generateLicenses()` function with page reload on success + +**Technical notes:** + +- Button only appears when order is paid and domain is set +- Uses existing `LicenseManager::generateLicense()` which handles duplicate prevention +- Page reloads after successful generation to show new licenses in table +- Tracks generated vs skipped licenses for accurate feedback messages +- Updated translations (365 strings) + +**Release v0.3.9:** + +- Created release package: `releases/wc-licensed-product-0.3.9.zip` (851 KB) +- SHA256: `fdb65200c368da380df0cabb3c6ac6419d5b4731cd528f630f9b432a3ba5c586` +- Tagged as `v0.3.9` and pushed to `main` branch