Rows without a cover (cover_url NULL or N/A) show a + button.
Clicking it opens a modal to enter a URL which is saved via new
PATCH /api/records/{id}/cover_url endpoint. cover_image is cleared
so n8n picks it up on the next backfill run.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Switch node from visual select to executeQuery to exclude
cover_url = 'N/A' entries which are not valid image URLs.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
FileBot_Cover_Backfill.json already contains the complete workflow
including webhook import, cover download and backfill logic.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Both workflows stripped of credential references for safe version control.
Import into n8n and assign 'Postgres n8n_filebot' credential to Postgres nodes.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- API: neuer Endpunkt GET /api/records/{id}/cover liefert BYTEA direkt
aus der DB; cover_mime_type in COLUMNS aufgenommen
- Frontend: CoverImage lädt primär aus DB (/api/records/{id}/cover),
fällt bei 404 automatisch auf den URL-Proxy zurück
- types.ts: cover_mime_type zum MediaRecord-Interface hinzugefügt
- scripts/deploy.sh: einmaliges SSH-Passwort für alle scp-Transfers
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Neue Spalten cover_image (BYTEA) und cover_mime_type (TEXT) in
n8n.movie_files, damit Cover-Bilder direkt in der DB gespeichert
werden können statt nur als externe URL.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Vue 3 + FastAPI Webapp zur Anzeige von Filebot/n8n-Medienmetadaten aus PostgreSQL.
Enthält Frontend, API, Nginx-Config, SQL-Migrationen und Docker-Compose-Setup.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>