UI (Submit.razor)
- Toggle zwischen "Datei" und "URL" Modus
- URL-Eingabefeld mit Validierung (nur HTTP/HTTPS)
- Beide Modi teilen Submit-Button und Erfolgsanzeige
Service (IClubGifService, ClubGifService)
- Neue Methode SubmitAnonymousFromUrlAsync(token, url, name)
- Nutzt bestehende SaveGifFromUrlAsync von MediaStorageService
Serverseitige Validierung (bereits in MediaStorageService vorhanden):
- Content-Type Prüfung: nur image/gif, video/mp4, video/webm
- Dateigröße max. 20MB
- Datei wird nach Download nochmals auf Größe geprüft
- Ungültige Content-Types werden mit Exception abgelehnt