Finalizing display issues for news release

This commit is contained in:
Nathan Leniz
2015-03-08 16:50:51 +09:00
parent bac22c1d96
commit f367a0310e
10 changed files with 156 additions and 67 deletions

View File

@@ -1,6 +1,8 @@
var User = require('../models/User'),
Challenge = require('./../models/Challenge'),
Bonfire = require('./../models/Bonfire'),
Story = require('./../models/Story'),
Comment = require('./../models/Comment'),
resources = require('./resources.json'),
questions = resources.questions,
steps = resources.steps,
@@ -11,7 +13,8 @@ var User = require('../models/User'),
https = require('https'),
debug = require('debug')('freecc:cntr:resources'),
cheerio = require('cheerio'),
request = require('request');
request = require('request'),
R = require('ramda');
/**
* GET /
@@ -283,8 +286,47 @@ module.exports = {
}
});
})();
},
updateUserStoryPictures: function(userId, picture) {
var counter = 0,
foundStories,
foundComments;
Story.find({'author.userId': userId}, function(err, stories) {
if (err) {
throw err;
}
foundStories = stories;
counter++;
saveStoriesAndComments();
});
Comment.find({'author.userId': userId}, function(err, comments) {
if (err) {
throw err;
}
foundComments = comments;
counter++;
saveStoriesAndComments();
});
function saveStoriesAndComments() {
if (counter !== 2) {
return;
}
R.forEach(function(comment) {
comment.author.picture = picture;
comment.markModified('author');
comment.save();
}, foundComments);
R.forEach(function(story) {
story.author.picture = picture;
debug('This is a story', story);
debug(story.author.picture);
story.markModified('author');
story.save();
}, foundStories);
}
}
};

View File

@@ -7,7 +7,8 @@ var R = require('ramda'),
resources = require('./resources'),
mongodb = require('mongodb'),
MongoClient = mongodb.MongoClient,
secrets = require('../config/secrets');
secrets = require('../config/secrets'),
User = require('./../models/User');
exports.hotJSON = function(req, res, next) {
var story = Story.find({}).sort({'rank': -1, 'timePosted': -1});

View File

@@ -7,7 +7,8 @@ var _ = require('lodash'),
secrets = require('../config/secrets'),
moment = require('moment'),
Challenge = require('./../models/Challenge'),
debug = require('debug')('freecc:cntr:challenges');
debug = require('debug')('freecc:cntr:challenges')
resources = require('./resources');
//TODO(Berks): Refactor to use module.exports = {} pattern.
@@ -314,7 +315,7 @@ exports.postUpdateProfile = function(req, res, next) {
return next(err);
}
var user = req.user;
if (existingUsername && existingUsername.profile.username != user.profile.username) {
if (existingUsername && existingUsername.profile.username !== user.profile.username) {
req.flash('errors', {
msg: 'An account with that username already exists.'
});
@@ -343,9 +344,12 @@ exports.postUpdateProfile = function(req, res, next) {
user.save(function (err) {
if (err) return next(err);
req.flash('success', {msg: 'Profile information updated.'});
res.redirect('/account');
if (err) {
return next(err);
}
req.flash('success', {msg: 'Profile information updated.'});
res.redirect('/account');
resources.updateUserStoryPictures(user._id.toString(), user.profile.picture);
});
});
});