show sidemenu when admin user logs in the first time. #54

pull/1923/head
Anthony Woods 10 years ago
parent 7a8851c5ab
commit 8aef297e71
  1. 2
      public/app/controllers/loginCtrl.js
  2. 4
      public/app/routes/dashLoadControllers.js
  3. 14
      public/app/services/contextSrv.js

@ -14,7 +14,7 @@ function (angular, config) {
password: '',
};
contextSrv.setSideMenuState(false);
contextSrv.sidemenu = false;
$scope.googleAuthEnabled = config.googleAuthEnabled;
$scope.githubAuthEnabled = config.githubAuthEnabled;

@ -36,7 +36,9 @@ function (angular, _, kbn, moment, $) {
});
module.controller('DashFromSnapshotCtrl', function($scope, $routeParams, backendSrv) {
module.controller('DashFromSnapshotCtrl', function($scope, $routeParams, backendSrv, contextSrv) {
//don't show the sidemenu in snapshots.
contextSrv.sidemenu = false;
backendSrv.get('/api/snapshots/' + $routeParams.key).then(function(result) {
$scope.initDashboard(result, $scope);
}, function() {

@ -45,7 +45,19 @@ function (angular, _, store, config) {
this.user = new User();
this.isSignedIn = this.user.isSignedIn;
this.isGrafanaAdmin = this.user.isGrafanaAdmin;
this.sidemenu = store.getBool('grafana.sidemenu', true);
var sidemenuDefault = false;
if (this.hasRole('Admin')) {
sidemenuDefault = true;
}
this.sidemenu = store.getBool('grafana.sidemenu', sidemenuDefault);
if (this.isSignedIn && !store.exists('grafana.sidemenu')) {
// If the sidemnu has never been set before, set it to false.
// This will result in this.sidemenu and the localStorage grafana.sidemenu
// to be out of sync if the user has an admin role. But this is
// intentional and results in the user seeing the sidemenu only on
// their first login.
store.set('grafana.sidemenu', false);
}
this.isEditor = this.hasRole('Editor') || this.hasRole('Admin');
});
});

Loading…
Cancel
Save