# Storage Management Scripts ## check-storage.js Checks the storage directory structure and verifies that photo files exist. ### Usage: ```bash # Check overall storage structure node scripts/check-storage.js # Check specific event node scripts/check-storage.js wedding-test-gallery-2025-07-14-1 ``` ### What it checks: - Storage directory structure and permissions - Event directories - Photo files existence - Thumbnail files existence - Database vs filesystem consistency ## regenerate-thumbnails.js Regenerates missing thumbnails for photos in the database. ### Usage: ```bash # Regenerate all missing thumbnails node scripts/regenerate-thumbnails.js # Regenerate thumbnails for specific event (by ID) node scripts/regenerate-thumbnails.js 2 ``` ### What it does: - Scans photos in database - Checks if thumbnails exist - Generates missing thumbnails using Sharp - Updates database with thumbnail paths - Reports success/error statistics ### Prerequisites: - Node.js environment - Database access - Write permissions to storage directory - Sharp library installed ## Production Usage On your production server: 1. First, check the storage structure: ```bash cd /path/to/picpeak/backend NODE_ENV=production node scripts/check-storage.js wedding-test-gallery-2025-07-14-1 ``` 2. If thumbnails are missing, regenerate them: ```bash NODE_ENV=production node scripts/regenerate-thumbnails.js 2 ``` Note: Replace `2` with the actual event ID from your database. ## cleanup-thumbnails.js Cleans up temporary and orphaned thumbnail files. ### Usage: ```bash # Dry run - see what would be deleted node scripts/cleanup-thumbnails.js --dry-run # Actually delete orphaned thumbnails node scripts/cleanup-thumbnails.js ``` ### What it does: - Identifies temporary thumbnails (thumb_temp_*) - Finds orphaned thumbnails not linked to any photo - Removes unnecessary files to free up space - Reports statistics on cleanup ## diagnose-thumbnails.js Diagnoses why thumbnails might not be showing for a specific event. ### Usage: ```bash node scripts/diagnose-thumbnails.js 2 ``` ### What it checks: - Thumbnail paths in database vs filesystem - Path format inconsistencies - Missing thumbnail files - Provides SQL to fix path issues ### Common Issues: 1. **Path mismatch**: Database has wrong thumbnail path format 2. **Missing files**: Thumbnails were never generated 3. **Permission issues**: Web server can't read thumbnail files