diff --git a/project2-back/src/main/java/net/revature/project1/controller/UserController.java b/project2-back/src/main/java/net/revature/project1/controller/UserController.java index c9376b5..f835ef5 100644 --- a/project2-back/src/main/java/net/revature/project1/controller/UserController.java +++ b/project2-back/src/main/java/net/revature/project1/controller/UserController.java @@ -109,11 +109,11 @@ public ResponseEntity followNewUser(@PathVariable("id") Long followerId, return resultResponse(result); } - @DeleteMapping("/{id}/follow/{user}") - public ResponseEntity unfollowUser(@PathVariable("id") Long followerId, + @DeleteMapping("/{currentUser}/follow/{user}") + public ResponseEntity unfollowUser(@PathVariable("currentUser") String currentUser, @PathVariable("user") String username, @RequestHeader("Authorization") String token) { - UserEnum result = userService.unfollowUser(followerId, username, token.substring(7)); + UserEnum result = userService.unfollowUser(currentUser, username, token.substring(7)); return resultResponse(result); } diff --git a/project2-back/src/main/java/net/revature/project1/service/UserService.java b/project2-back/src/main/java/net/revature/project1/service/UserService.java index 8dae0d1..54116b5 100644 --- a/project2-back/src/main/java/net/revature/project1/service/UserService.java +++ b/project2-back/src/main/java/net/revature/project1/service/UserService.java @@ -291,8 +291,8 @@ public AppUser updateAppUser(AppUser appUser, String token){ * @param username Take in a following id. AKA who the person that is being unfollowed. * @return {@code UserEnum} is return depending on the status of the service. */ - public UserEnum unfollowUser(Long followerId, String username, String token){ - Optional optionalFollower = userRepo.findById(followerId); + public UserEnum unfollowUser(String currentUser, String username, String token){ + Optional optionalFollower = userRepo.findAppUserByUsername(currentUser); Optional optionalFollowing = userRepo.findAppUserByUsername(username); if(optionalFollower.isEmpty() || optionalFollowing.isEmpty()){ return UserEnum.UNKNOWN; @@ -304,7 +304,7 @@ public UserEnum unfollowUser(Long followerId, String username, String token){ return UserEnum.UNKNOWN; } - boolean isValid = isValidToken(token, followerId); + boolean isValid = isValidToken(token, follower.getId()); if(!isValid){ return UserEnum.UNAUTHORIZED; } diff --git a/project2-front/src/component/UserProfile/Context/UserProfileProvider.jsx b/project2-front/src/component/UserProfile/Context/UserProfileProvider.jsx index 94e857b..32513be 100644 --- a/project2-front/src/component/UserProfile/Context/UserProfileProvider.jsx +++ b/project2-front/src/component/UserProfile/Context/UserProfileProvider.jsx @@ -36,11 +36,11 @@ export const UserProfileProvider = ({ children }) => { throw e; } }; - const removeFollow = async (follower_id, username) => { + const removeFollow = async (currentUser, username) => { const token = Cookies.get("jwt"); try { const response = await projectApi.delete( - `/user/${follower_id}/follow/${username}`, + `/user/${currentUser}/follow/${username}`, { headers: { Authorization: `Bearer ${token}`, diff --git a/project2-front/src/component/UserProfile/ProfileButton.jsx b/project2-front/src/component/UserProfile/ProfileButton.jsx index c6e05b4..6291321 100644 --- a/project2-front/src/component/UserProfile/ProfileButton.jsx +++ b/project2-front/src/component/UserProfile/ProfileButton.jsx @@ -12,7 +12,7 @@ const ProfileButton = ({ user, update}) => { const [isFollowed, setIsFollowed] = useState(); useEffect(() => { - const x = checkFollow(Cookies.get("user_id"), user.username); + const x = checkFollow(Cookies.get("username"), user.username); x.then((value) => { setIsFollowed(value); }); @@ -20,7 +20,7 @@ const ProfileButton = ({ user, update}) => { const handleFollow = async () => { isFollowed - ? removeFollow(Cookies.get("user_id"), user.username) + ? removeFollow(Cookies.get("username"), user.username) : setFollow(Cookies.get("user_id"), user.username); setIsFollowed(!isFollowed); update()