Преглед изворни кода

dashfolders: permissions tab in dashboard settings

Daniel Lee пре 8 година
родитељ
комит
1e496ec76c

+ 13 - 1
public/app/features/dashboard/acl/acl.html

@@ -1,4 +1,4 @@
-<div>
+<div class="gf-form-group">
   <table class="filter-table gf-form-group">
     <tr ng-repeat="acl in ctrl.items" ng-class="{'gf-form-disabled': acl.inherited}">
       <td style="width: 100%;">
@@ -59,6 +59,18 @@
   </div>
 </div>
 
+<div class="empty-list-cta">
+  <div class="grafana-info-box">
+    <h5>What are Permissions?</h5>
+    <p>An Access Control List (ACL) model is used for to limit access to Dashboard Folders. A user or a Team can be assigned permissions for a folder or for a single dashboard.</p>
+    <p>The permissions that can be assigned for a folder/dashboard are:</p>
+    <p>View, Edit and Admin.</p>
+    Checkout the <a class="external-link" target="_blank" href="http://docs.grafana.org/reference/dashboard_folders/">Dashboard Folders documentation</a> for more information.
+  </div>
+</div>
+
+
+
   <!-- <br> -->
   <!-- <br> -->
   <!-- <br> -->

+ 8 - 0
public/app/features/dashboard/settings/settings.html

@@ -93,6 +93,14 @@
 	</div>
 </div>
 
+<div class="dashboard-settings__content" ng-if="ctrl.viewId === 'permissions'" >
+  <h3 class="dashboard-settings__header">Permissions</h3>
+  <dash-acl-modal ng-if="ctrl.dashboard"
+    dashboard="ctrl.dashboard"
+    meta="ctrl.dashboard.meta">
+  </dash-acl-modal>
+</div>
+
 <div class="dashboard-settings__content" ng-if="ctrl.viewId === '404'">
   <h3 class="dashboard-settings__header">Settings view not found</h3>
 

+ 8 - 0
public/app/features/dashboard/settings/settings.ts

@@ -68,6 +68,14 @@ export class SettingsCtrl {
       });
     }
 
+    if (this.dashboard.id && this.dashboard.meta.canSave) {
+      this.sections.push({
+        title: "Permissions",
+        id: "permissions",
+        icon: "fa fa-fw fa-lock"
+      });
+    }
+
     if (this.dashboard.meta.canMakeEditable) {
       this.sections.push({
         title: 'General',