51 lines
1.4 KiB
PHP
51 lines
1.4 KiB
PHP
<?php
|
|
|
|
namespace App\Http\Controllers\Fo;
|
|
|
|
use App\Enums\GeneralConfigType;
|
|
use App\Enums\StaticPageType;
|
|
use App\Http\Controllers\Controller;
|
|
use App\Http\Requests\Fo\ContactFormRequest;
|
|
use App\Mail\SendContactMail;
|
|
use App\Models\GeneralConfig;
|
|
use App\Models\Shop;
|
|
use App\Models\StaticPage;
|
|
use Illuminate\Http\Request;
|
|
use Illuminate\Support\Facades\Mail;
|
|
|
|
class ContactController extends Controller
|
|
{
|
|
/**
|
|
* Display contact from
|
|
*
|
|
* @param \Illuminate\Http\Request $request
|
|
* @return \Illuminate\Contracts\View\View
|
|
*/
|
|
public function contact(Request $request)
|
|
{
|
|
$status = $request->session()->get('status');
|
|
|
|
// 1er magasin en base pour le moment
|
|
$shop = Shop::first();
|
|
$content = StaticPage::getPageOfType(StaticPageType::contact());
|
|
|
|
return view('front.contact', compact('status', 'shop', 'content'));
|
|
}
|
|
|
|
/**
|
|
* Submit contact form
|
|
*
|
|
* @param \App\Http\Requests\Fo\ContactFormRequest $request
|
|
* @return \Illuminate\Http\Response
|
|
*/
|
|
public function contactSubmit(ContactFormRequest $request)
|
|
{
|
|
$toMail = GeneralConfig::query()->where('type', GeneralConfigType::theme())
|
|
->firstOrFail()->data->contact_us_destination_email ?? config('mail.from.address');
|
|
|
|
// * Envoi du mail d'alerte.
|
|
Mail::to($toMail)->send(new SendContactMail($request));
|
|
|
|
return back()->with('status', true);
|
|
}
|
|
}
|