diff --git a/src/views/users.html b/src/views/users.html
index 69fc8edca..78244fa06 100644
--- a/src/views/users.html
+++ b/src/views/users.html
@@ -176,6 +176,12 @@
+
diff --git a/src/views/users.js b/src/views/users.js
index 23205cab4..56aaf8ae7 100644
--- a/src/views/users.js
+++ b/src/views/users.js
@@ -16,7 +16,7 @@ angular.module('Application').controller('UsersController', ['$scope', '$locatio
$scope.userInfo = Client.getUserInfo();
$scope.groupMembers = function (group) {
- return group.userIds.filter(function (uid) { return !!$scope.usersById[uid]; }).map(function (uid) { return $scope.usersById[uid].username || $scope.usersById[uid].email; }).join(', ');
+ return group.userIds.filter(function (uid) { return !!$scope.usersById[uid]; }).map(function (uid) { return $scope.usersById[uid].username || $scope.usersById[uid].email; }).join(' ');
};
$scope.userremove = {
@@ -238,6 +238,7 @@ angular.module('Application').controller('UsersController', ['$scope', '$locatio
busy: false,
error: {},
name: '',
+ selectedUsers: [],
show: function () {
$scope.groupAdd.busy = false;
@@ -255,25 +256,36 @@ angular.module('Application').controller('UsersController', ['$scope', '$locatio
$scope.groupAdd.busy = true;
$scope.groupAdd.error = {};
- Client.createGroup($scope.groupAdd.name, function (error) {
- $scope.groupAdd.busy = false;
+ Client.createGroup($scope.groupAdd.name, function (error, result) {
+ if (error) {
+ $scope.groupAdd.busy = false;
- if (error && error.statusCode === 409) {
- $scope.groupAdd.error.name = 'Name already taken';
- $scope.groupAddForm.name.$setPristine();
- $('#groupAddName').focus();
- return;
+ if (error.statusCode === 409) {
+ $scope.groupAdd.error.name = 'Name already taken';
+ $scope.groupAddForm.name.$setPristine();
+ $('#groupAddName').focus();
+ return;
+ } else if (error.statusCode === 400) {
+ $scope.groupAdd.error.name = error.message;
+ $scope.groupAddForm.name.$setPristine();
+ $('#groupAddName').focus();
+ return;
+ } else {
+ return console.error('Unable to create group.', error.statusCode, error.message);
+ }
}
- if (error && error.statusCode === 400) {
- $scope.groupAdd.error.name = error.message;
- $scope.groupAddForm.name.$setPristine();
- $('#groupAddName').focus();
- return;
- }
- if (error) return console.error('Unable to create group.', error.statusCode, error.message);
- refresh();
- $('#groupAddModal').modal('hide');
+ var userIds = $scope.groupAdd.selectedUsers.map(function (u) { return u.id; });
+
+ Client.setGroupMembers(result.id, userIds, function (error) {
+ $scope.groupAdd.busy = false;
+
+ if (error) return console.error('Unable to add memebers.', error.statusCode, error.message);
+
+ refresh();
+
+ $('#groupAddModal').modal('hide');
+ });
});
}
};