From 8170bb395a2e23883c45fefcc36384c0468e9657 Mon Sep 17 00:00:00 2001 From: Corentin Huet Date: Thu, 4 Jun 2026 15:40:09 +0200 Subject: [PATCH] Revert "refactor: :fire: remove newsletter_email field from brands table" This reverts commit 27d0c1fc21fc98cb04d0e7b4c29a98c1d2bb5434. --- .../Requests/Bo/Brands/StoreBrandRequest.php | 9 +++--- app/Models/Brand.php | 1 + .../2026_04_03_152802_alter_brands_table.php | 28 +++++++++++++++++++ .../views/bo/pages/brands/form.blade.php | 23 +++++++++++++++ 4 files changed, 57 insertions(+), 4 deletions(-) create mode 100644 database/migrations/2026_04_03_152802_alter_brands_table.php diff --git a/app/Http/Requests/Bo/Brands/StoreBrandRequest.php b/app/Http/Requests/Bo/Brands/StoreBrandRequest.php index afdf694..eca4c1e 100644 --- a/app/Http/Requests/Bo/Brands/StoreBrandRequest.php +++ b/app/Http/Requests/Bo/Brands/StoreBrandRequest.php @@ -37,10 +37,11 @@ class StoreBrandRequest extends FormRequest public function rules(): array { $rules = [ - 'name' => 'required|unique:brands,name|string|min:5|max:255', - 'url' => 'required|url|min:5|max:255', - 'url_claim' => 'required|url|min:5|max:255', - 'domain' => 'required|unique:brands,domain|string|min:5|max:255', + 'name' => 'required|unique:brands,name|string|min:5|max:255', + 'url' => 'required|url|min:5|max:255', + 'url_claim' => 'required|url|min:5|max:255', + 'domain' => 'required|unique:brands,domain|string|min:5|max:255', + 'newsletter_email' => 'nullable|email:rfc,strict,dns,spoof,filter', ]; return \array_merge( $rules, diff --git a/app/Models/Brand.php b/app/Models/Brand.php index 6381858..a9e65f9 100644 --- a/app/Models/Brand.php +++ b/app/Models/Brand.php @@ -48,6 +48,7 @@ class Brand extends Model 'url', 'url_claim', 'domain', + 'newsletter_email', ]; /** diff --git a/database/migrations/2026_04_03_152802_alter_brands_table.php b/database/migrations/2026_04_03_152802_alter_brands_table.php new file mode 100644 index 0000000..1a7ef69 --- /dev/null +++ b/database/migrations/2026_04_03_152802_alter_brands_table.php @@ -0,0 +1,28 @@ +string('newsletter_email')->nullable()->comment('Brand associative newsletter email.')->after('domain'); + }); + } + + /** + * Reverse the migrations. + */ + public function down(): void + { + Schema::table('brands', function (Blueprint $table) { + $table->dropColumn('newsletter_email'); + }); + } +}; diff --git a/resources/views/bo/pages/brands/form.blade.php b/resources/views/bo/pages/brands/form.blade.php index 8b55632..11c4e80 100644 --- a/resources/views/bo/pages/brands/form.blade.php +++ b/resources/views/bo/pages/brands/form.blade.php @@ -89,6 +89,29 @@ + {{-- NEWSLETTER_EMAIL --}} +
+
+ {{ str(__('validation.custom.newsletter_email'))->ucfirst() }} +
+
+ @include('bo.partials.inputs.varchar', [ + 'id' => 'brandNewsletterEmail', + 'label' => __(':field de la :model', [ + 'field' => str(__('validation.custom.newsletter_email'))->ucfirst(), + 'model' => str(__('models.classes.brands'))->singular(), + ]), + 'hasWordCounter' => true, + 'name' => 'newsletter_email', + 'required' => false, + 'model' => $brandModel ?? null, + 'placeholder' => 'no-reply@example.com', + 'helper' => __('Adresse email utilisée pour l\'envoi de la newsletter.'), + ]) +
+
+
+
{{-- IMAGE --}}