-
+
+
+
+
+
+
+
+
@@ -513,19 +524,6 @@
{{ app.message }}
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/views/app.js b/src/views/app.js
index 47dbf8ddd..4d97b5b9c 100644
--- a/src/views/app.js
+++ b/src/views/app.js
@@ -406,29 +406,36 @@ angular.module('Application').controller('AppController', ['$scope', '$location'
$scope.updates = {
busy: false,
- error: {},
- success: false,
+ busyCheck: false,
- currentEnableAutomaticUpdate: false,
enableAutomaticUpdate: false,
show: function () {
var app = $scope.app;
$scope.updates.enableAutomaticUpdate = app.enableAutomaticUpdate;
- $scope.updates.currentEnableAutomaticUpdate = app.enableAutomaticUpdate;
},
- submit: function () {
+ toggleAutomaticUpdates: function () {
$scope.updates.busy = true;
- $scope.updates.error = {};
- Client.configureApp($scope.app.id, 'automatic_update', { enable: $scope.updates.enableAutomaticUpdate }, function (error) {
+ Client.configureApp($scope.app.id, 'automatic_update', { enable: !$scope.updates.enableAutomaticUpdate }, function (error) {
if (error) return Client.error(error);
- $scope.updates.currentEnableAutomaticUpdate = $scope.updates.enableAutomaticUpdate;
- $scope.updates.success = true;
- $scope.updates.busy = false;
+ $timeout(function () {
+ $scope.updates.enableAutomaticUpdate = !$scope.updates.enableAutomaticUpdate;
+ $scope.updates.busy = false;
+ }, 1000);
+ });
+ },
+
+ check: function () {
+ $scope.updates.busyCheck = true;
+
+ Client.checkForUpdates(function (error) {
+ if (error) Client.error(error);
+
+ $scope.updates.busyCheck = false;
});
}
};
@@ -436,10 +443,8 @@ angular.module('Application').controller('AppController', ['$scope', '$location'
$scope.backups = {
busy: false,
error: {},
- success: false,
copyBackupIdDone: false,
- currentEnableBackup: false,
enableBackup: false,
backups: [],
@@ -459,14 +464,17 @@ angular.module('Application').controller('AppController', ['$scope', '$location'
Client.backupApp($scope.app.id, function (error) {
if (error) Client.error(error);
- trackAppTask();
+ trackAppTask(function (error) {
+ if (error) return Client.error(error);
+
+ $scope.backups.show();
+ });
});
},
show: function () {
var app = $scope.app;
- $scope.backups.currentEnableBackup = app.enableBackup;
$scope.backups.enableBackup = app.enableBackup;
Client.getAppBackups(app.id, function (error, backups) {
@@ -476,16 +484,17 @@ angular.module('Application').controller('AppController', ['$scope', '$location'
});
},
- submit: function () {
+ toggleAutomaticBackups: function () {
$scope.backups.busy = true;
$scope.backups.error = {};
- Client.configureApp($scope.app.id, 'automatic_backup', { enable: $scope.backups.enableBackup }, function (error) {
+ Client.configureApp($scope.app.id, 'automatic_backup', { enable: !$scope.backups.enableBackup }, function (error) {
if (error) return Client.error(error);
- $scope.backups.currentEnableBackup = $scope.backups.enableBackup;
- $scope.backups.success = true;
- $scope.backups.busy = false;
+ $timeout(function () {
+ $scope.backups.enableBackup = !$scope.backups.enableBackup;
+ $scope.backups.busy = false;
+ }, 1000);
});
},
@@ -674,12 +683,15 @@ angular.module('Application').controller('AppController', ['$scope', '$location'
});
}
- function trackAppTask() {
+ function trackAppTask(callback) {
+ callback = callback || function (error) { if (error) Client.error(error); };
+
Client.getApp(appId, function (error, app) {
- if (error) Client.error(error);
+ if (error) return callback(error);
else $scope.app = app;
- if ($scope.app.taskId) $timeout(trackAppTask, 2000); // not yet done
+ if ($scope.app.taskId) $timeout(trackAppTask.bind(null, callback), 2000); // not yet done
+ else callback();
});
}