FEATURE #1546: add subject for contact form
This commit is contained in:
@@ -46,6 +46,7 @@ class ContactForm extends Handler
|
|||||||
'phone' => $request->phone,
|
'phone' => $request->phone,
|
||||||
'email' => $request->email,
|
'email' => $request->email,
|
||||||
'contactEmail' => $request->ContactEmail,
|
'contactEmail' => $request->ContactEmail,
|
||||||
|
'subject' => $request->subject,
|
||||||
'companyName' => $request->companyName,
|
'companyName' => $request->companyName,
|
||||||
'address' => $request->address,
|
'address' => $request->address,
|
||||||
'gpsLat' => $request->gpsLat,
|
'gpsLat' => $request->gpsLat,
|
||||||
@@ -78,6 +79,7 @@ class ContactForm extends Handler
|
|||||||
'address' => 'address',
|
'address' => 'address',
|
||||||
'gpsLat' => 'gpsLat',
|
'gpsLat' => 'gpsLat',
|
||||||
'gpsLng' => 'gpsLng',
|
'gpsLng' => 'gpsLng',
|
||||||
|
'subject' => 'subject'
|
||||||
];
|
];
|
||||||
|
|
||||||
// get data and try to save them
|
// get data and try to save them
|
||||||
|
|||||||
@@ -30,14 +30,22 @@ class CreateNewMessage extends Controller
|
|||||||
$template = isset($form->module_settings->emailTemplate) ? $form->module_settings->emailTemplate : 'contactform::emails.default';
|
$template = isset($form->module_settings->emailTemplate) ? $form->module_settings->emailTemplate : 'contactform::emails.default';
|
||||||
|
|
||||||
// send email
|
// send email
|
||||||
$status = Mail::send(Template::name($template), ['data' => $request], function (Message $message) use ($request, $form) {
|
// try {
|
||||||
$message->from($request->email, $request->name);
|
$status = Mail::send(Template::name($template), ['data' => $request], function (Message $message) use ($request, $form) {
|
||||||
$message->to($form->module_settings->email)
|
$message->from($request->email, $request->name);
|
||||||
->subject('Nejaky predmet - nastavovat v administraci, nebo nechavat vyplnovat uzivatele?');
|
|
||||||
});
|
// get message subject
|
||||||
|
$subject = isset($form->module_settings->subject) ? $form->module_settings->subject : trans('contactform::admin/contents.defaultSubject');
|
||||||
|
|
||||||
|
$message->to($form->module_settings->email)
|
||||||
|
->subject($subject);
|
||||||
|
});
|
||||||
|
// } catch (\Exception $e) {
|
||||||
|
// return $this->cannotSend($request, $form, $e->getMessage());
|
||||||
|
// }
|
||||||
|
|
||||||
// inform user about success or failure
|
// inform user about success or failure
|
||||||
$this->sendResponse($status, $request, $form);
|
return $this->sendResponse($status, $request, $form);
|
||||||
}
|
}
|
||||||
|
|
||||||
private function sendResponse($status, SendNewEmailRequest $request, $form)
|
private function sendResponse($status, SendNewEmailRequest $request, $form)
|
||||||
@@ -55,4 +63,21 @@ class CreateNewMessage extends Controller
|
|||||||
return $status ? $response->with('success', '') : $response->with('error', '');
|
return $status ? $response->with('success', '') : $response->with('error', '');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private function cannotSend(SendNewEmailRequest $request, $form, $message)
|
||||||
|
{
|
||||||
|
// send response for ajax
|
||||||
|
if ($request->ajax()) {
|
||||||
|
return response()->json([
|
||||||
|
'status' => 'failed',
|
||||||
|
'exception' => $message,
|
||||||
|
'redirectUrl' => $form->url
|
||||||
|
]);
|
||||||
|
} else {
|
||||||
|
// redirect user to previous form
|
||||||
|
$response = redirect()->route('page.content', ['url' => $form->url]);
|
||||||
|
|
||||||
|
return $response->with('error', '');
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -9,5 +9,7 @@ return [
|
|||||||
'phone' => 'Contact phone',
|
'phone' => 'Contact phone',
|
||||||
'email' => 'E-mail',
|
'email' => 'E-mail',
|
||||||
'contactEmail' => 'E-mail, where messages from this form will be delivered',
|
'contactEmail' => 'E-mail, where messages from this form will be delivered',
|
||||||
'contactInformation' => 'Contact information'
|
'contactInformation' => 'Contact information',
|
||||||
|
'subject' => 'Subject',
|
||||||
|
'defaultSubject' => 'New message from contact form'
|
||||||
];
|
];
|
||||||
@@ -1,11 +1,12 @@
|
|||||||
<?php
|
<?php
|
||||||
return [
|
return [
|
||||||
'columnPhone' => 'Phone',
|
'columnPhone' => 'Phone',
|
||||||
'columnAddress' => 'Address',
|
'columnAddress' => 'Address',
|
||||||
'columnEmail' => 'E-mail',
|
'columnEmail' => 'E-mail',
|
||||||
'columnContactEmail' => 'Contact E-mail',
|
'columnContactEmail' => 'Contact E-mail',
|
||||||
'columnCompanyName' => 'Company name',
|
'columnSubject' => 'Subject',
|
||||||
'columnGpsLat' => 'GPS Latitude',
|
'columnCompanyName' => 'Company name',
|
||||||
'columnGpsLng' => 'Gps Longitude',
|
'columnGpsLat' => 'GPS Latitude',
|
||||||
|
'columnGpsLng' => 'Gps Longitude',
|
||||||
];
|
];
|
||||||
|
|
||||||
|
|||||||
@@ -100,6 +100,12 @@
|
|||||||
<input type="email" name="contactEmail" value="{{$page->module_settings->contactEmail or \Auth::user()->email}}" />
|
<input type="email" name="contactEmail" value="{{$page->module_settings->contactEmail or \Auth::user()->email}}" />
|
||||||
</label>
|
</label>
|
||||||
|
|
||||||
|
<label>
|
||||||
|
@lang('contactform::admin/content.subject')
|
||||||
|
|
||||||
|
<input type="text" name="subject" value="{{$page->module_settings->subject or trans('contactform::admin/content.defaultSubject')}}" />
|
||||||
|
</label>
|
||||||
|
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="column large-6">
|
<div class="column large-6">
|
||||||
<label>
|
<label>
|
||||||
|
|||||||
Reference in New Issue
Block a user