fix UpdateRoleEvent and DeleteUserEvent
Co-Authored-By: Lukas Ettel <lukasettel@users.noreply.github.com> Co-Authored-By: tomvahl <tomvahl@users.noreply.github.com> Co-Authored-By: xxnitram <xxnitram@users.noreply.github.com> Co-Authored-By: kasch309 <kasch309@users.noreply.github.com>
This commit is contained in:
@ -21,7 +21,7 @@ public class Group {
|
|||||||
private long id;
|
private long id;
|
||||||
private String title;
|
private String title;
|
||||||
private String description;
|
private String description;
|
||||||
public List<User> members;
|
private final List<User> members;
|
||||||
private final Map<String, Role> roles;
|
private final Map<String, Role> roles;
|
||||||
|
|
||||||
private GroupType type;
|
private GroupType type;
|
||||||
|
|||||||
@ -21,7 +21,7 @@ public class DeleteUserEvent extends Event {
|
|||||||
for (User user : group.getMembers()) {
|
for (User user : group.getMembers()) {
|
||||||
if (user.getUser_id().equals(this.user_id)) {
|
if (user.getUser_id().equals(this.user_id)) {
|
||||||
group.members.remove(user);
|
group.members.remove(user);
|
||||||
group.getRoles().remove(user);
|
group.getRoles().remove(user_id);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -25,22 +25,7 @@ public class UpdateRoleEvent extends Event {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public void apply(Group group) {
|
public void apply(Group group) {
|
||||||
User user = new User(user_id, null, null, null);
|
group.getRoles().put(this.user_id, this.newRole);
|
||||||
|
|
||||||
Optional<User> userOptional = group.getMembers().stream()
|
|
||||||
.filter(u -> u.getUser_id().equals(user_id))
|
|
||||||
.findFirst();
|
|
||||||
|
|
||||||
if (userOptional.isPresent()) {
|
|
||||||
user = userOptional.get();
|
|
||||||
} else {
|
|
||||||
}
|
|
||||||
|
|
||||||
if (group.getRoles().containsKey(user) && newRole == Role.MEMBER) {
|
|
||||||
group.getRoles().remove(user);
|
|
||||||
} else {
|
|
||||||
group.getRoles().put(user.getUser_id(), newRole);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user