]> BookStack Code Mirror - bookstack/blob - resources/views/form/entity-permissions-row.blade.php
1d028d7f65ae4f006ff1729086d4124d783d1105
[bookstack] / resources / views / form / entity-permissions-row.blade.php
1 {{--
2 $modelType - The type of permission model; String matching one of: user, role, fallback
3 $modelId - The ID of the permission model.
4 $modelName - The name of the permission model.
5 $modelDescription - The description of the permission model.
6 $entityType - String identifier for type of entity having permissions applied.
7 $permission - The entity permission containing the permissions.
8 $inheriting - Boolean if the current row should be marked as inheriting default permissions. Used for "Everyone Else" role.
9 --}}
10
11 <div component="permissions-table" class="item-list-row flex-container-row justify-space-between wrap">
12     <div class="gap-x-m flex-container-row items-center px-l py-m flex">
13         <div class="text-large" title="{{  $modelType === 'fallback' ? trans('entities.permissions_role_everyone_else') : trans('common.role') }}">
14             @icon($modelType === 'fallback' ? 'groups' : 'role')
15         </div>
16         <span>
17             <strong>{{ $modelName }}</strong> <br>
18             <small class="text-muted">{{ $modelDescription }}</small>
19         </span>
20         @if($modelType !== 'fallback')
21             <button type="button"
22                 class="ml-auto flex-none text-small text-primary text-button hover-underline item-list-row-toggle-all hide-under-s"
23                 refs="permissions-table@toggle-all"
24                 ><strong>{{ trans('common.toggle_all') }}</strong></button>
25         @endif
26     </div>
27     @if($modelType === 'fallback')
28         <div class="px-l flex-container-row items-center" refs="entity-permissions@everyone-inherit">
29             @include('form.custom-checkbox', [
30                 'name' => 'entity-permissions-inherit',
31                 'label' => trans('entities.permissions_inherit_defaults'),
32                 'value' => 'true',
33                 'checked' => $inheriting
34             ])
35         </div>
36     @endif
37     <div class="flex-container-row justify-space-between gap-x-xl wrap items-center">
38         <input type="hidden" name="permissions[{{ $modelType }}][{{ $modelId }}][active]"
39                @if($inheriting) disabled="disabled" @endif
40                value="true">
41         <div class="px-l">
42             @include('form.custom-checkbox', [
43                 'name' =>  'permissions[' . $modelType . '][' . $modelId . '][view]',
44                 'label' => trans('common.view'),
45                 'value' => 'true',
46                 'checked' => $permission->view,
47                 'disabled' => $inheriting
48             ])
49         </div>
50         @if($entityType !== 'page')
51             <div class="px-l">
52                 @include('form.custom-checkbox', [
53                     'name' =>  'permissions[' . $modelType . '][' . $modelId . '][create]',
54                     'label' => trans('common.create'),
55                     'value' => 'true',
56                     'checked' => $permission->create,
57                     'disabled' => $inheriting
58                 ])
59             </div>
60         @endif
61         <div class="px-l">
62             @include('form.custom-checkbox', [
63                 'name' =>  'permissions[' . $modelType . '][' . $modelId . '][update]',
64                 'label' => trans('common.update'),
65                 'value' => 'true',
66                 'checked' => $permission->update,
67                 'disabled' => $inheriting
68             ])
69         </div>
70         <div class="px-l">
71             @include('form.custom-checkbox', [
72                 'name' =>  'permissions[' . $modelType . '][' . $modelId . '][delete]',
73                 'label' => trans('common.delete'),
74                 'value' => 'true',
75                 'checked' => $permission->delete,
76                 'disabled' => $inheriting
77             ])
78         </div>
79     </div>
80     @if($modelType !== 'fallback')
81         <div class="flex-container-row items-center px-m py-s">
82             <button type="button"
83                     class="text-neg p-m icon-button"
84                     data-model-type="{{ $modelType }}"
85                     data-model-id="{{ $modelId }}"
86                     data-model-name="{{ $modelName }}"
87                     title="{{ trans('common.remove') }}">
88                 @icon('close') <span class="hide-over-m ml-xs">{{ trans('common.remove') }}</span>
89             </button>
90         </div>
91     @endif
92 </div>