Add confirm admin email according to shop

This commit is contained in:
S. Hattry 2022-11-25 14:42:18 +01:00
parent 9b5a68c121
commit 11dad23fe2
10 changed files with 55 additions and 22 deletions

View file

@ -40,7 +40,8 @@ class MagasinsController extends Controller
{
$request->validate([
'name' => 'required|string|max:255',
'email' => 'required|email:rfc,dns,spoof|max:255',
'email_contact' => 'required|email:rfc,dns,spoof|max:255',
'email_confirm' => 'nullable|email:rfc,dns,spoof|max:255',
'address' => 'required|string|max:255',
'postcode' => 'required',
'city' => 'required|string|max:255',
@ -74,7 +75,8 @@ class MagasinsController extends Controller
{
$request->validate([
'name' => 'required|string|max:255',
'email' => 'required|email:rfc,dns,spoof|max:255',
'email_contact' => 'required|email:rfc,dns,spoof|max:255',
'email_confirm' => 'nullable|email:rfc,dns,spoof|max:255',
'address' => 'required|string|max:255',
'postcode' => 'required',
'city' => 'required|string|max:255',

View file

@ -494,7 +494,6 @@ class OrdersController extends Controller
'ok_cgv' => 'accepted',
]);
$time_slot = Carbon::createFromFormat('d/m/Y-H:i', $request->selectedcreneau);
$tsday = explode('-', $request->selectedcreneau)[0];
$tstime = explode('-', $request->selectedcreneau)[1];
$magasin_id = $request->selectedmagasin;
@ -519,12 +518,20 @@ class OrdersController extends Controller
Mail::to($order->customer->email)->queue(new OrderConfirmMail($order));
// Envoi du mail de confirmation aux admins site.
$toMailSetting = Setting::where('key', 'send_order_confirm_mail_to')->first();
if (empty($toMailSetting->value)) {
$toMail = config('mail.from.address');
/** @var Magasin|null */
$shop = Magasin::where('id', $magasin_id)->first();
if ($shop && $shop->email_confirm) {
$toMail = $shop->email_confirm;
} else {
$toMail = $toMailSetting->value;
$toMailSetting = Setting::where('key', 'send_order_confirm_mail_to')->first();
if (empty($toMailSetting->value)) {
$toMail = config('mail.from.address');
} else {
$toMail = $toMailSetting->value;
}
}
Mail::to($toMail)->queue(new OrderConfirmAdminMail($order));
// Export commande.

View file

@ -46,8 +46,8 @@ class ContactController extends Controller
/** @var Magasin|null */
$shop = Magasin::where('name', $request->shop)->first();
if ($shop) {
$toMail = $shop->email;
if ($shop && $shop->email_contact) {
$toMail = $shop->email_contact;
} else {
$toMailSetting = Setting::where('key', 'send_contact_mail_to')->first();
if (empty($toMailSetting->value)) {

View file

@ -469,7 +469,7 @@ class CustomerController extends Controller
$order->status_id = 7;
$order->save();
// Envoi du mail de confirmation aux admins site.
// Envoi du mail d'annulation aux admins site.
$toMailSetting = Setting::where('key', 'send_order_confirm_mail_to')->first();
if (empty($toMailSetting->value)) {
$toMail = config('mail.from.address');

View file

@ -15,7 +15,7 @@ class Magasin extends Model
* @var array
*/
protected $fillable = [
'name', 'email', 'address', 'postcode', 'city', 'phone',
'name', 'email_contact', 'email_confirm', 'address', 'postcode', 'city', 'phone',
'latitude', 'longitude',
'gmaps_placeid', 'gmaps_embed_href', 'gmaps_link_href',
];

View file

@ -14,7 +14,8 @@ class AddFieldToMagasins extends Migration
public function up()
{
Schema::table('magasins', function (Blueprint $table) {
$table->string('email')->after('name');
$table->string('email_contact')->after('name');
$table->string('email_confirm')->nullable()->after('email_contact');
});
}
@ -26,7 +27,8 @@ class AddFieldToMagasins extends Migration
public function down()
{
Schema::table('magasins', function (Blueprint $table) {
$table->dropColumn('email');
$table->dropColumn('email_contact');
$table->dropColumn('email_confirm');
});
}
}

View file

@ -16,7 +16,7 @@ class MagasinsSeeder extends Seeder
{
$shop = new Magasin();
$shop->name = 'Point de retrait';
$shop->email = 'adresse@domaine.fr';
$shop->email_contact = 'adresse@domaine.fr';
$shop->address = 'l\'adresse';
$shop->postcode = '72000';
$shop->city = 'Le Mans';

View file

@ -22,9 +22,19 @@
<label for="name">Nom *</label>
<input type="text" id="name" name="name" class="form-control" placeholder="Nom *" value="{{ old('name') }}" required>
</div>
<div class="form-group">
<label>Email de contact *</label>
<input type="text" id="email" name="email" class="form-control" pattern="[a-z0-9._%+-]+@[a-z0-9.-]+\.[a-z]{2,}$" placeholder="adresse@pole-sbv.fr *" value="{{ old('email') }}" required>
<div class="row">
<div class="col-6">
<div class="form-group">
<label>Email de contact *</label>
<input type="text" id="email_contact" name="email_contact" class="form-control" pattern="[a-z0-9._%+-]+@[a-z0-9.-]+\.[a-z]{2,}$" placeholder="adresse@pole-sbv.fr *" value="{{ old('email_contact') }}" required>
</div>
</div>
<div class="col-6">
<div class="form-group">
<label>Email de confirmation de commande</label>
<input type="text" id="email_confirm" name="email_confirm" class="form-control" pattern="[a-z0-9._%+-]+@[a-z0-9.-]+\.[a-z]{2,}$" placeholder="adresse@pole-sbv.fr *" value="{{ old('email_confirm') }}">
</div>
</div>
</div>
<div class="form-group">
<label>Adresse *</label>

View file

@ -31,9 +31,19 @@
<a class="btn btn-sm btn-primary" href="{{route('bo.creneaux.settings', $magasin->id)}}">Editer Créneaux de collecte</a>
</div>
</div>
<div class="form-group">
<label>Email de contact *</label>
<input type="text" id="email" name="email" class="form-control" pattern="[a-z0-9._%+-]+@[a-z0-9.-]+\.[a-z]{2,}$" placeholder="adresse@pole-sbv.fr *" value="{{ old('email',$magasin->email) }}" required>
<div class="row">
<div class="col-6">
<div class="form-group">
<label>Email de contact *</label>
<input type="text" id="email_contact" name="email_contact" class="form-control" pattern="[a-z0-9._%+-]+@[a-z0-9.-]+\.[a-z]{2,}$" placeholder="adresse@pole-sbv.fr *" value="{{ old('email_contact',$magasin->email_contact) }}" required>
</div>
</div>
<div class="col-6">
<div class="form-group">
<label>Email de confirmation de commande</label>
<input type="text" id="email_confirm" name="email_confirm" class="form-control" pattern="[a-z0-9._%+-]+@[a-z0-9.-]+\.[a-z]{2,}$" placeholder="adresse@pole-sbv.fr" value="{{ old('email_confirm',$magasin->email_confirm) }}">
</div>
</div>
</div>
<div class="form-group">
<label>Adresse *</label>

View file

@ -15,7 +15,8 @@
<thead>
<th scope="col"></th>
<th scope="col">Nom</th>
<th scope="col">Email</th>
<th scope="col">Email de contact</th>
<th scope="col">Email de confirmation <br>de commande</th>
<th scope="col">Adresse</th>
<th scope="col">Téléphone</th>
<th scope="col"></th>
@ -25,7 +26,8 @@
<tr>
<td></td>
<td>{{$magasin->name}}</td>
<td>{{$magasin->email}}</td>
<td>{{$magasin->email_contact}}</td>
<td>{{$magasin->email_confirm}}</td>
<td>{{$magasin->address}}, {{$magasin->postcode}} {{$magasin->city}}</td>
<td>{{$magasin->phone}}</td>
<td class="text-center">