Commit graph

3 commits

Author SHA1 Message Date
DJP
1fda7b3ae2 fix: Add OAuth client credentials support for mTLS V2 Hybrid
The DAM OAuth endpoint requires both certificate authentication AND
client credentials (client_id + client_secret). Updated:

- Added DAM_CLIENT_ID and DAM_CLIENT_SECRET to .env.example
- Added client_id and client_secret to config.example.php
- Updated DamClient.php to include credentials in OAuth request
- Added validation for client credentials

This is mTLS V2 Hybrid mode: certificate + client credentials.
2025-11-29 11:30:23 -05:00
DJP
3993600ce7 feat: Add A2-A3 Campaign Advancement Feature
Implemented complete A2-A3 advancement functionality with DAM integration:

Backend:
- Added DamClient.php with mTLS V2 (Hybrid) authentication
- Implemented PFX to PEM certificate conversion
- Added OAuth token management with automatic refresh
- Created 3 new API endpoints:
  * list-a2-campaigns: Query DAM for A2 status campaigns
  * advance-to-a3: Update campaign status to A3
  * get-campaign-files: Query database for uploaded files

Frontend:
- Added new 'A2-A3 Advancement' tab to navigation
- Implemented campaign cards with grid layout
- Added search/filter functionality with debouncing
- Created 'View Uploaded Files' button (queries DB on demand)
- Implemented 'Advance to A3' with confirmation dialog
- Added smooth animations for card removal

Configuration:
- Created env_loader.php for .env file support
- Added .env.example template with all required variables
- Updated config.example.php to use environment variables
- Created SETUP.md with configuration guide

Security:
- Added .htaccess to protect config.php and sensitive files
- Updated .gitignore to exclude REFRENCE MATERIAL folder
- Implemented proper file permissions guidance

All DAM credentials now managed via .env file with support for
referencing existing certificates without duplication.
2025-11-29 10:58:08 -05:00
DJP
7233a49252 Add v2 with PostgreSQL tracking ID system for asset lifecycle management
Implements complete tracking ID system for linking derivative assets to master files with automatic metadata inheritance.

Major features:
- v2 web interface (public-v2/) with tracking ID support
- PostgreSQL database (Docker) for master asset metadata storage
- 6-character alphanumeric tracking IDs with collision-free generation
- OpenText DAM integration with metadata import script
- Upload simulator showing filename transformations (strips job number and tracking ID)
- Visual transformation flow display
- Complete asset lifecycle event logging with triggers
- Database schema with optimized indexes and views
- Helper scripts for database management (db-start.sh, db-stop.sh)

Technical implementation:
- PostgreSQL 15 in Docker on port 5433 (md5 auth for MAMP compatibility)
- PHP PDO with singleton database class
- Automatic event logging via PostgreSQL triggers
- JSON storage for naming convention data (shared with v1)
- Case-sensitive tracking ID input fields

Both v1 (simple) and v2 (tracking) versions coexist for different workflows.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-27 12:24:35 -04:00