Search in sources :

Example 1 with SocialUserDTO

use of com.nixmash.blog.jpa.dto.SocialUserDTO in project nixmash-blog by mintster.

the class SocialUserFormValidator method validate.

@Override
public void validate(Object target, Errors errors) {
    logger.debug("Validating {}", target);
    SocialUserDTO form = (SocialUserDTO) target;
    validateEmail(errors, form);
    validateUsername(errors, form);
}
Also used : SocialUserDTO(com.nixmash.blog.jpa.dto.SocialUserDTO)

Example 2 with SocialUserDTO

use of com.nixmash.blog.jpa.dto.SocialUserDTO in project nixmash-blog by mintster.

the class UserController method createSocialUserDTO.

private SocialUserDTO createSocialUserDTO(WebRequest request, Connection<?> connection) {
    SocialUserDTO dto = new SocialUserDTO();
    if (connection != null) {
        UserProfile socialMediaProfile = connection.fetchUserProfile();
        dto.setEmail(socialMediaProfile.getEmail());
        dto.setFirstName(socialMediaProfile.getFirstName());
        dto.setLastName(socialMediaProfile.getLastName());
        ConnectionKey providerKey = connection.getKey();
        dto.setSignInProvider(SignInProvider.valueOf(providerKey.getProviderId().toUpperCase()));
    }
    return dto;
}
Also used : SocialUserDTO(com.nixmash.blog.jpa.dto.SocialUserDTO)

Example 3 with SocialUserDTO

use of com.nixmash.blog.jpa.dto.SocialUserDTO in project nixmash-blog by mintster.

the class UserController method createUserDTO.

private UserDTO createUserDTO(SocialUserDTO socialUserDTO) {
    UserDTO userDTO = new UserDTO();
    userDTO.setUsername(socialUserDTO.getUsername().toLowerCase());
    userDTO.setFirstName(socialUserDTO.getFirstName());
    userDTO.setLastName(socialUserDTO.getLastName());
    userDTO.setEmail(socialUserDTO.getEmail());
    userDTO.setSignInProvider(socialUserDTO.getSignInProvider());
    userDTO.setPassword(UUID.randomUUID().toString());
    userDTO.setAuthorities(Lists.newArrayList(new Authority("ROLE_USER")));
    return userDTO;
}
Also used : Authority(com.nixmash.blog.jpa.model.Authority) SocialUserDTO(com.nixmash.blog.jpa.dto.SocialUserDTO) UserDTO(com.nixmash.blog.jpa.dto.UserDTO)

Example 4 with SocialUserDTO

use of com.nixmash.blog.jpa.dto.SocialUserDTO in project nixmash-blog by mintster.

the class UserController method signup.

@RequestMapping(value = "/signup", method = POST)
public String signup(@Valid @ModelAttribute("socialUserDTO") SocialUserDTO socialUserDTO, BindingResult result, WebRequest request, RedirectAttributes redirectAttributes) {
    if (webUI.isNixMash()) {
        return "redirect:/";
    }
    if (result.hasErrors()) {
        return SIGNUP_VIEW;
    }
    UserDTO userDTO = createUserDTO(socialUserDTO);
    User user = userService.create(userDTO);
    providerSignInUtils.doPostSignUp(userDTO.getUsername(), request);
    UserConnection userConnection = userService.getUserConnectionByUserId(userDTO.getUsername());
    if (userConnection.getImageUrl() != null) {
        try {
            webUI.processProfileImage(userConnection.getImageUrl(), user.getUserKey());
            userService.updateHasAvatar(user.getId(), true);
        } catch (IOException e) {
            logger.error("ImageUrl IOException for username: {0}", user.getUsername());
        }
    }
    SignInUtils.authorizeUser(user);
    redirectAttributes.addFlashAttribute("connectionWelcomeMessage", true);
    return "redirect:/";
}
Also used : User(com.nixmash.blog.jpa.model.User) SocialUserDTO(com.nixmash.blog.jpa.dto.SocialUserDTO) UserDTO(com.nixmash.blog.jpa.dto.UserDTO) IOException(java.io.IOException) UserConnection(com.nixmash.blog.jpa.model.UserConnection)

Aggregations

SocialUserDTO (com.nixmash.blog.jpa.dto.SocialUserDTO)4 UserDTO (com.nixmash.blog.jpa.dto.UserDTO)2 Authority (com.nixmash.blog.jpa.model.Authority)1 User (com.nixmash.blog.jpa.model.User)1 UserConnection (com.nixmash.blog.jpa.model.UserConnection)1 IOException (java.io.IOException)1