diff --git a/webadmin/src/views/users.html b/webadmin/src/views/users.html
index 54ae59ef9..245f69c84 100644
--- a/webadmin/src/views/users.html
+++ b/webadmin/src/views/users.html
@@ -167,7 +167,7 @@
-
+
+
+
+
@@ -258,8 +287,8 @@
{{ group.name }}
-
-
+
+
|
diff --git a/webadmin/src/views/users.js b/webadmin/src/views/users.js
index 4ca8d424d..9a06af59a 100644
--- a/webadmin/src/views/users.js
+++ b/webadmin/src/views/users.js
@@ -54,7 +54,7 @@ angular.module('Application').controller('UsersController', ['$scope', '$locatio
submit: function () {
$scope.groupAdd.busy = true;
- $scope.groupAdd.error.name = null;
+ $scope.groupAdd.error = {};
Client.createGroup($scope.groupAdd.name, function (error) {
$scope.groupAdd.busy = false;
@@ -73,6 +73,41 @@ angular.module('Application').controller('UsersController', ['$scope', '$locatio
}
};
+ $scope.groupRemove = {
+ busy: false,
+ error: {},
+ group: null,
+ password: '',
+
+ show: function (group) {
+ $scope.groupRemove.busy = false;
+
+ $scope.groupRemove.error = {};
+ $scope.groupRemove.password = '';
+
+ $scope.groupRemove.group = angular.copy(group);
+
+ $scope.groupRemoveForm.$setUntouched();
+ $scope.groupRemoveForm.$setPristine();
+
+ $('#groupRemoveModal').modal('show');
+ },
+
+ submit: function () {
+ $scope.groupRemove.busy = true;
+ $scope.groupRemove.error = {};
+
+ Client.removeGroup($scope.groupRemove.group.id, $scope.groupRemove.password, function (error) {
+ $scope.groupRemove.busy = false;
+
+ if (error) return console.error('Unable to remove group.', error.statusCode, error.message);
+
+ refresh();
+ $('groupRemoveModal').modal('hide');
+ });
+ }
+ };
+
$scope.isMe = function (user) {
return user.username === Client.getUserInfo().username;
};
@@ -303,7 +338,7 @@ angular.module('Application').controller('UsersController', ['$scope', '$locatio
refresh();
// setup all the dialog focus handling
- ['userAddModal', 'userRemoveModal', 'userEditModal', 'groupAddModal'].forEach(function (id) {
+ ['userAddModal', 'userRemoveModal', 'userEditModal', 'groupAddModal', 'groupRemoveModal'].forEach(function (id) {
$('#' + id).on('shown.bs.modal', function () {
$(this).find("[autofocus]:first").focus();
});