From f30327224764467798e9169535072a4a6163bad3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Theodor=20Angerg=C3=A5rd?= Date: Tue, 17 Sep 2024 17:58:54 +0200 Subject: [PATCH] Fix admins view --- .../chalmers/gamma/adapter/primary/web/AdminController.java | 4 +--- .../main/java/it/chalmers/gamma/app/admin/AdminFacade.java | 6 +++--- 2 files changed, 4 insertions(+), 6 deletions(-) diff --git a/app/src/main/java/it/chalmers/gamma/adapter/primary/web/AdminController.java b/app/src/main/java/it/chalmers/gamma/adapter/primary/web/AdminController.java index 0c1a38626..e1e8bef9e 100644 --- a/app/src/main/java/it/chalmers/gamma/adapter/primary/web/AdminController.java +++ b/app/src/main/java/it/chalmers/gamma/adapter/primary/web/AdminController.java @@ -69,13 +69,11 @@ public ModelAndView setAdmins( .map(UUID::fromString) .toList(); - List newAdmins = - formAdmins.stream().filter(userId -> !oldAdmins.contains(userId)).toList(); List noLongerAdmins = oldAdmins.stream().filter(userId -> !formAdmins.contains(userId)).toList(); try { - this.adminFacade.updateAdmins(newAdmins, noLongerAdmins); + this.adminFacade.updateAdmins(formAdmins, noLongerAdmins); } catch (IllegalArgumentException e) { return this.getAdmins(htmxRequest); } diff --git a/app/src/main/java/it/chalmers/gamma/app/admin/AdminFacade.java b/app/src/main/java/it/chalmers/gamma/app/admin/AdminFacade.java index 2cb08bdf0..cf16ef139 100644 --- a/app/src/main/java/it/chalmers/gamma/app/admin/AdminFacade.java +++ b/app/src/main/java/it/chalmers/gamma/app/admin/AdminFacade.java @@ -20,14 +20,14 @@ public AdminFacade(AccessGuard accessGuard, AdminRepository adminRepository) { this.adminRepository = adminRepository; } - public void updateAdmins(List adminsToAdd, List adminsToRemove) { + public void updateAdmins(List newAdmins, List adminsToRemove) { accessGuard.require(isAdmin()); - if (adminsToAdd.isEmpty()) { + if (newAdmins.isEmpty()) { throw new IllegalArgumentException("There must be at least one admin"); } - for (UUID userId : adminsToAdd) { + for (UUID userId : newAdmins) { this.adminRepository.setAdmin(new UserId(userId), true); }