Always poll for app status updates when an app configure view is open
This commit is contained in:
+11
-15
@@ -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);
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user