]> BookStack Code Mirror - bookstack/commitdiff
Hide permissions table unless custom permissions are enabled 1505/head
authorTimo Schwarzer <redacted>
Sun, 23 Jun 2019 12:29:58 +0000 (14:29 +0200)
committerTimo Schwarzer <redacted>
Sun, 23 Jun 2019 12:29:58 +0000 (14:29 +0200)
resources/assets/js/components/entity-permissions-editor.js [new file with mode: 0644]
resources/assets/js/components/index.js
resources/views/form/entity-permissions.blade.php

diff --git a/resources/assets/js/components/entity-permissions-editor.js b/resources/assets/js/components/entity-permissions-editor.js
new file mode 100644 (file)
index 0000000..a821792
--- /dev/null
@@ -0,0 +1,20 @@
+
+class EntityPermissionsEditor {
+
+  constructor(elem) {
+    this.permissionsTable = elem.querySelector('[permissions-table]');
+
+    // Handle toggle all event
+    this.restrictedCheckbox = elem.querySelector('[name=restricted]');
+    this.restrictedCheckbox.addEventListener('change', this.updateTableVisibility.bind(this));
+  }
+
+  updateTableVisibility() {
+    this.permissionsTable.style.display =
+      this.restrictedCheckbox.checked
+        ? null
+        : 'none';
+  }
+}
+
+export default EntityPermissionsEditor;
\ No newline at end of file
index c9fd630778a46694c7b7535e0742ee69ff9dade1..1c2abd5202e1b47b964cbb5d0239fddddf12019e 100644 (file)
@@ -26,6 +26,7 @@ import permissionsTable from "./permissions-table";
 import customCheckbox from "./custom-checkbox";
 import bookSort from "./book-sort";
 import settingAppColorPicker from "./setting-app-color-picker";
+import entityPermissionsEditor from "./entity-permissions-editor";
 
 const componentMapping = {
     'dropdown': dropdown,
@@ -56,6 +57,7 @@ const componentMapping = {
     'custom-checkbox': customCheckbox,
     'book-sort': bookSort,
     'setting-app-color-picker': settingAppColorPicker,
+    'entity-permissions-editor': entityPermissionsEditor
 };
 
 window.components = {};
index 6bb4b51ada62824b103fce9604b43209db24ebc4..b3e148e21c14578f9e7827c3bcd83d9b7ef9096d 100644 (file)
@@ -1,4 +1,4 @@
-<form action="{{ $model->getUrl('/permissions') }}" method="POST">
+<form action="{{ $model->getUrl('/permissions') }}" method="POST" entity-permissions-editor>
     {!! csrf_field() !!}
     <input type="hidden" name="_method" value="PUT">
 
@@ -11,7 +11,7 @@
         ])
     </div>
 
-    <table permissions-table class="table permissions-table toggle-switch-list">
+    <table permissions-table class="table permissions-table toggle-switch-list" style="{{ !$model->restricted ? 'display: none' : '' }}">
         <tr>
             <th>{{ trans('common.role') }}</th>
             <th @if($model->isA('page')) colspan="3" @else colspan="4" @endif>
Morty Proxy This is a proxified and sanitized view of the page, visit original site.