Advertisement
Guest User

Untitled

a guest
Apr 1st, 2019
116
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. import React, { Component } from 'react'
  2. import nodemailer from 'nodemailer';
  3.  
  4. export default class QuoteForm extends Component {
  5.   constructor() {
  6.     super()
  7.  
  8.       this.state = {
  9.         fullname:"",
  10.         email:"",
  11.         desc:""
  12.       }
  13.  
  14.   }
  15.  
  16.   onSubmit() {
  17.    
  18.     let transporter = nodemailer.createTransport({
  19.       host: "mail.hulun.co",
  20.       port: 465,
  21.       secure: true,
  22.       auth: {
  23.         user: "contact@hulun.co",
  24.         pass: "C^u*@]UQE8L}"
  25.       }
  26.     });
  27.  
  28.   let mailOptions = {
  29.     from: `"${this.state.fullname}" <${this.state.email}>`, // sender address
  30.     to: "contact@hulun.co", // list of receivers
  31.     subject: "Requesting Quote (Sent from Website)", // Subject line
  32.     text: "Hello world?", // plain text body
  33.     html: "<b>Hello world?</b>" // html body
  34.   };
  35.  
  36.   transporter.sendMail(mailOptions, (error, info) => {
  37.       if (error) {
  38.           return console.log(error);
  39.       }
  40.       return;    
  41.   });
  42.  
  43.   }
  44.   render() {
  45.     return (
  46.       <form className="quote-form" action="quote-thank-you" onSubmit={this.onSubmit}>
  47.         <h2>Personal Details <span>(Required Fields)</span></h2>
  48.         <hr/>
  49.         <input value={this.state.fullname} onChange={e => { this.setState({fullname: e.target.value})}} required placeholder="Enter Full Name"/>
  50.         <input value={this.state.email} onChange={e => { this.setState({email: e.target.value})}} type="email" required placeholder="Enter Email-address"/>
  51.         <h2>Project Details</h2>
  52.         <hr/>
  53.         <textarea value={this.state.desc} onChange={e => { this.setState({desc: e.target.value})}} placeholder="Enter Project Details"></textarea>
  54.         <br/>
  55.         <button>Submit</button>
  56.  
  57.         <ul className="motto-signs">
  58.             <li>
  59.                <i className="fas fa-user-clock"/>
  60.                <p>We respond within 3-5 business days.</p>
  61.             </li>
  62.             <li>
  63.               <i className="fas fa-user-shield"/>
  64.               <p>All info you submit is strictly confidential.</p>
  65.             </li>
  66.         </ul>
  67.  
  68.  
  69.       </form>
  70.     )
  71.   }
  72. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement