Commit Graph

19 Commits

Author SHA1 Message Date
Kroonk
74f1da13a3 Mobile-Optimierung: 2-Spalten-Grid, Icon-only Nav, kompakte Toolbar
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-16 23:00:56 +02:00
Kroonk
159071a814 Bilder-Download: Mehrfach-Auswahl + Ordner-ZIP
- Selection-Mode: Bilder in Galerie per Klick auswaehlen
- 1-3 Bilder: einzeln herunterladen, 4+: als ZIP
- Ordner-Download: ganzen zugewiesenen Ordner als ZIP
- Sicherheit: Zugriffspruefung + Path-Traversal-Schutz
- archiver Package fuer Streaming-ZIP-Erstellung

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-16 22:47:58 +02:00
Kroonk
43539fa1a3 Ordner-Tabelle: Fehlerbehandlung und Nachladen wenn leer
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-16 22:17:52 +02:00
Kroonk
2c040b651d Ordner-Zuweisung als klickbare Tabelle statt Checkboxen
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-16 22:06:43 +02:00
Kroonk
2dcd559501 Fix leere Nutzertabelle: Fehler-Handler + DB-Fallback fuer loadUsers
- admin.js: .fail() Handler zeigt Fehlermeldung in der Tabelle statt stille Leere
- server.js: Fallback-Query (SELECT *) wenn role/created_at Spalten fehlen
- Server loggt DB-Fehler statt sie zu verschlucken

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-16 21:48:19 +02:00
Kroonk
c37aa3261c Verbessere Nutzer-Erstellung: JSON statt URL-encoded, Erfolgs-Feedback
- Sende Nutzer-Daten als JSON (konsistent mit anderen Admin-Endpoints)
- Zeige Erfolgs-Alert nach Erstellung
- Bessere Fehlermeldungen mit HTTP-Status
- Client-side Validierung vor dem Absenden

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-16 21:40:56 +02:00
Kroonk
ea15be0368 Fix Thumbnail-Generierung (magick statt convert) und DB-Migration fuer role-Spalte
- entrypoint.sh: ImageMagick 7 nutzt 'magick' statt 'convert', Auto-Detection
- database.js: Migration fuer role-Spalte bei bestehender DB (ALTER TABLE)
- main.js: Fallback auf Vollbild wenn Thumbnail fehlt (error handler)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-16 19:40:18 +02:00
Kroonk
eaa5945611 Wrap background-image url string in quotes to support poorly encoded original filenames 2026-04-12 20:18:22 +02:00
Kroonk
33db10f32d Change lightbox caption background to beige with grey text for readability 2026-04-12 19:19:59 +02:00
Kroonk
ab06284beb Implement Light Mode (Beige) via alternate SASS compilation and runtime switching 2026-04-12 19:11:23 +02:00
Kroonk
941d041b5d Nutzerverwaltung-Upgrade: 3 Rollen, Ordner-Zuweisung, Passwort-Aenderung
- 3 Rollen: admin (voll), user (permanent), client (30 Tage Ablauf)
- Ordner-basierte Bildzuweisung statt Einzelbilder (user_folders Tabelle)
- Root-Bilder oeffentlich, Unterordner nur fuer zugewiesene Nutzer
- Passwort-Aenderung fuer alle Nutzer (Self-Service + Admin)
- Admin kann beliebige Admins erstellen/loeschen
- Thumbnail-Generierung fuer Unterordner
- Admin-Dashboard komplett ueberarbeitet

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-12 17:53:46 +02:00
Kroonk
a4f3cf738c Fix: Backend-Bugs, fehlende Galerie, Watchtower statt Docker-Socket
- express.urlencoded() hinzugefuegt (Login war komplett kaputt)
- Oeffentliche Galerie zeigt jetzt alle Bilder (statt leere Galerie)
- loadGallery() Aufruf in main.js eingefuegt (fehlte komplett)
- main.min.js neu gebaut mit gulp (Galerie-Code fehlte in minified Version)
- Watchtower Container in docker-compose.yml (auto-updates alle 5 Min)
- Docker-Socket und docker-cli aus Photography-Container entfernt
- runs.json Muell-Datei geloescht
- Brain.md und Feature-Request.md aktualisiert

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-12 17:22:49 +02:00
Kroonk
ad41d57f91 Convert admin.js to ES5 syntax to support legacy gulp uglify 2026-04-12 15:44:17 +02:00
Kroonk
5747813d2d Implement Node.js backend rewrite with SQLite authentication, admin dashboard and One-Click docker update 2026-04-12 15:40:46 +02:00
Kroonk
1c233db10e Add debug UI trace for empty parsed images array 2026-04-12 15:30:37 +02:00
Kroonk
4fc9f28a27 Rebuild JS to bundle cache fixes into main.min.js 2026-04-12 15:08:59 +02:00
Kroonk
41bfb91ce3 Fix Nginx file permissions and bypass browser cache 2026-04-12 14:58:25 +02:00
Kroonk
ab6b2bb8fe Nextcloud-Integration: Dynamische Galerie + Auto-Thumbnails
- Galerie laedt Bilder dynamisch per JavaScript statt Jekyll-Loop
- nginx autoindex liefert JSON-Bilderliste
- Nextcloud-Ordner (Websitebilder) wird als Volume gemountet
- ImageMagick generiert automatisch 512px Thumbnails
- Hintergrund-Check alle 60s fuer neue Bilder
- Neuer entrypoint.sh fuer Thumbnail-Generierung + nginx Start

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-12 14:03:43 +02:00
Kroonk
5434298c25 Initial commit: Photography portfolio based on rampatra/photography
- Jekyll-based photography portfolio template
- Added Brain.md (project knowledge base) and Skill.md (skill commands)
- Configured remote to Kroonk/Photography.git
- Added .claude/ to .gitignore

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-12 13:14:44 +02:00