Test Failed
Push — dev ( 17f6d8...392257 )
by Janko
10:17 queued 12s
created

CustomControllerHelperTrait   A

Complexity

Total Complexity 7

Size/Duplication

Total Lines 39
Duplicated Lines 0 %

Test Coverage

Coverage 100%

Importance

Changes 1
Bugs 1 Features 0
Metric Value
eloc 14
dl 0
loc 39
ccs 13
cts 13
cp 1
rs 10
c 1
b 1
f 0
wmc 7

4 Methods

Rating   Name   Duplication   Size   Complexity  
A __construct() 0 5 3
A parameter() 0 7 2
A tidyString() 0 7 1
A createRequestParserFactory() 0 3 1
1
<?php
2
3
declare(strict_types=1);
4
5
namespace Stu\Lib\Request;
6
7
use MPScholten\RequestParser\BaseControllerHelperTrait;
8
use MPScholten\RequestParser\Config;
9
use MPScholten\RequestParser\TypeParser;
10
use request;
11
12
trait CustomControllerHelperTrait
13
{
14 99
    use BaseControllerHelperTrait;
15
16 99
    public function __construct()
17 99
    {
18
        if (array_key_exists('REQUEST_METHOD', $_SERVER)) {
19
            $request = $_SERVER['REQUEST_METHOD'] === 'GET' ? $_GET : $_POST;
20
            $this->initRequestParser($request);
21
        }
22
    }
23
24 99
    /**
25
     * @param array<mixed> $request
26 99
     * @param callable|Config $config
27
     */
28
    final protected function createRequestParserFactory($request, $config): CustomRequestParserFactory
29 18
    {
30
        return new CustomRequestParserFactory($request, $config);
31 18
    }
32 18
33 18
    protected function tidyString(string $string): string
34 18
    {
35 18
        return trim(
36 18
            str_replace(
37 18
                ['<', '>', '&gt;', '&lt;'],
38
                '',
39
                strip_tags($string)
40
            )
41
        );
42
    }
43
44
    protected function parameter(string $name): TypeParser
45
    {
46
        if (request::isMocked()) {
47
            $this->initRequestParser(request::getvars());
48
        }
49
50
        return $this->queryParameter($name);
51
    }
52
}
53