SecureBlogInputMiddleware   A
last analyzed

Complexity

Total Complexity 10

Size/Duplication

Total Lines 44
Duplicated Lines 0 %

Test Coverage

Coverage 0%

Importance

Changes 0
Metric Value
eloc 25
dl 0
loc 44
ccs 0
cts 24
cp 0
rs 10
c 0
b 0
f 0
wmc 10

1 Method

Rating   Name   Duplication   Size   Complexity  
B handle() 0 35 10
1
<?php
2
3
namespace App\Http\Middleware;
4
5
6
use App\Blog;
7
use App\Helper\FormatHelper;
8
use Closure;
9
use Illuminate\Http\Request;
10
11
class SecureBlogInputMiddleware
12
{
13
    /**
14
     * Handle an incoming request.
15
     *
16
     * @param  Request $request
17
     * @param  Closure $next
18
     * @return mixed
19
     */
20
    public function handle(Request $request, Closure $next)
21
    {
22
        $blog = new Blog();
23
        $method = $request->getMethod();
24
        $requestPath = $request->getRequestUri();
25
        $returnArray = array();
26
        $returnStatus = 0;
27
28
29
        if ($method == "POST" && $requestPath == "/api/blog") {
30
            $name = $request->input("name");
31
            $description = $request->input("description");
32
            $url = $request->input("url");
33
34
            if ($name == null || $description == null || $url == null) {
35
                $returnArray["error-code"] = "invalid-request";
36
                $returnStatus = 400;
37
            }
38
        } else if ($method == "PUT" && $requestPath == "/api/blog") {
39
            $hash = $request->input("hash");
40
            $blogResult = $blog->where("hash", $hash)->first();
41
            if ($blogResult == null) {
42
                $returnArray["error-code"] = "blog-not-found";
43
                $returnStatus = 404;
44
            }
45
        } else {
46
            $returnArray["error-code"] = "request-not-found";
47
            $returnStatus = 400;
48
        }
49
50
        if (!empty($returnArray)) {
51
            return FormatHelper::formatData($returnArray, false, $returnStatus);
52
        }
53
54
        return $next($request);
55
    }
56
}