| 123456789101112131415161718192021222324252627282930313233 |
- <?php
- namespace App\Http\Requests;
- use App\Enums\NotificationRecipientEnum;
- use Illuminate\Foundation\Http\FormRequest;
- use Illuminate\Validation\Rule;
- class NotificationRequest extends FormRequest
- {
- public function rules(): array
- {
- $rules = [
- 'type' => 'sometimes|string|max:50',
- 'source' => 'sometimes|nullable|string|max:100',
- 'source_id' => 'sometimes|nullable|integer',
- 'title' => 'sometimes|string|max:255',
- 'message' => 'sometimes|string',
- 'recipient' => ['sometimes', Rule::enum(NotificationRecipientEnum::class)],
- 'recipient_position' => 'sometimes|nullable|string|max:100',
- 'recipient_sector' => 'sometimes|nullable|string|max:100',
- ];
- if ($this->isMethod('post')) {
- $rules['type'] = 'required|string|max:50';
- $rules['title'] = 'required|string|max:255';
- $rules['message'] = 'required|string';
- $rules['recipient'] = ['required', Rule::enum(NotificationRecipientEnum::class)];
- }
- return $rules;
- }
- }
|