cms/app/Http/Requests/Admin/Users/BaseUserRequest.php
Funky Waddle 37ed997989 feat(cms): initialize Laravel project structure and core CMS files
- Added standard Laravel directory structure and configuration.

- Included Svelte and Tailwind configuration for the admin interface.

- Added core PHPUnit and testing scripts.
2026-04-13 12:48:06 -05:00

38 lines
1.1 KiB
PHP

<?php
namespace App\Http\Requests\Admin\Users;
use Illuminate\Foundation\Http\FormRequest;
use Illuminate\Validation\Rule;
use Illuminate\Validation\Rules\Password;
/**
* Base request for user operations, containing shared validation logic.
*/
abstract class BaseUserRequest extends FormRequest
{
/**
* Get the base validation rules for users.
*
* @param int|null $ignoreId
* @param bool $passwordRequired
* @return array
*/
protected function baseRules(?int $ignoreId = null, bool $passwordRequired = false): array
{
return [
'name' => ['required', 'string', 'max:255'],
'email' => [
'required',
'string',
'email',
'max:255',
$ignoreId ? Rule::unique('users')->ignore($ignoreId) : 'unique:users',
],
'password' => [$passwordRequired ? 'required' : 'nullable', 'confirmed', Password::defaults()],
'roles' => ['array'],
'roles.*' => ['exists:roles,id'],
];
}
}