Commit Graph

17 Commits

Author SHA1 Message Date
45531f86d6 Implement version 0.0.11 features
- Add Created date column to admin license overview
- Add License Statistics page under WooCommerce menu
- Add REST API endpoints for analytics data with time-series support
- WooCommerce Analytics integration via submenu page

New files:
- src/Admin/AnalyticsController.php
- templates/admin/statistics.html.twig

REST API endpoints:
- GET /wc-licensed-product/v1/analytics/stats
- GET /wc-licensed-product/v1/analytics/products

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-21 23:50:57 +01:00
0e3b57482e Update CLAUDE.md with v0.0.10 session history
- Document inline editing features for licenses
- Document live search and copy license key functionality
- Document AJAX handlers and new LicenseManager methods
- Record release v0.0.10 details with checksums
- Note known bug about version uploads

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-21 23:24:47 +01:00
0e554d4139 Fix licenses endpoint 404 error in customer account
- Register licenses query var with WooCommerce via woocommerce_get_query_vars
- Register endpoint in Installer before flushing rewrite rules
- Existing installations need to re-save permalinks

The endpoint was not being recognized because WooCommerce's My Account
requires both add_rewrite_endpoint() and query var registration.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-21 22:24:43 +01:00
f22ae95d6e Implement version 0.0.10 features
- Add license meta box on WooCommerce order edit pages
- Add editable order domain field with AJAX inline editing
- Add editable license domains directly from order page
- Add licenses table showing all licenses for an order
- Support both classic orders and HPOS

New files:
- src/Admin/OrderLicenseController.php
- assets/js/order-licenses.js

New method: LicenseManager::getLicensesByOrder()

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-21 22:18:27 +01:00
c4b1df8a22 Update CLAUDE.md: clear known bugs, document version upload fix
- Set known bugs to "None currently known"
- Added documentation for version upload fix (attachment_id handling)
- Session history updated with all bug fixes from pre-v0.0.10

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-21 22:08:20 +01:00
08aa7dae35 Fix version upload handling and add better error logging
- Fix VersionManager::createVersion() to handle null attachment_id properly
- Add product type validation in AJAX version handler
- Add database error logging for debugging
- Improve meta box visibility logic for licensed products
- Add known bug note to CLAUDE.md

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-21 22:02:51 +01:00
319dfe357a Fix license generation and checkout domain field bugs
- Add WooCommerce Checkout Blocks support for domain field
- Create CheckoutBlocksIntegration for block-based checkout
- Create StoreApiExtension for Store API domain handling
- Add checkout-blocks.js for frontend domain field in blocks
- Fix LicenseManager product type check in generateLicense()
- Add multiple order status hooks for reliable license generation

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-21 21:58:54 +01:00
d3830e24b9 Implement version 0.0.9 features
- Add API client examples for PHP, Python, JavaScript, curl, and C#
- Create comprehensive REST API documentation in docs/client-examples/
- All examples include rate limit handling (HTTP 429)
- Examples cover validate, status, and activate endpoints

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-21 21:23:21 +01:00
6378063180 Refactor email to use WooCommerce transactional email system
- Remove legacy email template files
- Use WooCommerce's email-header.php and email-footer.php templates
- Render email content inline for consistent WooCommerce styling
- Remove template location filter from LicenseEmailController

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-21 21:16:04 +01:00
c6726703e4 Implement version 0.0.8 features
- Remove Current Version field from product license settings
- Derive current version from latest product version in database
- Refactor email system to use WooCommerce email notification classes
- Add LicenseExpirationEmail WC_Email class for expiration warnings
- Add customizable email templates (HTML and plain text)
- Update settings to link to WooCommerce email configuration
- Update translations for new email-related strings

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-21 20:55:28 +01:00
49a0699963 Implement versions 0.0.4-0.0.7 features
v0.0.4:
- Add WooCommerce settings tab for default license settings
- Per-product settings override global defaults

v0.0.5:
- Add bulk license operations (activate, deactivate, revoke, extend, delete)
- Add license renewal/extension and lifetime functionality
- Add quick action buttons per license row

v0.0.6:
- Add license dashboard with statistics and analytics
- Add license transfer functionality (admin)
- Add CSV export for licenses
- Add OpenAPI 3.1 specification
- Remove /deactivate API endpoint

v0.0.7:
- Move license dashboard to WooCommerce Reports section
- Add license search and filtering in admin
- Add customer-facing license transfer with AJAX modal
- Add email notifications for license expiration warnings
- Add bulk import licenses from CSV
- Update README with comprehensive documentation

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-21 20:32:35 +01:00
78e43b9aea Implement version 0.0.3 features
- Add file attachment support for product versions (Media Library)
- Add version auto-detection from uploaded filenames
- Implement secure customer downloads with hash verification
- Add license key copy-to-clipboard functionality
- Redesign customer licenses page with card-based UI
- Fix product versions meta box visibility for non-licensed types
- Add DownloadController for secure file delivery
- Update CLAUDE.md roadmap and session history

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-21 19:46:50 +01:00
41e5f8d467 Update CLAUDE.md: clean roadmap after v0.0.2 completion
- Remove completed v0.0.2 items from roadmap
- Add v0.0.3 roadmap items
- Document v0.0.2 session in Session History

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-21 19:22:20 +01:00
fd93795557 Move Known Bugs section under Temporary Roadmap
Reorganize CLAUDE.md structure for better organization.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-21 19:01:39 +01:00
f7f36b891b Reorganize CLAUDE.md: move completed versions to Session History
- Remove completed version 0.0.1 from Temporary Roadmap
- Add Session History section at end of file for AI session documentation
- Document v0.0.1 implementation details and architecture decisions

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-21 19:00:13 +01:00
e3d9776b64 Update CLAUDE.md with session learnings and project architecture
- Mark version 0.0.1 tasks as completed
- Add version 0.0.2 roadmap items
- Document project directory structure
- Document database tables and REST API endpoints
- Document key classes and their responsibilities
- Fix version location reference (wc-licensed-product.php, not wp-artists.php)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-21 18:56:55 +01:00
8a4802248c Initial project setup with configuration files
Add .editorconfig, .gitignore, and CLAUDE.md project documentation.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-21 18:46:34 +01:00