@ -24,7 +24,6 @@ import org.springframework.web.bind.annotation.RequestMapping;
|
|||||||
import org.springframework.web.bind.annotation.RequestParam;
|
import org.springframework.web.bind.annotation.RequestParam;
|
||||||
import org.springframework.web.context.annotation.SessionScope;
|
import org.springframework.web.context.annotation.SessionScope;
|
||||||
import org.springframework.web.multipart.MultipartFile;
|
import org.springframework.web.multipart.MultipartFile;
|
||||||
import org.springframework.web.server.ResponseStatusException;
|
|
||||||
|
|
||||||
import javax.annotation.security.RolesAllowed;
|
import javax.annotation.security.RolesAllowed;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
@ -144,8 +143,7 @@ public class Gruppen2Controller {
|
|||||||
|
|
||||||
@RolesAllowed({"ROLE_orga", "ROLE_studentin", "ROLE_actuator)"})
|
@RolesAllowed({"ROLE_orga", "ROLE_studentin", "ROLE_actuator)"})
|
||||||
@GetMapping("/details/{id}")
|
@GetMapping("/details/{id}")
|
||||||
public String showGroupDetails(KeycloakAuthenticationToken token, Model model, @PathVariable("id") Long groupId) throws EventException, ResponseStatusException {
|
public String showGroupDetails(KeycloakAuthenticationToken token, Model model, @PathVariable("id") Long groupId) throws EventException {
|
||||||
|
|
||||||
model.addAttribute("account", keyCloakService.createAccountFromPrincipal(token));
|
model.addAttribute("account", keyCloakService.createAccountFromPrincipal(token));
|
||||||
Group group = userService.getGroupById(groupId);
|
Group group = userService.getGroupById(groupId);
|
||||||
Account account = keyCloakService.createAccountFromPrincipal(token);
|
Account account = keyCloakService.createAccountFromPrincipal(token);
|
||||||
@ -169,7 +167,7 @@ public class Gruppen2Controller {
|
|||||||
User user = new User(account.getName(), account.getGivenname(), account.getFamilyname(), account.getEmail());
|
User user = new User(account.getName(), account.getGivenname(), account.getFamilyname(), account.getEmail());
|
||||||
Group group = userService.getGroupById(groupId);
|
Group group = userService.getGroupById(groupId);
|
||||||
if (group.getMembers().contains(user)) {
|
if (group.getMembers().contains(user)) {
|
||||||
return "errorRenameLater"; //hier soll eigentlich auf die bereits beigetretene Gruppe weitergeleitet werden
|
return "error"; //hier soll eigentlich auf die bereits beigetretene Gruppe weitergeleitet werden
|
||||||
}
|
}
|
||||||
controllerService.addUser(account, groupId);
|
controllerService.addUser(account, groupId);
|
||||||
return "redirect:/gruppen2/";
|
return "redirect:/gruppen2/";
|
||||||
|
|||||||
@ -21,6 +21,6 @@ public class MopsController {
|
|||||||
|
|
||||||
@GetMapping("*")
|
@GetMapping("*")
|
||||||
public String defaultLink() {
|
public String defaultLink() {
|
||||||
return "errorRenameLater";
|
return "error";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -21,10 +21,12 @@ public class UpdateRoleEvent extends Event {
|
|||||||
super(groupId, userId);
|
super(groupId, userId);
|
||||||
this.newRole = newRole;
|
this.newRole = newRole;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void applyEvent(Group group) throws UserNotFoundException {
|
public void applyEvent(Group group) throws UserNotFoundException {
|
||||||
if (group.getRoles().containsKey(this.userId)) {
|
if (group.getRoles().containsKey(this.userId)) {
|
||||||
group.getRoles().put(this.userId, this.newRole);
|
group.getRoles().put(this.userId, this.newRole);
|
||||||
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
throw new UserNotFoundException(this.getClass().toString());
|
throw new UserNotFoundException(this.getClass().toString());
|
||||||
|
|||||||
@ -7,9 +7,9 @@ import java.util.Set;
|
|||||||
@Value
|
@Value
|
||||||
public class Account {
|
public class Account {
|
||||||
|
|
||||||
|
String name; //user_id
|
||||||
String email;
|
String email;
|
||||||
String image;
|
String image;
|
||||||
String name; //user_id
|
|
||||||
String givenname;
|
String givenname;
|
||||||
String familyname;
|
String familyname;
|
||||||
Set<String> roles;
|
Set<String> roles;
|
||||||
|
|||||||
@ -120,7 +120,11 @@ public class ControllerService {
|
|||||||
user = member;
|
user = member;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
assert user != null;
|
|
||||||
|
if (user == null) {
|
||||||
|
throw new UserNotFoundException(this.getClass().toString());
|
||||||
|
}
|
||||||
|
|
||||||
DeleteUserEvent deleteUserEvent = new DeleteUserEvent(groupId, user.getId());
|
DeleteUserEvent deleteUserEvent = new DeleteUserEvent(groupId, user.getId());
|
||||||
eventService.saveEvent(deleteUserEvent);
|
eventService.saveEvent(deleteUserEvent);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -79,9 +79,9 @@
|
|||||||
<ul class="list-group-flush" style="background: slategrey"
|
<ul class="list-group-flush" style="background: slategrey"
|
||||||
th:each="member : ${group.getMembers()}">
|
th:each="member : ${group.getMembers()}">
|
||||||
<li class="list-group-item" style="background: aliceblue">
|
<li class="list-group-item" style="background: aliceblue">
|
||||||
<span th:text="${member.getUser_id()}"></span>
|
<span th:text="${member.getId()}"></span>
|
||||||
<span class="badge badge-success"
|
<span class="badge badge-success"
|
||||||
th:if='${group.getRoles().get(member.getUser_id()) == admin}'>admin</span>
|
th:if='${group.getRoles().get(member.getId()) == admin}'>admin</span>
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@ -73,16 +73,16 @@
|
|||||||
<tbody class="table-striped">
|
<tbody class="table-striped">
|
||||||
|
|
||||||
<tr th:each="member : ${group.getMembers()}">
|
<tr th:each="member : ${group.getMembers()}">
|
||||||
<th th:text="${member.getUser_id()}"></th>
|
<th th:text="${member.getId()}"></th>
|
||||||
<td>
|
<td>
|
||||||
<span th:if='${group.getRoles().get(member.getUser_id()) != admin}'>Mitglied</span>
|
<span th:if='${group.getRoles().get(member.getId()) != admin}'>Mitglied</span>
|
||||||
<span th:if='${group.getRoles().get(member.getUser_id()) == admin}'>Admin</span>
|
<span th:if='${group.getRoles().get(member.getId()) == admin}'>Admin</span>
|
||||||
</td>
|
</td>
|
||||||
<td>
|
<td>
|
||||||
<form action="/gruppen2/details/members/changeRole" method="post">
|
<form action="/gruppen2/details/members/changeRole" method="post">
|
||||||
<input th:name="group_id" th:value="${group.getId()}"
|
<input th:name="group_id" th:value="${group.getId()}"
|
||||||
type="hidden">
|
type="hidden">
|
||||||
<input th:name="user_id" th:value="${member.getUser_id()}"
|
<input th:name="user_id" th:value="${member.getId()}"
|
||||||
type="hidden">
|
type="hidden">
|
||||||
<button class="btn btn-warning btn-sm" type="submit">Rolle
|
<button class="btn btn-warning btn-sm" type="submit">Rolle
|
||||||
ändern
|
ändern
|
||||||
@ -91,7 +91,7 @@
|
|||||||
<form action="/gruppen2/details/members/deleteUser" method="post">
|
<form action="/gruppen2/details/members/deleteUser" method="post">
|
||||||
<input th:name="group_id" th:value="${group.getId()}"
|
<input th:name="group_id" th:value="${group.getId()}"
|
||||||
type="hidden">
|
type="hidden">
|
||||||
<input th:name="user_id" th:value="${member.getUser_id()}"
|
<input th:name="user_id" th:value="${member.getId()}"
|
||||||
type="hidden">
|
type="hidden">
|
||||||
<button class="btn btn-danger btn-sm">Mitglied entfernen
|
<button class="btn btn-danger btn-sm">Mitglied entfernen
|
||||||
</button>
|
</button>
|
||||||
|
|||||||
Reference in New Issue
Block a user