diff --git a/src/views/users.html b/src/views/users.html
index 39a9007d3..7a31096e6 100644
--- a/src/views/users.html
+++ b/src/views/users.html
@@ -501,7 +501,7 @@
-
+
diff --git a/src/views/users.js b/src/views/users.js
index e10c588a8..823c892f9 100644
--- a/src/views/users.js
+++ b/src/views/users.js
@@ -67,6 +67,41 @@ angular.module('Application').controller('UsersController', ['$scope', '$locatio
submit: function () {
$scope.transferOwnership.busy = true;
+
+ // first grant other user owner role, then remove it from existing
+ var data = {
+ id: $scope.transferOwnership.userInfo.id,
+ role: 'owner'
+ };
+
+ Client.updateUser(data, function (error) {
+ if (error) {
+ $scope.transferOwnership.busy = false;
+ $scope.transferOwnership.error = error.message;
+ console.error('Unable to change user role:', error);
+ return;
+ }
+
+ data = {
+ id: $scope.userInfo.id,
+ role: 'user'
+ };
+
+ Client.updateUser(data, function (error) {
+ $scope.transferOwnership.busy = false;
+
+ if (error) {
+ $scope.transferOwnership.error = error.message;
+ console.error('Unable to change user role:', error);
+ return;
+ }
+
+ $('#transferOwnershipModal').modal('hide');
+
+ // current user was demoted, reload to refresh UI state
+ window.location.reload();
+ });
+ });
}
};
|