Passed
Push — master ( 2c2df9...4d0e35 )
by Karel
06:15
created

MenuController::addpagemenu()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 9
Code Lines 6

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
cc 1
eloc 6
nc 1
nop 0
dl 0
loc 9
rs 10
c 0
b 0
f 0
1
<?php
2
3
namespace Chuckbe\Chuckcms\Controllers;
4
5
use Chuckbe\Chuckcms\Models\Page;
6
use Chuckbe\Chuckcms\Models\Menus;
7
use Chuckbe\Chuckcms\Models\MenuItems;
8
9
use Illuminate\Http\Request;
10
use Illuminate\Foundation\Bus\DispatchesJobs;
11
use Illuminate\Routing\Controller as BaseController;
12
use Illuminate\Foundation\Validation\ValidatesRequests;
13
use Illuminate\Foundation\Auth\Access\AuthorizesRequests;
14
15
class MenuController extends BaseController
16
{
17
    use AuthorizesRequests, DispatchesJobs, ValidatesRequests;
18
19
    protected $page;
20
21
    /**
22
     * Create a new controller instance.
23
     *
24
     * @return void
25
     */
26
    public function __construct(Page $page)
27
    {
28
        $this->page = $page;
29
    }
30
31
    /**
32
     * Show the dashboard -> menus index.
33
     *
34
     * @return \Illuminate\View\View
35
     */
36
    public function index()
37
    {
38
        $pages = $this->page->get();
39
        
40
        return view('chuckcms::backend.menus.index', compact('pages'));
41
    }
42
43
    public function createnewmenu()
44
    {
45
46
        $menu = new Menus();
47
        $menu->name = request()->input("menuname");
48
        $menu->save();
49
        return json_encode(array("resp" => $menu->id));
50
    }
51
52
    public function deleteitemmenu()
53
    {
54
        $menuitem = MenuItems::find(request()->input("id"));
55
56
        $menuitem->delete();
57
    }
58
59
    public function deletemenug()
60
    {
61
        $menus = new MenuItems();
62
        $getall = $menus->getall(request()->input("id"));
63
        if (count($getall) == 0) {
64
            $menudelete = Menus::find(request()->input("id"));
65
            $menudelete->delete();
66
67
            return json_encode(array("resp" => "you delete this item"));
68
        } else {
69
            return json_encode(array("resp" => "You have to delete all items first", "error" => 1));
70
71
        }
72
    }
73
74
    public function updateitem()
75
    {
76
        $arraydata = request()->input("arraydata");
77
        if (is_array($arraydata)) {
78
            foreach ($arraydata as $value) {
79
                $menuitem = MenuItems::find($value['id']);
80
                $menuitem->label = $value['label'];
81
                $menuitem->link = $value['link'];
82
                $menuitem->class = $value['class'];
83
                $menuitem->save();
84
            }
85
        } else {
86
            $menuitem = MenuItems::find(request()->input("id"));
87
            $menuitem->label = request()->input("label");
88
            $menuitem->link = request()->input("url");
89
            $menuitem->class = request()->input("clases");
90
            $menuitem->save();
91
        }
92
    }
93
94
    public function addcustommenu()
95
    {
96
97
        $menuitem = new MenuItems();
98
        $menuitem->label = request()->input("labelmenu");
99
        $menuitem->link = request()->input("linkmenu");
100
        $menuitem->menu = request()->input("idmenu");
101
        $menuitem->sort = MenuItems::getNextSortRoot(request()->input("idmenu"));
102
        $menuitem->save();
103
104
    }
105
106
    public function addpagemenu()
107
    {
108
109
        $menuitem = new MenuItems();
110
        $menuitem->label = request()->input("labelmenu");
111
        $menuitem->link = 'page:'.request()->input("linkmenu");
112
        $menuitem->menu = request()->input("idmenu");
113
        $menuitem->sort = MenuItems::getNextSortRoot(request()->input("idmenu"));
114
        $menuitem->save();
115
116
    }
117
118
    public function generatemenucontrol()
119
    {
120
        $menu = Menus::find(request()->input("idmenu"));
121
        $menu->name = request()->input("menuname");
122
        $menu->save();
123
        if (is_array(request()->input("arraydata"))) {
124
            foreach (request()->input("arraydata") as $value) {
125
126
                $menuitem = MenuItems::find($value["id"]);
127
                $menuitem->parent = $value["parent"];
128
                $menuitem->sort = $value["sort"];
129
                $menuitem->depth = $value["depth"];
130
                $menuitem->save();
131
            }
132
        }
133
        echo json_encode(array("resp" => 1));
134
135
    }
136
}
137