Advertisement
Guest User

Untitled

a guest
Apr 30th, 2016
91
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.65 KB | None | 0 0
  1. var Helper = require("../helper.js");
  2. router
  3. .route("/api/user/registration")
  4. .POST(function (req, res) {
  5. //after user insert send mail
  6. Helper.sendCustomEmail(params, function (error, response) {
  7. if (error) {
  8. console.log("Mail : " + error);
  9. res.json({"status": 0, "error": {"other": "Oops! something went wrong, please try again later"}});
  10. } else {
  11. console.log("Message sent");
  12. res.json({status: 1, message: 'Thank you for registration. You will get verification email soon', token: res.locals.user.jwttoken});
  13. }
  14. });
  15.  
  16. });
  17.  
  18. exports.sendCustomEmail = function(params, callback) {
  19. //Include nodejs mailer and smtp module
  20. var nodemailer = require('nodemailer');
  21. var smtpTransport = require('nodemailer-smtp-transport');
  22. //read header email template
  23. var headerHtml = params.fs.readFileSync(basePath + "emailHeader.html").toString();
  24. //read footer email template
  25. var footerHtml = params.fs.readFileSync(basePath + "emailFooter.html").toString();
  26. //Your dynamic template html only
  27. var dynamicMessage = params.message;
  28. var message = headerHtml + dynamicMessage + footerHtml;
  29. message = message.replace(/##DOMAIN_URL##/g, "http://" + params.domainUrl);
  30. // create reusable transporter object using the default SMTP transport
  31. var transporter = nodemailer.createTransport(smtpTransport({
  32. host: this.getSiteSetting("SMTP_HOST"),
  33. secure: true,
  34. auth: {
  35. user: this.getSiteSetting("SMTP_USER"),
  36. pass: this.getSiteSetting("SMTP_PSSSWORD")
  37. },
  38. tls: {
  39. rejectUnauthorized: false
  40. }
  41. }));
  42. transporter.sendMail({
  43. from: this.getSiteSetting("SMTP_FROM"),
  44. to: params.to, // receiver
  45. subject: params.subject,
  46. html: message // body
  47. }, function(error, response) { //callback
  48. callback(error, response);
  49. });
  50. };
  51.  
  52.  
  53. var SiteSetting = require('../models/siteSetting');
  54. exports.getSiteSetting = function($keyword) {
  55. if ($keyword !== undefined && $keyword !== null && $keyword !== "") {
  56. SiteSetting.findOne({setting_key : $keyword},function(err,siteSetting){
  57. if(err){
  58. return null;
  59. }else{
  60. if(siteSetting !== null){
  61. console.log(siteSetting.setting_value);
  62. return siteSetting.setting_value;
  63. }
  64. }
  65. });
  66. }else{
  67. return null;
  68. }
  69. };
  70.  
  71. "express" => "version": "4.13.4",
  72. "mongoose" => "version": "4.4.4",
  73. "mongodb" => "version": "2.4.9",
  74. "OS" => "ubuntu 14.04 lts 32bit",
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement