EnsureSellerEmailIsVerified::handle()   A
last analyzed

Complexity

Conditions 6
Paths 3

Size

Total Lines 11
Code Lines 7

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 0
CRAP Score 42

Importance

Changes 0
Metric Value
cc 6
eloc 7
nc 3
nop 3
dl 0
loc 11
ccs 0
cts 8
cp 0
crap 42
rs 9.2222
c 0
b 0
f 0
1
<?php
2
3
namespace App\Modules\Sellers\Http\Middleware;
4
5
use Closure;
6
use Illuminate\Contracts\Auth\MustVerifyEmail;
7
use Illuminate\Http\Request;
8
use Illuminate\Support\Facades\Redirect;
9
use Symfony\Component\HttpFoundation\Response;
10
11
/**
12
 * @see \Illuminate\Auth\Middleware\EnsureEmailIsVerified
13
 */
14
class EnsureSellerEmailIsVerified
15
{
16
    /**
17
     * Handle an incoming request.
18
     */
19
    public function handle(Request $request, Closure $next, ?string $redirectToRoute = null): Response
20
    {
21
        if (! $request->user('seller')
22
            || ($request->user('seller') instanceof MustVerifyEmail
23
                && ! $request->user('seller')->hasVerifiedEmail())) {
24
            return $request->expectsJson()
25
                    ? abort(403, 'Your email address is not verified.')
0 ignored issues
show
Bug introduced by
Are you sure the usage of abort(403, 'Your email address is not verified.') is correct as it seems to always return null.

This check looks for function or method calls that always return null and whose return value is used.

class A
{
    function getObject()
    {
        return null;
    }

}

$a = new A();
if ($a->getObject()) {

The method getObject() can return nothing but null, so it makes no sense to use the return value.

The reason is most likely that a function or method is imcomplete or has been reduced for debug purposes.

Loading history...
26
                    : Redirect::route($redirectToRoute ?: 'seller.verification.notice');
27
        }
28
29
        return $next($request);
30
    }
31
}
32