Passed
Push — master ( 51edae...d29a9b )
by Curtis
11:52 queued 05:54
created

Store::__invoke()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 15
Code Lines 9

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
cc 1
eloc 9
c 1
b 0
f 0
nc 1
nop 2
dl 0
loc 15
rs 9.9666
1
<?php
2
3
namespace App\Http\Controllers\enso\people;
4
5
use Illuminate\Foundation\Auth\Access\AuthorizesRequests;
6
use Illuminate\Routing\Controller;
7
use LaravelEnso\People\Http\Requests\ValidatePersonRequest;
8
use App\Person;
9
10
class Store extends Controller
11
{
12
    use AuthorizesRequests;
13
14
    public function __invoke(ValidatePersonRequest $request, Person $person)
15
    {
16
        $this->authorize('store', [$person, $request->get('companies')]);
17
18
        $person->fill($request->validatedExcept('companies', 'company'))->save();
19
20
        $person->syncCompanies(
21
            $request->get('companies'),
22
            $request->get('company')
23
        );
24
25
        return [
26
            'message' => __('The person was successfully created'),
27
            'redirect' => 'administration.people.edit',
28
            'param' => ['person' => $person->id],
29
        ];
30
    }
31
}
32