PM_Console/backend/app/Http/Requests/StoreMeetingRequest.php

39 خطوط
1.3 KiB
PHP

<?php
namespace App\Http\Requests;
use Illuminate\Foundation\Http\FormRequest;
class StoreMeetingRequest extends FormRequest
{
public function authorize(): bool
{
return true;
}
public function rules(): array
{
return [
'title' => 'required|string|max:255',
'project_id' => 'nullable|exists:projects,id',
'sprint_id' => 'nullable|exists:sprints,id',
'meeting_type_id' => 'nullable|exists:meeting_types,id',
'date' => 'required|date',
'start_time' => 'nullable|date_format:H:i',
'end_time' => 'nullable|date_format:H:i|after:start_time',
'meeting_type' => 'required|string|max:50',
'status' => 'nullable|string|in:draft,scheduled,in_progress,completed,cancelled,postponed',
'objective' => 'nullable|string|max:2000',
'agenda' => 'nullable|string',
'notes' => 'nullable|string',
'summary' => 'nullable|string',
'location' => 'nullable|string|max:255',
'meeting_link' => 'nullable|url|max:2048',
'owner_id' => 'nullable|exists:users,id',
'facilitator_id' => 'nullable|exists:users,id',
'reminder_minutes' => 'nullable|integer|min:0|max:10080',
'recurrence_rule' => 'nullable|array',
];
}
}