validate([ 'aiTextDeclaration' => ['required', Rule::in(AiTextDeclaration::values())], 'aiDeclarationConfirmed' => ['accepted'], ], [ 'aiTextDeclaration.required' => __('Bitte angeben, ob und wie generative KI beim Text eingesetzt wurde.'), 'aiDeclarationConfirmed.accepted' => __('Bitte bestätigen, dass die Angaben zum KI-Einsatz vollständig und wahrheitsgemäß sind.'), ]); } /** * Spaltenwerte für die PM-Persistenz. Der Bestätigungszeitpunkt wird nur * gestempelt, wenn die Checkbox tatsächlich gesetzt wurde. * * @return array{ai_text_declaration: ?string, ai_declaration_confirmed_at: ?Carbon} */ protected function aiDeclarationAttributes(): array { return [ 'ai_text_declaration' => $this->aiTextDeclaration, 'ai_declaration_confirmed_at' => $this->aiDeclarationConfirmed ? now() : null, ]; } }