var console = process.console; var nodemailer = require('nodemailer'); var smtpTransport = require('nodemailer-smtp-transport'); var yaml_config = require('node-yaml-config'); var config = yaml_config.load('./config/config.yml'); module.exports = function(Emailsenter) { Emailsenter.disableRemoteMethod('find', true); Emailsenter.disableRemoteMethod('findById', true); Emailsenter.disableRemoteMethod('findOne', true); Emailsenter.disableRemoteMethod('create', true); //send mail without app_id Emailsenter.postWithoutApp_id = function (req,cb) { //check input data console.tag("input").time().file().log(req); //set nodemailer smtpTransport = nodemailer.createTransport(smtpTransport({ host: "smtp.gmail.com", secureConnection: false, port: 587, auth: { user: config.email.username, pass: config.email.password } })); //set defult response var response = { "resultCode": "50000", "resultDescription": "mail error: Missing or Invalid Param" }; //set mail var mailOptions = { to: req.header.to, subject: req.header.subject, text: req.body.text, attachments: req.body.attachments, cc: '', bcc: '' }; //send if (mailOptions) { smtpTransport.sendMail(mailOptions, function(error, resp) { if (error) { var response = { "resultCode": "50000", "resultDescription": "System error" }; console.tag("output").time().file().log(response); cb(null,response); } else { var response = { "resultCode": "20000", "resultDescription": "Success" }; console.tag("output").time().file().log(response); cb(null,response); } }); }else{ console.tag("output").time().file().log(response); cb(null,response); } }//send mail without app_id(END) //send mail without app_id Emailsenter.postWithApp_id = function (req,cb) { //check input data console.tag("input").time().file().log(req); Emailsenter.find({where: {"app_id": req.app_id,"delete_at":null}}, function (err, res) { if (err) {//error by database var response = { "resultCode": "50000", "resultDescription": "System error" }; console.tag("output").time().file().log(response); cb(null, response); } else {//found database if (res.length) {// found data by query //check responsedata by query console.tag("query output").time().file().log(res); //set to in email with app_id for(var i =0;i