cms/app/Http/Requests/Admin/Forms/BaseFormRequest.php

36 lines
967 B
PHP
Raw Normal View History

<?php
namespace App\Http\Requests\Admin\Forms;
use Illuminate\Foundation\Http\FormRequest;
use Illuminate\Validation\Rule;
/**
* Base request for form operations, containing shared validation logic.
*/
abstract class BaseFormRequest extends FormRequest
{
/**
* Get the base validation rules for forms.
*
* @param int|null $ignoreId
* @return array
*/
protected function baseRules(?int $ignoreId = null): array
{
return [
'name' => 'required|string|max:255',
'slug' => [
'required',
'string',
'max:255',
$ignoreId ? Rule::unique('forms')->ignore($ignoreId) : 'unique:forms',
],
'fields' => 'required|array',
'success_message' => 'nullable|string|max:255',
'redirect_url' => 'nullable|string|max:255',
'notification_email' => 'nullable|email|max:255',
];
}
}