Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // Handles the post request for following a user
- router.post('/follow-user', function(req, res, next) {
- // First, find the user from the user page being viewed
- User.findOne({ username: req.body.username }, function(err, user) {
- // Add to users followers with ID of the logged in user
- user.followers = req.user._id;
- // Create variable for user from page being viewed
- var followedUser = user._id;
- // Save followers data to user
- user.save();
- // Secondly, find the user account for the logged in user
- User.findOne({ username: req.user.username }, function(err, user) {
- // Add the user ID from the users profile the follow button was clicked
- user.following = followedUser;
- // Save following data to user
- user.save();
- });
- });
- });
- var userSchema = new Schema({
- username: { type: String, required: true, unique: true },
- password: { type: String, required: true },
- email: { type: String, required: true },
- avatar: { type: String },
- bio: { type: String },
- following: [{ type: Schema.ObjectId, ref: 'User' }],
- followers: [{ type: Schema.ObjectId, ref: 'User' }],
- });
- User.findOne({ username: req.body.username }, function(err, user) {
- user.followers.push(req.user._id);
- var followedUser = user._id;
- user.save(function(err){
- if(err){
- //Handle error
- //send error response
- }
- else
- {
- // Secondly, find the user account for the logged in user
- User.findOne({ username: req.user.username }, function(err, user) {
- user.following.push(followedUser);
- user.save(function(err){
- if(err){
- //Handle error
- //send error response
- }
- else{
- //send success response
- }
- });
- });
- }
- });
- });
- {
- //Handle error
- //send error response
- }
- else{
- //send success response
- }
- });
Add Comment
Please, Sign In to add comment