ExtraFieldDefaultValueController   A
last analyzed

Complexity

Total Complexity 8

Size/Duplication

Total Lines 51
Duplicated Lines 0 %

Importance

Changes 2
Bugs 0 Features 1
Metric Value
eloc 20
c 2
b 0
f 1
dl 0
loc 51
rs 10
wmc 8

6 Methods

Rating   Name   Duplication   Size   Complexity  
A create() 0 3 1
A edit() 0 3 1
A update() 0 4 1
A store() 0 4 1
A destroy() 0 7 2
A index() 0 18 2
1
<?php namespace App\Http\Controllers\Backend;
2
/**
3
 * ExtraFieldDefaultValueController
4
 *
5
 * This is the controller of the product weight types of the shop
6
 * @author Matthijs Neijenhuijs <[email protected]>
7
 * @version 0.1
8
 */
9
10
use App\Http\Controllers\Controller;
11
use Hideyo\Ecommerce\Framework\Services\ExtraField\ExtraFieldFacade as ExtraFieldService;
12
use Illuminate\Http\Request;
13
use DataTables;
14
use Form;
15
16
class ExtraFieldDefaultValueController extends Controller
17
{
18
    public function index(Request $request, $extraFieldId)
19
    {
20
        if ($request->wantsJson()) {
21
22
            $query = ExtraFieldService::getValueModel()->where('extra_field_id', '=', $extraFieldId);
23
            
24
            $datatables = DataTables::of($query)->addColumn('action', function ($query) use ($extraFieldId) {
25
                $deleteLink = Form::deleteajax(url()->route('extra-field.values.destroy', array('ExtraFieldId' => $extraFieldId, 'id' => $query->id)), 'Delete', '', array('class'=>'btn btn-default btn-sm btn-danger'));
26
                $links = ' <a href="'.url()->route('extra-field.values.edit', array('ExtraFieldId' => $extraFieldId, 'id' => $query->id)).'" class="btn btn-default btn-sm btn-success"><i class="entypo-pencil"></i>Edit</a> 
27
                '.$deleteLink;
28
            
29
                return $links;
30
            });
31
32
            return $datatables->make(true);
33
        }
34
        
35
        return view('backend.extra-field-default-value.index')->with('extraField', ExtraFieldService::find($extraFieldId));
36
    }
37
38
    public function create($extraFieldId)
39
    {
40
        return view('backend.extra-field-default-value.create')->with(array('extraField' =>  ExtraFieldService::find($extraFieldId)));
41
    }
42
43
    public function store(Request $request, $extraFieldId)
44
    {
45
        $result  = ExtraFieldService::createValue($request->all(), $extraFieldId);
46
        return ExtraFieldService::notificationRedirect(array('extra-field.values.index', $extraFieldId), $result, 'The extra field was inserted.');
47
    }
48
49
    public function edit($extraFieldId, $id)
50
    {
51
        return view('backend.extra-field-default-value.edit')->with(array('extraFieldDefaultValue' => ExtraFieldService::findValue($id)));
52
    }
53
54
    public function update(Request $request, $extraFieldId, $id)
55
    {
56
        $result  = ExtraFieldService::updateValueById($request->all(), $extraFieldId, $id);
57
        return ExtraFieldService::notificationRedirect(array('extra-field.values.index', $extraFieldId), $result, 'The extra field was updated.');
58
    }
59
60
    public function destroy($extraFieldId, $id)
61
    {
62
        $result  = ExtraFieldService::destroyValue($id);
63
64
        if ($result) {
65
            flash('Extra field was deleted.');
66
            return redirect()->route('extra-field.values.index', $extraFieldId);
67
        }
68
    }
69
}
70