RequestTracer   A
last analyzed

Complexity

Total Complexity 6

Size/Duplication

Total Lines 35
Duplicated Lines 0 %

Test Coverage

Coverage 100%

Importance

Changes 2
Bugs 0 Features 0
Metric Value
wmc 6
eloc 18
c 2
b 0
f 0
dl 0
loc 35
ccs 20
cts 20
cp 1
rs 10

2 Methods

Rating   Name   Duplication   Size   Complexity  
A getRequestSimpleMetaInfo() 0 10 2
A getRequestMetaInfo() 0 21 4
1
<?php
2
3
namespace FormEntries\Helpers;
4
5
use Illuminate\Database\Eloquent\Model;
6
use Illuminate\Http\Request;
7
8
class RequestTracer
9
{
10 12
    public static function getRequestMetaInfo(?Request $request = null): array
11
    {
12 12
        if (!$request) {
13 2
            $request = request();
14
        }
15
16 12
        $data = static::getRequestSimpleMetaInfo($request);
17
18
19
        if (
20 12
            ($user = $request->user(
21 12
                config('forms-entries.defaults.auth_guard', config('auth.defaults.guard'))
22 12
            ))
23 12
            && $user instanceof Model) {
24 2
            $data['creator'] = [
25 2
                'id'   => $user->getKey(),
26 2
                'type' => $user->getMorphClass(),
27 2
            ];
28
        }
29
30 12
        return $data;
31
    }
32
33 13
    public static function getRequestSimpleMetaInfo(?Request $request = null): array
34
    {
35 13
        if (!$request) {
36 1
            $request = request();
37
        }
38
39 13
        return [
40 13
            'ip'        => $request->ip(),
41 13
            'ips'       => $request->ips(),
42 13
            'userAgent' => $request->userAgent(),
43 13
        ];
44
    }
45
}
46