fix(kc): Leave all club groupe when setClubGroupMembre is call whit null ClubModel

This commit is contained in:
Thibaut Valentin 2025-01-21 10:55:56 +01:00
parent 81f256109a
commit a489ddedc3

View File

@ -86,6 +86,15 @@ public class KeycloakService {
}
public Uni<String> setClubGroupMembre(MembreModel membreModel, ClubModel club) {
if (club == null)
return getUserFromMember(membreModel).chain(
userId -> vertx.getOrCreateContext().executeBlocking(() -> {
UserResource user = keycloak.realm(realm).users().get(userId);
user.groups().stream().filter(g -> g.getPath().startsWith("/club"))
.forEach(g -> user.leaveGroup(g.getId()));
return "OK";
}));
else
return getGroupFromClub(club).chain(
clubId -> getUserFromMember(membreModel).chain(
userId -> vertx.getOrCreateContext().executeBlocking(() -> {