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