From 5c57c7cff56eb5f10c64312b73b9d47b54df571b Mon Sep 17 00:00:00 2001 From: Marcus Efraimsson Date: Mon, 30 Apr 2018 15:38:46 +0200 Subject: [PATCH] dashboard: show save as button if can edit and has edit permission to folders --- public/app/core/services/context_srv.ts | 3 +++ public/app/features/dashboard/settings/settings.ts | 2 +- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/public/app/core/services/context_srv.ts b/public/app/core/services/context_srv.ts index 5a879895267..be8a0af7b7b 100644 --- a/public/app/core/services/context_srv.ts +++ b/public/app/core/services/context_srv.ts @@ -11,6 +11,7 @@ export class User { timezone: string; helpFlags1: number; lightTheme: boolean; + hasEditPermissionInFolders: boolean; constructor() { if (config.bootData.user) { @@ -28,6 +29,7 @@ export class ContextSrv { isEditor: any; sidemenu: any; sidemenuSmallBreakpoint = false; + hasEditPermissionInFolders: boolean; constructor() { this.sidemenu = store.getBool('grafana.sidemenu', true); @@ -44,6 +46,7 @@ export class ContextSrv { this.isSignedIn = this.user.isSignedIn; this.isGrafanaAdmin = this.user.isGrafanaAdmin; this.isEditor = this.hasRole('Editor') || this.hasRole('Admin'); + this.hasEditPermissionInFolders = this.user.hasEditPermissionInFolders; } hasRole(role) { diff --git a/public/app/features/dashboard/settings/settings.ts b/public/app/features/dashboard/settings/settings.ts index e9d5c6180be..68fd20a3b91 100755 --- a/public/app/features/dashboard/settings/settings.ts +++ b/public/app/features/dashboard/settings/settings.ts @@ -30,7 +30,7 @@ export class SettingsCtrl { }); }); - this.canSaveAs = contextSrv.isEditor; + this.canSaveAs = this.dashboard.meta.canEdit && contextSrv.hasEditPermissionInFolders; this.canSave = this.dashboard.meta.canSave; this.canDelete = this.dashboard.meta.canSave;