const ContactUs = require('../models/ContactUs') const {body, validationResult} = require('express-validator') const {res404, res500, checkValidations} = require('../plugins/controllersHelperFunctions') const {_sr} = require('../plugins/serverResponses') const nodemailer = require('nodemailer') module.exports.create = [ [ body('locale') .isLength({min: 2}).withMessage('locale is required') .bail() .custom((value, {req}) => { return value === 'fa' || value === 'en' ? true : Promise.reject('locale is not correct') }), body('name') .notEmpty().withMessage((value, {req}) => _sr[req.body.locale].required.name) .bail() .isLength({min: 2}).withMessage((value, {req}) => _sr[req.body.locale].min_char.min2), body('email') .notEmpty().withMessage((value, {req}) => _sr[req.body.locale].required.email) .bail() .isEmail().withMessage((value, {req}) => _sr[req.body.locale].format.email), body('subject') .notEmpty().withMessage((value, {req}) => _sr[req.body.locale].required.subject) .bail() .isLength({min: 4}).withMessage((value, {req}) => _sr[req.body.locale].min_char.min4), body('message') .notEmpty().withMessage((value, {req}) => _sr[req.body.locale].required.message) .bail() .isLength({min: 10}).withMessage((value, {req}) => _sr[req.body.locale].min_char.min10) ], checkValidations(validationResult), (req, res) => { const {locale, name, email, subject, message} = req.body const data = {locale, name, email, subject, message} let transporter = nodemailer.createTransport({ host: 'mail.negareh-demo2.ir', port: 587, secure: false, // true for 465, false for other ports auth: { user: 'client@negareh-demo2.ir', pass: 'JSAT}Q-RB_s0' }, tls: { rejectUnauthorized: false } }) const emailHTMLTemplate = `
` // send mail with defined transport object transporter.sendMail({ from: '"OrisOxin Website"