import express from 'express' import pkg from '../package.json' assert { type: "json" } import { setLanguage } from '../charts/utilities.js' const router = express.Router() const { name, version, date } = pkg const renderOpts = (sid, cat) => { let tit = 'Feinstaub' if (cat === 'multigeiger') { tit = 'Geiger' } else if (cat == 'noise') { tit = 'Noise' } return { title: tit, version: version, date: date.slice(0, 10), csensor: sid, category: cat } } let i18n; const translate = (x) => { return i18n.t(x) } const getIndex = (cat) => { if (cat == 'noise') { return 'index_noise' } else if (cat === 'multigeiger') { return 'index_geiger' } } /* GET home page. If there is no parameter 'lng=xx', check stored language and call te page again with correct language (chglang.js)) */ router.get('/', function (req, res, next) { // req.i18n.changeLanguage('de') if (req.query.lng === undefined) { res.render('chglang', {sensorid: ''}) } else { i18n = req.i18n let opts = renderOpts(-1, req.app.get('category')) setLanguage(req.query.lng) res.render(getIndex(opts.category), opts) } }) // // router.get('/', function(req, res, next) { // // req.i18n.changeLanguage('de') // res.render('index', renderOpts(-1)) // }) router.get('/:sid', async function (req, res, next) { const sid = req.params.sid let opts if (req.query.lng === undefined) { res.render('chglang', { sensorid: sid }) } else { i18n = req.i18n if (isNaN(sid)) { opts = renderOpts(-1, req.app.get('category')) } else { opts = renderOpts(sid, req.app.get('category')) } res.render(getIndex(opts.category), opts) } }) //export default router export { router, translate }