From a478f1491e72da1b3b5bbd7cb28c56dcc9ebf228 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Michal=20Kv=C3=A1=C4=8Dek?= Date: Fri, 1 Apr 2016 17:50:49 +0200 Subject: [PATCH] FEATURE: make email sending working --- .../Controllers/Visitor/CreateNewMessage.php | 35 ++++++++++++++++--- .../Http/Requests/SendNewEmailRequest.php | 4 ++- .../views/visitor/emails/default.blade.php | 4 +++ 3 files changed, 38 insertions(+), 5 deletions(-) create mode 100644 modules/ContactForm/Resources/views/visitor/emails/default.blade.php diff --git a/modules/ContactForm/Http/Controllers/Visitor/CreateNewMessage.php b/modules/ContactForm/Http/Controllers/Visitor/CreateNewMessage.php index e14940e5..1a466551 100644 --- a/modules/ContactForm/Http/Controllers/Visitor/CreateNewMessage.php +++ b/modules/ContactForm/Http/Controllers/Visitor/CreateNewMessage.php @@ -1,23 +1,50 @@ findOrFail($formId); + $form->module_settings = json_decode($form->module_settings); - dd($request->name, $form); + // select template + $template = isset($form->module_settings->emailTemplate) ? $form->module_settings->emailTemplate : 'contactform::emails.default'; + // send email + $status = Mail::send(Template::name($template), ['data' => $request], function (Message $message) use ($request, $form) { + $message->from($request->email, $request->name); + $message->to($form->module_settings->email) + ->subject('Your Reminder!'); + }); - return redirect() - ->route('page.content', ['url' => $form->url]) - ->with('success', ''); + // inform user about success or failure + if ($status) { + return redirect() + ->route('page.content', ['url' => $form->url]) + ->with('success', ''); + } else { + return redirect() + ->route('page.content', ['url' => $form->url]) + ->with('error', ''); + } } } diff --git a/modules/ContactForm/Http/Requests/SendNewEmailRequest.php b/modules/ContactForm/Http/Requests/SendNewEmailRequest.php index 27b0c1b2..e1a84208 100644 --- a/modules/ContactForm/Http/Requests/SendNewEmailRequest.php +++ b/modules/ContactForm/Http/Requests/SendNewEmailRequest.php @@ -12,7 +12,9 @@ class SendNewEmailRequest extends Request public function rules() { return [ - + 'name' => 'required', + 'email' => 'required|email', + 'message' => 'required', ]; } } diff --git a/modules/ContactForm/Resources/views/visitor/emails/default.blade.php b/modules/ContactForm/Resources/views/visitor/emails/default.blade.php new file mode 100644 index 00000000..ffcda34d --- /dev/null +++ b/modules/ContactForm/Resources/views/visitor/emails/default.blade.php @@ -0,0 +1,4 @@ +

+Ahoj {{$data->name}} +

+

Diky za zpravu: {{$data->message}}

\ No newline at end of file