Added option to schedule sending
This commit is contained in:
parent
2196503cae
commit
e396219c03
6 changed files with 95 additions and 18 deletions
|
@ -297,7 +297,7 @@ module.exports.delete = (id, callback) => {
|
|||
});
|
||||
};
|
||||
|
||||
module.exports.send = (id, callback) => {
|
||||
module.exports.send = (id, scheduled, callback) => {
|
||||
module.exports.get(id, false, (err, campaign) => {
|
||||
if (err) {
|
||||
return callback(err);
|
||||
|
@ -312,8 +312,18 @@ module.exports.send = (id, callback) => {
|
|||
return callback(err);
|
||||
}
|
||||
|
||||
let query;
|
||||
let values;
|
||||
if (scheduled) {
|
||||
query = 'UPDATE campaigns SET `status`=2, `scheduled`=?, `status_change`=NOW() WHERE id=? LIMIT 1';
|
||||
values = [scheduled, id];
|
||||
} else {
|
||||
query = 'UPDATE campaigns SET `status`=2, `status_change`=NOW() WHERE id=? LIMIT 1';
|
||||
values = [id];
|
||||
}
|
||||
|
||||
// campaigns marked as status=2 should be picked up by the sending processes
|
||||
connection.query('UPDATE campaigns SET `status`=2, `status_change`=NOW() WHERE id=? LIMIT 1', [id], err => {
|
||||
connection.query(query, values, err => {
|
||||
connection.release();
|
||||
if (err) {
|
||||
return callback(err);
|
||||
|
@ -357,7 +367,7 @@ module.exports.reset = (id, callback) => {
|
|||
return callback(err);
|
||||
}
|
||||
|
||||
if (campaign.status !== 3) {
|
||||
if (campaign.status !== 3 && !(campaign.status === 2 && campaign.scheduled > new Date())) {
|
||||
return callback(null, false);
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue