Skip to content

Commit e3b50e8

Browse files
committed
Merge branch '#47'
2 parents 93b6f65 + 6785d17 commit e3b50e8

File tree

4 files changed

+499
-701
lines changed

4 files changed

+499
-701
lines changed

libs/campaign/emailClient.js

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@
22

33
const campaign = require('campaign');
44
const nodemailer = require('nodemailer');
5-
const util = require('util');
65

76
/**
87
* E-mail client
@@ -30,6 +29,13 @@ const emailClient = function (config) {
3029
case 'mailgun':
3130
provider = require('campaign-mailgun')(config.provider.options);
3231
break;
32+
case 'mailgun-smtp':
33+
smtp = nodemailer.createTransport(config.provider.options);
34+
35+
provider = require('campaign-nodemailer')({
36+
transport: smtp
37+
});
38+
break;
3339
case 'nodemailer':
3440
smtp = nodemailer.createTransport(config.provider.options);
3541

@@ -43,9 +49,9 @@ const emailClient = function (config) {
4349
case 'noop':
4450
provider = {
4551
name: 'noop',
46-
send: function (model, done) {
52+
send: async function () {
4753
// NOOP
48-
done();
54+
return;
4955
},
5056
tweakPlaceholder: function () {
5157
// NOOP
@@ -67,9 +73,6 @@ const emailClient = function (config) {
6773
layout: config.layout || null // Layout template. Absolute path to Mustache template. Null comes down to "layout.mu" bundled with Campaign.
6874
});
6975

70-
71-
client.sendStringAsync = util.promisify(client.sendString);
72-
7376
return client;
7477
};
7578

libs/email.js

Lines changed: 19 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -289,7 +289,7 @@ module.exports = function (app) {
289289
});
290290

291291
// https://github.com/bevacqua/campaign#email-sending-option
292-
return emailClient.sendStringAsync(template.body, emailOptions);
292+
return emailClient.sendString(template.body, emailOptions);
293293
}
294294

295295
/**
@@ -328,7 +328,7 @@ module.exports = function (app) {
328328

329329
emailOptions.linkedData.translations = template.translations;
330330
// https://github.com/bevacqua/campaign#email-sending-option
331-
const userEmailPromise = emailClient.sendStringAsync(template.body, emailOptions);
331+
const userEmailPromise = emailClient.sendString(template.body, emailOptions);
332332

333333
promisesToResolve.push(userEmailPromise);
334334
});
@@ -370,7 +370,7 @@ module.exports = function (app) {
370370
);
371371

372372
emailOptions.linkedData.translations = template.translations;
373-
const userEmailPromise = emailClient.sendStringAsync(template.body, emailOptions);
373+
const userEmailPromise = emailClient.sendString(template.body, emailOptions);
374374

375375
promisesToResolve.push(userEmailPromise);
376376
});
@@ -479,7 +479,7 @@ module.exports = function (app) {
479479
linkedData
480480
};
481481

482-
return emailClient.sendStringAsync(template.body, emailOptions);
482+
return emailClient.sendString(template.body, emailOptions);
483483
});
484484

485485
return handleAllPromises(emailsSendPromises);
@@ -584,7 +584,7 @@ module.exports = function (app) {
584584
}
585585
);
586586
emailOptions.linkedData.translations = template.translations;
587-
const sendEmailPromise = emailClient.sendStringAsync(template.body, emailOptions);
587+
const sendEmailPromise = emailClient.sendString(template.body, emailOptions);
588588

589589
promisesToResolve.push(sendEmailPromise);
590590
}
@@ -699,7 +699,7 @@ module.exports = function (app) {
699699
linkedData
700700
};
701701

702-
return emailClient.sendStringAsync(template.body, emailOptions);
702+
return emailClient.sendString(template.body, emailOptions);
703703
});
704704

705705
return handleAllPromises(emailsSendPromises);
@@ -790,7 +790,7 @@ module.exports = function (app) {
790790
}
791791
);
792792
emailOptions.linkedData.translations = template.translations;
793-
const userEmailPromise = emailClient.sendStringAsync(template.body, emailOptions);
793+
const userEmailPromise = emailClient.sendString(template.body, emailOptions);
794794

795795
promisesToResolve.push(userEmailPromise);
796796
}
@@ -888,7 +888,7 @@ module.exports = function (app) {
888888
);
889889

890890
emailOptions.linkedData.translations = template.translations;
891-
const promiseCreatorEmail = emailClient.sendStringAsync(template.body, emailOptions);
891+
const promiseCreatorEmail = emailClient.sendString(template.body, emailOptions);
892892

893893
promisesToResolve.push(promiseCreatorEmail);
894894
} else {
@@ -942,7 +942,7 @@ module.exports = function (app) {
942942
}
943943
);
944944
emailOptions.linkedData.translations = template.translations;
945-
const promiseModeratorEmail = emailClient.sendStringAsync(template.body, emailOptions);
945+
const promiseModeratorEmail = emailClient.sendString(template.body, emailOptions);
946946

947947
promisesToResolve.push(promiseModeratorEmail);
948948
}
@@ -1018,7 +1018,7 @@ module.exports = function (app) {
10181018
);
10191019
emailOptions.linkedData.translations = template.translations;
10201020

1021-
return await emailClient.sendStringAsync(template.body, emailOptions);
1021+
return await emailClient.sendString(template.body, emailOptions);
10221022
};
10231023
sendEmailPromises.push(sendReporterEmail());
10241024
} else {
@@ -1052,7 +1052,7 @@ module.exports = function (app) {
10521052
);
10531053
emailOptions.linkedData.translations = template.translations;
10541054

1055-
return await emailClient.sendStringAsync(template.body, emailOptions);
1055+
return await emailClient.sendString(template.body, emailOptions);
10561056
};
10571057
sendEmailPromises.push(sendTopicMemberEmail());
10581058
} else {
@@ -1087,7 +1087,7 @@ module.exports = function (app) {
10871087
);
10881088
emailOptions.linkedData.translations = template.translations;
10891089

1090-
return await emailClient.sendStringAsync(template.body, emailOptions);
1090+
return await emailClient.sendString(template.body, emailOptions);
10911091
};
10921092
sendEmailPromises.push(sendTopicModeratorEmail());
10931093
} else {
@@ -1157,7 +1157,7 @@ module.exports = function (app) {
11571157
);
11581158
emailOptions.linkedData.translations = template.translations;
11591159

1160-
return await emailClient.sendStringAsync(template.body, emailOptions);
1160+
return await emailClient.sendString(template.body, emailOptions);
11611161
};
11621162
sendEmailPromiseses.push(sendReporterEmail());
11631163
} else {
@@ -1192,7 +1192,7 @@ module.exports = function (app) {
11921192
);
11931193
emailOptions.linkedData.translations = template.translations;
11941194

1195-
return await emailClient.sendStringAsync(template.body, emailOptions);
1195+
return await emailClient.sendString(template.body, emailOptions);
11961196
};
11971197
sendEmailPromiseses.push(sendTopicMemberEmail());
11981198
} else {
@@ -1254,7 +1254,7 @@ module.exports = function (app) {
12541254
);
12551255
emailOptions.linkedData.translations = template.translations;
12561256

1257-
return emailClient.sendStringAsync(template.body, emailOptions);
1257+
return emailClient.sendString(template.body, emailOptions);
12581258
};
12591259
sendEmailPromises.push(sendTopicModeratorEmail());
12601260
} else {
@@ -1327,7 +1327,7 @@ module.exports = function (app) {
13271327
);
13281328
emailOptions.linkedData.translations = template.translations;
13291329

1330-
return await emailClient.sendStringAsync(template.body, emailOptions);
1330+
return await emailClient.sendString(template.body, emailOptions);
13311331
};
13321332
sendEmailPromises.push(sendReporterEmail());
13331333
} else {
@@ -1357,7 +1357,7 @@ module.exports = function (app) {
13571357
);
13581358
emailOptions.linkedData.translations = template.translations;
13591359

1360-
return await emailClient.sendStringAsync(template.body, emailOptions);
1360+
return await emailClient.sendString(template.body, emailOptions);
13611361
};
13621362
sendEmailPromises.push(sendTopicMemberEmail());
13631363
} else {
@@ -1409,7 +1409,7 @@ module.exports = function (app) {
14091409
linkedData.translations = template.translations;
14101410

14111411
const emailToParliamentPromise = emailClient
1412-
.sendStringAsync(
1412+
.sendString(
14131413
template.body,
14141414
{
14151415
from: from,
@@ -1451,7 +1451,7 @@ module.exports = function (app) {
14511451

14521452
// Email to Topic creator
14531453
const emailToTopicCreatorPromise = emailClient
1454-
.sendStringAsync(
1454+
.sendString(
14551455
template.body,
14561456
{
14571457
from: from,

0 commit comments

Comments
 (0)