diff --git a/guacamole/src/main/webapp/app/home/controllers/homeController.js b/guacamole/src/main/webapp/app/home/controllers/homeController.js index 7203f8e0c..d4f85318b 100644 --- a/guacamole/src/main/webapp/app/home/controllers/homeController.js +++ b/guacamole/src/main/webapp/app/home/controllers/homeController.js @@ -40,10 +40,7 @@ angular.module('home').controller('homeController', ['$scope', '$injector', $scope.recentConnections = []; // Set status to loading until we have all the connections and groups loaded - $scope.showStatus({ - title : 'status.loadingTitle', - text : 'status.loadingText' - }); + $scope.loading = true; /* Fetch all connections and groups, then find which recent connections * still refer to valid connections and groups. @@ -83,7 +80,7 @@ angular.module('home').controller('homeController', ['$scope', '$injector', } }); - $scope.showStatus(false); + $scope.loading = false; }); /** diff --git a/guacamole/src/main/webapp/app/home/templates/home.html b/guacamole/src/main/webapp/app/home/templates/home.html index 5a5ac8346..12857509e 100644 --- a/guacamole/src/main/webapp/app/home/templates/home.html +++ b/guacamole/src/main/webapp/app/home/templates/home.html @@ -72,7 +72,7 @@

{{'home.allConnections' | translate}}

-
+
\ No newline at end of file diff --git a/guacamole/src/main/webapp/app/index/styles/status.css b/guacamole/src/main/webapp/app/index/styles/status.css index bdd64dc47..9242594b7 100644 --- a/guacamole/src/main/webapp/app/index/styles/status.css +++ b/guacamole/src/main/webapp/app/index/styles/status.css @@ -109,3 +109,14 @@ .shown .status { visibility: visible; } + +.loading { + background-image: url(images/spinner.gif); + background-position: center; + background-repeat: no-repeat; + min-height: 200px; +} + +.loading * { + visibility: hidden; +} diff --git a/guacamole/src/main/webapp/app/manage/controllers/manageController.js b/guacamole/src/main/webapp/app/manage/controllers/manageController.js index 891a0a56f..28bed857b 100644 --- a/guacamole/src/main/webapp/app/manage/controllers/manageController.js +++ b/guacamole/src/main/webapp/app/manage/controllers/manageController.js @@ -36,10 +36,8 @@ angular.module('manage').controller('manageController', ['$scope', '$injector', var userService = $injector.get('userService'); // Set status to loading until we have all the connections, groups, and users have loaded - $scope.showStatus({ - title : 'status.loadingTitle', - text : 'status.loadingText' - }); + $scope.loadingUsers = true; + $scope.loadingConnections = true; // All the connections and connection groups in root $scope.connectionsAndGroups = []; @@ -47,15 +45,6 @@ angular.module('manage').controller('manageController', ['$scope', '$injector', // All users that the current user has permission to edit $scope.users = []; - // Hide the status message once users, groups, and connections have fully loaded - var usersLoaded = false; - var connectionsAndGroupsLoaded = false; - function checkLoadStatus() { - if(usersLoaded && connectionsAndGroupsLoaded) { - $scope.showStatus(false); - } - } - $scope.basicPermissionsLoaded.then(function basicPermissionsHaveBeenLoaded() { connectionGroupService.getAllGroupsAndConnections([], undefined, true, true).then(function filterConnectionsAndGroups(rootGroupList) { $scope.rootGroup = rootGroupList[0]; @@ -73,8 +62,7 @@ angular.module('manage').controller('manageController', ['$scope', '$injector', ); } - connectionsAndGroupsLoaded = true; - checkLoadStatus(); + $scope.loadingConnections = false; }); userDAO.getUsers().success(function filterEditableUsers(users) { @@ -89,8 +77,7 @@ angular.module('manage').controller('manageController', ['$scope', '$injector', ); } - usersLoaded = true; - checkLoadStatus(); + $scope.loadingUsers = false; }); }); diff --git a/guacamole/src/main/webapp/app/manage/templates/manage.html b/guacamole/src/main/webapp/app/manage/templates/manage.html index cdbdbea15..f72142c25 100644 --- a/guacamole/src/main/webapp/app/manage/templates/manage.html +++ b/guacamole/src/main/webapp/app/manage/templates/manage.html @@ -62,7 +62,7 @@ THE SOFTWARE. -
+
@@ -84,7 +84,7 @@ THE SOFTWARE.
-
+
diff --git a/guacamole/src/main/webapp/images/spinner.gif b/guacamole/src/main/webapp/images/spinner.gif new file mode 100644 index 000000000..48f9928b5 Binary files /dev/null and b/guacamole/src/main/webapp/images/spinner.gif differ diff --git a/guacamole/src/main/webapp/translations/en_US.json b/guacamole/src/main/webapp/translations/en_US.json index df3471756..c1b90caac 100644 --- a/guacamole/src/main/webapp/translations/en_US.json +++ b/guacamole/src/main/webapp/translations/en_US.json @@ -3,11 +3,6 @@ "title" : "Guacamole ${project.version}" }, - "status" : { - "loadingTitle" : "Loading", - "loadingText" : "Guacamole is loading; please wait..." - }, - "login": { "loginError" : "Invalid Login", "username" : "Username",