koel/app/Http/Requests/API/UserUpdateRequest.php

34 lines
707 B
PHP
Raw Normal View History

2015-12-13 12:42:28 +08:00
<?php
namespace App\Http\Requests\API;
use App\Models\User;
use Illuminate\Validation\Rules\Password;
2016-08-03 18:42:11 +08:00
/**
2020-09-06 23:20:42 +02:00
* @property string $password
* @property string $name
* @property string $email
2021-06-05 12:47:56 +02:00
* @property bool $is_admin
2016-08-03 18:42:11 +08:00
*/
2015-12-13 12:42:28 +08:00
class UserUpdateRequest extends Request
{
2018-08-30 10:11:47 +07:00
public function authorize(): bool
2015-12-13 12:42:28 +08:00
{
return auth()->user()->is_admin;
}
2020-12-22 21:11:22 +01:00
/** @return array<mixed> */
2018-08-30 10:11:47 +07:00
public function rules(): array
2015-12-13 12:42:28 +08:00
{
/** @var User $user */
$user = $this->route('user');
2015-12-13 12:42:28 +08:00
return [
'name' => 'required',
2020-12-22 21:11:22 +01:00
'email' => 'required|email|unique:users,email,' . $user->id,
'password' => ['sometimes', Password::defaults()],
2015-12-13 12:42:28 +08:00
];
}
}