File: //home/marketing.cfbon.ru/public_html/app/Http/Requests/Loyalty/PushRequest.php
<?php
namespace App\Http\Requests\Loyalty;
use App\Enums\RecipientType;
use Illuminate\Foundation\Http\FormRequest;
use Illuminate\Validation\Rule;
class PushRequest extends FormRequest
{
/**
* Determine if the user is authorized to make this request.
*/
public function authorize(): bool
{
return true;
}
/**
* Get the validation rules that apply to the request.
*
* @return array<string, \Illuminate\Contracts\Validation\ValidationRule|array<mixed>|string>
*/
public function rules(): array
{
return [
'recipient_type' => ['required', Rule::enum(RecipientType::class)],
'title' => 'required|string',
'text' => 'required|string',
'selected_users' => [
'nullable',
'string',
'regex:/^\+7[0-9]+(;\\+7[0-9]+)*$/'
],
];
}
public function messages()
{
return [
'recipient_type.required' => 'Это поле необходимо для заполнения',
'recipient_type.enum' => 'Выбрана недопустимая группа пользователей',
'title.required' => 'Это поле необходимо для заполнения',
'title.string' => 'Это поле должно быть строкой',
'text.required' => 'Это поле необходимо для заполнения',
'text.string' => 'Это поле должно быть строкой',
'selected_users.string' => 'Это поле должно быть строкой',
'selected_users.regex' => 'Введите номера пользователей без пробелов через ;',
];
}
}