45 lines
1.0 KiB
PHP
45 lines
1.0 KiB
PHP
<?php
|
|
|
|
namespace App\Http\Requests\Cadastro\SujeitoAtencao;
|
|
|
|
use App\Http\Requests\FormRequest;
|
|
use App\Rules\SenhaAntiga;
|
|
use App\Rules\SenhaAtual;
|
|
|
|
class UsuarioPerfilRequest extends FormRequest
|
|
{
|
|
public function authorize()
|
|
{
|
|
return true;
|
|
}
|
|
|
|
public function rules()
|
|
{
|
|
switch($this->method()) {
|
|
case 'PUT':
|
|
return $this->getPutRules();
|
|
break;
|
|
|
|
default:
|
|
return [];
|
|
}
|
|
}
|
|
|
|
private function getPutRules()
|
|
{
|
|
return [
|
|
'email' => ['required'],
|
|
'senha' => [$this->nova_senha ? 'required' : 'nullable', 'min:8', 'max:100'],
|
|
'nova_senha' => [
|
|
$this->senha ? 'required' : 'nullable',
|
|
'min:8',
|
|
'max:100',
|
|
'regex:/^(?=.*\d)(?=.*[a-zA-Z]).{8,}$/',
|
|
new SenhaAtual($this->usuario_perfil),
|
|
new SenhaAntiga($this->usuario_perfil),
|
|
'confirmed',
|
|
],
|
|
];
|
|
}
|
|
}
|