Esempio n. 1
0
 /**
  * Process the form and send attached photo to the admin.
  * 
  * @param ContactRequest $request
  * @return mixed
  */
 public function processForm(ContactRequest $request)
 {
     $name = $request->get('name');
     $surname = $request->get('surname');
     $email = $request->get('email');
     $msg = $request->get('message');
     $admin_email = \Config::get('custom.admin_email', '*****@*****.**');
     $is_ok = true;
     $img_name = '';
     // $img_name = uniqid() . $request->file('photo')->getClientOriginalName();
     if ($request->hasFile('photo')) {
         $file = Input::file('photo');
         $img_name = uniqid() . $request->file('photo')->getClientOriginalName();
         $file->move(public_path() . '/photos/', $img_name);
     }
     try {
         \Mail::send('emails.contact', ['name' => $name, 'surname' => $surname, 'email' => $email, 'msg' => $msg, 'img_name' => $img_name], function ($message) use($email, $admin_email, $img_name) {
             $message->from($email);
             $message->to($admin_email, 'Admin');
             $message->subject('Demo App message');
             if (strlen($img_name) > 0) {
                 $message->attach(public_path() . '/photos/' . $img_name);
             }
         });
     } catch (\Exception $e) {
         $is_ok = false;
     }
     if (!$is_ok) {
         // do some operation in case when sending email fails
     }
     return view('thankyou');
 }
 public function store(Requests\ContactRequest $request)
 {
     $data = $request->only('name', 'surname', 'email');
     $data['messageLines'] = explode("\n", $request->get('message'));
     if ($request->hasFile('photo')) {
         $photoName = str_random(10) . '.' . $request->file('photo')->getClientOriginalExtension();
         $path = base_path() . '/public/images/email';
         if (!file_exists($path)) {
             mkdir($path, 0777, true);
         }
         $request->file('photo')->move($path, $photoName);
         $data['photo'] = url('/') . '/images/email/' . $photoName;
     }
     Mail::send('email.contact', $data, function ($message) use($data) {
         $message->subject(trans('main.mail_subject'))->from($data['email'], $data['surname'] . ' ' . $data['name'])->to('*****@*****.**')->replyTo($data['email']);
         if (array_key_exists('photo', $data)) {
             $message->attach($data['photo']);
         }
     });
     return redirect()->back()->with('message', trans('main.email_submit'));
 }
 public function processForm(ContactRequest $request)
 {
     // Using app/Http/Requests/ContactRequest.php to validate
     // At this point form is valid
     $form_data = $request->only(['name', 'surname', 'email', 'message']);
     $res = Mail::send('contact.email', ['form_data' => $form_data], function ($message) use($request) {
         $from_email = $request->input('email');
         $from_name = $request->input('name') . ' ' . $request->input('surname');
         $subject = trans('contact.title');
         $photo = $request->file('photo');
         $attachment = $photo->getPath() . '/' . $photo->getFilename();
         $message->from($from_email, $from_name)->to(env('ADMIN_EMAIL'))->subject($subject)->attach($attachment, ['as' => $photo->getClientOriginalName()]);
     });
     if ($res) {
         $message = trans('contact.email.message_ok');
     } else {
         $message = trans('contact.email.message_error');
     }
     return view('contact.form')->with('message', $message);
 }