GUAC-586: Ensure page list tabs appear in deterministic order.

This commit is contained in:
Michael Jumper
2015-09-03 15:27:52 -07:00
parent 404909f37c
commit 9ec3ddf357
2 changed files with 12 additions and 3 deletions

View File

@@ -138,7 +138,7 @@ angular.module('navigation').directive('guacPageList', [function guacPageList()
name : name,
url : isCurrentPage ? currentURL : page.url,
className : page.className,
weight : page.weight || weight
weight : page.weight || (weight + i)
});
}

View File

@@ -53,6 +53,14 @@ angular.module('navigation').factory('userPageService', ['$injector',
url : '/'
});
/**
* The identifiers of all data sources currently available to the
* authenticated user.
*
* @type String[]
*/
var dataSources = authenticationService.getAvailableDataSources();
/**
* Returns an appropriate home page for the current user.
*
@@ -176,9 +184,10 @@ angular.module('navigation').factory('userPageService', ['$injector',
var canManageSessions = [];
// Inspect the contents of each provided permission set
angular.forEach(permissionSets, function inspectPermissions(permissions, dataSource) {
angular.forEach(dataSources, function inspectPermissions(dataSource) {
permissions = angular.copy(permissions);
// Copy permissions for current data source
var permissions = angular.copy(permissionSets[dataSource]);
// Ignore permission to update root group
PermissionSet.removeConnectionGroupPermission(permissions,