]> BookStack Code Mirror - bookstack/blob - resources/views/settings/roles/form.blade.php
Code cleanup, bug squashing
[bookstack] / resources / views / settings / roles / form.blade.php
1 {!! csrf_field() !!}
2
3 <div class="card content-wrap">
4     <h1 class="list-heading">{{ $title }}</h1>
5
6     <div class="setting-list">
7
8         <div class="grid half">
9             <div>
10                 <label class="setting-list-label">{{ trans('settings.role_details') }}</label>
11             </div>
12             <div>
13                 <div class="form-group">
14                     <label for="name">{{ trans('settings.role_name') }}</label>
15                     @include('form.text', ['name' => 'display_name'])
16                 </div>
17                 <div class="form-group">
18                     <label for="name">{{ trans('settings.role_desc') }}</label>
19                     @include('form.text', ['name' => 'description'])
20                 </div>
21
22                 @if(config('auth.method') === 'ldap' || config('auth.method') === 'saml2')
23                     <div class="form-group">
24                         <label for="name">{{ trans('settings.role_external_auth_id') }}</label>
25                         @include('form.text', ['name' => 'external_auth_id'])
26                     </div>
27                 @endif
28             </div>
29         </div>
30
31         <div permissions-table>
32             <label class="setting-list-label">{{ trans('settings.role_system') }}</label>
33             <a href="#" permissions-table-toggle-all class="text-small text-primary">{{ trans('common.toggle_all') }}</a>
34
35             <div class="toggle-switch-list grid half mt-m">
36                 <div>
37                     <div>@include('settings.roles.checkbox', ['permission' => 'restrictions-manage-all', 'label' => trans('settings.role_manage_entity_permissions')])</div>
38                     <div>@include('settings.roles.checkbox', ['permission' => 'restrictions-manage-own', 'label' => trans('settings.role_manage_own_entity_permissions')])</div>
39                     <div>@include('settings.roles.checkbox', ['permission' => 'templates-manage', 'label' => trans('settings.role_manage_page_templates')])</div>
40                     <div>@include('settings.roles.checkbox', ['permission' => 'access-api', 'label' => trans('settings.role_access_api')])</div>
41                 </div>
42                 <div>
43                     <div>@include('settings.roles.checkbox', ['permission' => 'settings-manage', 'label' => trans('settings.role_manage_settings')])</div>
44                     <div>@include('settings.roles.checkbox', ['permission' => 'users-manage', 'label' => trans('settings.role_manage_users')])</div>
45                     <div>@include('settings.roles.checkbox', ['permission' => 'user-roles-manage', 'label' => trans('settings.role_manage_roles')])</div>
46                     <p class="text-warn text-small mt-s mb-none">{{ trans('settings.roles_system_warning') }}</p>
47                 </div>
48             </div>
49         </div>
50
51         <div>
52             <label class="setting-list-label">{{ trans('settings.role_asset') }}</label>
53             <p>{{ trans('settings.role_asset_desc') }}</p>
54
55             @if (isset($role) && $role->system_name === 'admin')
56                 <p class="text-warn">{{ trans('settings.role_asset_admins') }}</p>
57             @endif
58
59             <table permissions-table class="table toggle-switch-list compact permissions-table">
60                 <tr>
61                     <th width="20%">
62                         <a href="#" permissions-table-toggle-all class="text-small text-primary">{{ trans('common.toggle_all') }}</a>
63                     </th>
64                     <th width="20%" permissions-table-toggle-all-in-column>{{ trans('common.create') }}</th>
65                     <th width="20%" permissions-table-toggle-all-in-column>{{ trans('common.view') }}</th>
66                     <th width="20%" permissions-table-toggle-all-in-column>{{ trans('common.edit') }}</th>
67                     <th width="20%" permissions-table-toggle-all-in-column>{{ trans('common.delete') }}</th>
68                 </tr>
69                 <tr>
70                     <td>
71                         <div>{{ trans('entities.shelves_long') }}</div>
72                         <a href="#" permissions-table-toggle-all-in-row class="text-small text-primary">{{ trans('common.toggle_all') }}</a>
73                     </td>
74                     <td>
75                         @include('settings.roles.checkbox', ['permission' => 'bookshelf-create-all', 'label' => trans('settings.role_all')])
76                     </td>
77                     <td>
78                         @include('settings.roles.checkbox', ['permission' => 'bookshelf-view-own', 'label' => trans('settings.role_own')])
79                         <br>
80                         @include('settings.roles.checkbox', ['permission' => 'bookshelf-view-all', 'label' => trans('settings.role_all')])
81                     </td>
82                     <td>
83                         @include('settings.roles.checkbox', ['permission' => 'bookshelf-update-own', 'label' => trans('settings.role_own')])
84                         <br>
85                         @include('settings.roles.checkbox', ['permission' => 'bookshelf-update-all', 'label' => trans('settings.role_all')])
86                     </td>
87                     <td>
88                         @include('settings.roles.checkbox', ['permission' => 'bookshelf-delete-own', 'label' => trans('settings.role_own')])
89                         <br>
90                         @include('settings.roles.checkbox', ['permission' => 'bookshelf-delete-all', 'label' => trans('settings.role_all')])
91                     </td>
92                 </tr>
93                 <tr>
94                     <td>
95                         <div>{{ trans('entities.books') }}</div>
96                         <a href="#" permissions-table-toggle-all-in-row class="text-small text-primary">{{ trans('common.toggle_all') }}</a>
97                     </td>
98                     <td>
99                         @include('settings.roles.checkbox', ['permission' => 'book-create-all', 'label' => trans('settings.role_all')])
100                     </td>
101                     <td>
102                         @include('settings.roles.checkbox', ['permission' => 'book-view-own', 'label' => trans('settings.role_own')])
103                         <br>
104                         @include('settings.roles.checkbox', ['permission' => 'book-view-all', 'label' => trans('settings.role_all')])
105                     </td>
106                     <td>
107                         @include('settings.roles.checkbox', ['permission' => 'book-update-own', 'label' => trans('settings.role_own')])
108                         <br>
109                         @include('settings.roles.checkbox', ['permission' => 'book-update-all', 'label' => trans('settings.role_all')])
110                     </td>
111                     <td>
112                         @include('settings.roles.checkbox', ['permission' => 'book-delete-own', 'label' => trans('settings.role_own')])
113                         <br>
114                         @include('settings.roles.checkbox', ['permission' => 'book-delete-all', 'label' => trans('settings.role_all')])
115                     </td>
116                 </tr>
117                 <tr>
118                     <td>
119                         <div>{{ trans('entities.chapters') }}</div>
120                         <a href="#" permissions-table-toggle-all-in-row class="text-small text-primary">{{ trans('common.toggle_all') }}</a>
121                     </td>
122                     <td>
123                         @include('settings.roles.checkbox', ['permission' => 'chapter-create-own', 'label' => trans('settings.role_own')])
124                         <br>
125                         @include('settings.roles.checkbox', ['permission' => 'chapter-create-all', 'label' => trans('settings.role_all')])
126                     </td>
127                     <td>
128                         @include('settings.roles.checkbox', ['permission' => 'chapter-view-own', 'label' => trans('settings.role_own')])
129                         <br>
130                         @include('settings.roles.checkbox', ['permission' => 'chapter-view-all', 'label' => trans('settings.role_all')])
131                     </td>
132                     <td>
133                         @include('settings.roles.checkbox', ['permission' => 'chapter-update-own', 'label' => trans('settings.role_own')])
134                         <br>
135                         @include('settings.roles.checkbox', ['permission' => 'chapter-update-all', 'label' => trans('settings.role_all')])
136                     </td>
137                     <td>
138                         @include('settings.roles.checkbox', ['permission' => 'chapter-delete-own', 'label' => trans('settings.role_own')])
139                         <br>
140                         @include('settings.roles.checkbox', ['permission' => 'chapter-delete-all', 'label' => trans('settings.role_all')])
141                     </td>
142                 </tr>
143                 <tr>
144                     <td>
145                         <div>{{ trans('entities.pages') }}</div>
146                         <a href="#" permissions-table-toggle-all-in-row class="text-small text-primary">{{ trans('common.toggle_all') }}</a>
147                     </td>
148                     <td>
149                         @include('settings.roles.checkbox', ['permission' => 'page-create-own', 'label' => trans('settings.role_own')])
150                         <br>
151                         @include('settings.roles.checkbox', ['permission' => 'page-create-all', 'label' => trans('settings.role_all')])
152                     </td>
153                     <td>
154                         @include('settings.roles.checkbox', ['permission' => 'page-view-own', 'label' => trans('settings.role_own')])
155                         <br>
156                         @include('settings.roles.checkbox', ['permission' => 'page-view-all', 'label' => trans('settings.role_all')])
157                     </td>
158                     <td>
159                         @include('settings.roles.checkbox', ['permission' => 'page-update-own', 'label' => trans('settings.role_own')])
160                         <br>
161                         @include('settings.roles.checkbox', ['permission' => 'page-update-all', 'label' => trans('settings.role_all')])
162                     </td>
163                     <td>
164                         @include('settings.roles.checkbox', ['permission' => 'page-delete-own', 'label' => trans('settings.role_own')])
165                         <br>
166                         @include('settings.roles.checkbox', ['permission' => 'page-delete-all', 'label' => trans('settings.role_all')])
167                     </td>
168                 </tr>
169                 <tr>
170                     <td>
171                         <div>{{ trans('entities.images') }}</div>
172                         <a href="#" permissions-table-toggle-all-in-row class="text-small text-primary">{{ trans('common.toggle_all') }}</a>
173                     </td>
174                     <td>@include('settings.roles.checkbox', ['permission' => 'image-create-all', 'label' => ''])</td>
175                     <td style="line-height:1.2;"><small class="faded">{{ trans('settings.role_controlled_by_asset') }}</small></td>
176                     <td>
177                         @include('settings.roles.checkbox', ['permission' => 'image-update-own', 'label' => trans('settings.role_own')])
178                         <br>
179                         @include('settings.roles.checkbox', ['permission' => 'image-update-all', 'label' => trans('settings.role_all')])
180                     </td>
181                     <td>
182                         @include('settings.roles.checkbox', ['permission' => 'image-delete-own', 'label' => trans('settings.role_own')])
183                         <br>
184                         @include('settings.roles.checkbox', ['permission' => 'image-delete-all', 'label' => trans('settings.role_all')])
185                     </td>
186                 </tr>
187                 <tr>
188                     <td>
189                         <div>{{ trans('entities.attachments') }}</div>
190                         <a href="#" permissions-table-toggle-all-in-row class="text-small text-primary">{{ trans('common.toggle_all') }}</a>
191                     </td>
192                     <td>@include('settings.roles.checkbox', ['permission' => 'attachment-create-all', 'label' => ''])</td>
193                     <td style="line-height:1.2;"><small class="faded">{{ trans('settings.role_controlled_by_asset') }}</small></td>
194                     <td>
195                         @include('settings.roles.checkbox', ['permission' => 'attachment-update-own', 'label' => trans('settings.role_own')])
196                         <br>
197                         @include('settings.roles.checkbox', ['permission' => 'attachment-update-all', 'label' => trans('settings.role_all')])
198                     </td>
199                     <td>
200                         @include('settings.roles.checkbox', ['permission' => 'attachment-delete-own', 'label' => trans('settings.role_own')])
201                         <br>
202                         @include('settings.roles.checkbox', ['permission' => 'attachment-delete-all', 'label' => trans('settings.role_all')])
203                     </td>
204                 </tr>
205                 <tr>
206                     <td>
207                         <div>{{ trans('entities.comments') }}</div>
208                         <a href="#" permissions-table-toggle-all-in-row class="text-small text-primary">{{ trans('common.toggle_all') }}</a>
209                     </td>
210                     <td>@include('settings.roles.checkbox', ['permission' => 'comment-create-all', 'label' => ''])</td>
211                     <td style="line-height:1.2;"><small class="faded">{{ trans('settings.role_controlled_by_asset') }}</small></td>
212                     <td>
213                         @include('settings.roles.checkbox', ['permission' => 'comment-update-own', 'label' => trans('settings.role_own')])
214                         <br>
215                         @include('settings.roles.checkbox', ['permission' => 'comment-update-all', 'label' => trans('settings.role_all')])
216                     </td>
217                     <td>
218                         @include('settings.roles.checkbox', ['permission' => 'comment-delete-own', 'label' => trans('settings.role_own')])
219                         <br>
220                         @include('settings.roles.checkbox', ['permission' => 'comment-delete-all', 'label' => trans('settings.role_all')])
221                     </td>
222                 </tr>
223             </table>
224         </div>
225     </div>
226
227     <div class="form-group text-right">
228         <a href="{{ url("/settings/roles") }}" class="button outline">{{ trans('common.cancel') }}</a>
229         @if (isset($role) && $role->id)
230             <a href="{{ url("/settings/roles/delete/{$role->id}") }}" class="button outline">{{ trans('settings.role_delete') }}</a>
231         @endif
232         <button type="submit" class="button">{{ trans('settings.role_save') }}</button>
233     </div>
234
235 </div>
236
237 <div class="card content-wrap auto-height">
238     <h2 class="list-heading">{{ trans('settings.role_users') }}</h2>
239     @if(isset($role) && count($role->users) > 0)
240         <div class="grid third">
241             @foreach($role->users as $user)
242                 <div class="user-list-item">
243                     <div>
244                         <img class="avatar small" src="{{ $user->getAvatar(40) }}" alt="{{ $user->name }}">
245                     </div>
246                     <div>
247                         @if(userCan('users-manage') || $currentUser->id == $user->id)
248                             <a href="{{ url("/settings/users/{$user->id}") }}">
249                                 @endif
250                                 {{ $user->name }}
251                                 @if(userCan('users-manage') || $currentUser->id == $user->id)
252                             </a>
253                         @endif
254                     </div>
255                 </div>
256             @endforeach
257         </div>
258     @else
259         <p class="text-muted">
260             {{ trans('settings.role_users_none') }}
261         </p>
262     @endif
263 </div>