Passed
Push — activity-logs ( 8cf388 )
by Fèvre
06:45
created

ActivityLogs   A

Complexity

Total Complexity 2

Size/Duplication

Total Lines 28
Duplicated Lines 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
eloc 12
c 1
b 0
f 0
dl 0
loc 28
rs 10
wmc 2

1 Method

Rating   Name   Duplication   Size   Complexity  
A handle() 0 19 2
1
<?php
2
namespace Xetaravel\Http\Middleware;
3
4
use Closure;
5
use Illuminate\Support\Facades\Auth;
6
use Xetaravel\Models\Repositories\ActivityLogRepository;
7
8
class ActivityLogs
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 (!$request->user()) {
20
            return $next($request);
21
        }
22
23
        $data = [
24
            'url' => $request->path(),
25
            'method' => $request->method(),
26
            'user_agent' => $request->userAgent(),
27
            'ip' => $request->ip(),
28
            'last_activity' => time()
29
        ];
30
31
        $user = $request->user()->getKey();
32
33
        ActivityLogRepository::update($data, $user);
34
35
        return $next($request);
36
    }
37
}
38