0
Fork 0
mirror of https://github.com/TryGhost/Ghost.git synced 2025-02-03 23:00:14 -05:00
ghost/core/frontend/apps/private-blogging/lib/router.js
Hannah Wolfe 08479f3816
Moved routing helpers to rendering service
- The helpers folder was full of things used for rendering pages
- It belongs as its own service so that we can see what it really does
2022-04-05 20:12:20 +01:00

45 lines
1.2 KiB
JavaScript

const path = require('path');
const express = require('../../../../shared/express');
const middleware = require('./middleware');
const bodyParser = require('body-parser');
const renderer = require('../../../services/rendering');
const web = require('../../../../server/web');
const templateName = 'private';
const privateRouter = express.Router(templateName);
function _renderer(req, res) {
res.routerOptions = {
type: 'custom',
templates: templateName,
defaultTemplate: path.resolve(__dirname, 'views', `${templateName}.hbs`)
};
// Renderer begin
// Format data
let data = {};
if (res.error) {
data.error = res.error;
}
// Render Call
return renderer.renderer(req, res, data);
}
// password-protected frontend route
privateRouter
.route('/')
.get(
middleware.redirectPrivateToHomeIfLoggedIn,
_renderer
)
.post(
bodyParser.urlencoded({extended: true}),
middleware.redirectPrivateToHomeIfLoggedIn,
web.shared.middleware.brute.privateBlog,
middleware.doLoginToPrivateSite,
_renderer
);
module.exports = privateRouter;
module.exports.renderer = _renderer;