diff --git a/pkg/api/index.go b/pkg/api/index.go index 248ebf63f0f..904a885b171 100644 --- a/pkg/api/index.go +++ b/pkg/api/index.go @@ -307,33 +307,26 @@ func (hs *HTTPServer) setIndexViewData(c *m.ReqContext) (*dtos.IndexViewData, er } } - if c.OrgRole == m.ROLE_ADMIN && c.IsGrafanaAdmin { - cfgNode.Children = append(cfgNode.Children, &dtos.NavLink{ - Divider: true, HideFromTabs: true, Id: "admin-divider", Text: "Text", - }) - } - - if c.IsGrafanaAdmin { - cfgNode.Children = append(cfgNode.Children, &dtos.NavLink{ - Text: "Server Admin", - HideFromTabs: true, - SubTitle: "Manage all users & orgs", - Id: "admin", - Icon: "gicon gicon-shield", - Url: setting.AppSubUrl + "/admin/users", - Children: []*dtos.NavLink{ - {Text: "Users", Id: "global-users", Url: setting.AppSubUrl + "/admin/users", Icon: "gicon gicon-user"}, - {Text: "Orgs", Id: "global-orgs", Url: setting.AppSubUrl + "/admin/orgs", Icon: "gicon gicon-org"}, - {Text: "Settings", Id: "server-settings", Url: setting.AppSubUrl + "/admin/settings", Icon: "gicon gicon-preferences"}, - {Text: "Stats", Id: "server-stats", Url: setting.AppSubUrl + "/admin/stats", Icon: "fa fa-fw fa-bar-chart"}, - {Text: "Style Guide", Id: "styleguide", Url: setting.AppSubUrl + "/styleguide", Icon: "fa fa-fw fa-eyedropper"}, - }, - }) - } - data.NavTree = append(data.NavTree, cfgNode) } + if c.IsGrafanaAdmin { + data.NavTree = append(data.NavTree, &dtos.NavLink{ + Text: "Server Admin", + SubTitle: "Manage all users & orgs", + HideFromTabs: true, + Id: "admin", + Icon: "gicon gicon-shield", + Url: setting.AppSubUrl + "/admin/users", + Children: []*dtos.NavLink{ + {Text: "Users", Id: "global-users", Url: setting.AppSubUrl + "/admin/users", Icon: "gicon gicon-user"}, + {Text: "Orgs", Id: "global-orgs", Url: setting.AppSubUrl + "/admin/orgs", Icon: "gicon gicon-org"}, + {Text: "Settings", Id: "server-settings", Url: setting.AppSubUrl + "/admin/settings", Icon: "gicon gicon-preferences"}, + {Text: "Stats", Id: "server-stats", Url: setting.AppSubUrl + "/admin/stats", Icon: "fa fa-fw fa-bar-chart"}, + }, + }) + } + data.NavTree = append(data.NavTree, &dtos.NavLink{ Text: "Help", SubTitle: fmt.Sprintf(`%s v%s (%s)`, setting.ApplicationName, setting.BuildVersion, setting.BuildCommit), diff --git a/public/app/features/admin/AdminEditOrgCtrl.ts b/public/app/features/admin/AdminEditOrgCtrl.ts index 60514a86392..4ce0e2366f6 100644 --- a/public/app/features/admin/AdminEditOrgCtrl.ts +++ b/public/app/features/admin/AdminEditOrgCtrl.ts @@ -2,7 +2,7 @@ export default class AdminEditOrgCtrl { /** @ngInject */ constructor($scope, $routeParams, backendSrv, $location, navModelSrv) { $scope.init = () => { - $scope.navModel = navModelSrv.getNav('cfg', 'admin', 'global-orgs', 1); + $scope.navModel = navModelSrv.getNav('admin', 'global-orgs', 0); if ($routeParams.id) { $scope.getOrg($routeParams.id); diff --git a/public/app/features/admin/AdminEditUserCtrl.ts b/public/app/features/admin/AdminEditUserCtrl.ts index bf72c1746aa..a5dcae52d50 100644 --- a/public/app/features/admin/AdminEditUserCtrl.ts +++ b/public/app/features/admin/AdminEditUserCtrl.ts @@ -6,7 +6,7 @@ export default class AdminEditUserCtrl { $scope.user = {}; $scope.newOrg = { name: '', role: 'Editor' }; $scope.permissions = {}; - $scope.navModel = navModelSrv.getNav('cfg', 'admin', 'global-users', 1); + $scope.navModel = navModelSrv.getNav('admin', 'global-users', 0); $scope.init = () => { if ($routeParams.id) { diff --git a/public/app/features/admin/AdminListOrgsCtrl.ts b/public/app/features/admin/AdminListOrgsCtrl.ts index 8783efc182c..d6ee4b33dbb 100644 --- a/public/app/features/admin/AdminListOrgsCtrl.ts +++ b/public/app/features/admin/AdminListOrgsCtrl.ts @@ -2,7 +2,7 @@ export default class AdminListOrgsCtrl { /** @ngInject */ constructor($scope, backendSrv, navModelSrv) { $scope.init = () => { - $scope.navModel = navModelSrv.getNav('cfg', 'admin', 'global-orgs', 1); + $scope.navModel = navModelSrv.getNav('admin', 'global-orgs', 0); $scope.getOrgs(); }; diff --git a/public/app/features/admin/AdminListUsersCtrl.ts b/public/app/features/admin/AdminListUsersCtrl.ts index 1b5b27a4d66..5b5321d13ce 100644 --- a/public/app/features/admin/AdminListUsersCtrl.ts +++ b/public/app/features/admin/AdminListUsersCtrl.ts @@ -10,7 +10,7 @@ export default class AdminListUsersCtrl { /** @ngInject */ constructor(private $scope, private backendSrv, navModelSrv) { - this.navModel = navModelSrv.getNav('cfg', 'admin', 'global-users', 1); + this.navModel = navModelSrv.getNav('admin', 'global-users', 0); this.query = ''; this.getUsers(); } diff --git a/public/app/features/admin/StyleGuideCtrl.ts b/public/app/features/admin/StyleGuideCtrl.ts index e38e1a3344d..6548aa09198 100644 --- a/public/app/features/admin/StyleGuideCtrl.ts +++ b/public/app/features/admin/StyleGuideCtrl.ts @@ -9,7 +9,7 @@ export default class StyleGuideCtrl { /** @ngInject */ constructor(private $routeParams, private backendSrv, navModelSrv) { - this.navModel = navModelSrv.getNav('cfg', 'admin', 'styleguide', 1); + this.navModel = navModelSrv.getNav('admin', 'styleguide', 0); this.theme = config.bootData.user.lightTheme ? 'light' : 'dark'; } diff --git a/public/app/features/admin/index.ts b/public/app/features/admin/index.ts index 7d06155b6f8..fecc04bc410 100644 --- a/public/app/features/admin/index.ts +++ b/public/app/features/admin/index.ts @@ -11,7 +11,7 @@ class AdminSettingsCtrl { /** @ngInject */ constructor($scope, backendSrv, navModelSrv) { - this.navModel = navModelSrv.getNav('cfg', 'admin', 'server-settings', 1); + this.navModel = navModelSrv.getNav('admin', 'server-settings', 0); backendSrv.get('/api/admin/settings').then(settings => { $scope.settings = settings; @@ -24,7 +24,7 @@ class AdminHomeCtrl { /** @ngInject */ constructor(navModelSrv) { - this.navModel = navModelSrv.getNav('cfg', 'admin', 1); + this.navModel = navModelSrv.getNav('admin', 0); } } diff --git a/public/app/features/org/NewOrgCtrl.ts b/public/app/features/org/NewOrgCtrl.ts index 6a8808abfac..46c12b1d5d5 100644 --- a/public/app/features/org/NewOrgCtrl.ts +++ b/public/app/features/org/NewOrgCtrl.ts @@ -4,7 +4,7 @@ import config from 'app/core/config'; export class NewOrgCtrl { /** @ngInject */ constructor($scope, $http, backendSrv, navModelSrv) { - $scope.navModel = navModelSrv.getNav('cfg', 'admin', 'global-orgs', 1); + $scope.navModel = navModelSrv.getNav('admin', 'global-orgs', 0); $scope.newOrg = { name: '' }; $scope.createOrg = () => {