Updated RSS merge tag reference
This commit is contained in:
parent
d555ca44ac
commit
408db13fd4
5 changed files with 48 additions and 21 deletions
|
@ -6,7 +6,8 @@ let templates = require('../lib/models/templates');
|
||||||
let campaigns = require('../lib/models/campaigns');
|
let campaigns = require('../lib/models/campaigns');
|
||||||
|
|
||||||
module.exports = {
|
module.exports = {
|
||||||
getResource
|
getResource,
|
||||||
|
getMergeTagsForResource
|
||||||
};
|
};
|
||||||
|
|
||||||
function getResource(type, id, callback) {
|
function getResource(type, id, callback) {
|
||||||
|
@ -53,7 +54,7 @@ function getMergeTagsForResource(resource, callback) {
|
||||||
return callback(err.message || err);
|
return callback(err.message || err);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!resource.list) {
|
if (!Number(resource.list)) {
|
||||||
return callback(null, defaultMergeTags);
|
return callback(null, defaultMergeTags);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -62,7 +63,17 @@ function getMergeTagsForResource(resource, callback) {
|
||||||
return callback(err.message || err);
|
return callback(err.message || err);
|
||||||
}
|
}
|
||||||
|
|
||||||
callback(null, defaultMergeTags.concat(listMergeTags));
|
if (resource.type !== 2) {
|
||||||
|
return callback(null, defaultMergeTags.concat(listMergeTags));
|
||||||
|
}
|
||||||
|
|
||||||
|
helpers.getRSSMergeTags((err, rssMergeTags) => {
|
||||||
|
if (err) {
|
||||||
|
return callback(err.message || err);
|
||||||
|
}
|
||||||
|
|
||||||
|
callback(null, defaultMergeTags.concat(listMergeTags, rssMergeTags));
|
||||||
|
});
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
|
@ -52,7 +52,7 @@ module.exports.fetch = (url, callback) => {
|
||||||
link: item.link,
|
link: item.link,
|
||||||
content: item.description || item.summary,
|
content: item.description || item.summary,
|
||||||
summary: item.summary || item.description,
|
summary: item.summary || item.description,
|
||||||
image_url: item.image.url,
|
image_url: item.image.url
|
||||||
};
|
};
|
||||||
entries.push(entry);
|
entries.push(entry);
|
||||||
}
|
}
|
||||||
|
|
|
@ -16,6 +16,7 @@ let hbs = require('hbs');
|
||||||
|
|
||||||
module.exports = {
|
module.exports = {
|
||||||
getDefaultMergeTags,
|
getDefaultMergeTags,
|
||||||
|
getRSSMergeTags,
|
||||||
getListMergeTags,
|
getListMergeTags,
|
||||||
captureFlashMessages,
|
captureFlashMessages,
|
||||||
injectCustomFormData,
|
injectCustomFormData,
|
||||||
|
@ -59,6 +60,32 @@ function getDefaultMergeTags(callback) {
|
||||||
}]);
|
}]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function getRSSMergeTags(callback) {
|
||||||
|
// Using a callback for the sake of future-proofness
|
||||||
|
callback(null, [{
|
||||||
|
key: 'RSS_ENTRY',
|
||||||
|
value: _('content from an RSS entry')
|
||||||
|
}, {
|
||||||
|
key: 'RSS_ENTRY_TITLE',
|
||||||
|
value: _('RSS entry title')
|
||||||
|
}, {
|
||||||
|
key: 'RSS_ENTRY_DATE',
|
||||||
|
value: _('RSS entry date')
|
||||||
|
}, {
|
||||||
|
key: 'RSS_ENTRY_LINK',
|
||||||
|
value: _('RSS entry link')
|
||||||
|
}, {
|
||||||
|
key: 'RSS_ENTRY_CONTENT',
|
||||||
|
value: _('content from an RSS entry')
|
||||||
|
}, {
|
||||||
|
key: 'RSS_ENTRY_SUMMARY',
|
||||||
|
value: _('RSS entry summary')
|
||||||
|
}, {
|
||||||
|
key: 'RSS_ENTRY_IMAGE_URL',
|
||||||
|
value: _('RSS entry image URL')
|
||||||
|
}]);
|
||||||
|
}
|
||||||
|
|
||||||
function getListMergeTags(listId, callback) {
|
function getListMergeTags(listId, callback) {
|
||||||
lists.get(listId, (err, list) => {
|
lists.get(listId, (err, list) => {
|
||||||
if (err) {
|
if (err) {
|
||||||
|
|
|
@ -9,7 +9,7 @@ let campaigns = require('../lib/models/campaigns');
|
||||||
let subscriptions = require('../lib/models/subscriptions');
|
let subscriptions = require('../lib/models/subscriptions');
|
||||||
let settings = require('../lib/models/settings');
|
let settings = require('../lib/models/settings');
|
||||||
let tools = require('../lib/tools');
|
let tools = require('../lib/tools');
|
||||||
let helpers = require('../lib/helpers');
|
let editorHelpers = require('../lib/editor-helpers.js');
|
||||||
let striptags = require('striptags');
|
let striptags = require('striptags');
|
||||||
let passport = require('../lib/passport');
|
let passport = require('../lib/passport');
|
||||||
let htmlescape = require('escape-html');
|
let htmlescape = require('escape-html');
|
||||||
|
@ -186,30 +186,19 @@ router.get('/edit/:id', passport.csrfProtection, (req, res, next) => {
|
||||||
view = 'campaigns/edit';
|
view = 'campaigns/edit';
|
||||||
}
|
}
|
||||||
|
|
||||||
helpers.getDefaultMergeTags((err, defaultMergeTags) => {
|
editorHelpers.getMergeTagsForResource(campaign, (err, mergeTags) => {
|
||||||
if (err) {
|
if (err) {
|
||||||
req.flash('danger', err.message || err);
|
req.flash('danger', err.message || err);
|
||||||
return res.redirect('/');
|
return res.redirect('/');
|
||||||
}
|
}
|
||||||
|
|
||||||
helpers.getListMergeTags(campaign.list, (err, listMergeTags) => {
|
campaign.mergeTags = mergeTags;
|
||||||
if (err) {
|
|
||||||
req.flash('danger', err.message || err);
|
|
||||||
return res.redirect('/');
|
|
||||||
}
|
|
||||||
|
|
||||||
campaign.mergeTags = defaultMergeTags.concat(listMergeTags);
|
|
||||||
campaign.type === 2 && campaign.mergeTags.push({
|
|
||||||
key: 'RSS_ENTRY',
|
|
||||||
value: _('content from an RSS entry')
|
|
||||||
});
|
|
||||||
res.render(view, campaign);
|
res.render(view, campaign);
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
});
|
|
||||||
});
|
});
|
||||||
|
|
||||||
router.post('/edit', passport.parseForm, passport.csrfProtection, (req, res) => {
|
router.post('/edit', passport.parseForm, passport.csrfProtection, (req, res) => {
|
||||||
|
|
|
@ -71,8 +71,6 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
{{> merge_tag_reference}}
|
|
||||||
|
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label for="template" class="col-sm-2 control-label">{{#translate}}RSS Feed Url{{/translate}}</label>
|
<label for="template" class="col-sm-2 control-label">{{#translate}}RSS Feed Url{{/translate}}</label>
|
||||||
<div class="col-sm-10">
|
<div class="col-sm-10">
|
||||||
|
@ -81,6 +79,8 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
{{> merge_tag_reference}}
|
||||||
|
|
||||||
{{#if disableWysiwyg}}
|
{{#if disableWysiwyg}}
|
||||||
{{> codeeditor}}
|
{{> codeeditor}}
|
||||||
{{else}}
|
{{else}}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue