Advertisement
sMteX

Untitled

Nov 4th, 2017
98
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.77 KB | None | 0 0
  1. // ----------------------------------
  2. // controllers/InvitationController
  3. // ----------------------------------
  4.     @RequestMapping(value = "/invite/{link}", method = RequestMethod.GET)
  5.     public ModelAndView acceptingInvitation(@PathVariable String link) {
  6.         User user = getLoggedUser();
  7.         Invitation invitation = invitationService.getInvitationByLink(link);
  8.         Permission existingPermission = permissionService.findPermissionById(user.getId(), invitation.getNote().getId());
  9.  
  10.         if (invitationService.isInvitationValid(link)) {
  11.             Permission newPermission = new Permission();
  12.             newPermission.setId(new UserNoteId(user.getId(), invitation.getNote().getId()));
  13.             newPermission.setPermission(invitation.getPermission());
  14.             ModelAndView redirect = new ModelAndView(new RedirectView("/notes/" + invitation.getNote().getId(), true));
  15.  
  16.             if (existingPermission == null) {
  17.                 permissionService.addPermission(newPermission);
  18.                 redirect.addObject("permissionMessage", "Permission to the note has been granted!");
  19.                 return redirect;
  20.  
  21.             } else if (existingPermission.equals(newPermission)) {
  22.                 redirect.addObject("permissionMessage", "You already have permission to the note!");
  23.                 return redirect;
  24.  
  25.             } else {
  26.                 permissionService.addPermission(newPermission);
  27.                 redirect.addObject("permissionMessage", "Permission to the note has been changed!");
  28.                 return redirect;
  29.             }
  30.  
  31.         } else {
  32.             ModelAndView redirect = new ModelAndView("/home/index");
  33.             redirect.addObject("invalidLinkMessage", "Invalid link!");
  34.             return redirect;
  35.         }
  36.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement