Ghost/core/frontend/services/routing/helpers/renderer.js
Sam Lord 35e51e364b Switch to @tryghost/debug, remove ghost-ignition
no issue
The only pieces of Ghost-Ignition used in Ghost were debug and
logging. Both of these modules have been superceded by the Framework
monorepo, and all usages of Ignition have now been removed, replaced
with @tryghost/debug and @tryghost/logging.
2021-06-15 17:24:22 +01:00

31 lines
940 B
JavaScript

const debug = require('@tryghost/debug')('services:routing:helpers:renderer');
const setContext = require('./context');
const templates = require('./templates');
/**
* @description Helper function to finally render the data.
* @param {Object} req
* @param {Object} res
* @param {Object} data
*/
module.exports = function renderer(req, res, data) {
// Set response context
setContext(req, res, data);
// Set template
templates.setTemplate(req, res, data);
debug('Rendering template: ' + res._template + ' for: ' + req.originalUrl);
debug('res.locals', res.locals);
// CASE: You can set the content type of the page in your routes.yaml file
if (res.routerOptions && res.routerOptions.contentType) {
if (res.routerOptions.templates.indexOf(res._template) !== -1) {
res.type(res.routerOptions.contentType);
}
}
// Render Call
res.render(res._template, data);
};