diff options
Diffstat (limited to 'app/routes')
| -rw-r--r-- | app/routes/page/router.ts | 19 | ||||
| -rw-r--r-- | app/routes/special/router.ts | 3 |
2 files changed, 20 insertions, 2 deletions
diff --git a/app/routes/page/router.ts b/app/routes/page/router.ts index af5e844..dc819f8 100644 --- a/app/routes/page/router.ts +++ b/app/routes/page/router.ts @@ -26,11 +26,26 @@ router.get('/:page?', navbar, (req, res, next) => { return; } + let html: string; + let title: string; + + if (page.metadata.errors.length != 0) { + html = '<div class="box-red">This page could not be built due to the following errors:<br><ul>' + page.metadata.errors.forEach(e => { + html += `<li>${e.identifier}: ${e.message}</li>` + }); + html += '</ul>Go <a href="/">home</a>?</div>' + title = 'Page error' + } else { + html = page.html; + title = page.metadata.displayTitle; + } + res.render('page.ejs', { navbar: res.locals.navbarHtml, path: res.locals.path, - content: page.html, - title: page.metadata.displayTitle, + content: html, + title: title, buildTime: new Date(page.buildTime) }); }); diff --git a/app/routes/special/router.ts b/app/routes/special/router.ts index e88919c..26130c5 100644 --- a/app/routes/special/router.ts +++ b/app/routes/special/router.ts @@ -1,5 +1,6 @@ import express from 'express'; import { navbar, page } from '../../middlewares/index.js'; +import { logger } from './../../logger.js' export const router = express.Router({ mergeParams: true }); @@ -30,6 +31,7 @@ router.get('/special/purge/:page/confirm', (req, res, next) => { return; } + logger.info(`Purge for page ${page.standardName} requested by ${req.headers['x-forwarded-for'] || req.socket.remoteAddress }`) if (res.locals.directory.purge(res.locals.path)) { res.status(200).send(); } else { @@ -44,6 +46,7 @@ router.get('/special/rebuild', navbar, (req, res) => { }); router.get('/special/rebuild/confirm', (req, res) => { + logger.info(`Directory rebuild requested by ${req.headers['x-forwarded-for'] || req.socket.remoteAddress }`) if (res.locals.directory.rebuild()) { res.status(200).send(); } else { |
