83 lines
3.4 KiB
PHP
83 lines
3.4 KiB
PHP
<?php
|
|
|
|
namespace App\Http\Controllers\Front;
|
|
|
|
use App\Enums\Contact\ContactFormType;
|
|
use App\Exceptions\AbortContactMailer;
|
|
use App\Http\Requests\Front\Contact\ContactRequest;
|
|
use App\Jobs\Mails\SendContactMail;
|
|
use App\Models\ContactCount;
|
|
use App\Models\MailContactData;
|
|
use Illuminate\Support\Facades\DB;
|
|
use Illuminate\Support\Facades\Log;
|
|
use Illuminate\Support\HtmlString;
|
|
use LDC\LDCCRM\Enums\ApiError;
|
|
use LDC\LDCCRM\Exceptions\ApiErrorException;
|
|
use LDC\LDCCRM\Exceptions\CrmException;
|
|
use LDC\LDCCRM\Models\SingleOptin;
|
|
|
|
class ContactController
|
|
{
|
|
/**
|
|
* Contact send.
|
|
*
|
|
* @param \App\Http\Requests\Front\Contact\ContactRequest $request
|
|
* @return \Illuminate\Http\RedirectResponse
|
|
*/
|
|
public function send(ContactRequest $request): \Illuminate\Http\RedirectResponse
|
|
{
|
|
$validatedData = $request->validated();
|
|
dd($validatedData);
|
|
$messageContact = new MailContactData($validatedData);
|
|
// $contactMessage = "";
|
|
// $hasContactError = false;
|
|
// $newsletterMessage = null;
|
|
// $hasNewsletterError = false;
|
|
|
|
// /** @var boolean $isNewsletter */
|
|
// $isNewsletter = isset($validatedData['newsletter']) ? $validatedData['newsletter'] : false;
|
|
|
|
// try {
|
|
// dispatch(new SendContactMail($messageContact))
|
|
// ->onConnection('database')
|
|
// ->onQueue('database');
|
|
// } catch (AbortContactMailer $e) {
|
|
// Log::error('Fail to build mail from contact page', [
|
|
// 'exception' => $e
|
|
// ]);
|
|
// $hasContactError = true;
|
|
// $contactMessage = trans('Une erreur est survenue lors de l\'envoi du message de contact.');
|
|
// }
|
|
// if ($isNewsletter) {
|
|
// try {
|
|
// SingleOptin::setStatus($request->email, true);
|
|
// $newsletterMessage = trans("Votre inscription à la newsletter a été prise en compte");
|
|
// } catch (ApiErrorException $e) {
|
|
// if ($e->getApiError()->equals(ApiError::singleOptinCustomerExists)) {
|
|
// $newsletterMessage = trans("Vous êtes déjà inscrit avec cette adresse email");
|
|
// }
|
|
// report($e);
|
|
// $hasNewsletterError = true;
|
|
// // phpcs:ignore Generic.Files.LineLength
|
|
// $newsletterMessage = trans('Une erreur est survenue lors de l\'inscription à la newsletter, merci de réessayer ultérieurement.');
|
|
// } catch (CrmException $e) {
|
|
// report($e);
|
|
// $hasNewsletterError = true;
|
|
// // phpcs:ignore Generic.Files.LineLength
|
|
// $newsletterMessage = trans('Une erreur est survenue lors de l\'inscription à la newsletter, merci de réessayer ultérieurement.');
|
|
// }
|
|
// }
|
|
// ContactCount::updateOrInsert(
|
|
// ['type' => $validatedData['enumType']],
|
|
// ['submissions' => DB::raw('submissions + 1')]
|
|
// );
|
|
|
|
// $contactMessage = trans('Votre message a bien été envoyé.');
|
|
// $message = $newsletterMessage ? $contactMessage . ' <br /> ' . $newsletterMessage : $contactMessage;
|
|
// return redirect()->back()
|
|
// ->with(
|
|
// $hasContactError || $hasNewsletterError ? 'info' : 'success',
|
|
// new HtmlString($message)
|
|
// );
|
|
}
|
|
}
|