Merge branch 'jameskopacz-patch-261' of https://github.com/jameskopacz/freecodecamp into jameskopacz-jameskopacz-patch-261

Conflicts:
	controllers/courseware.js
This commit is contained in:
Berkeley Martinez
2015-03-31 13:43:58 -07:00
5 changed files with 46 additions and 37 deletions

View File

@@ -36,7 +36,7 @@ exports.index = function(req, res) {
});
};
exports.returnNextBonfire = function(req, res) {
exports.returnNextBonfire = function(req, res, next) {
if (!req.user) {
return res.redirect('../bonfires/meet-bonfire');
}
@@ -49,24 +49,24 @@ exports.returnNextBonfire = function(req, res) {
return elem;
}
});
req.user.save();
var uncompletedBonfires = req.user.uncompletedBonfires;
var displayedBonfires = Bonfire.find({'_id': uncompletedBonfires[0]});
displayedBonfires.exec(function(err, bonfire) {
if (err) {
next(err);
}
bonfire = bonfire.pop();
if (bonfire === undefined) {
req.flash('errors', {
msg: "It looks like you've completed all the bonfires we have available. Good job!"
});
return res.redirect('../bonfires/meet-bonfire');
}
nameString = bonfire.name.toLowerCase().replace(/\s/g, '-');
return res.redirect('../bonfires/' + nameString);
req.user.save(function(err) {
if (err) return next(err);
var uncompletedBonfires = req.user.uncompletedBonfires;
var displayedBonfires = Bonfire.find({'_id': uncompletedBonfires[0]});
displayedBonfires.exec(function(err, bonfire) {
if (err) {
return next(err);
}
bonfire = bonfire.pop();
if (bonfire === undefined) {
req.flash('errors', {
msg: "It looks like you've completed all the bonfires we have available. Good job!"
});
return res.redirect('../bonfires/meet-bonfire');
}
nameString = bonfire.name.toLowerCase().replace(/\s/g, '-');
return res.redirect('../bonfires/' + nameString);
});
});
};
@@ -77,7 +77,7 @@ exports.returnIndividualBonfire = function(req, res, next) {
Bonfire.find({"name" : new RegExp(bonfireName, 'i')}, function(err, bonfire) {
if (err) {
next(err);
return next(err);
}
@@ -235,7 +235,7 @@ exports.generateChallenge = function(req, res) {
res.send(response);
};
exports.completedBonfire = function (req, res) {
exports.completedBonfire = function (req, res, next) {
var isCompletedWith = req.body.bonfireInfo.completedWith || undefined;
var isCompletedDate = Math.round(+new Date() / 1000);
var bonfireHash = req.body.bonfireInfo.bonfireHash;
@@ -245,7 +245,7 @@ exports.completedBonfire = function (req, res) {
var paired = User.find({"profile.username": isCompletedWith.toLowerCase()}).limit(1);
paired.exec(function (err, pairedWith) {
if (err) {
return err;
return next(err);
} else {
var index = req.user.uncompletedBonfires.indexOf(bonfireHash);
if (index > -1) {
@@ -276,9 +276,12 @@ exports.completedBonfire = function (req, res) {
})
req.user.save(function (err, user) {
if (err) {
return next(err);
}
pairedWith.save(function (err, paired) {
if (err) {
throw err;
return next(err);
}
if (user && paired) {
res.send(true);
@@ -304,7 +307,7 @@ exports.completedBonfire = function (req, res) {
req.user.save(function (err, user) {
if (err) {
throw err;
return next(err);
}
if (user) {
debug('Saving user');
@@ -312,4 +315,4 @@ exports.completedBonfire = function (req, res) {
}
});
}
};
};