1 | const handlebars = require('handlebars'),
|
2 | fs = require('fs'),
|
3 | i18n = require('./util/i18n');
|
4 |
|
5 | const emailBuilder = {};
|
6 |
|
7 | emailBuilder.buildTemplateEmail = function(data, language = 'pt') {
|
8 | const promise = new Promise(function(resolve) {
|
9 | fs.readFile('./node_modules/asksuite-core/email-template/templates/main.hbs', 'utf-8', function(
|
10 | error,
|
11 | source,
|
12 | ) {
|
13 | handlebars.registerHelper(
|
14 | 'i18n',
|
15 | (phrase, s1, s2, s3) =>
|
16 | new handlebars.SafeString(i18n({ phrase, locale: language }, s1, s2, s3)),
|
17 | );
|
18 |
|
19 | const template = handlebars.compile(source);
|
20 | const result = template(data);
|
21 |
|
22 | resolve(result);
|
23 | });
|
24 | });
|
25 |
|
26 | return promise;
|
27 | };
|
28 |
|
29 | module.exports = emailBuilder;
|