diff --git a/common/app/routes/challenges/index.js b/common/app/routes/challenges/index.js index 81b28ea225..b430bc2c90 100644 --- a/common/app/routes/challenges/index.js +++ b/common/app/routes/challenges/index.js @@ -1,6 +1,12 @@ import Challenges from './components/Challenges.jsx'; export default { - path: 'challenges', - component: Challenges + path: 'challenges(/:dashedName)', + component: Challenges, + onEnter(nextState, replace) { + // redirect /challenges to /map + if (nextState.location.pathname === '/challenges') { + replace('/map'); + } + } }; diff --git a/server/boot/a-react.js b/server/boot/a-react.js index 9f9dc6e4f6..730d891da3 100644 --- a/server/boot/a-react.js +++ b/server/boot/a-react.js @@ -15,6 +15,7 @@ const routes = [ '/videos', '/videos/*', '/challenges', + '/challenges/*', '/map' ]; @@ -45,7 +46,8 @@ export default function reactSubRouter(app) { // if react-router does not find a route send down the chain .filter(({ redirect, props }) => { if (!props && redirect) { - res.redirect(redirect.pathname + redirect.search); + log('react router found a redirect'); + return res.redirect(redirect.pathname + redirect.search); } if (!props) { log(`react tried to find ${req.path} but got 404`);