From 3fb86482404e11942cd83c3500a297a3991db0e4 Mon Sep 17 00:00:00 2001 From: Noah Loomans Date: Wed, 13 Sep 2017 16:28:53 +0200 Subject: Restructure project --- src/server/routes/index.js | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 src/server/routes/index.js (limited to 'src/server/routes/index.js') diff --git a/src/server/routes/index.js b/src/server/routes/index.js new file mode 100644 index 0000000..d2267ba --- /dev/null +++ b/src/server/routes/index.js @@ -0,0 +1,31 @@ +'use strict' + +const express = require('express') +const router = express.Router() +const getMeetingpointData = require('../lib/getMeetingpointData') + +/* GET home page. */ +router.get(['/', '/s/*', '/t/*', '/r/*', '/c/*'], function (req, res, next) { + getMeetingpointData().then(data => { + const isBeta = process.env.BETA === '1' + + let flags = [] + if (isBeta) { + flags.push('BETA') + flags.push('NO_FEATURE_DETECT') + } else if (req.query.nfd != null) { + flags.push('NO_FEATURE_DETECT') + } + + const flagsStr = `var FLAGS = ${JSON.stringify(flags)};` + const usersStr = `var USERS = ${JSON.stringify(data.users)};` + const validWeekNumbersStr = `var VALID_WEEK_NUMBERS = ${JSON.stringify(data.validWeekNumbers)}` + + res.render('index', { flagsStr, usersStr, validWeekNumbersStr }) + }).catch(function () { + console.error('Unable to get user info, emergency redirect!') + res.render('redirect') + }) +}) + +module.exports = router -- cgit v1.1