UNPKG

sheercms

Version:

Sheer Cliff CMS is a simple and powerful content management system (CMS) for Node JS.

44 lines (39 loc) 1.24 kB
/* Sheer Cliff CMS Plugin - view - renders EJS views */ var ejs = require('ejs'); var path_module = require('path'); var logger = require('./logger'); module.exports.render = function(str, model) { return ejs.render(str, model); }; /* callback: (err, output) */ module.exports.renderFile = function(view, model, callback) { if (callback) { try { if (view.indexOf('.ejs') == -1) view += '.ejs'; var path = path = path_module.join(__dirname, "..", "views", view); ejs.renderFile(path, model, function (err, output) { if (err) { logger.error(err); callback(err); } else { if (output && output.indexOf("Error:") == 0) { var e = new Error("Error in view.renderFile: " + output); logger.error(e); callback(e, output); } else { callback(null, output); } } }); } catch (e) { logger.error(e); callback(e); } } };