ImagePrecheckOutcome::Reject, self::ScreenshotOrCollage, self::ThirdPartyLogoProminent, self::LicensePlateReadable => ImagePrecheckOutcome::Queue, self::PersonsVisible, self::LooksAiGenerated, self::TechnicalDefect => ImagePrecheckOutcome::Hint, }; } /** Stufe 1 (DU 12.7) wertet nur das Stock-Wasserzeichen aus. */ public function activeInStage(int $stage): bool { return $stage >= 2 || $this === self::StockWatermark; } public function label(): string { return match ($this) { self::StockWatermark => 'Wasserzeichen einer Bildagentur', self::NudityOrViolence => 'Nacktheit oder Gewalt', self::DocumentOrId => 'Dokument oder Ausweis', self::ScreenshotOrCollage => 'Screenshot oder Collage', self::ThirdPartyLogoProminent => 'Fremdes Logo prominent', self::LicensePlateReadable => 'Kfz-Kennzeichen lesbar', self::PersonsVisible => 'Personen erkennbar', self::LooksAiGenerated => 'Wirkt KI-generiert', self::TechnicalDefect => 'Technischer Mangel', }; } /** * Satz für den Einreicher bei automatischer Ablehnung (DU 12.3: „Grund in * einem Satz, Bild neu hochladen"). Nur für Ablehnungskategorien belegt. */ public function rejectionMessage(): string { return match ($this) { self::StockWatermark => __('Das Bild trägt das Wasserzeichen einer Bildagentur und kann so nicht verwendet werden. Bitte laden Sie eine lizenzierte Fassung ohne Wasserzeichen hoch.'), self::NudityOrViolence => __('Das Bild zeigt Inhalte, die wir nicht veröffentlichen (Nacktheit oder Gewalt). Bitte wählen Sie ein anderes Bild.'), self::DocumentOrId => __('Das Bild zeigt ein Dokument oder einen Ausweis. Bitte wählen Sie ein anderes Bild.'), default => __('Das Bild kann so nicht verwendet werden. Bitte wählen Sie ein anderes Bild.'), }; } /** Hinweis im Formular (DU 12.3), ohne Eingriff. */ public function hintMessage(?string $note = null): string { return match ($this) { self::PersonsVisible => __('Auf dem Bild sind Personen zu sehen. Mit Ihrer Bestätigung erklären Sie, dass sie mit der Veröffentlichung einverstanden sind.'), self::LooksAiGenerated => __('Bitte prüfen Sie Ihre Angabe zur KI-Kennzeichnung.'), self::TechnicalDefect => $note !== null && $note !== '' ? __('Das Bild könnte technisch mangelhaft sein: :note', ['note' => $note]) : __('Das Bild könnte technisch mangelhaft sein (zu klein, verzerrt oder Platzhalter).'), default => $this->label(), }; } }