Added option to disable WYSIWYG editor
This commit is contained in:
parent
58cce00829
commit
02c8fb4dda
20 changed files with 147 additions and 64 deletions
|
@ -130,40 +130,47 @@ router.post('/create', passport.parseForm, passport.csrfProtection, (req, res) =
|
|||
});
|
||||
});
|
||||
|
||||
router.get('/edit/:id', passport.csrfProtection, (req, res) => {
|
||||
router.get('/edit/:id', passport.csrfProtection, (req, res, next) => {
|
||||
campaigns.get(req.params.id, false, (err, campaign) => {
|
||||
if (err || !campaign) {
|
||||
req.flash('danger', err && err.message || err || 'Could not find campaign with specified ID');
|
||||
return res.redirect('/campaigns');
|
||||
}
|
||||
|
||||
lists.quicklist((err, listItems) => {
|
||||
settings.list(['disableWysiwyg'], (err, configItems) => {
|
||||
if (err) {
|
||||
req.flash('danger', err.message || err);
|
||||
return res.redirect('/');
|
||||
return next(err);
|
||||
}
|
||||
|
||||
if (Number(campaign.list)) {
|
||||
listItems.forEach(list => {
|
||||
list.segments.forEach(segment => {
|
||||
if (segment.id === campaign.segment) {
|
||||
segment.selected = true;
|
||||
lists.quicklist((err, listItems) => {
|
||||
if (err) {
|
||||
req.flash('danger', err.message || err);
|
||||
return res.redirect('/');
|
||||
}
|
||||
|
||||
if (Number(campaign.list)) {
|
||||
listItems.forEach(list => {
|
||||
list.segments.forEach(segment => {
|
||||
if (segment.id === campaign.segment) {
|
||||
segment.selected = true;
|
||||
}
|
||||
});
|
||||
if (list.id === campaign.list && !campaign.segment) {
|
||||
list.selected = true;
|
||||
}
|
||||
});
|
||||
if (list.id === campaign.list && !campaign.segment) {
|
||||
list.selected = true;
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
campaign.csrfToken = req.csrfToken();
|
||||
campaign.listItems = listItems;
|
||||
campaign.useEditor = true;
|
||||
campaign.csrfToken = req.csrfToken();
|
||||
campaign.listItems = listItems;
|
||||
campaign.useEditor = true;
|
||||
|
||||
campaign.showGeneral = req.query.tab === 'general' || !req.query.tab;
|
||||
campaign.showTemplate = req.query.tab === 'template';
|
||||
campaign.disableWysiwyg = configItems.disableWysiwyg;
|
||||
campaign.showGeneral = req.query.tab === 'general' || !req.query.tab;
|
||||
campaign.showTemplate = req.query.tab === 'template';
|
||||
|
||||
res.render('campaigns/edit', campaign);
|
||||
res.render('campaigns/edit', campaign);
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
||||
|
|
|
@ -11,7 +11,7 @@ let url = require('url');
|
|||
|
||||
let settings = require('../lib/models/settings');
|
||||
|
||||
let allowedKeys = ['service_url', 'smtp_hostname', 'smtp_port', 'smtp_encryption', 'smtp_disable_auth', 'smtp_user', 'smtp_pass', 'admin_email', 'smtp_log', 'smtp_max_connections', 'smtp_max_messages', 'smtp_self_signed', 'default_from', 'default_address', 'default_subject', 'default_homepage', 'default_postaddress', 'default_sender', 'verp_hostname', 'verp_use'];
|
||||
let allowedKeys = ['service_url', 'smtp_hostname', 'smtp_port', 'smtp_encryption', 'smtp_disable_auth', 'smtp_user', 'smtp_pass', 'admin_email', 'smtp_log', 'smtp_max_connections', 'smtp_max_messages', 'smtp_self_signed', 'default_from', 'default_address', 'default_subject', 'default_homepage', 'default_postaddress', 'default_sender', 'verp_hostname', 'verp_use', 'disable_wysiwyg'];
|
||||
|
||||
router.all('/*', (req, res, next) => {
|
||||
if (!req.user) {
|
||||
|
@ -76,7 +76,7 @@ router.post('/update', passport.parseForm, passport.csrfProtection, (req, res) =
|
|||
});
|
||||
|
||||
// checkboxs are not included in value listing if left unchecked
|
||||
['smtp_log', 'smtp_self_signed', 'smtp_disable_auth', 'verp_use'].forEach(key => {
|
||||
['smtp_log', 'smtp_self_signed', 'smtp_disable_auth', 'verp_use', 'disable_wysiwyg'].forEach(key => {
|
||||
if (keys.indexOf(key) < 0) {
|
||||
keys.push(key);
|
||||
values.push('');
|
||||
|
|
|
@ -42,7 +42,8 @@ router.get('/subscribe/:cid', (req, res, next) => {
|
|||
res.render('subscription/subscribed', {
|
||||
title: list.name,
|
||||
layout: 'subscription/layout',
|
||||
homepage: configItems.defaultHomepage || configItems.serviceUrl
|
||||
homepage: configItems.defaultHomepage || configItems.serviceUrl,
|
||||
preferences: '/subscription/' + list.cid + '/manage/' + subscription.cid
|
||||
});
|
||||
});
|
||||
});
|
||||
|
|
|
@ -47,7 +47,7 @@ router.get('/create', passport.csrfProtection, (req, res, next) => {
|
|||
data.csrfToken = req.csrfToken();
|
||||
data.useEditor = true;
|
||||
|
||||
settings.list(['defaultPostaddress', 'defaultSender'], (err, configItems) => {
|
||||
settings.list(['defaultPostaddress', 'defaultSender', 'disableWysiwyg'], (err, configItems) => {
|
||||
if (err) {
|
||||
return next(err);
|
||||
}
|
||||
|
@ -64,6 +64,7 @@ router.get('/create', passport.csrfProtection, (req, res, next) => {
|
|||
|
||||
data.html = data.html || rendererHtml(configItems);
|
||||
data.text = data.text || rendererText(configItems);
|
||||
data.disableWysiwyg = configItems.disableWysiwyg;
|
||||
res.render('templates/create', data);
|
||||
});
|
||||
});
|
||||
|
@ -81,15 +82,21 @@ router.post('/create', passport.parseForm, passport.csrfProtection, (req, res) =
|
|||
});
|
||||
});
|
||||
|
||||
router.get('/edit/:id', passport.csrfProtection, (req, res) => {
|
||||
router.get('/edit/:id', passport.csrfProtection, (req, res, next) => {
|
||||
templates.get(req.params.id, (err, template) => {
|
||||
if (err || !template) {
|
||||
req.flash('danger', err && err.message || err || 'Could not find template with specified ID');
|
||||
return res.redirect('/templates');
|
||||
}
|
||||
template.csrfToken = req.csrfToken();
|
||||
template.useEditor = true;
|
||||
res.render('templates/edit', template);
|
||||
settings.list(['disableWysiwyg'], (err, configItems) => {
|
||||
if (err) {
|
||||
return next(err);
|
||||
}
|
||||
template.csrfToken = req.csrfToken();
|
||||
template.useEditor = true;
|
||||
template.disableWysiwyg = configItems.disableWysiwyg;
|
||||
res.render('templates/edit', template);
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue