2019-08-13 18:00:27 +00:00
const mailjet _public = "c9cbd50d7f4afe487e56949f95cb28a0" ;
const mailjet _private = "f8b77ee8e7b1181d94f07905d90e18c6" ;
const mailjet _from _email = "info@loquedeverdadimporta.org" ;
const mailjet _from _name = "Fundación Lo Que De Verdad Importa" ;
/ * *
* Enviar un email
* @ param { number } data . to - Email destino
* @ param { number } data . name - Nombre del contacto destino
* @ param { number } data . subject - Asunto
* @ param { number } data . text - Cuerpo del mensaje en texto plano
* @ param { number } data . html - Cuerpo del mensaje en HTML
* @ return { Promise }
*
* /
2019-08-29 18:08:22 +00:00
function send ( header , body ) {
const params = Object . assign (
{
"From" : {
"Email" : mailjet _from _email ,
"Name" : mailjet _from _name
} ,
"To" : [ {
"Email" : header . to ,
"Name" : header . name
} ] ,
"Subject" : header . subject ,
} ,
2019-10-15 11:26:05 +00:00
( ! header . bcc ) ? { } : {
"Bcc" : [ {
"Email" : header . bcc ,
"Name" : header . bccName
} ]
} ,
2019-11-28 15:04:04 +00:00
/ *
{
2019-11-28 17:34:47 +00:00
"InlinedAttachments" : [
{
"ContentType" : "image/png" ,
"Content-Disposition" : "inline" ,
"Filename" : "qr.png" ,
"ContentID" : "id1" ,
"Base64Content" : "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"
} ,
] ,
2019-11-28 15:04:04 +00:00
"TextPart" : "Dear passenger 1, welcome to Mailjet! May the delivery force be with you!" ,
2019-11-28 17:34:47 +00:00
"HTMLPart" : "<h3>Dear passenger 1, welcome to <img src=\"data:image/jpeg;base64,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\" src=\"cid:id1\" > <a href=\"https://www.mailjet.com/\">Mailjet</a>!</h3><br />May the delivery force be with you!"
} ,
2019-11-28 15:04:04 +00:00
* /
2019-10-15 11:26:05 +00:00
body ,
2019-08-29 18:08:22 +00:00
) ;
2019-10-15 11:26:05 +00:00
//console.log('PARAAAAAAAAAAAAAAAAAAAAMSSS MAILLL>', params);
2019-08-13 18:00:27 +00:00
const mailjet = require ( 'node-mailjet' )
. connect ( mailjet _public , mailjet _private )
const request = mailjet
. post ( "send" , { 'version' : 'v3.1' } )
. request ( {
2019-08-29 18:08:22 +00:00
"Messages" : [ params ]
2019-08-13 18:00:27 +00:00
} )
request
. then ( ( result ) => {
2019-11-29 11:06:24 +00:00
console . log ( 'Envio correo >>>>' ) ;
2019-09-02 11:57:58 +00:00
console . log ( result . body ) ;
2019-08-13 18:00:27 +00:00
return result ;
} )
. catch ( ( error ) => {
2019-09-02 11:57:58 +00:00
console . log ( error . statusCode ) ;
console . log ( error ) ;
2019-08-13 18:00:27 +00:00
return error ;
} )
2019-08-29 18:08:22 +00:00
} ;
/ * *
* Enviar un email con entrada
* @ header
* @ param { number } data . to - Email destino
* @ param { number } data . name - Nombre del contacto destino
* @ param { number } data . subject - Asunto
* @ values
* @ param { number } data . tipoEntrada
* @ param { number } data . qrCode
* @ return { Promise }
*
* /
2019-11-29 11:06:24 +00:00
function sendTicket ( header , values ) {
2019-08-29 18:08:22 +00:00
const body = {
2019-11-28 17:34:47 +00:00
"TemplateID" : 1112274 , //980158,
2019-08-29 18:08:22 +00:00
"TemplateLanguage" : true ,
"TemplateErrorDeliver" : true ,
"TemplateErrorReporting" : {
"Email" : "info@rodax-software.com" ,
"Name" : "Air traffic control"
} ,
"Variables" : {
"tipoEntrada" : values . tipoEntrada ,
"descriptionEntrada" : values . descriptionEntrada ,
2019-11-28 17:34:47 +00:00
"qrCode" : values . qrCode ,
2019-11-29 11:06:24 +00:00
"qrCodeUrl" : values . qrCodeUrl ,
2019-11-29 11:57:04 +00:00
//"IDqrCode": "cid:id1",
2019-08-29 18:08:22 +00:00
"codeTicket" : values . codeTicket ,
"eventName" : values . eventName ,
2019-09-20 15:58:46 +00:00
"dateEvent" : values . dateEvent ,
2019-08-29 18:08:22 +00:00
"dateInscription" : values . dateInscription ,
2019-09-02 12:03:01 +00:00
"color" : ( values . color ) ? values . color : 'gray' ,
2019-09-20 15:58:46 +00:00
"nameInscription" : header . name ,
2019-11-28 15:04:04 +00:00
} ,
2019-11-29 11:57:04 +00:00
/ * " I n l i n e d A t t a c h m e n t s " : [
2019-11-28 15:04:04 +00:00
{
"ContentType" : "image/png" ,
"Filename" : "qr.png" ,
"ContentID" : "id1" ,
2019-11-28 17:34:47 +00:00
"Content-Disposition" : "inline" ,
"Base64Content" : values . qrCode . substr ( 22 ) //Quitamos la cabecera para quedarnos solo con la imagen
2019-11-28 15:04:04 +00:00
} ,
2019-11-29 11:57:04 +00:00
] , * /
2019-11-28 15:04:04 +00:00
2019-08-29 18:08:22 +00:00
} ;
2019-11-29 11:57:04 +00:00
console . log ( body . Variables ) ;
2019-08-29 18:08:22 +00:00
return send ( header , body ) ;
} ;
2019-08-30 10:03:56 +00:00
function sendListaEspera ( header , values ) {
const body = {
"TemplateID" : 980163 ,
"TemplateLanguage" : true ,
"TemplateErrorDeliver" : true ,
"TemplateErrorReporting" : {
"Email" : "info@rodax-software.com" ,
"Name" : "Air traffic control"
} ,
"Variables" : {
"tipoEntrada" : values . tipoEntrada ,
"eventName" : values . eventName ,
2019-09-20 15:58:46 +00:00
"dateEvent" : values . dateEvent ,
2019-08-30 10:03:56 +00:00
"dateInscription" : values . dateInscription ,
2019-09-02 12:03:01 +00:00
"color" : ( values . color ) ? values . color : 'gray' ,
2019-09-20 15:58:46 +00:00
"nameInscription" : header . name ,
2019-08-30 10:03:56 +00:00
}
} ;
return send ( header , body ) ;
} ;
2019-10-15 11:26:05 +00:00
function sendReservationCode ( header , values ) {
const body = {
"TemplateID" : 1041673 ,
"TemplateLanguage" : true ,
"TemplateErrorDeliver" : true ,
"TemplateErrorReporting" : {
"Email" : "info@rodax-software.com" ,
"Name" : "Air traffic control"
} ,
"Variables" : {
"entityName" : values . entityName ,
"eventName" : values . eventName ,
"dateEvent" : values . dateEvent ,
"reservationCode" : values . reservationCode ,
"reservationDescription" : ( values . reservationDescription ) ? values . reservationDescription : '-' ,
}
} ;
return send ( header , body ) ;
} ;
2019-09-13 11:49:22 +00:00
function sendCancelacion ( header , values ) {
const body = {
"TemplateID" : 978886 ,
"TemplateLanguage" : true ,
"TemplateErrorDeliver" : true ,
"TemplateErrorReporting" : {
"Email" : "info@rodax-software.com" ,
"Name" : "Air traffic control"
} ,
"Variables" : {
"tipoEntrada" : values . tipoEntrada ,
"eventName" : values . eventName ,
2019-09-20 15:58:46 +00:00
"dateEvent" : values . dateEvent ,
2019-09-13 11:49:22 +00:00
"dateInscription" : values . dateInscription ,
"color" : ( values . color ) ? values . color : 'gray' ,
2019-09-20 15:58:46 +00:00
"nameInscription" : header . name ,
2019-09-13 11:49:22 +00:00
}
} ;
return send ( header , body ) ;
} ;
2019-08-29 18:08:22 +00:00
/ * *
* Enviar un email
* @ header
* @ param { number } data . to - Email destino
* @ param { number } data . name - Nombre del contacto destino
* @ param { number } data . subject - Asunto
* @ subjectAnBody
* @ param { number } data . text - Cuerpo del mensaje en texto plano
* @ param { number } data . html - Cuerpo del mensaje en HTML
* @ return { Promise }
*
* /
function sendMail ( header , values ) {
const body = {
"TextPart" : values . text ,
"HTMLPart" : values . html ,
} ;
return send ( header , body ) ;
} ;
2019-08-13 18:00:27 +00:00
2019-08-29 18:08:22 +00:00
module . exports = {
sendMail ,
2019-08-30 10:03:56 +00:00
sendTicket ,
sendListaEspera ,
2019-09-13 11:49:22 +00:00
sendCancelacion ,
2019-10-15 11:26:05 +00:00
sendReservationCode ,
2019-08-30 10:03:56 +00:00
2019-08-29 18:08:22 +00:00
} ;