TRF Certest first commit

This commit is contained in:
2025-02-26 08:57:46 +01:00
commit 3ce064a108
2524 changed files with 475404 additions and 0 deletions
@@ -0,0 +1,38 @@
<?php
namespace Vanguard\Http\Requests\User;
use Vanguard\Http\Requests\Request;
class CreateUserRequest extends Request
{
public function rules(): array
{
$rules = [
'email' => 'required|email|unique:users,email',
'username' => 'nullable|unique:users,username',
'password' => [
'required',
'confirmed',
'min:8',
'regex:/^(?=.*[A-Za-z])(?=.*\d)(?=.*[@$!%*?&])[A-Za-z\d@$!%*?&]{8,}$/'
],
'birthday' => 'nullable|date',
'role_id' => 'required|exists:roles,id',
'verified' => 'boolean',
];
if ($this->get('country_id')) {
$rules['country_id'] = 'exists:countries,id';
}
return $rules;
}
public function messages(): array
{
return [
'password.regex' => __('The password must be at least 8 characters long and contain at least one number and one special character (@$!%*?&).'),
];
}
}
@@ -0,0 +1,16 @@
<?php
namespace Vanguard\Http\Requests\User;
use Vanguard\Http\Requests\Request;
class UpdateDetailsRequest extends Request
{
public function rules(): array
{
return [
'birthday' => 'nullable|date',
'role_id' => 'required|exists:roles,id',
];
}
}
@@ -0,0 +1,37 @@
<?php
namespace Vanguard\Http\Requests\User;
use Vanguard\Http\Requests\Request;
use Vanguard\User;
class UpdateLoginDetailsRequest extends Request
{
public function rules(): array
{
$user = $this->getUserForUpdate();
return [
'email' => 'required|email|unique:users,email,' . $user->id,
'username' => 'nullable|unique:users,username,' . $user->id,
'password' => [
'nullable', // Permette di aggiornare i dati senza cambiare la password
'confirmed',
'min:8',
'regex:/^(?=.*[A-Za-z])(?=.*\d)(?=.*[@$!%*?&])[A-Za-z\d@$!%*?&]{8,}$/'
],
];
}
public function messages(): array
{
return [
'password.regex' => __('The password must be at least 8 characters long and contain at least one number and one special character (@$!%*?&).'),
];
}
protected function getUserForUpdate(): User
{
return $this->route('user');
}
}
@@ -0,0 +1,15 @@
<?php
namespace Vanguard\Http\Requests\User;
use Vanguard\Http\Requests\Request;
class UpdateProfileDetailsRequest extends Request
{
public function rules(): array
{
return [
'birthday' => 'nullable|date',
];
}
}
@@ -0,0 +1,13 @@
<?php
namespace Vanguard\Http\Requests\User;
use Vanguard\User;
class UpdateProfileLoginDetailsRequest extends UpdateLoginDetailsRequest
{
protected function getUserForUpdate(): User
{
return \Auth::user();
}
}
@@ -0,0 +1,37 @@
<?php
namespace Vanguard\Http\Requests\User;
use Illuminate\Validation\Rule;
use Vanguard\Http\Requests\Request;
use Vanguard\Support\Enum\UserStatus;
class UpdateUserRequest extends Request
{
public function rules(): array
{
$user = $this->user();
return [
'email' => 'email|unique:users,email,' . $user->id,
'username' => 'nullable|unique:users,username,' . $user->id,
'password' => [
'nullable', // Permette di aggiornare i dati senza cambiare la password
'confirmed',
'min:8',
'regex:/^(?=.*[A-Za-z])(?=.*\d)(?=.*[@$!%*?&])[A-Za-z\d@$!%*?&]{8,}$/'
],
'birthday' => 'nullable|date',
'role_id' => 'exists:roles,id',
'country_id' => 'exists:countries,id',
'status' => Rule::in(array_keys(UserStatus::lists())),
];
}
public function messages(): array
{
return [
'password.regex' => __('The password must be at least 8 characters long and contain at least one number and one special character (@$!%*?&).'),
];
}
}
@@ -0,0 +1,15 @@
<?php
namespace Vanguard\Http\Requests\User;
use Vanguard\Http\Requests\Request;
class UploadAvatarRawRequest extends Request
{
public function rules(): array
{
return [
'file' => 'required|image',
];
}
}