diff --git a/src/main/java/fr/titionfire/ffsaf/domain/service/KeycloakService.java b/src/main/java/fr/titionfire/ffsaf/domain/service/KeycloakService.java index 4555fc6..d6ef94b 100644 --- a/src/main/java/fr/titionfire/ffsaf/domain/service/KeycloakService.java +++ b/src/main/java/fr/titionfire/ffsaf/domain/service/KeycloakService.java @@ -218,12 +218,13 @@ public class KeycloakService { return getUser(login).orElseThrow( () -> new KeycloakException("Fail to fetch user %s".formatted(finalLogin))); }) - .invoke(user -> { - if (enabled_email) - keycloak.realm(realm).users().get(user.getId()) - .executeActionsEmail(List.of(RequiredAction.VERIFY_EMAIL.name(), - RequiredAction.UPDATE_PASSWORD.name())); - }) + .call(user -> enabled_email ? + vertx.getOrCreateContext().executeBlocking(() -> { + keycloak.realm(realm).users().get(user.getId()) + .executeActionsEmail(List.of(RequiredAction.VERIFY_EMAIL.name(), + RequiredAction.UPDATE_PASSWORD.name())); + return null; + }) : Uni.createFrom().nullItem()) .invoke(user -> membreModel.setUserId(user.getId())) .call(user -> membreService.setUserId(membreModel.getId(), user.getId())) .call(user -> setClubGroupMembre(membreModel, membreModel.getClub()));