Event-Thumbnails: Vorschaubilder mit Auto-Resize und Typ-Logos

- Migration: thumbnail-Spalte in events-Tabelle
- Event-Model: imageUrl() liefert Custom-Thumbnail oder Standard-Logo
  je Event-Typ (Logo_Training.png, Logo_Heimspiel.png, etc.)
- Thumbnail-Upload neben Typ-Auswahl bei Erstellen/Bearbeiten
  mit Live-Vorschau und Entfernen-Button
- Automatische Skalierung auf max. FullHD (1920x1080) via GD
  und Speicherung als JPEG (Qualität 85)
- Event-Listen (App + Admin): Logo/Thumbnail links im Terminblock
- Übersetzungen in allen 6 Sprachen

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Rhino
2026-03-03 10:45:35 +01:00
parent 5942bdf6c3
commit c0287367c0
13 changed files with 215 additions and 38 deletions

View File

@@ -0,0 +1,22 @@
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
return new class extends Migration
{
public function up(): void
{
Schema::table('events', function (Blueprint $table) {
$table->string('thumbnail', 255)->nullable()->after('event_series_id');
});
}
public function down(): void
{
Schema::table('events', function (Blueprint $table) {
$table->dropColumn('thumbnail');
});
}
};