Passed
Push — ft/appmove ( db87fd...97613e )
by Philippe
45:05 queued 26:47
created

InviteController::accept()   A

Complexity

Conditions 2
Paths 2

Size

Total Lines 14
Code Lines 6

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
eloc 6
nc 2
nop 1
dl 0
loc 14
c 0
b 0
f 0
cc 2
rs 10
1
<?php
2
3
namespace Thinktomorrow\Chief\App\Http\Controllers\Back\Users;
4
5
use Thinktomorrow\Chief\App\Http\Controllers\Controller;
6
use Thinktomorrow\Chief\Authorization\Role;
7
use Thinktomorrow\Chief\Users\Invites\Application\AcceptInvite;
8
use Thinktomorrow\Chief\Users\Invites\Application\DenyInvite;
9
use Thinktomorrow\Chief\Users\Invites\Application\InviteUser;
10
use Thinktomorrow\Chief\Users\Invites\Invitation;
11
use Thinktomorrow\Chief\Users\User;
12
use Illuminate\Http\Request;
13
14
class InviteController extends Controller
15
{
16
    public function __construct()
17
    {
18
        $this->middleware(['chief-validate-invite'])->except('expired');
19
    }
20
21
    public function expired()
22
    {
23
        return view('chief::back.users.invite-expired');
24
    }
25
26
    public function accept(Request $request)
27
    {
28
        $invitation = Invitation::findByToken($request->token);
29
30
        app(AcceptInvite::class)->handle($invitation);
31
32
        // Log user into the system and proceed to start page
33
        auth()->guard('chief')->login($invitation->invitee);
34
35
        if (is_null($invitation->invitee->password)) {
0 ignored issues
show
introduced by
The condition is_null($invitation->invitee->password) is always false.
Loading history...
36
            return redirect()->route('chief.back.password.edit');
37
        }
38
39
        return redirect()->route('chief.back.dashboard.getting-started');
40
    }
41
42
    public function deny(Request $request)
43
    {
44
        $invitation = Invitation::findByToken($request->token);
45
46
        app(DenyInvite::class)->handle($invitation);
47
48
        return view('chief::back.users.invite-denied');
49
    }
50
}
51