diff --git a/src/main/java/com/commafeed/frontend/rest/resources/AdminUsersREST.java b/src/main/java/com/commafeed/frontend/rest/resources/AdminUsersREST.java index c47f8253..d9fa09be 100644 --- a/src/main/java/com/commafeed/frontend/rest/resources/AdminUsersREST.java +++ b/src/main/java/com/commafeed/frontend/rest/resources/AdminUsersREST.java @@ -67,6 +67,12 @@ public class AdminUsersREST extends AbstractREST { if (userModel.isAdmin() && !roles.contains(Role.ADMIN)) { userRoleService.save(new UserRole(user, Role.ADMIN)); } else if (!userModel.isAdmin() && roles.contains(Role.ADMIN)) { + if (StartupBean.ADMIN_NAME.equals(user.getName())) { + return Response + .status(Status.FORBIDDEN) + .entity("You cannot remove the admin role from the admin user.") + .build(); + } for (UserRole userRole : userRoleService.findAll(user)) { if (userRole.getRole() == Role.ADMIN) { userRoleService.delete(userRole); diff --git a/src/main/webapp/js/controllers.js b/src/main/webapp/js/controllers.js index 29fe8b30..ada2e613 100644 --- a/src/main/webapp/js/controllers.js +++ b/src/main/webapp/js/controllers.js @@ -293,6 +293,7 @@ module.controller('ManageUserCtrl', function($scope, $state, $stateParams, $state.transitionTo('admin.userlist'); } $scope.save = function() { + $scope.alerts.splice(0, $scope.alerts.length); AdminUsersService.save($scope.user, function() { $state.transitionTo('admin.userlist'); }, alertFunction);