Passed
Push — dev5 ( da16e0...6692a0 )
by Ron
08:20
created

LinkFilesController   A

Complexity

Total Complexity 6

Size/Duplication

Total Lines 54
Duplicated Lines 0 %

Test Coverage

Coverage 95.83%

Importance

Changes 1
Bugs 0 Features 0
Metric Value
eloc 19
c 1
b 0
f 0
dl 0
loc 54
ccs 23
cts 24
cp 0.9583
rs 10
wmc 6

5 Methods

Rating   Name   Duplication   Size   Complexity  
A update() 0 8 1
A destroy() 0 7 1
A store() 0 12 2
A __construct() 0 7 1
A show() 0 5 1
1
<?php
2
3
namespace App\Http\Controllers\FileLinks;
4
5
use App\Http\Controllers\Controller;
6
use Illuminate\Support\Facades\Log;
7
use Illuminate\Support\Facades\Auth;
8
use Illuminate\Support\Facades\Route;
9
10
use App\Domains\FileLinks\GetFileLinkFiles;
11
use App\Domains\FileLinks\SaveFileLinkFile;
12
13
use App\Http\Requests\AddFileLinkFileRequest;
14
use App\Http\Requests\MoveFileLinkFileToCustomerRequest;
15
16
class LinkFilesController extends Controller
17
{
18 22
    public function __construct()
19
    {
20
        //  Verify the user is logged in and has permissions for this page
21 22
        $this->middleware('auth');
22
        $this->middleware(function($request, $next) {
23 16
            $this->authorize('hasAccess', 'Use File Links');
24 10
            return $next($request);
25 22
        });
26 22
    }
27
28
    //  Add a file to the file link
29 2
    public function store(AddFileLinkFileRequest $request)
30
    {
31 2
        Log::debug('Route '.Route::currentRouteName().' visited by '.Auth::user()->full_name.'. Submitted Data - ', $request->toArray());
32
33
        //  Determine if a file is being uploaded still or not
34 2
        if((new SaveFileLinkFile)->execute($request, false))
35
        {
36 2
            Log::info('File Stored for file link ID - '.$request->linkID);
37 2
            return response()->json(['success' => true]);
38
        }
39
40
        return response()->json(['success' =>false]);
41
    }
42
43
    //  Show the files attached to a link
44 2
    public function show($id)
45
    {
46 2
        Log::debug('Route ' . Route::currentRouteName() . ' visited by ' . Auth::user()->full_name);
47
48 2
        return (new GetFileLinkFiles)->execute($id, true);
49
    }
50
51
    //  Move a file to a customer file
52 4
    public function update(MoveFileLinkFileToCustomerRequest $request, $id)
53
    {
54 4
        Log::debug('Route '.Route::currentRouteName().' visited by '.Auth::user()->full_name.'. Submitted Data - ', $request->toArray());
55
56 4
        $moveObj = new SaveFileLinkFile;
57 4
        $success = $moveObj->moveFileToCustomer($request, $id);
58
59 4
        return response()->json(['success' => $success]);
60
    }
61
62
    //  Delete a file attached to a link
63 2
    public function destroy($id)
64
    {
65 2
        Log::debug('Route ' . Route::currentRouteName() . ' visited by ' . Auth::user()->full_name);
66
67 2
        (new SaveFileLinkFile)->deleteLinkFile($id);
68
69 2
        return response()->json(['success' => true]);
70
    }
71
}
72