Skip to content

Commit

Permalink
Fix new user not being able to open events
Browse files Browse the repository at this point in the history
  • Loading branch information
Alf-Melmac committed Sep 30, 2023
1 parent 335af06 commit 54e6a48
Show file tree
Hide file tree
Showing 2 changed files with 7 additions and 1 deletion.
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
import com.fasterxml.jackson.databind.ObjectMapper;
import de.webalf.slotbot.model.external.discord.DiscordOauthUser;
import de.webalf.slotbot.service.GuildUsersService;
import de.webalf.slotbot.service.UserService;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.security.core.GrantedAuthority;
Expand All @@ -26,6 +27,7 @@
@Slf4j
public class CustomOAuth2UserService extends DefaultOAuth2UserService {
private final GuildUsersService guildUsersService;
private final UserService userService;

@Override
public OAuth2User loadUser(OAuth2UserRequest userRequest) {
Expand All @@ -37,6 +39,8 @@ public OAuth2User loadUser(OAuth2UserRequest userRequest) {
return oAuth2User;
}

//Create user if not existing
userService.find(discordUser.getId());
final Collection<? extends GrantedAuthority> mappedAuthorities = mapAuthorities(attributes, discordUser, oAuth2User.getAuthorities());
oAuth2User = new DefaultOAuth2User(mappedAuthorities, attributes, "username");

Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
package de.webalf.slotbot.configuration.authentication.website;

import de.webalf.slotbot.service.GuildUsersService;
import de.webalf.slotbot.service.UserService;
import lombok.RequiredArgsConstructor;
import org.springframework.boot.web.servlet.server.CookieSameSiteSupplier;
import org.springframework.context.annotation.Bean;
Expand Down Expand Up @@ -39,6 +40,7 @@
@RequiredArgsConstructor
public class OAuth2EndpointConfig {
private final GuildUsersService guildUsersService;
private final UserService userService;
private final AuthenticationSuccessHandler authenticationSuccessHandler;
private final SessionRegistry sessionRegistry;

Expand Down Expand Up @@ -112,7 +114,7 @@ public RequestEntity<?> convert(OAuth2AuthorizationCodeGrantRequest oauth2Reques

@Bean
public OAuth2UserService<OAuth2UserRequest, OAuth2User> oAuthUserService() {
DefaultOAuth2UserService service = new CustomOAuth2UserService(guildUsersService);
DefaultOAuth2UserService service = new CustomOAuth2UserService(guildUsersService, userService);

service.setRequestEntityConverter(new OAuth2UserRequestEntityConverter() {
@Override
Expand Down

0 comments on commit 54e6a48

Please sign in to comment.