ldc-le-gaulois-pro/app/Http/Controllers/Fo/ContactController.php
2024-01-25 15:55:42 +01:00

43 lines
1.3 KiB
PHP

<?php
namespace App\Http\Controllers\Fo;
use App\Enums\StaticPageType;
use App\Http\Controllers\Controller;
use App\Http\Requests\Fo\Contact\ContactRequest;
use App\Mail\ContactFormMail;
use App\Models\StaticPage;
use Illuminate\Support\Facades\Mail;
use Illuminate\Support\Facades\Session;
class ContactController extends Controller
{
/**
* Display a listing of the resource.
*
* @return \Illuminate\Contracts\View\View
*/
public function index(): \Illuminate\Contracts\View\View
{
/** @var \App\Models\StaticPage */
$staticPageModel = StaticPage::query()->where('type', StaticPageType::contact)->firstOrFail();
return view('fo.pages.contact', compact('staticPageModel'));
}
/**
* Send mail when submit the form.
*
* @param ContactRequest $request
* @return \Illuminate\Http\RedirectResponse
*/
public function contactSubmit(ContactRequest $request): \Illuminate\Http\RedirectResponse
{
Mail::to(config('mail.contactsList.contactform'))->send(new ContactFormMail($request));
Session::forget('saveProductInBasket');
return back()->with('success', trans(
'Votre message a bien été envoyé, merci de votre intérêt, nous répondrons dans les meilleurs délais.'
));
}
}