From 12b2be9db8b8e5168d9c62415a73a3c5b63a9c96 Mon Sep 17 00:00:00 2001 From: Berkeley Martinez Date: Fri, 15 Jan 2016 06:08:54 -0800 Subject: [PATCH] Remove old terminology --- server/boot/challenge.js | 5 +++-- server/middleware.json | 1 + server/middlewares/jade-helpers.js | 11 +++++++++++ server/views/account/show.jade | 20 ++++++++++---------- 4 files changed, 25 insertions(+), 12 deletions(-) create mode 100644 server/middlewares/jade-helpers.js diff --git a/server/boot/challenge.js b/server/boot/challenge.js index 18c0469aeb..0c3c1e0b37 100644 --- a/server/boot/challenge.js +++ b/server/boot/challenge.js @@ -146,7 +146,7 @@ function getRenderData$(user, challenge$, origChallengeName, solution) { type: 'redirect', redirectUrl: '/map', message: dedent` - 404: We couldn\'t find a challenge with the name ${origChallengeName}. + We couldn't find a challenge with the name ${origChallengeName}. Please double check the name. ` }); @@ -478,8 +478,9 @@ module.exports = function(app) { function showChallenge(req, res, next) { const solution = req.query.solution; + const challengeName = req.params.challengeName.replace(challengesRegex, ''); - getRenderData$(req.user, challenge$, req.params.challengeName, solution) + getRenderData$(req.user, challenge$, challengeName, solution) .subscribe( ({ type, redirectUrl, message, data }) => { if (message) { diff --git a/server/middleware.json b/server/middleware.json index cea72e61c4..fbe4b8801d 100644 --- a/server/middleware.json +++ b/server/middleware.json @@ -45,6 +45,7 @@ "./middlewares/constant-headers": {}, "./middlewares/csp": {}, "./middlewares/express-rx": {}, + "./middlewares/jade-helpers": {}, "./middlewares/global-locals": {}, "./middlewares/revision-helpers": {} }, diff --git a/server/middlewares/jade-helpers.js b/server/middlewares/jade-helpers.js new file mode 100644 index 0000000000..45345616c7 --- /dev/null +++ b/server/middlewares/jade-helpers.js @@ -0,0 +1,11 @@ +const challengesRegex = /^(bonfire|waypoint|zipline|basejump|checkpoint):\s/i; + +export default function jadeHelpers() { + return function jadeHelpersMiddleware(req, res, next) { + res.locals.removeOldTerms = function removeOldTerms(str) { + return str.replace(challengesRegex, ''); + }; + + next(); + }; +} diff --git a/server/views/account/show.jade b/server/views/account/show.jade index f9d17a0a29..b277b5fa2b 100644 --- a/server/views/account/show.jade +++ b/server/views/account/show.jade @@ -132,12 +132,12 @@ block content for challenge in baseAndZip tr td.col-xs-4.hidden-xs - a(href='/challenges/' + challenge.name, target='_blank')= challenge.name + a(href='/challenges/' + removeOldTerms(challenge.name), target='_blank')= removeOldTerms(challenge.name) td.col-xs-2.hidden-xs= challenge.completedDate ? moment(challenge.completedDate, 'x').format("MMM DD, YYYY") : 'Not Available' td.col-xs-6.hidden-xs a(href=challenge.solution, target='_blank') View my project td.col-xs-12.visible-xs - a(href=challenge.solution, target='_blank')=challenge.name + a(href=challenge.solution, target='_blank')= removeOldTerms(challenge.name) if (bonfires.length > 0) .col-sm-12 table.table.table-striped @@ -148,12 +148,12 @@ block content th.col-xs-3.hidden-xs Solution for bonfire in bonfires tr - td.col-xs-6.hidden-xs= bonfire.name + td.col-xs-6.hidden-xs= removeOldTerms(bonfire.name) td.col-xs-3.hidden-xs= bonfire.completedDate ? moment(bonfire.completedDate, 'x').format("MMM DD, YYYY") : 'Not Available' td.col-xs-3.hidden-xs - a(href='/challenges/' + bonfire.name + '?solution=' + encodeURIComponent(encodeFcc(bonfire.solution)), target='_blank') View my solution + a(href='/challenges/' + removeOldTerms(bonfire.name) + '?solution=' + encodeURIComponent(encodeFcc(bonfire.solution)), target='_blank') View my solution td.col-xs-12.visible-xs - a(href='/challenges/' + bonfire.name + '?solution=' + encodeURIComponent(encodeFcc(bonfire.solution)), target='_blank')= bonfire.name + a(href='/challenges/' + removeOldTerms(bonfire.name) + '?solution=' + encodeURIComponent(encodeFcc(bonfire.solution)), target='_blank')= removeOldTerms(bonfire.name) if (waypoints.length > 0) .col-sm-12 table.table.table-striped @@ -164,18 +164,18 @@ block content th.col-xs-3.hidden-xs Solution for challenge in waypoints tr - td.col-xs-6.hidden-xs= challenge.name + td.col-xs-6.hidden-xs= removeOldTerms(challenge.name) td.col-xs-3.hidden-xs= challenge.completedDate ?moment(challenge.completedDate, 'x').format("MMM DD, YYYY") : 'Not Available' td.col-xs-3.hidden-xs if (challenge.solution) - a(href='/challenges/' + challenge.name + '?solution=' + encodeURIComponent(encodeFcc(challenge.solution)), target='_blank') View my solution + a(href='/challenges/' + removeOldTerms(challenge.name) + '?solution=' + encodeURIComponent(encodeFcc(challenge.solution)), target='_blank') View my solution else - a(href='/challenges/' + challenge.name) View this challenge + a(href='/challenges/' + removeOldTerms(challenge.name)) View this challenge td.col-xs-12.visible-xs if (challenge.solution) - a(href='/challenges/' + challenge.name + '?solution=' + encodeURIComponent(encodeFcc(challenge.solution)), target='_blank')= challenge.name + a(href='/challenges/' + removeOldTerms(challenge.name) + '?solution=' + encodeURIComponent(encodeFcc(challenge.solution)), target='_blank')= removeOldTerms(challenge.name) else - a(href='/challenges/' + challenge.name)= challenge.name + a(href='/challenges/' + removeOldTerms(challenge.name))= removeOldTerms(challenge.name) if (user && user.username === username) h1.text-center Manage your account