mirror of
https://github.com/grafana/grafana.git
synced 2025-02-25 18:55:37 -06:00
Small improvement to dashboard loading error handling
This commit is contained in:
parent
aa724fc11e
commit
b83367063e
@ -42,6 +42,7 @@ func authDenied(c *Context) {
|
||||
return
|
||||
}
|
||||
|
||||
c.SetCookie("redirect_to", url.QueryEscape(setting.AppSubUrl+c.Req.RequestURI), 0, setting.AppSubUrl+"/")
|
||||
c.Redirect(setting.AppSubUrl + "/login")
|
||||
}
|
||||
|
||||
@ -63,13 +64,11 @@ func RoleAuth(roles ...m.RoleType) macaron.Handler {
|
||||
func Auth(options *AuthOptions) macaron.Handler {
|
||||
return func(c *Context) {
|
||||
if !c.IsGrafanaAdmin && options.ReqGrafanaAdmin {
|
||||
c.SetCookie("redirect_to", url.QueryEscape(setting.AppSubUrl+c.Req.RequestURI), 0, setting.AppSubUrl+"/")
|
||||
authDenied(c)
|
||||
return
|
||||
}
|
||||
|
||||
if !c.IsSignedIn && options.ReqSignedIn && !c.AllowAnonymous {
|
||||
c.SetCookie("redirect_to", url.QueryEscape(setting.AppSubUrl+c.Req.RequestURI), 0, setting.AppSubUrl+"/")
|
||||
authDenied(c)
|
||||
return
|
||||
}
|
||||
|
@ -12,12 +12,15 @@ function (angular, _, kbn, moment, $) {
|
||||
|
||||
module.controller('DashFromDBCtrl', function($scope, $routeParams, backendSrv) {
|
||||
|
||||
function dashboardLoadFailed(title) {
|
||||
$scope.initDashboard({meta: {}, model: {title: title}}, $scope);
|
||||
}
|
||||
|
||||
if (!$routeParams.slug) {
|
||||
backendSrv.get('/api/dashboards/home').then(function(result) {
|
||||
$scope.initDashboard(result, $scope);
|
||||
},function() {
|
||||
$scope.initDashboard({}, $scope);
|
||||
$scope.appEvent('alert-error', ['Load dashboard failed', '']);
|
||||
dashboardLoadFailed('Not found');
|
||||
});
|
||||
|
||||
return;
|
||||
@ -26,17 +29,15 @@ function (angular, _, kbn, moment, $) {
|
||||
return backendSrv.getDashboard($routeParams.slug).then(function(result) {
|
||||
$scope.initDashboard(result, $scope);
|
||||
}, function() {
|
||||
$scope.initDashboard({
|
||||
meta: {},
|
||||
model: { title: 'Not found' }
|
||||
}, $scope);
|
||||
dashboardLoadFailed('Not found');
|
||||
});
|
||||
|
||||
});
|
||||
|
||||
module.controller('DashFromSnapshotCtrl', function($scope, $routeParams, backendSrv) {
|
||||
backendSrv.get('/api/snapshots/' + $routeParams.key).then(function(result) {
|
||||
$scope.initDashboard(result, $scope);
|
||||
},function() {
|
||||
}, function() {
|
||||
$scope.initDashboard({meta: {isSnapshot: true}, model: {title: 'Snapshot not found'}}, $scope);
|
||||
});
|
||||
});
|
||||
|
Loading…
Reference in New Issue
Block a user