From 3849b61614265ebe6a8d27f184964d6907d03e62 Mon Sep 17 00:00:00 2001 From: killerber4t Date: Sat, 14 Mar 2020 01:11:56 +0100 Subject: [PATCH 1/5] add some UI-improvements and functionality --- .../controller/Gruppen2Controller.java | 6 +-- src/main/resources/templates/create.html | 8 ++-- .../resources/templates/detailsMember.html | 42 +++++++++++-------- 3 files changed, 31 insertions(+), 25 deletions(-) diff --git a/src/main/java/mops/gruppen2/controller/Gruppen2Controller.java b/src/main/java/mops/gruppen2/controller/Gruppen2Controller.java index 12d397e..3872cbd 100644 --- a/src/main/java/mops/gruppen2/controller/Gruppen2Controller.java +++ b/src/main/java/mops/gruppen2/controller/Gruppen2Controller.java @@ -74,7 +74,8 @@ public class Gruppen2Controller { @PostMapping("/createGroup") public String pCreateGroup(KeycloakAuthenticationToken token, @RequestParam(value = "title") String title, - @RequestParam(value = "beschreibung") String beschreibung) { + @RequestParam(value = "beschreibung") String beschreibung, + @RequestParam(value = "visibility", required = false) Boolean visibility) { Account account = keyCloakService.createAccountFromPrincipal(token); controllerService.createGroup(account, title, beschreibung); @@ -89,10 +90,9 @@ public class Gruppen2Controller { Group group = userService.getGroupById(id); Account account = keyCloakService.createAccountFromPrincipal (token); User user = new User(account.getName(), account.getGivenname(), account.getFamilyname(), account.getEmail()); - Role role = group.getRoles().get(user); if(group!= null) { model.addAttribute("group", group); - model.addAttribute("role",role); + model.addAttribute("role", group.getRoles().get(user.getUser_id())); return "detailsMember"; } throw new ResponseStatusException(HttpStatus.NOT_FOUND, "Group not found"); diff --git a/src/main/resources/templates/create.html b/src/main/resources/templates/create.html index 5b76e37..523c690 100644 --- a/src/main/resources/templates/create.html +++ b/src/main/resources/templates/create.html @@ -38,11 +38,9 @@ -
- - Privat - - Veranstaltung +
+ +
diff --git a/src/main/resources/templates/detailsMember.html b/src/main/resources/templates/detailsMember.html index 0f58b32..28bc64a 100644 --- a/src/main/resources/templates/detailsMember.html +++ b/src/main/resources/templates/detailsMember.html @@ -26,28 +26,36 @@
-
-
-

-

- Private Gruppe - Öffentliche Gruppe -

-

-
-
-
- - -
-
- +
+
+ +

+

+ Private Gruppe + Öffentliche Gruppe +

+

+
+
+ +
+ +
+
+
    +
  • + + admin +
  • +
+
+
-
+
\ No newline at end of file From 3d7681fc8fcad9aabdd1f8c8002689403a20ad3d Mon Sep 17 00:00:00 2001 From: killerber4t Date: Sat, 14 Mar 2020 02:03:08 +0100 Subject: [PATCH 2/5] add more UI improvements and functionality --- .../controller/Gruppen2Controller.java | 1 + src/main/resources/templates/create.html | 2 +- .../resources/templates/detailsMember.html | 9 +++-- src/main/resources/templates/index.html | 38 +++++++++++++------ 4 files changed, 35 insertions(+), 15 deletions(-) diff --git a/src/main/java/mops/gruppen2/controller/Gruppen2Controller.java b/src/main/java/mops/gruppen2/controller/Gruppen2Controller.java index 3872cbd..dd6f673 100644 --- a/src/main/java/mops/gruppen2/controller/Gruppen2Controller.java +++ b/src/main/java/mops/gruppen2/controller/Gruppen2Controller.java @@ -54,6 +54,7 @@ public class Gruppen2Controller { model.addAttribute("account", keyCloakService.createAccountFromPrincipal(token)); model.addAttribute("gruppen", userService.getUserGroups(user.getUser_id())); + model.addAttribute("user",user); return "index"; } diff --git a/src/main/resources/templates/create.html b/src/main/resources/templates/create.html index 523c690..08c2b7e 100644 --- a/src/main/resources/templates/create.html +++ b/src/main/resources/templates/create.html @@ -29,7 +29,7 @@

Gruppenerstellung

-
+
diff --git a/src/main/resources/templates/detailsMember.html b/src/main/resources/templates/detailsMember.html index 28bc64a..412a194 100644 --- a/src/main/resources/templates/detailsMember.html +++ b/src/main/resources/templates/detailsMember.html @@ -43,15 +43,18 @@
+

Mitglieder

+ + + +

  • admin
-
- -
+
diff --git a/src/main/resources/templates/index.html b/src/main/resources/templates/index.html index 02d560d..079eb7c 100644 --- a/src/main/resources/templates/index.html +++ b/src/main/resources/templates/index.html @@ -25,19 +25,35 @@
-

Meine Gruppen

-
-
-
-

- -

-

-
-
+
+
+

Meine Gruppen

+ +
+
+

+ +

+

+
+
+
+
- +
+
+
+

user_id

+

+ username + usersurname +

+ usermail +
+
+
+
From d3c5ded6d041cbfb2e9da3ea03b7b3f38a49eb68 Mon Sep 17 00:00:00 2001 From: killerber4t Date: Sat, 14 Mar 2020 11:50:52 +0100 Subject: [PATCH 3/5] added functionality to choose wether group is private or open --- .../controller/Gruppen2Controller.java | 3 +- .../gruppen2/service/ControllerService.java | 11 +++++-- .../resources/templates/detailsMember.html | 32 +++++++++++-------- 3 files changed, 28 insertions(+), 18 deletions(-) diff --git a/src/main/java/mops/gruppen2/controller/Gruppen2Controller.java b/src/main/java/mops/gruppen2/controller/Gruppen2Controller.java index dd6f673..9518740 100644 --- a/src/main/java/mops/gruppen2/controller/Gruppen2Controller.java +++ b/src/main/java/mops/gruppen2/controller/Gruppen2Controller.java @@ -79,7 +79,8 @@ public class Gruppen2Controller { @RequestParam(value = "visibility", required = false) Boolean visibility) { Account account = keyCloakService.createAccountFromPrincipal(token); - controllerService.createGroup(account, title, beschreibung); + if (visibility == null) visibility=false; + controllerService.createGroup(account, title, beschreibung, visibility); return "redirect:/gruppen2/"; } diff --git a/src/main/java/mops/gruppen2/service/ControllerService.java b/src/main/java/mops/gruppen2/service/ControllerService.java index a1ca2c3..afb861d 100644 --- a/src/main/java/mops/gruppen2/service/ControllerService.java +++ b/src/main/java/mops/gruppen2/service/ControllerService.java @@ -26,10 +26,15 @@ public class ControllerService { * @param title Gruppentitel * @param description Gruppenbeschreibung */ - public void createGroup(Account account, String title, String description) { - + public void createGroup(Account account, String title, String description, Boolean visibility) { + Visibility visibility1; + if (visibility){ + visibility1 = Visibility.PUBLIC; + }else{ + visibility1 = Visibility.PRIVATE; + } List eventList = new ArrayList<>(); - Collections.addAll(eventList, new CreateGroupEvent(eventService.checkGroup(), account.getName(), null , GroupType.LECTURE, Visibility.PUBLIC), + Collections.addAll(eventList, new CreateGroupEvent(eventService.checkGroup(), account.getName(), null , GroupType.LECTURE, visibility1), new AddUserEvent(eventService.checkGroup(), account.getName(),account.getGivenname(),account.getFamilyname(),account.getEmail()), new UpdateRoleEvent(eventService.checkGroup(), account.getName(), Role.ADMIN), new UpdateGroupTitleEvent(eventService.checkGroup(), account.getName(), title), diff --git a/src/main/resources/templates/detailsMember.html b/src/main/resources/templates/detailsMember.html index 412a194..646bc22 100644 --- a/src/main/resources/templates/detailsMember.html +++ b/src/main/resources/templates/detailsMember.html @@ -31,8 +31,9 @@

- Private Gruppe - Öffentliche Gruppe + Private Gruppe + Öffentliche Gruppe + Veranstaltung

@@ -42,18 +43,21 @@
-
-

Mitglieder

- - - -

-
    -
  • - - admin -
  • -
+ +
+
+

Mitglieder

+ +

+
+
+
    +
  • + + admin +
  • +
+
From 43a3282b67c151f51db0332c0cba646ba81bc474 Mon Sep 17 00:00:00 2001 From: killerber4t Date: Sat, 14 Mar 2020 22:54:40 +0100 Subject: [PATCH 4/5] added functionality to choose wether group is private or open --- src/main/resources/templates/index.html | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/src/main/resources/templates/index.html b/src/main/resources/templates/index.html index 079eb7c..f41f418 100644 --- a/src/main/resources/templates/index.html +++ b/src/main/resources/templates/index.html @@ -27,7 +27,7 @@
-
+

Meine Gruppen

@@ -41,15 +41,19 @@
-
-
-
-

user_id

-

+
+
+
+

user_id

+

username usersurname

- usermail +

usermail

+

+ In Gruppen: + +

From e2978e10d0bce011b261ca9494832ab442450551 Mon Sep 17 00:00:00 2001 From: killerber4t Date: Mon, 16 Mar 2020 12:37:45 +0100 Subject: [PATCH 5/5] fix visibility in controller --- .../java/mops/gruppen2/controller/Gruppen2Controller.java | 6 +++++- src/main/java/mops/gruppen2/service/GroupService.java | 2 +- src/main/resources/templates/detailsMember.html | 4 ++-- 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/src/main/java/mops/gruppen2/controller/Gruppen2Controller.java b/src/main/java/mops/gruppen2/controller/Gruppen2Controller.java index e07395d..c71ae8d 100644 --- a/src/main/java/mops/gruppen2/controller/Gruppen2Controller.java +++ b/src/main/java/mops/gruppen2/controller/Gruppen2Controller.java @@ -87,7 +87,11 @@ public class Gruppen2Controller { @RequestParam(value = "visibility", required = false) Boolean visibility) { Account account = keyCloakService.createAccountFromPrincipal(token); - if (visibility == null) visibility=false; + if (visibility == null) { + visibility = true; + }else{ + visibility = false; + } controllerService.createGroup(account, title, beschreibung, visibility); return "redirect:/gruppen2/"; diff --git a/src/main/java/mops/gruppen2/service/GroupService.java b/src/main/java/mops/gruppen2/service/GroupService.java index a1a669c..2faf17e 100644 --- a/src/main/java/mops/gruppen2/service/GroupService.java +++ b/src/main/java/mops/gruppen2/service/GroupService.java @@ -77,7 +77,7 @@ public class GroupService { * @throws EventException */ public List getAllGroupWithVisibilityPublic() throws EventException { - return projectEventList(eventService.translateEventDTOs(eventRepository.findEventDTOByVisibility(Boolean.FALSE))); + return projectEventList(eventService.translateEventDTOs(eventRepository.findEventDTOByVisibility(Boolean.TRUE))); } diff --git a/src/main/resources/templates/detailsMember.html b/src/main/resources/templates/detailsMember.html index dfd4680..4781f31 100644 --- a/src/main/resources/templates/detailsMember.html +++ b/src/main/resources/templates/detailsMember.html @@ -31,8 +31,8 @@

- Private Gruppe - Öffentliche Gruppe + Private Gruppe + Öffentliche Gruppe Veranstaltung