Added initial support for trigger based automation
This commit is contained in:
parent
cc1c70d57f
commit
b16209f23e
36 changed files with 2025 additions and 263 deletions
|
@ -11,32 +11,25 @@ let lists = require('./lists');
|
|||
|
||||
let log = require('npmlog');
|
||||
let urllib = require('url');
|
||||
let he = require('he');
|
||||
|
||||
module.exports.resolve = (campaignCid, linkCid, callback) => {
|
||||
campaigns.getByCid(campaignCid, (err, campaign) => {
|
||||
module.exports.resolve = (linkCid, callback) => {
|
||||
db.getConnection((err, connection) => {
|
||||
if (err) {
|
||||
return callback(err);
|
||||
}
|
||||
if (!campaign) {
|
||||
return callback('Campaign not found');
|
||||
}
|
||||
db.getConnection((err, connection) => {
|
||||
let query = 'SELECT id, url FROM links WHERE `cid`=? LIMIT 1';
|
||||
connection.query(query, [linkCid], (err, rows) => {
|
||||
connection.release();
|
||||
if (err) {
|
||||
return callback(err);
|
||||
}
|
||||
let query = 'SELECT id, url FROM links WHERE `campaign`=? AND `cid`=? LIMIT 1';
|
||||
connection.query(query, [campaign.id, linkCid], (err, rows) => {
|
||||
connection.release();
|
||||
if (err) {
|
||||
return callback(err);
|
||||
}
|
||||
|
||||
if (rows && rows.length) {
|
||||
return callback(null, rows[0].id, rows[0].url);
|
||||
}
|
||||
if (rows && rows.length) {
|
||||
return callback(null, rows[0].id, rows[0].url);
|
||||
}
|
||||
|
||||
return callback(null, false);
|
||||
});
|
||||
return callback(null, false);
|
||||
});
|
||||
});
|
||||
};
|
||||
|
@ -46,6 +39,9 @@ module.exports.countClick = (remoteIp, campaignCid, listCid, subscriptionCid, li
|
|||
if (err) {
|
||||
return callback(err);
|
||||
}
|
||||
if(!data){
|
||||
return callback(null, false);
|
||||
}
|
||||
db.getConnection((err, connection) => {
|
||||
if (err) {
|
||||
return callback(err);
|
||||
|
@ -295,7 +291,9 @@ module.exports.updateLinks = (campaign, list, subscription, serviceUrl, message,
|
|||
return replaceUrls();
|
||||
}
|
||||
|
||||
module.exports.add(urlItem.value, campaign.id, (err, linkId, cid) => {
|
||||
module.exports.add(he.decode(urlItem.value, {
|
||||
isAttributeValue: true
|
||||
}), campaign.id, (err, linkId, cid) => {
|
||||
if (err) {
|
||||
log.error('Link', err.stack);
|
||||
return storeNext();
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue