From 4efc70496f2affab4cde2afd032e89494746ebcd Mon Sep 17 00:00:00 2001 From: Abhishek Kathuria Date: Wed, 24 Aug 2022 16:28:26 +0530 Subject: [PATCH] Done the validation from laravel validation --- .../Webkul/Admin/src/Resources/lang/ar/app.php | 1 - .../Webkul/Admin/src/Resources/lang/ben/app.php | 1 - .../Webkul/Admin/src/Resources/lang/de/app.php | 1 - .../Webkul/Admin/src/Resources/lang/en/app.php | 1 - .../Webkul/Admin/src/Resources/lang/es/app.php | 1 - .../Webkul/Admin/src/Resources/lang/fa/app.php | 1 - .../Webkul/Admin/src/Resources/lang/fr/app.php | 1 - .../Webkul/Admin/src/Resources/lang/he/app.php | 1 - .../Webkul/Admin/src/Resources/lang/hi_IN/app.php | 1 - .../Webkul/Admin/src/Resources/lang/it/app.php | 1 - .../Webkul/Admin/src/Resources/lang/ja/app.php | 1 - .../Webkul/Admin/src/Resources/lang/nl/app.php | 1 - .../Webkul/Admin/src/Resources/lang/pl/app.php | 1 - .../Webkul/Admin/src/Resources/lang/pt_BR/app.php | 1 - .../Webkul/Admin/src/Resources/lang/ru/app.php | 1 - .../Webkul/Admin/src/Resources/lang/sin/app.php | 1 - .../Webkul/Admin/src/Resources/lang/tr/app.php | 1 - .../Webkul/Admin/src/Resources/lang/zh_CN/app.php | 1 - .../src/Http/Controllers/ProductController.php | 11 ----------- .../Product/src/Http/Requests/ProductForm.php | 15 ++++++++++++--- 20 files changed, 12 insertions(+), 32 deletions(-) diff --git a/packages/Webkul/Admin/src/Resources/lang/ar/app.php b/packages/Webkul/Admin/src/Resources/lang/ar/app.php index 60d304043..1aeedf276 100644 --- a/packages/Webkul/Admin/src/Resources/lang/ar/app.php +++ b/packages/Webkul/Admin/src/Resources/lang/ar/app.php @@ -1613,7 +1613,6 @@ return [ 'set-order-status' => 'قم بتعيين حالة الطلب بعد إنشاء الفاتورة إلى', 'generate-invoice-applicable' => 'قابل للتطبيق إذا تم تمكين إنشاء الفاتورة تلقائيًا', 'records-found' => 'تم العثور على السجلات ', - 'image-required' => 'Image is required' ], ], diff --git a/packages/Webkul/Admin/src/Resources/lang/ben/app.php b/packages/Webkul/Admin/src/Resources/lang/ben/app.php index ca2ecf9cf..77448dff2 100755 --- a/packages/Webkul/Admin/src/Resources/lang/ben/app.php +++ b/packages/Webkul/Admin/src/Resources/lang/ben/app.php @@ -1631,7 +1631,6 @@ return [ 'logo-size' => 'Image resolution should be like 112px X 41px', 'favicon-size' => 'Image resolution should be like 16px X 16px', 'invoice-logo-size' => 'Image resolution should be like 192px X 50px', - 'image-required' => 'Image is required' ], ], diff --git a/packages/Webkul/Admin/src/Resources/lang/de/app.php b/packages/Webkul/Admin/src/Resources/lang/de/app.php index d6d0a5c2b..41d97363f 100755 --- a/packages/Webkul/Admin/src/Resources/lang/de/app.php +++ b/packages/Webkul/Admin/src/Resources/lang/de/app.php @@ -1589,7 +1589,6 @@ return [ 'set-order-status' => 'Set the order status after creating the invoice to', 'generate-invoice-applicable' => 'Applicable if automatic generate invoice is enabled', 'records-found' => 'Datensätze gefunden ', - 'image-required' => 'Image is required' ], ], diff --git a/packages/Webkul/Admin/src/Resources/lang/en/app.php b/packages/Webkul/Admin/src/Resources/lang/en/app.php index ad3fbe1dd..209656bac 100755 --- a/packages/Webkul/Admin/src/Resources/lang/en/app.php +++ b/packages/Webkul/Admin/src/Resources/lang/en/app.php @@ -1631,7 +1631,6 @@ return [ 'logo-size' => 'Image resolution should be like 112px X 41px', 'favicon-size' => 'Image resolution should be like 16px X 16px', 'invoice-logo-size' => 'Image resolution should be like 192px X 50px', - 'image-required' => 'Image is required' ], ], diff --git a/packages/Webkul/Admin/src/Resources/lang/es/app.php b/packages/Webkul/Admin/src/Resources/lang/es/app.php index 741cdbd92..8fbbd231b 100644 --- a/packages/Webkul/Admin/src/Resources/lang/es/app.php +++ b/packages/Webkul/Admin/src/Resources/lang/es/app.php @@ -1611,7 +1611,6 @@ return [ 'set-order-status' => 'Set the order status after creating the invoice to', 'generate-invoice-applicable' => 'Applicable if automatic generate invoice is enabled', 'records-found' => 'registros encontrados', - 'image-required' => 'Image is required' ], ], diff --git a/packages/Webkul/Admin/src/Resources/lang/fa/app.php b/packages/Webkul/Admin/src/Resources/lang/fa/app.php index 0f469b4fe..2552c5604 100644 --- a/packages/Webkul/Admin/src/Resources/lang/fa/app.php +++ b/packages/Webkul/Admin/src/Resources/lang/fa/app.php @@ -1590,7 +1590,6 @@ return [ 'set-order-status' => 'Set the order status after creating the invoice to', 'generate-invoice-applicable' => 'Applicable if automatic generate invoice is enabled', 'records-found' => 'Record(s) found', - 'image-required' => 'Image is required' ], ], diff --git a/packages/Webkul/Admin/src/Resources/lang/fr/app.php b/packages/Webkul/Admin/src/Resources/lang/fr/app.php index c871acf33..eef6b4329 100644 --- a/packages/Webkul/Admin/src/Resources/lang/fr/app.php +++ b/packages/Webkul/Admin/src/Resources/lang/fr/app.php @@ -1627,7 +1627,6 @@ return [ 'set-order-status' => 'Définissez le statut de la commande après la création de la facture sur', 'generate-invoice-applicable' => 'Applicable si la génération automatique de facture est activée', 'records-found' => 'enregistrements trouvés', - 'image-required' => 'Image is required' ], ], diff --git a/packages/Webkul/Admin/src/Resources/lang/he/app.php b/packages/Webkul/Admin/src/Resources/lang/he/app.php index 7d5e5f534..9a3e6c5c5 100755 --- a/packages/Webkul/Admin/src/Resources/lang/he/app.php +++ b/packages/Webkul/Admin/src/Resources/lang/he/app.php @@ -1631,7 +1631,6 @@ return [ 'logo-size' => 'Image resolution should be like 112px X 41px', 'favicon-size' => 'Image resolution should be like 16px X 16px', 'invoice-logo-size' => 'Image resolution should be like 192px X 50px', - 'image-required' => 'Image is required' ], ], diff --git a/packages/Webkul/Admin/src/Resources/lang/hi_IN/app.php b/packages/Webkul/Admin/src/Resources/lang/hi_IN/app.php index c1612c49e..e0ab49092 100644 --- a/packages/Webkul/Admin/src/Resources/lang/hi_IN/app.php +++ b/packages/Webkul/Admin/src/Resources/lang/hi_IN/app.php @@ -1628,7 +1628,6 @@ return [ 'logo-size' => 'छवि संकल्प 112px X 41px जैसा होना चाहिए', 'favicon-size' => 'छवि संकल्प 16px X 16px जैसा होना चाहिए', 'invoice-logo-size' => 'इमेज रेजोल्यूशन 192px X 50px जैसा होना चाहिए', - 'image-required' => 'Image is required' ], ], diff --git a/packages/Webkul/Admin/src/Resources/lang/it/app.php b/packages/Webkul/Admin/src/Resources/lang/it/app.php index 820cc81f7..99b44dcdb 100644 --- a/packages/Webkul/Admin/src/Resources/lang/it/app.php +++ b/packages/Webkul/Admin/src/Resources/lang/it/app.php @@ -1598,7 +1598,6 @@ return [ 'set-order-status' => 'Set the order status after creating the invoice to', 'generate-invoice-applicable' => 'Applicabile se la generazione automatica di fatture é abilitata', 'records-found' => 'Record(s) trovati', - 'image-required' => 'Image is required' ], ], diff --git a/packages/Webkul/Admin/src/Resources/lang/ja/app.php b/packages/Webkul/Admin/src/Resources/lang/ja/app.php index ca2ecf9cf..77448dff2 100755 --- a/packages/Webkul/Admin/src/Resources/lang/ja/app.php +++ b/packages/Webkul/Admin/src/Resources/lang/ja/app.php @@ -1631,7 +1631,6 @@ return [ 'logo-size' => 'Image resolution should be like 112px X 41px', 'favicon-size' => 'Image resolution should be like 16px X 16px', 'invoice-logo-size' => 'Image resolution should be like 192px X 50px', - 'image-required' => 'Image is required' ], ], diff --git a/packages/Webkul/Admin/src/Resources/lang/nl/app.php b/packages/Webkul/Admin/src/Resources/lang/nl/app.php index 3da8ec2d0..083550640 100644 --- a/packages/Webkul/Admin/src/Resources/lang/nl/app.php +++ b/packages/Webkul/Admin/src/Resources/lang/nl/app.php @@ -1590,7 +1590,6 @@ return [ 'set-order-status' => 'Set the order status after creating the invoice to', 'generate-invoice-applicable' => 'Applicable if automatic generate invoice is enabled', 'records-found' => 'Record(s) found', - 'image-required' => 'Image is required' ], ], diff --git a/packages/Webkul/Admin/src/Resources/lang/pl/app.php b/packages/Webkul/Admin/src/Resources/lang/pl/app.php index 84793286f..c4a3e59f7 100644 --- a/packages/Webkul/Admin/src/Resources/lang/pl/app.php +++ b/packages/Webkul/Admin/src/Resources/lang/pl/app.php @@ -1579,7 +1579,6 @@ return [ 'set-order-status' => 'Set the order status after creating the invoice to', 'generate-invoice-applicable' => 'Applicable if automatic generate invoice is enabled', 'records-found' => 'Record(s) found', - 'image-required' => 'Image is required' ], ], diff --git a/packages/Webkul/Admin/src/Resources/lang/pt_BR/app.php b/packages/Webkul/Admin/src/Resources/lang/pt_BR/app.php index d15d49127..f833f3d57 100755 --- a/packages/Webkul/Admin/src/Resources/lang/pt_BR/app.php +++ b/packages/Webkul/Admin/src/Resources/lang/pt_BR/app.php @@ -1593,7 +1593,6 @@ return [ 'set-order-status' => 'Set the order status after creating the invoice to', 'generate-invoice-applicable' => 'Applicable if automatic generate invoice is enabled', 'records-found' => 'Record(s) found', - 'image-required' => 'Image is required' ], ], diff --git a/packages/Webkul/Admin/src/Resources/lang/ru/app.php b/packages/Webkul/Admin/src/Resources/lang/ru/app.php index bdf2ae87f..1a0777462 100755 --- a/packages/Webkul/Admin/src/Resources/lang/ru/app.php +++ b/packages/Webkul/Admin/src/Resources/lang/ru/app.php @@ -1631,7 +1631,6 @@ return [ 'logo-size' => 'Image resolution should be like 112px X 41px', 'favicon-size' => 'Image resolution should be like 16px X 16px', 'invoice-logo-size' => 'Image resolution should be like 192px X 50px', - 'image-required' => 'Image is required' ], ], diff --git a/packages/Webkul/Admin/src/Resources/lang/sin/app.php b/packages/Webkul/Admin/src/Resources/lang/sin/app.php index 7d5e5f534..9a3e6c5c5 100755 --- a/packages/Webkul/Admin/src/Resources/lang/sin/app.php +++ b/packages/Webkul/Admin/src/Resources/lang/sin/app.php @@ -1631,7 +1631,6 @@ return [ 'logo-size' => 'Image resolution should be like 112px X 41px', 'favicon-size' => 'Image resolution should be like 16px X 16px', 'invoice-logo-size' => 'Image resolution should be like 192px X 50px', - 'image-required' => 'Image is required' ], ], diff --git a/packages/Webkul/Admin/src/Resources/lang/tr/app.php b/packages/Webkul/Admin/src/Resources/lang/tr/app.php index 6fae442e7..06aa1c4a2 100644 --- a/packages/Webkul/Admin/src/Resources/lang/tr/app.php +++ b/packages/Webkul/Admin/src/Resources/lang/tr/app.php @@ -1588,7 +1588,6 @@ return [ 'set-order-status' => 'Faturayı oluşturduktan sonra sipariş durumunu ayarlayın.', 'generate-invoice-applicable' => 'Otomatik fatura oluştur etkinse geçerlidir', 'records-found' => 'Kayıt(lar) bulundu', - 'image-required' => 'Image is required' ], ], diff --git a/packages/Webkul/Admin/src/Resources/lang/zh_CN/app.php b/packages/Webkul/Admin/src/Resources/lang/zh_CN/app.php index 7f4c12e84..e543b9eba 100644 --- a/packages/Webkul/Admin/src/Resources/lang/zh_CN/app.php +++ b/packages/Webkul/Admin/src/Resources/lang/zh_CN/app.php @@ -1586,7 +1586,6 @@ return [ 'logo-size' => '图像分辨率应该是 112px X 41px', 'favicon-size' => '图像分辨率应该是 16px X 16px', 'invoice-logo-size' => '图像分辨率应该是 192px X 50px', - 'image-required' => 'Image is required' ], ], 'api' => [ diff --git a/packages/Webkul/Product/src/Http/Controllers/ProductController.php b/packages/Webkul/Product/src/Http/Controllers/ProductController.php index 275605dc2..486d221a1 100755 --- a/packages/Webkul/Product/src/Http/Controllers/ProductController.php +++ b/packages/Webkul/Product/src/Http/Controllers/ProductController.php @@ -155,17 +155,6 @@ class ProductController extends Controller */ public function update(ProductForm $request, $id) { - foreach (request()->images['files'] as $fileExists) { - - if (! $fileExists) { - session()->flash('error', trans('admin::app.admin.system.image-required')); - - return redirect()->back(); - } - } - - $this->productRepository->update(request()->all(), $id); - Event::dispatch('catalog.product.update.before', $id); $product = $this->productRepository->update(request()->all(), $id); diff --git a/packages/Webkul/Product/src/Http/Requests/ProductForm.php b/packages/Webkul/Product/src/Http/Requests/ProductForm.php index 037b76375..b36cba757 100755 --- a/packages/Webkul/Product/src/Http/Requests/ProductForm.php +++ b/packages/Webkul/Product/src/Http/Requests/ProductForm.php @@ -2,13 +2,14 @@ namespace Webkul\Product\Http\Requests; +use Illuminate\Support\Str; use Illuminate\Foundation\Http\FormRequest; -use Webkul\Admin\Validations\ProductCategoryUniqueSlug; -use Webkul\Core\Contracts\Validations\Decimal; use Webkul\Core\Contracts\Validations\Slug; +use Webkul\Core\Contracts\Validations\Decimal; use Webkul\Product\Models\ProductAttributeValue; -use Webkul\Product\Repositories\ProductAttributeValueRepository; use Webkul\Product\Repositories\ProductRepository; +use Webkul\Admin\Validations\ProductCategoryUniqueSlug; +use Webkul\Product\Repositories\ProductAttributeValueRepository; class ProductForm extends FormRequest { @@ -66,6 +67,14 @@ class ProductForm extends FormRequest 'special_price' => ['nullable', new Decimal, 'lt:price'], ]); + foreach (request()->images['files'] as $key => $file) { + if (Str::contains($key, 'image_')) { + $this->rules = array_merge($this->rules, [ + 'images.files.' . $key => ['required', 'mimes:bmp,jpeg,jpg,png,webp'], + ]); + } + } + foreach ($product->getEditableAttributes() as $attribute) { if ( in_array($attribute->code, ['sku', 'url_key'])