Passed
Branch master (cd4548)
by Fèvre
19:36
created

DiscussMaintenance   A

Complexity

Total Complexity 7

Size/Duplication

Total Lines 26
Duplicated Lines 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
eloc 9
dl 0
loc 26
rs 10
c 1
b 0
f 0
wmc 7

1 Method

Rating   Name   Duplication   Size   Complexity  
B handle() 0 17 7
1
<?php
2
namespace Xetaravel\Http\Middleware;
3
4
use Closure;
5
use Illuminate\Support\Facades\Auth;
6
use Illuminate\Support\Facades\Session;
7
8
class DiscussMaintenance
9
{
10
    /**
11
     * Handle an incoming request.
12
     *
13
     * @param  \Illuminate\Http\Request  $request
14
     * @param  \Closure  $next
15
     * @return mixed
16
     */
17
    public function handle($request, Closure $next)
18
    {
19
        // If the discuss is disabled and the user is not admin.
20
        if ((!Auth::user() && config('settings.discuss.enabled') == false) ||
21
            (config('settings.discuss.enabled') == false && Auth::user()->level() < 4)
22
        ) {
23
            return redirect()
24
                        ->route('page.index')
25
                        ->with('danger', 'Le système de discussion est temporairement désactivé.');
26
        }
27
28
        // If the discuss is disabled and the user is admin.
29
        if (config('settings.discuss.enabled') == false && Auth::user()->level() >= 4) {
30
            Session::flash('danger', 'Le système de discussion est actuellement désactivé.');
31
        }
32
33
        return $next($request);
34
    }
35
}
36