route('static_page')); } /** * Prepare the data for validation. * * @return void */ public function prepareForValidation(): void { /** @var \App\Models\StaticPage $staticPageModel */ $staticPageModel = request()->route()->parameter('static_page'); $this->merge([ 'content' => (in_array($staticPageModel->type, \App\Enums\StaticPageType::getEditableContentPages())) ? Str::of($this->input('content'))->value() : null ]); } /** * Get the validation rules that apply to the request. * * @return array|string> */ public function rules(): array { return [ 'seo_title' => 'required|min:45|max:70', 'seo_description' => 'required|min:50|max:160', 'title' => 'required|min:3|max:255', 'content' => 'present|string|nullable' ]; } /** * Get custom attributes for validator errors. * * @return array */ public function attributes(): array { return [ 'seo_title' => trans('validation.custom.seo_title'), 'seo_description' => trans('validation.custom.seo_description'), 'title' => trans('validation.attributes.title'), 'content' => trans('validation.attributes.content'), ]; } }