1+ @extends (' layouts.admin' )
2+
3+ @push (' scripts' )
4+ <script >
5+ jQuery (document ).ready (function ($ ) {
6+ $ (document ).on (' change' , ' .acl-action-create' , function (event ) {
7+ event .preventDefault ();
8+ var data = $ (this ).data ();
9+ data .revoke = ! this .checked ;
10+ axios .put (route (' api.manage.acl.update' ), data)
11+ .then (function (response ) {
12+ console .log (response);
13+ });
14+ });
15+
16+ $ (document ).on (' change' , ' .acl-action-view' , function (event ) {
17+ event .preventDefault ();
18+ var data = $ (this ).data ();
19+ data .revoke = ! this .checked ;
20+ axios .put (route (' api.manage.acl.update' ), data)
21+ .then (function (response ) {
22+ console .log (response);
23+ });
24+ });
25+
26+ $ (document ).on (' change' , ' .acl-action-update' , function (event ) {
27+ event .preventDefault ();
28+ var data = $ (this ).data ();
29+ data .revoke = ! this .checked ;
30+ axios .put (route (' api.manage.acl.update' ), data)
31+ .then (function (response ) {
32+ console .log (response);
33+ });
34+ });
35+
36+ $ (document ).on (' change' , ' .acl-action-destroy' , function (event ) {
37+ event .preventDefault ();
38+ var data = $ (this ).data ();
39+ data .revoke = ! this .checked ;
40+ axios .put (route (' api.manage.acl.update' ), data)
41+ .then (function (response ) {
42+ console .log (response);
43+ });
44+ });
45+ });
46+ </script >
47+ @endpush
48+
49+ @section (' content' )
50+ <div class =" row justify-content-center" >
51+ <div class =" col" >
52+ @component (' components.card' )
53+ @slot (' card_title' )
54+ Manage Access Control Level
55+ @endslot
56+ @slot (' card_body' )
57+ @component (' components.table' , [' table_id' => ' acl-table' ] )
58+ @slot (' thead' )
59+ <tr >
60+ <th >Permission / Role</th >
61+ @foreach (config (' acl.roles' ) as $role )
62+ <th >
63+ {{ title_case ($role ) } }
64+ </th >
65+ @endforeach
66+ </tr >
67+ @endslot
68+
69+ @slot (' tbody' )
70+ @foreach (config (' acl.permissions' ) as $permission => $roles )
71+ <tr >
72+ <td >{{ title_case ($permission ) } } </td >
73+ @foreach (config (' acl.roles' ) as $role )
74+ <td >
75+ @include (' components.forms.checkbox' , [
76+ ' name' => ' acl[' . $role . ' ][' . $permission . ' _create]' ,
77+ ' id' => ' acl-' . $role . ' -' . $permission . ' -create' ,
78+ ' label' => ' Create' ,
79+ ' class' => ' acl-action-create' ,
80+ ' data' => [
81+ ' role' => $role ,
82+ ' permission' => $permission ,
83+ ' type' => ' create' ,
84+ ],
85+ ' checked' => role ($role )-> hasPermissionTo ($permission . ' _create' ) ? true : false ,
86+ ] )
87+
88+ @include (' components.forms.checkbox' , [
89+ ' name' => ' acl[' . $role . ' ][' . $permission . ' _view]' ,
90+ ' id' => ' acl-' . $role . ' -' . $permission . ' -view' ,
91+ ' label' => ' View' ,
92+ ' class' => ' acl-action-view' ,
93+ ' data' => [
94+ ' role' => $role ,
95+ ' permission' => $permission ,
96+ ' type' => ' view' ,
97+ ],
98+ ' checked' => role ($role )-> hasPermissionTo ($permission . ' _index' ) ? true : false ,
99+ ] )
100+
101+ @include (' components.forms.checkbox' , [
102+ ' name' => ' acl[' . $role . ' ][' . $permission . ' _update]' ,
103+ ' id' => ' acl-' . $role . ' -' . $permission . ' -update' ,
104+ ' label' => ' Update' ,
105+ ' class' => ' acl-action-update' ,
106+ ' data' => [
107+ ' role' => $role ,
108+ ' permission' => $permission ,
109+ ' type' => ' update' ,
110+ ],
111+ ' checked' => role ($role )-> hasPermissionTo ($permission . ' _update' ) ? true : false ,
112+ ] )
113+
114+ @include (' components.forms.checkbox' , [
115+ ' name' => ' acl[' . $role . ' ][' . $permission . ' _destroy]' ,
116+ ' id' => ' acl-' . $role . ' -' . $permission . ' -destroy' ,
117+ ' label' => ' Destroy' ,
118+ ' class' => ' acl-action-destroy' ,
119+ ' data' => [
120+ ' role' => $role ,
121+ ' permission' => $permission ,
122+ ' type' => ' destroy' ,
123+ ],
124+ ' checked' => role ($role )-> hasPermissionTo ($permission . ' _destroy' ) ? true : false ,
125+ ] )
126+ </td >
127+ @endforeach
128+ </tr >
129+ @endforeach
130+ @endslot
131+ @endcomponent
132+ @endslot
133+ @endcomponent
134+ </div >
135+ </div >
136+ @endsection
0 commit comments