From 08837304fdb14458b718eee6430883dfcd088674 Mon Sep 17 00:00:00 2001 From: Quincy Larson Date: Mon, 25 May 2015 18:00:45 -0700 Subject: [PATCH] fix unauthenticated challenge bug and hide pair, bug and help buttons when unauthenticated --- controllers/challenge.js | 44 +++++++++++++++++------------- views/coursewares/showBonfire.jade | 23 ++++++++-------- views/coursewares/showHTML.jade | 2 +- views/coursewares/showJS.jade | 23 ++++++++-------- views/coursewares/showVideo.jade | 19 +++++++------ 5 files changed, 60 insertions(+), 51 deletions(-) diff --git a/controllers/challenge.js b/controllers/challenge.js index 76e273f681..621d58ef41 100644 --- a/controllers/challenge.js +++ b/controllers/challenge.js @@ -175,20 +175,22 @@ exports.returnIndividualChallenge = function(req, res, next) { if (dashedNameFull !== dashedName) { return res.redirect('../challenges/' + dashedNameFull); } else { - req.user.currentChallenge = { - challengeId: challenge._id, - challengeName: challenge.name, - challengeBlock: R.head(R.flatten(Object.keys(challengeMapWithIds). - map(function(key) { - return challengeMapWithIds[key] - .filter(function(elem) { - return String(elem) === String(challenge._id); - }).map(function() { - return key; - }); - }) - )) - }; + if (req.user) { + req.user.currentChallenge = { + challengeId: challenge._id, + challengeName: challenge.name, + challengeBlock: R.head(R.flatten(Object.keys(challengeMapWithIds). + map(function (key) { + return challengeMapWithIds[key] + .filter(function (elem) { + return String(elem) === String(challenge._id); + }).map(function () { + return key; + }); + }) + )) + }; + } } var challengeType = { @@ -295,12 +297,16 @@ exports.returnIndividualChallenge = function(req, res, next) { }); } }; - req.user.save(function(err) { - if (err) { - return next(err); - } + if (req.user) { + req.user.save(function (err) { + if (err) { + return next(err); + } + return challengeType[challenge.challengeType](); + }); + } else { return challengeType[challenge.challengeType](); - }); + } }); }; diff --git a/views/coursewares/showBonfire.jade b/views/coursewares/showBonfire.jade index feb1c90c5b..bed66dc44f 100644 --- a/views/coursewares/showBonfire.jade +++ b/views/coursewares/showBonfire.jade @@ -91,17 +91,18 @@ block content span.ion-close-circled | Username not found #submitButton.btn.btn-primary.btn-big.btn-block Run code (ctrl + enter) - .button-spacer - .btn-group.input-group.btn-group-justified - label.btn.btn-success#i-want-help - i.fa.fa-medkit - |   Help - label.btn.btn-success#i-want-to-pair - i.fa.fa-user-plus - |   Pair - label.btn.btn-success#report-issue - i.fa.fa-bug - |   Bug + if (user) + .button-spacer + .btn-group.input-group.btn-group-justified + label.btn.btn-success#i-want-help + i.fa.fa-medkit + |   Help + label.btn.btn-success#i-want-to-pair + i.fa.fa-user-plus + |   Pair + label.btn.btn-success#report-issue + i.fa.fa-bug + |   Bug .button-spacer form.code .form-group.codeMirrorView diff --git a/views/coursewares/showHTML.jade b/views/coursewares/showHTML.jade index ad9481e868..7979e0b8f2 100644 --- a/views/coursewares/showHTML.jade +++ b/views/coursewares/showHTML.jade @@ -37,8 +37,8 @@ block content #less-info.btn.btn-primary.btn-block.btn-primary-ghost span.ion-arrow-up-b | Less information - br - if (user) + br a.btn.btn-primary.btn-big.btn-block#next-courseware-button | Go to my next challenge br diff --git a/views/coursewares/showJS.jade b/views/coursewares/showJS.jade index d7b914005e..392f890121 100644 --- a/views/coursewares/showJS.jade +++ b/views/coursewares/showJS.jade @@ -36,17 +36,18 @@ block content | Less information #submitButton.btn.btn-primary.btn-big.btn-block Run code (ctrl + enter) .button-spacer - .btn-group.input-group.btn-group-justified - label.btn.btn-success#i-want-help - i.fa.fa-medkit - |   Help - label.btn.btn-success#i-want-to-pair - i.fa.fa-user-plus - |   Pair - label.btn.btn-success#report-issue - i.fa.fa-bug - |   Bug - br + if (user) + .btn-group.input-group.btn-group-justified + label.btn.btn-success#i-want-help + i.fa.fa-medkit + |   Help + label.btn.btn-success#i-want-to-pair + i.fa.fa-user-plus + |   Pair + label.btn.btn-success#report-issue + i.fa.fa-bug + |   Bug + .spacer form.code .form-group.codeMirrorView textarea#codeOutput(style='display: none;') diff --git a/views/coursewares/showVideo.jade b/views/coursewares/showVideo.jade index 277c5e1267..5b0843a08f 100644 --- a/views/coursewares/showVideo.jade +++ b/views/coursewares/showVideo.jade @@ -21,20 +21,21 @@ block content a.btn.btn-primary.btn-big.btn-block#completed-courseware I've completed this challenge (ctrl + enter) script. var userLoggedIn = true; + .button-spacer + .btn-group.input-group.btn-group-justified + .btn.btn-success.btn-big#i-want-help-editorless + i.fa.fa-medkit + |   Get help + .btn.btn-success.btn-big#report-issue + i.fa.fa-bug + |   Report a bug + .button-spacer - else a.btn.btn-big.signup-btn.btn-block(href='/login') Sign in so you can save your progress script. var userLoggedIn = false; br - .button-spacer - .btn-group.input-group.btn-group-justified - .btn.btn-success.btn-big#i-want-help-editorless - i.fa.fa-medkit - |   Get help - .btn.btn-success.btn-big#report-issue - i.fa.fa-bug - |   Report a bug - .button-spacer + script(type="text/javascript"). var controlEnterHandler = function(e) {