Commit 624d14d2 authored by roxane.carraux's avatar roxane.carraux
Browse files

try select more than one role but login dont work with user who has two roles

parent 3428a040
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -30,6 +30,7 @@ public class CustomLoginSuccessHandler extends SimpleUrlAuthenticationSuccessHan
    
    protected String determineTargetUrl(Authentication authentication) {
        String url = "/login?error=true";
        System.out.println("coucou");

        // Fetch the roles from Authentication object
        Collection<? extends GrantedAuthority> authorities = authentication.getAuthorities();
+12 −2
Original line number Diff line number Diff line
@@ -15,6 +15,7 @@ import org.springframework.web.servlet.ModelAndView;
import com.example.demo.model.User;
import com.example.demo.repository.HelpPropositionRepository;
import com.example.demo.repository.HelpRequestRepository;
import com.example.demo.repository.RoleRepository;
import com.example.demo.repository.UserRepository;
import com.example.demo.service.IUserService;

@@ -33,6 +34,9 @@ public class UserController {
    @Autowired 
    UserRepository userRepository;

    @Autowired 
    RoleRepository roleRepository;

    @RequestMapping(value = "/register", method = RequestMethod.GET)
    public ModelAndView register() {
        ModelAndView modelAndView = new ModelAndView();
@@ -43,7 +47,7 @@ public class UserController {
    }

    @RequestMapping(value="/register", method=RequestMethod.POST)
    public ModelAndView registerUser(@Valid User user, @RequestParam("roleWanted") String roleWanted, BindingResult bindingResult, ModelMap modelMap) {
    public ModelAndView registerUser(@Valid User user, @RequestParam(defaultValue = "false") boolean poulain, @RequestParam(defaultValue = "false") boolean mentor, BindingResult bindingResult, ModelMap modelMap) {
        ModelAndView modelAndView = new ModelAndView();

        //userSignupValidator.validate(o, errors);
@@ -53,7 +57,13 @@ public class UserController {
            modelMap.addAttribute("bindingResult", bindingResult);
        }
        else { // Saving the users
            userService.save(user, roleWanted);
            if (poulain) {
                System.out.println("poulain");
                userService.save(user, "poulain");
            }
            if(mentor){
                userService.save(user, "mentor");
            }
            //securityService.autoLogin(user.getEmail(), user.getPassword());
            return new ModelAndView("redirect:" + "/");
        }
+4 −1
Original line number Diff line number Diff line
@@ -30,8 +30,11 @@ public class UserService implements IUserService {
            Role userRole = roleRepository.findByName(role.toUpperCase());
            user.setRoles(new HashSet<Role>(Arrays.asList(userRole)));
        }
        else{
            Role userRole = roleRepository.findByName(role.toUpperCase());
            user.getRoles().add(userRole);
        }
        userRepository.save(user);

    }

    @Override
+1 −1
Original line number Diff line number Diff line
@@ -36,7 +36,7 @@
                            <p th:text="${help.mentor.username}"></p>

                            <p th:if="${help.poulain != null}" th:text=" ${help.poulain.username}"></p>
                            <form th:unless="${help.poulain != null}" action="#" th:action="@{/editProposition/{id}(id=${help.id})}">
                            <form th:unless="${help.poulain != null}" th:action="@{/editProposition/{id}(id=${help.id})}">
                                <input class="waves-effect waves-light right btn teal darken-2" type="submit" value="Se proposer"/>
                            </form>
                            
+1 −1
Original line number Diff line number Diff line
@@ -38,7 +38,7 @@
						<p th:text="${help.poulain.username}"></p>

						<p th:if="${help.mentor != null}" th:text=" ${help.mentor.id}"></p>
						<form th:unless="${help.mentor != null}" action="#" th:action="@{/editRequest/{id}(id=${help.id})}">
						<form th:unless="${help.mentor != null}"  th:action="@{/editRequest/{id}(id=${help.id})}">
							<input class="waves-effect waves-light right btn teal darken-2" type="submit" value="Se proposer"/>
						</form>

Loading