Skip to content

Commit

Permalink
implement search user and toggle follow user handlers in api b00tc4mp#84
Browse files Browse the repository at this point in the history
  • Loading branch information
Eden23 committed Aug 17, 2024
1 parent 88e3e65 commit 8431628
Show file tree
Hide file tree
Showing 5 changed files with 62 additions and 24 deletions.
28 changes: 16 additions & 12 deletions staff/marti-herms/project/V-HUB/api/handlers/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,13 +3,15 @@ import registerUserHandler from './registerUserHandler.js'
import getUserUsernameHandler from './getUserUsernameHandler.js'
import registerGameHandler from './registerGameHandler.js'
import searchGameHandler from './searchGameHandler.js'
import searchUserHandler from './searchUserHandler.js'
import getUserLibraryHandler from './getUserLibraryHandler.js'
import getUserFavsHandler from './getUserFavsHandler.js'
import getGameByIdHandler from './getGameByIdHandler.js'
import getGamesReviewsHandler from './getGamesReviewsHandler.js'
import getDevUserGamesHandler from './getDevUserGamesHandler.js'
import toggleAddGameHandler from './toggleAddGameHandler.js'
import toggleFavGameHandler from './toggleFavGameHandler.js'
import toggleFollowUserHandler from './toggleFollowUserHandler.js'
import makeReviewHandler from './makeReviewHandler.js'
import deleteReviewHandler from './deleteReviewHandler.js'
import getUserAvatarHandler from './getUserAvatarHandler.js'
Expand All @@ -19,23 +21,25 @@ import editUserUsernameHandler from './editUserUsernameHandler.js'

const handle = {
authenticateUser: authenticateUserHandler,
registerUser: registerUserHandler,
deleteReview: deleteReviewHandler,
editUserAvatar: editUserAvatarHandler,
editUserUsername: editUserUsernameHandler,
getDevUserGames: getDevUserGamesHandler,
getGameById: getGameByIdHandler,
getGamesReviews: getGamesReviewsHandler,
getUser: getUserHandler,
getUserAvatar: getUserAvatarHandler,
getUserFavs: getUserFavsHandler,
getUserLibrary: getUserLibraryHandler,
getUserUsername: getUserUsernameHandler,
makeReview: makeReviewHandler,
registerGame: registerGameHandler,
registerUser: registerUserHandler,
searchGame: searchGameHandler,
getUserLibrary: getUserLibraryHandler,
getUserFavs: getUserFavsHandler,
getGameById: getGameByIdHandler,
getGamesReviews: getGamesReviewsHandler,
getDevUserGames: getDevUserGamesHandler,
searchUser: searchUserHandler,
toggleAddGame: toggleAddGameHandler,
toggleFavGame: toggleFavGameHandler,
makeReview: makeReviewHandler,
deleteReview: deleteReviewHandler,
getUserAvatar: getUserAvatarHandler,
getUser: getUserHandler,
editUserAvatar: editUserAvatarHandler,
editUserUsername: editUserUsernameHandler
toggleFollowUser: toggleFollowUserHandler
}

export default handle
13 changes: 13 additions & 0 deletions staff/marti-herms/project/V-HUB/api/handlers/searchUserHandler.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
import { logic } from 'core'

export default (req, res, next) => {
const { userId, query: { q } } = req

try {
logic.searchUser(userId, q)
.then(users => res.json(users))
.catch(error => next(error))
} catch (error) {
next(error)
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
import { logic } from 'core'

export default (req, res, next) => {
const { userId } = req

const { targetUserId } = req.params

try {
logic.toggleAddGame(userId, targetUserId)
.then(() => res.status(204).json())
.catch(error => next(error))
} catch (error) {
next(error)
}
}
4 changes: 4 additions & 0 deletions staff/marti-herms/project/V-HUB/api/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,10 @@ mongoose.connect(process.env.MONGODB_URI)

api.patch('/users/avatar', jwtVerifier, jsonBodyParser, handle.editUserAvatar)

api.get('/users/search', jwtVerifier, handle.searchGame)

api.patch('/users/:targetUserId/following', jwtVerifier, handle.toggleFavGame)

api.post('/games', jwtVerifier, jsonBodyParser, handle.registerGame)

api.get('/games/search', jwtVerifier, handle.searchGame)
Expand Down
26 changes: 14 additions & 12 deletions staff/marti-herms/project/V-HUB/core/logic/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ import getGameReviews from './getGameReviews.js'
import getDevUserGames from './getDevUserGames.js'
import toggleAddGame from './toggleAddGame.js'
import toggleFavGame from './toggleFavGame.js'
import toggleFollowUser from './toggleFollowUser.js'
import makeReview from './makeReview.js'
import deleteReview from './deleteReview.js'
import getUserAvatar from './getUserAvatar.js'
Expand All @@ -20,24 +21,25 @@ import editUserUsername from './editUserUsername.js'

const logic = {
authenticateUser,
registerUser,
deleteReview,
editUserAvatar,
editUserUsername,
getDevUserGames,
getGameById,
getGameReviews,
getUser,
getUserAvatar,
getUserFavs,
getUserLibrary,
getUserUsername,
makeReview,
registerGame,
registerUser,
searchGame,
searchUser,
getUserLibrary,
getUserFavs,
getGameById,
getGameReviews,
getDevUserGames,
toggleAddGame,
toggleFavGame,
makeReview,
deleteReview,
getUserAvatar,
getUser,
editUserAvatar,
editUserUsername
toggleFollowUser,
}

export default logic

0 comments on commit 8431628

Please sign in to comment.