From e85782f7da44267e11714a63567feb7e0127126e Mon Sep 17 00:00:00 2001 From: Chocobozzz Date: Sat, 7 Nov 2015 18:22:05 +0100 Subject: [PATCH] Views refractoring --- package.json | 1 - routes/api/v1/index.js | 12 +++++---- routes/index.js | 22 +++-------------- routes/views.js | 24 ++++++++++++++++++ server.js | 56 +++++++++++------------------------------- 5 files changed, 49 insertions(+), 66 deletions(-) create mode 100644 routes/views.js diff --git a/package.json b/package.json index 8ef7d1b9b..fbfa11d4e 100644 --- a/package.json +++ b/package.json @@ -17,7 +17,6 @@ "blueimp-file-upload": "^9.10.1", "body-parser": "^1.12.4", "bootstrap": "^3.3.5", - "compression": "^1.5.0", "config": "^1.14.0", "connect-livereload": "^0.5.3", "debug": "^2.2.0", diff --git a/routes/api/v1/index.js b/routes/api/v1/index.js index 9a4ec8438..f5504ad85 100644 --- a/routes/api/v1/index.js +++ b/routes/api/v1/index.js @@ -1,10 +1,12 @@ ;(function () { 'use strict' - var api = {} - api.videos = require('./videos') - api.remoteVideos = require('./remoteVideos') - api.pods = require('./pods') + var express = require('express') + var router = express.Router() - module.exports = api + router.use('/videos', require('./videos')) + router.use('/remotevideos', require('./remoteVideos')) + router.use('/pods', require('./pods')) + + module.exports = router })() diff --git a/routes/index.js b/routes/index.js index 690913a84..ecca80721 100644 --- a/routes/index.js +++ b/routes/index.js @@ -1,24 +1,10 @@ ;(function () { 'use strict' - function getPartial (req, res) { - var directory = req.params.directory - var name = req.params.name - - res.render('partials/' + directory + '/' + name) + var routes = { + api: require('./api/' + global.API_VERSION), + views: require('./views') } - function getIndex (req, res) { - res.render('index') - } - - var express = require('express') - var middleware = require('../middlewares') - - var router = express.Router() - - router.get('/partials/:directory/:name', middleware.cache(), getPartial) - router.get(/^\/(index)?$/, middleware.cache(), getIndex) - - module.exports = router + module.exports = routes })() diff --git a/routes/views.js b/routes/views.js new file mode 100644 index 000000000..690913a84 --- /dev/null +++ b/routes/views.js @@ -0,0 +1,24 @@ +;(function () { + 'use strict' + + function getPartial (req, res) { + var directory = req.params.directory + var name = req.params.name + + res.render('partials/' + directory + '/' + name) + } + + function getIndex (req, res) { + res.render('index') + } + + var express = require('express') + var middleware = require('../middlewares') + + var router = express.Router() + + router.get('/partials/:directory/:name', middleware.cache(), getPartial) + router.get(/^\/(index)?$/, middleware.cache(), getIndex) + + module.exports = router +})() diff --git a/server.js b/server.js index 317d8c3cd..3f68fff18 100644 --- a/server.js +++ b/server.js @@ -32,12 +32,10 @@ var config = require('config') var logger = require('./src/logger') var routes = require('./routes') - var api = require('./routes/api/' + global.API_VERSION) var utils = require('./src/utils') var videos = require('./src/videos') var webtorrent = require('./src/webTorrentNode') - var compression var port = config.get('listen.port') var uploads = config.get('storage.uploads') @@ -52,51 +50,25 @@ // ----------- Views, routes and static files ----------- - if (process.env.NODE_ENV === 'production') { - // logger.log('Production : static files in dist/\n') + // Livereload + app.use(require('connect-livereload')({ + port: 35729 + })) - // GZip compression - compression = require('compression') - app.use(compression()) + require('segfault-handler').registerHandler() - // A month - var maxAge = 86400000 * 30 + app.use(express.static(path.join(__dirname, '/public'), { maxAge: 0 })) - // TODO - app.get(/^\/(index|(partials\/[a-z\/]+))?$/, function (req, res, next) { - if (req.url === '/') { - req.url = '/index' - } + // Jade template from ./views directory + app.set('views', path.join(__dirname, '/views')) + app.set('view engine', 'jade') - req.url += '.html' - next() - }) - - app.use(express.static(path.join(__dirname, '/dist/public'), { maxAge: maxAge })) - app.use(express.static(path.join(__dirname, '/dist/views'), { maxAge: maxAge })) - } else { - // Livereload - app.use(require('connect-livereload')({ - port: 35729 - })) - - require('segfault-handler').registerHandler() - - app.use(express.static(path.join(__dirname, '/public'), { maxAge: 0 })) - - // Jade template from ./views directory - app.set('views', path.join(__dirname, '/views')) - app.set('view engine', 'jade') - - // Views routes - app.use('/', routes) - } - - // ----------- Routes ----------- + // API var api_route = '/api/' + global.API_VERSION - app.use(api_route + '/videos', api.videos) - app.use(api_route + '/remotevideos', api.remoteVideos) - app.use(api_route + '/pods', api.pods) + app.use(api_route, routes.api) + + // Views routes + app.use('/', routes.views) // ----------- Tracker -----------