BackUserRequest   A
last analyzed

Complexity

Total Complexity 3

Size/Duplication

Total Lines 25
Duplicated Lines 0 %

Coupling/Cohesion

Components 1
Dependencies 3

Importance

Changes 0
Metric Value
dl 0
loc 25
rs 10
c 0
b 0
f 0
wmc 3
lcom 1
cbo 3

2 Methods

Rating   Name   Duplication   Size   Complexity  
A rules() 0 9 1
A getEmailValidationRule() 0 12 2
1
<?php
2
3
namespace App\Http\Requests\Back;
4
5
use App\Http\Requests\Request;
6
use Illuminate\Validation\Rule;
7
8
class BackUserRequest extends Request
9
{
10
    public function rules(): array
11
    {
12
        return [
13
            'email' => $this->getEmailValidationRule(),
14
            'first_name' => 'required',
15
            'last_name' => 'required',
16
            'password' => 'confirmed',
17
        ];
18
    }
19
20
    public function getEmailValidationRule(): string
21
    {
22
        $uniqueRule = Rule::unique('users_back', 'email');
23
24
        if ($this->method() === 'PATCH') {
25
            $userId = $this->getRouteParameter('administrator');
26
27
            $uniqueRule = $uniqueRule->ignore($userId);
28
        }
29
30
        return "required|email|{$uniqueRule}";
31
    }
32
}
33