diff --git a/src/views/app.js b/src/views/app.js index e5c4856bd..5b1efe309 100644 --- a/src/views/app.js +++ b/src/views/app.js @@ -34,7 +34,7 @@ // }); // }; -angular.module('Application').controller('AppController', ['$scope', '$location', '$timeout', 'Client', function ($scope, $location, $timeout, Client) { +angular.module('Application').controller('AppController', ['$scope', '$location', '$timeout', '$interval', 'Client', function ($scope, $location, $timeout, $interval, Client) { Client.onReady(function () { if (!Client.getUserInfo().admin) $location.path('/'); }); var appId = $location.path().slice('/app/'.length); @@ -223,7 +223,7 @@ angular.module('Application').controller('AppController', ['$scope', '$location' $scope.location.success = true; $scope.location.busy = false; - trackAppTask(); + refreshApp(); }); } }; @@ -329,7 +329,7 @@ angular.module('Application').controller('AppController', ['$scope', '$location' $scope.resources.success = true; $scope.resources.busy = false; - trackAppTask(); + refreshApp(); }); } }; @@ -367,7 +367,7 @@ angular.module('Application').controller('AppController', ['$scope', '$location' $scope.email.success = true; $scope.email.busy = false; - trackAppTask(); + refreshApp(); }); } }; @@ -453,7 +453,7 @@ angular.module('Application').controller('AppController', ['$scope', '$location' if (error) return Client.error(error); $('#updateModal').modal('hide'); - trackAppTask(); + refreshApp(); }); } }; @@ -522,7 +522,7 @@ angular.module('Application').controller('AppController', ['$scope', '$location' backup.ackRestore = false; - trackAppTask(); + refreshApp(); }); } }; @@ -704,13 +704,9 @@ angular.module('Application').controller('AppController', ['$scope', '$location' function trackAppTask(callback) { callback = callback || function (error) { if (error) Client.error(error); }; - Client.getApp(appId, function (error, app) { - if (error) return callback(error); - else $scope.app = app; - - if ($scope.app.taskId) $timeout(trackAppTask.bind(null, callback), 2000); // not yet done - else callback(); - }); + // app will be refreshed on interval + if ($scope.app.taskId) $timeout(trackAppTask.bind(null, callback), 2000); // not yet done + else callback(); } Client.onReady(function () { @@ -720,8 +716,6 @@ angular.module('Application').controller('AppController', ['$scope', '$location' $scope.app = app; - if (app.taskId) trackAppTask(); - asyncSeries([ fetchUsers, fetchGroups, @@ -740,6 +734,8 @@ angular.module('Application').controller('AppController', ['$scope', '$location' $scope.updates.show(); $scope.ready = true; + + $interval(refreshApp, 5000); }); }); });