37 lines
897 B
PHP
37 lines
897 B
PHP
<?php
|
|
|
|
declare(strict_types=1);
|
|
|
|
namespace Toby\Infrastructure\Http\Requests;
|
|
|
|
use Illuminate\Foundation\Http\FormRequest;
|
|
use Toby\Eloquent\Models\VacationRequest;
|
|
|
|
class CreateVacationRequestRequest extends FormRequest
|
|
{
|
|
protected $redirectRoute = "vacation.requests.create";
|
|
|
|
public function authorize(): bool
|
|
{
|
|
return ($this->get("user") === null) ||
|
|
((int)$this->get("user") === $this->user()->id) ||
|
|
$this->user()->can("createOnBehalfOfEmployee", VacationRequest::class);
|
|
}
|
|
|
|
public function rules(): array
|
|
{
|
|
return [
|
|
"user" => ["nullable", "exists:users,id"],
|
|
"from_date" => ["nullable", "date_format:Y-m-d"],
|
|
];
|
|
}
|
|
|
|
public function data(): array
|
|
{
|
|
return [
|
|
"user" => (int)$this->get("user"),
|
|
"from_date" => $this->get("from_date"),
|
|
];
|
|
}
|
|
}
|