minor tweeks to improve field guide flow
This commit is contained in:
@ -9,6 +9,16 @@ exports.returnIndividualFieldGuide = function(req, res, next) {
|
|||||||
|
|
||||||
var fieldGuideName = dashedName.replace(/\-/g, ' ');
|
var fieldGuideName = dashedName.replace(/\-/g, ' ');
|
||||||
|
|
||||||
|
var completed = req.user.completedFieldGuides;
|
||||||
|
|
||||||
|
var uncompletedFieldGuides = resources.allFieldGuideIds().filter(function (elem) {
|
||||||
|
if (completed.indexOf(elem) === -1) {
|
||||||
|
return elem;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
req.user.uncompletedFieldGuides = uncompletedFieldGuides;
|
||||||
|
req.user.save();
|
||||||
|
|
||||||
FieldGuide.find({'name': new RegExp(fieldGuideName, 'i')}, function(err, fieldGuideFromMongo) {
|
FieldGuide.find({'name': new RegExp(fieldGuideName, 'i')}, function(err, fieldGuideFromMongo) {
|
||||||
if (err) {
|
if (err) {
|
||||||
next(err);
|
next(err);
|
||||||
@ -52,26 +62,18 @@ exports.returnNextFieldGuide = function(req, res, next) {
|
|||||||
return res.redirect('../field-guide/how-do-i-use-this-guide?');
|
return res.redirect('../field-guide/how-do-i-use-this-guide?');
|
||||||
}
|
}
|
||||||
|
|
||||||
var completed = req.user.completedFieldGuides;
|
var displayedFieldGuides = FieldGuide.find({'_id': req.user.uncompletedFieldGuides[0]});
|
||||||
|
|
||||||
var uncompletedFieldGuides = resources.allFieldGuideIds().filter(function (elem) {
|
|
||||||
if (completed.indexOf(elem) === -1) {
|
|
||||||
return elem;
|
|
||||||
}
|
|
||||||
});
|
|
||||||
req.user.uncompletedFieldGuides = uncompletedFieldGuides;
|
|
||||||
req.user.save();
|
|
||||||
|
|
||||||
var displayedFieldGuides = FieldGuide.find({'_id': uncompletedFieldGuides[0]});
|
|
||||||
displayedFieldGuides.exec(function(err, fieldGuide) {
|
displayedFieldGuides.exec(function(err, fieldGuide) {
|
||||||
if (err) {
|
if (err) {
|
||||||
return next(err);
|
return next(err);
|
||||||
}
|
}
|
||||||
fieldGuide = fieldGuide.pop();
|
fieldGuide = fieldGuide.pop();
|
||||||
if (typeof fieldGuide === 'undefined') {
|
if (typeof fieldGuide === 'undefined') {
|
||||||
req.flash('success', {
|
if (req.user.completedFieldGuides.length > 0) {
|
||||||
msg: "You've read all our current Field Guide entries. You can contribute to our Field Guide <a href='https://github.com/FreeCodeCamp/freecodecamp/blob/master/seed_data/field-guides.json'>here</a>."
|
req.flash('success', {
|
||||||
});
|
msg: "You've read all our current Field Guide entries. You can contribute to our Field Guide <a href='https://github.com/FreeCodeCamp/freecodecamp/blob/master/seed_data/field-guides.json'>here</a>."
|
||||||
|
});
|
||||||
|
}
|
||||||
return res.redirect('../field-guide/how-do-i-use-this-guide?');
|
return res.redirect('../field-guide/how-do-i-use-this-guide?');
|
||||||
}
|
}
|
||||||
var nameString = fieldGuide.name.toLowerCase().replace(/\s/g, '-');
|
var nameString = fieldGuide.name.toLowerCase().replace(/\s/g, '-');
|
||||||
|
Reference in New Issue
Block a user