Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // ----------------------------------
- // controllers/InvitationController
- // ----------------------------------
- @RequestMapping(value = "/invite/{link}", method = RequestMethod.GET)
- public ModelAndView acceptingInvitation(@PathVariable String link) {
- User user = getLoggedUser();
- Invitation invitation = invitationService.getInvitationByLink(link);
- Permission existingPermission = permissionService.findPermissionById(user.getId(), invitation.getNote().getId());
- if (invitationService.isInvitationValid(link)) {
- Permission newPermission = new Permission();
- newPermission.setId(new UserNoteId(user.getId(), invitation.getNote().getId()));
- newPermission.setPermission(invitation.getPermission());
- ModelAndView redirect = new ModelAndView(new RedirectView("/notes/" + invitation.getNote().getId(), true));
- if (existingPermission == null) {
- permissionService.addPermission(newPermission);
- redirect.addObject("permissionMessage", "Permission to the note has been granted!");
- return redirect;
- } else if (existingPermission.equals(newPermission)) {
- redirect.addObject("permissionMessage", "You already have permission to the note!");
- return redirect;
- } else {
- permissionService.addPermission(newPermission);
- redirect.addObject("permissionMessage", "Permission to the note has been changed!");
- return redirect;
- }
- } else {
- ModelAndView redirect = new ModelAndView("/home/index");
- redirect.addObject("invalidLinkMessage", "Invalid link!");
- return redirect;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement