Final: Complete modernization - Option 1 deployment, unified persistence, migration scripts
- Implement Docker image-based deployment (Option 1) * Code immutable in image, no volume override * Eliminated init-data.sh manual step * Simplified deployment process - Unified persistence in data/ folder * Moved nginx.conf and nginx-custom-domains.conf to data/ * All runtime configs and data in single location * Clear separation: repo (source) vs data/ (runtime) - Archive legacy features * Groups blueprint and templates removed * Legacy playlist routes redirected to content area * Organized in old_code_documentation/ - Added network migration support * New migrate_network.sh script for IP changes * Regenerates SSL certs for new IP * Updates database configuration * Tested workflow: clone → deploy → migrate - Enhanced deploy.sh * Creates data directories * Copies nginx configs from repo to data/ * Validates file existence before deployment * Prevents incomplete deployments - Updated documentation * QUICK_DEPLOYMENT.md shows 4-step workflow * Complete deployment workflow documented * Migration procedures included - Production ready deployment workflow: 1. Clone & setup (.env configuration) 2. Deploy (./deploy.sh) 3. Migrate network (./migrate_network.sh if needed) 4. Normal operations (docker compose restart)
This commit is contained in:
51
old_code_documentation/LEGACY_PLAYLIST_ROUTES.md
Normal file
51
old_code_documentation/LEGACY_PLAYLIST_ROUTES.md
Normal file
@@ -0,0 +1,51 @@
|
||||
# Legacy Playlist Routes & Templates
|
||||
|
||||
## Status: DEPRECATED ❌
|
||||
|
||||
The `playlist/` folder contains legacy code that has been superseded by the content management interface.
|
||||
|
||||
## What Changed
|
||||
|
||||
### Old Workflow (DEPRECATED)
|
||||
- Route: `/playlist/<player_id>`
|
||||
- Template: `playlist/manage_playlist.html`
|
||||
- Used for managing playlists at the player level
|
||||
|
||||
### New Workflow (ACTIVE) ✅
|
||||
- Route: `/content/playlist/<playlist_id>/manage`
|
||||
- Template: `content/manage_playlist_content.html`
|
||||
- Used for managing playlists in the content area
|
||||
- Accessed from: Players → Manage Player → "Edit Playlist Content" button
|
||||
|
||||
## Migration Notes
|
||||
|
||||
**January 17, 2026:**
|
||||
- Moved `app/templates/playlist/` to `old_code_documentation/playlist/`
|
||||
- Updated `/playlist/<player_id>` route to redirect to the new content management interface
|
||||
- All playlist operations now go through the content management area (`manage_playlist_content.html`)
|
||||
|
||||
## Why the Change?
|
||||
|
||||
1. **Unified Interface**: Single playlist management interface instead of duplicate functionality
|
||||
2. **Better UX**: Content management area is the primary interface accessed from players
|
||||
3. **Maintenance**: Reduces code duplication and maintenance burden
|
||||
|
||||
## Routes Still in Code
|
||||
|
||||
The routes in `app/blueprints/playlist.py` still exist but are now legacy:
|
||||
- `@playlist_bp.route('/<int:player_id>')` - Redirects to content management
|
||||
- `@playlist_bp.route('/<int:player_id>/add')` - No longer used
|
||||
- `@playlist_bp.route('/<int:player_id>/remove/<int:content_id>')` - No longer used
|
||||
- etc.
|
||||
|
||||
These can be removed in a future cleanup if needed.
|
||||
|
||||
## Features in New Interface
|
||||
|
||||
The new `manage_playlist_content.html` includes all features plus:
|
||||
- ✅ Drag-to-reorder functionality
|
||||
- ✅ Duration spinner buttons (⬆️ ⬇️)
|
||||
- ✅ Audio on/off toggle
|
||||
- ✅ Edit mode toggle for PDFs/images
|
||||
- ✅ Dark mode support
|
||||
- ✅ Bulk delete with checkboxes
|
||||
Reference in New Issue
Block a user