From 409621c661b0db2e41c0f4607b9d82b8ddc524a4 Mon Sep 17 00:00:00 2001 From: barisusakli Date: Fri, 19 Aug 2016 17:50:03 +0300 Subject: [PATCH] closes #4843 --- src/controllers/index.js | 4 ++ src/middleware/maintenance.js | 76 ++++++++++++++++++----------------- src/routes/index.js | 3 ++ 3 files changed, 46 insertions(+), 37 deletions(-) diff --git a/src/controllers/index.js b/src/controllers/index.js index 253c5ffe43..47047924a4 100644 --- a/src/controllers/index.js +++ b/src/controllers/index.js @@ -339,6 +339,10 @@ Controllers.termsOfUse = function(req, res, next) { res.render('tos', {termsOfUse: meta.config.termsOfUse}); }; +Controllers.ping = function(req, res) { + res.status(200).send(req.path === '/sping' ? 'healthy' : '200'); +}; + Controllers.handle404 = function(req, res) { var relativePath = nconf.get('relative_path'); var isLanguage = new RegExp('^' + relativePath + '/language/.*/.*.json'); diff --git a/src/middleware/maintenance.js b/src/middleware/maintenance.js index f03a804bb9..33079b88ef 100644 --- a/src/middleware/maintenance.js +++ b/src/middleware/maintenance.js @@ -3,8 +3,6 @@ var nconf = require('nconf'); var meta = require('../meta'); var user = require('../user'); -var translator = require('../../public/src/modules/translator'); - module.exports = function(middleware) { @@ -15,42 +13,46 @@ module.exports = function(middleware) { var url = req.url.replace(nconf.get('relative_path'), ''); var allowedRoutes = [ - '^/login', - '^/stylesheet.css', - '^/favicon', - '^/nodebb.min.js', - '^/vendor/fontawesome/fonts/fontawesome-webfont.woff', - '^/src/(modules|client)/[\\w/]+.js', - '^/templates/[\\w/]+.tpl', - '^/api/login', - '^/api/widgets/render', - '^/language/.+', - '^/uploads/system/site-logo.png' - ], - render = function() { - res.status(503); - var data = { - site_title: meta.config.title || 'NodeBB', - message: meta.config.maintenanceModeMessage - }; - if (!isApiRoute.test(url)) { - middleware.buildHeader(req, res, function() { - res.render('503', data); - }); - } else { - res.json(data); - } - }, - isAllowed = function(url) { - for(var x=0,numAllowed=allowedRoutes.length,route;x