MobileMoneyCors::handle()   A
last analyzed

Complexity

Conditions 3
Paths 3

Size

Total Lines 16

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 0
CRAP Score 12

Importance

Changes 0
Metric Value
cc 3
nc 3
nop 2
dl 0
loc 16
ccs 0
cts 9
cp 0
crap 12
rs 9.7333
c 0
b 0
f 0
1
<?php
2
3
namespace Samerior\MobileMoney\Mpesa\Http\Middlewares;
4
5
/**
6
 * Class MobileMoneyCors
7
 * @package Samerior\MobileMoney\Http\Middlewares
8
 */
9
class MobileMoneyCors
10
{
11
    /**
12
     * Handle an incoming request.
13
     *
14
     * @param  \Illuminate\Http\Request $request
15
     * @param  \Closure $next
16
     * @return mixed
17
     */
18
    public function handle($request, \Closure $next)
19
    {
20
        header('Access-Control-Allow-Origin: *');
21
        $headers = [
22
            'Access-Control-Allow-Methods' => 'POST, GET, OPTIONS, PUT, DELETE',
23
            'Access-Control-Allow-Headers' => 'Content-Type, X-Auth-Token, Origin, Authorization'
24
        ];
25
        if ($request->getMethod() === 'OPTIONS') {
26
            return \Response::make('OK', 200, $headers);
27
        }
28
        $response = $next($request);
29
        foreach ($headers as $key => $value) {
30
            $response->headers->set($key, $value);
31
        }
32
        return $response;
33
    }
34
}
35