Guest User

Untitled

a guest
Oct 6th, 2018
163
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.54 KB | None | 0 0
  1. async handleSubmit(e) {
  2. e.preventDefault();
  3. const { name, email, message } = this.state;
  4. const formData = new FormData();
  5. formData.append('file',this.state.file)
  6. const config = {
  7. headers: {
  8. 'content-type': 'multipart/form-data'
  9. }
  10. }
  11.  
  12. const form = await axios.post("/api/formPDF", {
  13. name, ******
  14. email, *****
  15. message ****
  16. }).post("/api/formPDF", formData, config);
  17. }
  18.  
  19. const form = await axios.post("/api/formPDF", {
  20. name,
  21. email,
  22. message,
  23. formData
  24.  
  25. app.post("/api/formPDF", (req, res) => {
  26. var fileLoc, fileExt, fileName, fileEmail, fileMessage;
  27.  
  28. var form = new formidable.IncomingForm();
  29. form.parse(req, function(err, fields, files) {
  30.  
  31. console.log("Files: ", files);
  32. fileLoc = files.file.path;
  33. fileExt = files.file.name.split('.').pop();
  34.  
  35. });
  36.  
  37. nodemailer.createTestAccount((err, account) => {
  38.  
  39. const htmlEmail = `
  40. <h3>Contact Details</h3>
  41. <ul>
  42. <li>Name: ${req.body.name}</li>
  43. <li>Email: ${req.body.email}</li>
  44. </ul>
  45. <h3>Message</h3>
  46. <p>${req.body.message}</p>
  47. `
  48.  
  49. let transporter = nodemailer.createTransport({
  50. name: *removed*,
  51. host: *removed*,
  52. port: 465,
  53. secure: true,
  54. auth: {
  55. user: *removed*,
  56. pass: *removed*
  57. }
  58. })
  59.  
  60. let mailOptions = {
  61. from: *removed*,
  62. to: *removed*,
  63. replyTo: req.body.email,
  64. subject: "New Message",
  65. text: req.body.message,
  66. html: htmlEmail,
  67. attachments: [
  68. {
  69. filename: `${req.body.name}Resume.${fileExt}`,
  70. path: fileLoc
  71. }
  72. ]
  73. };
  74.  
  75. fileLoc = "";
  76.  
  77. transporter.sendMail(mailOptions, (err, info) => {
  78. if (err) {
  79. return console.log(err)
  80. }
  81. })
  82. })
  83. });
Add Comment
Please, Sign In to add comment