Merge branch 'rubenvereecken-remove_trailing_slashes'

This commit is contained in:
Nick Winter 2014-07-13 17:34:58 -07:00
commit 5121eedfb3
2 changed files with 8 additions and 0 deletions

View file

@ -17,7 +17,9 @@ module.exports = class CocoRouter extends Backbone.Router
'editor/:model(/:slug_or_id)(/:subview)': 'editorModelView'
# Direct links
'test': go('TestView')
'test/*subpath': go('TestView')
'demo': go('DemoView')
'demo/*subpath': go('DemoView')
'play/ladder/:levelID': go('play/ladder/ladder_view')
'play/ladder': go('play/ladder_home')

View file

@ -70,11 +70,17 @@ setupMiddlewareToSendOldBrowserWarningWhenPlayersViewLevelDirectly = (app) ->
return next() if req.query['try-old-browser-anyway'] or not isOldBrowser req
res.sendfile(path.join(__dirname, 'public', 'index_old_browser.html'))
setupTrailingSlashRemovingMiddleware = (app) ->
app.use (req, res, next) ->
return res.redirect 301, req.url[...-1] if req.url.length > 1 and req.url.slice(-1) is '/'
next()
exports.setupMiddleware = (app) ->
setupMiddlewareToSendOldBrowserWarningWhenPlayersViewLevelDirectly app
setupExpressMiddleware app
setupPassportMiddleware app
setupOneSecondDelayMiddleware app
setupTrailingSlashRemovingMiddleware app
###Routing function implementations###