Initial commit
This commit is contained in:
@@ -0,0 +1,67 @@
|
||||
const ResponseHandler = require('../shared/response.handler');
|
||||
|
||||
class FriendsController {
|
||||
constructor({ friendsService }) {
|
||||
this.friendsService = friendsService;
|
||||
}
|
||||
|
||||
async getFriends(req, res, next) {
|
||||
try {
|
||||
const friends = await this.friendsService.getFriendsByUserId(req.userId);
|
||||
return ResponseHandler.success(res, friends, 'Friends retrieved successfully');
|
||||
} catch (error) {
|
||||
next(error);
|
||||
}
|
||||
}
|
||||
|
||||
async getPendingRequests(req, res, next) {
|
||||
try {
|
||||
const requests = await this.friendsService.getPendingRequests(req.userId);
|
||||
return ResponseHandler.success(
|
||||
res,
|
||||
requests,
|
||||
'Pending requests retrieved successfully'
|
||||
);
|
||||
} catch (error) {
|
||||
next(error);
|
||||
}
|
||||
}
|
||||
|
||||
async sendRequest(req, res, next) {
|
||||
try {
|
||||
const request = await this.friendsService.sendFriendRequest(
|
||||
req.userId,
|
||||
req.body.identifier
|
||||
);
|
||||
return ResponseHandler.created(res, request, 'Friend request sent successfully');
|
||||
} catch (error) {
|
||||
next(error);
|
||||
}
|
||||
}
|
||||
|
||||
async acceptRequest(req, res, next) {
|
||||
try {
|
||||
const result = await this.friendsService.acceptFriendRequest(
|
||||
req.params.id,
|
||||
req.userId
|
||||
);
|
||||
return ResponseHandler.success(res, result, result.message);
|
||||
} catch (error) {
|
||||
next(error);
|
||||
}
|
||||
}
|
||||
|
||||
async rejectRequest(req, res, next) {
|
||||
try {
|
||||
const result = await this.friendsService.rejectFriendRequest(
|
||||
req.params.id,
|
||||
req.userId
|
||||
);
|
||||
return ResponseHandler.success(res, result, result.message);
|
||||
} catch (error) {
|
||||
next(error);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
module.exports = FriendsController;
|
||||
Reference in New Issue
Block a user