content-generator
Version:
Easy template generator to manage and save templates by key and languagecode.
62 lines (45 loc) • 1.36 kB
JavaScript
;
const mdbhandler = require('mongodb-handler');
const processenv = require('processenv');
const checkIfTemplateExist = require('./checkIfTemplateExist');
const collection = processenv('CTM_COLLECTION') || 'CM_Templates';
const updateTemplate = (obj, callback) => {
if (!obj) {
const errMsg = 'Function is called without object';
return callback(errMsg);
}
if (!obj.key) {
const errMsg = 'Function is called without key';
return callback(errMsg);
}
if (!obj.lang) {
const errMsg = 'Function is called without language';
return callback(errMsg);
}
checkIfTemplateExist(obj.key, obj.lang, (err, res) => {
if (err) {
return callback(err);
}
if (!res) {
return callback('The named language key combination is not famous in system');
}
mdbhandler.fetch({ collection, doc: { key: obj.key, lang: obj.lang }}, (err, res) => {
if (err) {
return callback(err);
}
if (obj.html) {
res[0].html = obj.html;
}
if (obj.subject) {
res[0].subject = obj.subject;
}
mdbhandler.update({ collection, update: { key: obj.key, lang: obj.lang }, doc: res[0] }, (err2) => {
if (err2) {
return callback(err2);
}
callback(null, true);
});
});
});
};
module.exports = updateTemplate;