mirror of
https://github.com/gyurix1968/guacamole-client.git
synced 2025-09-06 05:07:41 +00:00
GUACAMOLE-598: Abort rendering of pages if critical data fails to load (data without which the page is non-functional).
This commit is contained in:
@@ -205,6 +205,10 @@ angular.module('auth').factory('authenticationService', ['$injector',
|
||||
else if (error.type === Error.Type.INSUFFICIENT_CREDENTIALS)
|
||||
$rootScope.$broadcast('guacInsufficientCredentials', parameters, error);
|
||||
|
||||
// Abort rendering of page if an internal error occurs
|
||||
else if (error.type === Error.Type.INTERNAL_ERROR)
|
||||
$rootScope.$broadcast('guacFatalPageError', error);
|
||||
|
||||
// Authentication failed
|
||||
throw error;
|
||||
|
||||
|
@@ -222,7 +222,7 @@ angular.module('groupList').directive('guacGroupList', [function guacGroupList()
|
||||
});
|
||||
});
|
||||
|
||||
}, requestService.WARN);
|
||||
}, requestService.DIE);
|
||||
|
||||
}
|
||||
|
||||
|
@@ -127,6 +127,6 @@ angular.module('home').controller('homeController', ['$scope', '$injector',
|
||||
)
|
||||
.then(function rootGroupsRetrieved(rootConnectionGroups) {
|
||||
$scope.rootConnectionGroups = rootConnectionGroups;
|
||||
}, requestService.WARN);
|
||||
}, requestService.DIE);
|
||||
|
||||
}]);
|
||||
|
@@ -287,7 +287,7 @@ angular.module('manage').controller('manageConnectionController', ['$scope', '$i
|
||||
PermissionSet.hasConnectionPermission,
|
||||
identifier);
|
||||
|
||||
}, requestService.WARN);
|
||||
}, requestService.DIE);
|
||||
|
||||
// Get history date format
|
||||
$translate('MANAGE_CONNECTION.FORMAT_HISTORY_START').then(function historyDateFormatReceived(historyDateFormat) {
|
||||
|
@@ -245,7 +245,7 @@ angular.module('manage').controller('manageConnectionGroupController', ['$scope'
|
||||
PermissionSet.hasConnectionPermission,
|
||||
identifier);
|
||||
|
||||
}, requestService.WARN);
|
||||
}, requestService.DIE);
|
||||
|
||||
/**
|
||||
* Cancels all pending edits, returning to the main list of connections
|
||||
|
@@ -277,7 +277,7 @@ angular.module('manage').controller('manageSharingProfileController', ['$scope',
|
||||
PermissionSet.hasConnectionPermission,
|
||||
identifier);
|
||||
|
||||
}, requestService.WARN);
|
||||
}, requestService.DIE);
|
||||
|
||||
/**
|
||||
* @borrows Protocol.getNamespace
|
||||
|
@@ -335,7 +335,7 @@ angular.module('manage').controller('manageUserController', ['$scope', '$injecto
|
||||
|
||||
});
|
||||
|
||||
}, requestService.WARN);
|
||||
}, requestService.DIE);
|
||||
|
||||
/**
|
||||
* Returns the URL for the page which manages the user account currently
|
||||
|
@@ -348,7 +348,7 @@ angular.module('manage').directive('connectionPermissionEditor', ['$injector',
|
||||
|
||||
});
|
||||
|
||||
}, requestService.WARN);
|
||||
}, requestService.DIE);
|
||||
|
||||
/**
|
||||
* Updates the permissionsAdded and permissionsRemoved permission sets
|
||||
|
@@ -147,7 +147,7 @@ angular.module('manage').directive('systemPermissionEditor', ['$injector',
|
||||
)
|
||||
.then(function permissionsReceived(permissions) {
|
||||
$scope.permissions = permissions;
|
||||
}, requestService.WARN);
|
||||
}, requestService.DIE);
|
||||
|
||||
/**
|
||||
* Returns whether the current user has permission to change the system
|
||||
|
@@ -111,7 +111,7 @@ angular.module('navigation').directive('guacUserMenu', [function guacUserMenu()
|
||||
var email = user.attributes[User.Attributes.EMAIL_ADDRESS];
|
||||
$scope.userURL = email ? 'mailto:' + email : null;
|
||||
|
||||
}, requestService.WARN);
|
||||
}, requestService.DIE);
|
||||
|
||||
/**
|
||||
* The available main pages for the current user.
|
||||
|
@@ -172,7 +172,7 @@ angular.module('navigation').factory('userPageService', ['$injector',
|
||||
})
|
||||
.then(function rootConnectionGroupsPermissionsRetrieved(data) {
|
||||
deferred.resolve(generateHomePage(data.rootGroups,data.permissionsSets));
|
||||
}, requestService.WARN);
|
||||
}, requestService.DIE);
|
||||
|
||||
return deferred.promise;
|
||||
|
||||
@@ -336,7 +336,7 @@ angular.module('navigation').factory('userPageService', ['$injector',
|
||||
// Resolve promise using settings pages derived from permissions
|
||||
.then(function permissionsRetrieved(permissions) {
|
||||
deferred.resolve(generateSettingsPages(permissions));
|
||||
}, requestService.WARN);
|
||||
}, requestService.DIE);
|
||||
|
||||
return deferred.promise;
|
||||
|
||||
@@ -417,7 +417,7 @@ angular.module('navigation').factory('userPageService', ['$injector',
|
||||
.then(function rootConnectionGroupsRetrieved(retrievedRootGroups) {
|
||||
rootGroups = retrievedRootGroups;
|
||||
resolveMainPages();
|
||||
}, requestService.WARN);
|
||||
}, requestService.DIE);
|
||||
|
||||
// Retrieve current permissions
|
||||
dataSourceService.apply(
|
||||
@@ -430,7 +430,7 @@ angular.module('navigation').factory('userPageService', ['$injector',
|
||||
.then(function permissionsRetrieved(retrievedPermissions) {
|
||||
permissions = retrievedPermissions;
|
||||
resolveMainPages();
|
||||
}, requestService.WARN);
|
||||
}, requestService.DIE);
|
||||
|
||||
return deferred.promise;
|
||||
|
||||
|
@@ -178,7 +178,7 @@ angular.module('settings').directive('guacSettingsConnectionHistory', [function
|
||||
$scope.historyEntryWrappers.push(new ConnectionHistoryEntryWrapper(historyEntry));
|
||||
});
|
||||
|
||||
}, requestService.WARN);
|
||||
}, requestService.DIE);
|
||||
|
||||
};
|
||||
|
||||
|
@@ -415,9 +415,9 @@ angular.module('settings').directive('guacSettingsConnections', [function guacSe
|
||||
)
|
||||
.then(function connectionGroupsReceived(rootGroups) {
|
||||
$scope.rootGroups = rootGroups;
|
||||
}, requestService.WARN);
|
||||
}, requestService.DIE);
|
||||
|
||||
}, requestService.WARN); // end retrieve permissions
|
||||
}, requestService.DIE); // end retrieve permissions
|
||||
|
||||
}]
|
||||
};
|
||||
|
@@ -178,7 +178,7 @@ angular.module('settings').directive('guacSettingsPreferences', [function guacSe
|
||||
value: languages[key]
|
||||
};
|
||||
});
|
||||
}, requestService.WARN);
|
||||
}, requestService.DIE);
|
||||
|
||||
// Retrieve current permissions
|
||||
permissionService.getEffectivePermissions(dataSource, username)
|
||||
|
@@ -222,7 +222,7 @@ angular.module('settings').directive('guacSettingsSessions', [function guacSetti
|
||||
// Attempt to produce wrapped list of active connections
|
||||
wrapAllActiveConnections();
|
||||
|
||||
}, requestService.WARN);
|
||||
}, requestService.DIE);
|
||||
|
||||
// Query active sessions
|
||||
dataSourceService.apply(
|
||||
@@ -237,7 +237,7 @@ angular.module('settings').directive('guacSettingsSessions', [function guacSetti
|
||||
// Attempt to produce wrapped list of active connections
|
||||
wrapAllActiveConnections();
|
||||
|
||||
}, requestService.WARN);
|
||||
}, requestService.DIE);
|
||||
|
||||
// Get session date format
|
||||
$translate('SETTINGS_SESSIONS.FORMAT_STARTDATE').then(function sessionDateFormatReceived(retrievedSessionDateFormat) {
|
||||
|
@@ -275,9 +275,9 @@ angular.module('settings').directive('guacSettingsUsers', [function guacSettings
|
||||
});
|
||||
});
|
||||
|
||||
}, requestService.WARN);
|
||||
}, requestService.DIE);
|
||||
|
||||
}, requestService.WARN);
|
||||
}, requestService.DIE);
|
||||
|
||||
}]
|
||||
};
|
||||
|
Reference in New Issue
Block a user