├── .gitignore ├── Procfile ├── package.json └── server.js /.gitignore: -------------------------------------------------------------------------------- 1 | node_modules -------------------------------------------------------------------------------- /Procfile: -------------------------------------------------------------------------------- 1 | web: npm start -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "directory-browser-backend", 3 | "version": "1.0.0", 4 | "scripts": { 5 | "start": "nodemon server.js", 6 | "test": "mocha" 7 | }, 8 | "dependencies": { 9 | "body-parser": "~1.13.2", 10 | "cookie-parser": "^1.3.5", 11 | "cors": "^2.8.1", 12 | "debug": "~2.2.0", 13 | "express": "~4.13.1", 14 | "nodemailer": "^2.7.2", 15 | "nodemailer-smtp-transport": "^2.7.4" 16 | }, 17 | "engines": { 18 | "node": "6.9.1" 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /server.js: -------------------------------------------------------------------------------- 1 | /* ===================================================== 2 | Importing Necessory Module & Envoirnment Setting 3 | // ===================================================== */ 4 | 5 | var cookieParser = require('cookie-parser'); 6 | var bodyParser = require('body-parser'); 7 | var express = require('express'); 8 | var port = process.env.PORT || '3000'; 9 | // var cors = require('cors'); 10 | var app = express(); 11 | var nodemailer = require('nodemailer'); 12 | 13 | /* ===================================================== 14 | Middleware Will Run on Every Request 15 | ===================================================== */ 16 | 17 | // app.use(cors()); 18 | app.use(bodyParser.urlencoded({ extended: false })); 19 | app.use(bodyParser.json()); 20 | app.use(cookieParser()); 21 | 22 | 23 | app.post('/mailSend', mailSend) 24 | function mailSend(req, res) { 25 | handleSayHello(req, res); 26 | function handleSayHello(req, res) { 27 | // create reusable transporter object using the default SMTP transport 28 | var transporter = nodemailer.createTransport({ 29 | service: 'Gmail', 30 | auth: { 31 | user: 'majidashrafkhan2@gmail.com', // Your email id 32 | pass: '' // Your password 33 | } 34 | }); 35 | // var text = 'Hello your reservation confirmed. Your Slot Number is' + req.headers.slotno + ' \n\n' + req.headers.from; 36 | var text = 'User submited information:' + ' \n' + 'Name: ' + req.body.name + ' \n' + 'Email: ' + req.body.email + ' \n' + 'Contact: ' + req.body.contact + ' \n' + 'Country: ' + req.body.country + ' \n' + 'City: ' + req.body.city + ' \n' + 'Number: ' + req.body.number + ' \n' + 'Message: ' + req.body.message; 37 | var mailOptions = { 38 | from: 'no-reply@tola.com', // sender address 39 | to: 'dear_majid01@yahoo.com', // list of receivers 40 | subject: 'Your respective user email', // Subject line 41 | text: text // plaintext body 42 | }; 43 | transporter.sendMail(mailOptions, function (error, info) { 44 | if (error) { 45 | console.log(error); 46 | res.json({ Err: error }); 47 | } else { 48 | console.log('Message sent: ' + info.response); 49 | res.json({ Success: info.response }); 50 | }; 51 | }); 52 | } 53 | } 54 | 55 | 56 | 57 | /* ===================================================== 58 | Server Listen 59 | ===================================================== */ 60 | 61 | app.listen(port, function () { 62 | console.log("server is listening on port : ", port); 63 | }).timeout = 25000; 64 | --------------------------------------------------------------------------------