diff --git a/src/js/client.js b/src/js/client.js index f28be47b9..f28858d56 100644 --- a/src/js/client.js +++ b/src/js/client.js @@ -1450,7 +1450,8 @@ angular.module('Application').service('Client', ['$http', '$interval', '$timeout var data = { email: user.email, displayName: user.displayName, - admin: user.admin + admin: user.admin, + role: user.role }; if (user.username !== null) data.username = user.username; @@ -1470,7 +1471,8 @@ angular.module('Application').service('Client', ['$http', '$interval', '$timeout fallbackEmail: user.fallbackEmail, admin: user.admin, active: user.active, - permissions: user.permissions + permissions: user.permissions, + role: user.role }; post('/api/v1/users/' + user.id, data, null, function (error, data, status) { diff --git a/src/views/users.html b/src/views/users.html index 71c5c27da..2b7bd3e3d 100644 --- a/src/views/users.html +++ b/src/views/users.html @@ -45,11 +45,11 @@
-
- -
+ +
+ + +
@@ -133,27 +133,14 @@
No groups available.
- +
+
- -
- -
-
- -
-
- + +
+
diff --git a/src/views/users.js b/src/views/users.js index 68cda1567..b14324ec4 100644 --- a/src/views/users.js +++ b/src/views/users.js @@ -25,6 +25,13 @@ angular.module('Application').controller('UsersController', ['$scope', '$locatio $scope.config = Client.getConfig(); $scope.userInfo = Client.getUserInfo(); + $scope.roles = [ + { id: '', name: 'User' }, + { id: 'manage_users', name: 'User Manager' }, + { id: 'admin', name: 'Administrator' }, + { id: 'owner', name: 'Owner' } + ]; + $scope.allUsers = []; $scope.userSearchString = ''; @@ -80,6 +87,7 @@ angular.module('Application').controller('UsersController', ['$scope', '$locatio sendInvite: true, selectedGroups: [], admin: false, + role: '', show: function () { $scope.useradd.error = {}; @@ -88,6 +96,7 @@ angular.module('Application').controller('UsersController', ['$scope', '$locatio $scope.useradd.displayName = ''; $scope.useradd.selectedGroups = []; $scope.useradd.admin = false; + $scope.useradd.role = ''; $scope.useradd_form.$setUntouched(); $scope.useradd_form.$setPristine(); @@ -107,7 +116,8 @@ angular.module('Application').controller('UsersController', ['$scope', '$locatio username: $scope.useradd.username || null, email: $scope.useradd.email, displayName: $scope.useradd.displayName, - admin: $scope.useradd.admin + admin: $scope.useradd.admin, + role: $scope.useradd.role }; Client.createUser(user, function (error, newUserInfo) { @@ -211,7 +221,8 @@ angular.module('Application').controller('UsersController', ['$scope', '$locatio id: userId, admin: $scope.useredit.admin, active: $scope.useredit.active, - permissions: $scope.useredit.role ? [ $scope.useredit.role ] : null + permissions: $scope.useredit.role ? [ $scope.useredit.role ] : null, + role: $scope.useredit.role }; // only change those if it is a local user