Skip to content

Commit

Permalink
update button behaviour change
Browse files Browse the repository at this point in the history
The "update applications" button in App View now automatically starts
updating applications, without requiring user to click "Update" on every
single app that needs to be updated.
  • Loading branch information
Domenico Iezzi committed Nov 8, 2017
1 parent 50d0a67 commit c1d5289
Show file tree
Hide file tree
Showing 2 changed files with 22 additions and 26 deletions.
41 changes: 20 additions & 21 deletions playmaker/static/app.module.js
Original file line number Diff line number Diff line change
Expand Up @@ -85,6 +85,24 @@ app.component('appList', {
ctrl.mobile = global.mobile;
ctrl.baseUrl = $location.protocol() + '://' + $location.host();

var updateApp = function(app) {
app.updating = true;
api.download(app.docId, function(data) {
if (data === 'err' || data.status === 'ERROR') {
global.addAlert('danger', 'Unable to update ' + app.docId);
app.updating = false;
return;
}
if (data.message.success.length === 0) {
global.addAlert('danger', 'Unable to update ' + app.docId);
app.updating = false;
return;
}
app.versionCode = data.message.success[0].versionCode;
app.updating = false;
});
};

ctrl.check = function() {
global.addAlert('info', 'Checking for updates');
api.check(function(data) {
Expand All @@ -96,37 +114,19 @@ app.component('appList', {
global.addAlert('success', 'All apps are up-to-date!');
}
if (data.status === 'SUCCESS' && data.message.length > 0) {
global.addAlert('info', data.message.length.toString() + ' apps must be updated');
global.addAlert('Updating ', data.message.length.toString() + ' apps');

data.message.forEach(function(newApp) {
var oldAppIndex = ctrl.apps.findIndex(function(elem) {
return elem.docId === newApp;
});
if (oldAppIndex === -1) return;
ctrl.apps[oldAppIndex].needsUpdate = true;
updateApp(ctrl.apps[oldAppIndex]);
});
}
});
};

ctrl.updateApp = function(app) {
app.needsUpdate = false;
app.updating = true;
api.download(app.docId, function(data) {
if (data === 'err' || data.status === 'ERROR') {
global.addAlert('danger', 'Unable to update ' + app.docId);
app.updating = false;
return;
}
if (data.message.success.length === 0) {
global.addAlert('danger', 'Unable to update ' + app.docId);
app.updating = false;
return;
}
app.versionCode = data.message.success[0].versionCode;
app.updating = false;
});
};

ctrl.delete = function(app) {
api.remove(app.docId, function(data) {
Expand Down Expand Up @@ -182,7 +182,6 @@ app.component('appList', {
a.formattedSize = a.installationSize / (1024*1024);
a.formattedSize = a.formattedSize.toFixed(2);
a.updating = false;
a.needsUpdate = false;
return a;
});
});
Expand Down
7 changes: 2 additions & 5 deletions playmaker/views/app.html
Original file line number Diff line number Diff line change
Expand Up @@ -51,11 +51,8 @@
</div><!-- progress -->
</div><!-- apk-progress -->
<div ng-hide="app.updating" class="apk-buttons">
<a ng-disabled="!app.needsUpdate" ng-click="$ctrl.updateApp(app)"
ng-class=
"{'btn btn-raised btn-primary': app.needsUpdate, 'btn btn-default': !app.needsUpdate}"
type="button">update</a> <a ng-click="$ctrl.delete(app)" class=
"btn btn-raised btn-danger pull-right"> delete</a>
<a ng-click="$ctrl.delete(app)" class=
"btn btn-raised btn-danger"> delete</a>
</div>
</div><!-- panel -->
</div><!-- main -->
Expand Down

0 comments on commit c1d5289

Please sign in to comment.