UNPKG

content-generator

Version:

Easy template generator to manage and save templates by key and languagecode.

50 lines (36 loc) 1.08 kB
'use strict'; const getTemplateById = require('./getTemplateById'); const checkIfTemplateExist = require('./checkIfTemplateExist'); const nunjucks = require('nunjucks'); const htmlToText = require('html-to-text') const generateHtml = (json, key, lang, callback) => { if (!json) { const errMsg = 'Function is called without a json object'; return callback(errMsg); } if (!key) { const errMsg = 'Function is called without a key'; return callback(errMsg); } if (!lang) { const errMsg = 'Function is called without a language'; return callback(errMsg); } checkIfTemplateExist(key, lang, (err, res, id) => { if (err) { return callback(err); } if (!res) { return callback('The named template is not famous in system'); } getTemplateById(id, (err2, res2) => { if (err2) { return callback(err2); } res2.html = nunjucks.renderString(res2.html, json); res2.plain = htmlToText.fromString(res2.html); callback(null, res2); }); }); }; module.exports = generateHtml;