36 lines
1.9 KiB
Markdown
36 lines
1.9 KiB
Markdown
# Fotobox Projekt-Updates
|
|
|
|
Dieses Dokument beschreibt die vorgenommenen technischen Änderungen an der `index.php`.
|
|
|
|
## v1.1 - Fix für gedrehte Bilder (Aktuell)
|
|
|
|
### Problembeschreibung
|
|
Bilder, die mit dem Smartphone im Hochformat (oder quer) aufgenommen wurden, erschienen in der Galerie-Vorschau (Thumbnails) oft um 90° nach links gedreht.
|
|
|
|
### Technische Lösung
|
|
Das Problem lag in der Thumbnail-Generierung mittels PHP GD. Smartphones speichern die korrekte Ausrichtung oft nur in den EXIF-Metadaten, die PHP standardmäßig beim Skalieren ignoriert hat.
|
|
|
|
* **Änderung**: Die Funktion `createThumbnail()` wurde erweitert.
|
|
* Sie nutzt nun `exif_read_data()` (falls auf dem Server verfügbar), um den `Orientation`-Tag aus JPEGs auszulesen.
|
|
* Basierend auf diesem Tag wird das Bild mittels `imagerotate()` korrekt gedreht, *bevor* das Thumbnail resampled und gespeichert wird.
|
|
|
|
*Hinweis:* Diese Änderung betrifft nur Bilder, die *nach* diesem Update hochgeladen werden. Um alte, falsch gedrehte Thumbnails zu korrigieren, muss der Inhalt des Ordners `/thumbnails/` auf dem Server gelöscht werden, damit sie neu generiert werden.
|
|
|
|
---
|
|
|
|
## v1.0 - Basis-Funktionen & Performance
|
|
|
|
Initiales Update mit Kernfunktionalitäten.
|
|
|
|
### 1. Upload-Limitierung
|
|
* Maximal **15 Bilder** pro Upload-Vorgang möglich.
|
|
* Validierung erfolgt sowohl im Frontend (JS) als auch Backend (PHP).
|
|
|
|
### 2. Bild-Kompression (Thumbnails)
|
|
* Automatische Erstellung von optimierten Vorschaubildern im Ordner `/thumbnails/`.
|
|
* Galerie lädt Thumbnails für schnellere Ladezeiten; Originale werden im Ordner `/uploads/` gespeichert und erst in der Vollansicht geladen.
|
|
|
|
### 3. Benutzerbasierte Löschfunktion
|
|
* Über `LocalStorage` merkt sich der Browser, welche Bilder der Nutzer hochgeladen hat.
|
|
* Lösch-Button erscheint in der Lightbox nur für eigene Bilder.
|
|
* Bilder werden nicht gelöscht, sondern in `/deleted_uploads/` verschoben. |