CreditCheck::handle()   A
last analyzed

Complexity

Conditions 3
Paths 3

Size

Total Lines 12
Code Lines 6

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
cc 3
eloc 6
nc 3
nop 2
dl 0
loc 12
rs 10
c 0
b 0
f 0
1
<?php
2
3
namespace App\Http\Middleware;
4
5
use App\Token;
6
use Closure;
7
8
class CreditCheck
9
{
10
    /**
11
     * Handle an incoming request.
12
     *
13
     * @param \Illuminate\Http\Request $request
14
     * @param \Closure                 $next
15
     *
16
     * @return mixed
17
     */
18
    public function handle($request, Closure $next)
19
    {
20
        $headerToken = Token::getTokenByString($request->header('siwecosToken'));
21
        if ($headerToken instanceof Token) {
22
            if ($headerToken->credits > 0) {
23
                return $next($request);
24
            }
25
26
            return response('Not enough credits', 452);
27
        }
28
29
        return response('Token not allowed', 403);
30
    }
31
}
32