diff --git a/packages/Webkul/Shop/src/Http/Controllers/CartController.php b/packages/Webkul/Shop/src/Http/Controllers/CartController.php index 395ca70f7..c47599c0e 100755 --- a/packages/Webkul/Shop/src/Http/Controllers/CartController.php +++ b/packages/Webkul/Shop/src/Http/Controllers/CartController.php @@ -8,6 +8,7 @@ use Illuminate\Support\Facades\Log; use Webkul\Checkout\Contracts\Cart as CartModel; use Webkul\Customer\Repositories\WishlistRepository; use Webkul\Product\Repositories\ProductRepository; +use Webkul\CartRule\Repositories\CartRuleCouponRepository; class CartController extends Controller { @@ -16,11 +17,13 @@ class CartController extends Controller * * @param \Webkul\Customer\Repositories\CartItemRepository $wishlistRepository * @param \Webkul\Product\Repositories\ProductRepository $productRepository + * @param \Webkul\CartRule\Repositories\CartRuleCouponRepository $cartRuleCouponRepository * @return void */ public function __construct( protected WishlistRepository $wishlistRepository, - protected ProductRepository $productRepository + protected ProductRepository $productRepository, + protected CartRuleCouponRepository $cartRuleCouponRepository ) { $this->middleware('throttle:5,1')->only('applyCoupon'); @@ -177,16 +180,27 @@ class CartController extends Controller try { if (strlen($couponCode)) { - Cart::setCouponCode($couponCode)->collectTotals(); + $coupon = $this->cartRuleCouponRepository->findOneByField('code', $couponCode); - if (Cart::getCart()->coupon_code == $couponCode) { - return response()->json([ - 'success' => true, - 'message' => trans('shop::app.checkout.total.success-coupon'), - ]); + if ($coupon->cart_rule->status) { + if (Cart::getCart()->coupon_code == $couponCode) { + return response()->json([ + 'success' => false, + 'message' => trans('shop::app.checkout.total.coupon-already-applied'), + ]); + } + + Cart::setCouponCode($couponCode)->collectTotals(); + + if (Cart::getCart()->coupon_code == $couponCode) { + return response()->json([ + 'success' => true, + 'message' => trans('shop::app.checkout.total.success-coupon'), + ]); + } } } - + return response()->json([ 'success' => false, 'message' => trans('shop::app.checkout.total.invalid-coupon'), diff --git a/packages/Webkul/Shop/src/Resources/lang/ar/app.php b/packages/Webkul/Shop/src/Resources/lang/ar/app.php index 99d8fc4a7..c32293e99 100644 --- a/packages/Webkul/Shop/src/Resources/lang/ar/app.php +++ b/packages/Webkul/Shop/src/Resources/lang/ar/app.php @@ -625,6 +625,7 @@ return [ 'invalid-coupon' => 'رمز القسيمة غير صالح.', 'success-coupon' => 'تم تطبيق رمز القسيمة بنجاح.', 'coupon-apply-issue' => 'لا يمكن تطبيق رمز القسيمة.', + 'coupon-already-applied' => 'تم تطبيق رمز القسيمة بالفعل.', ], 'success' => [ diff --git a/packages/Webkul/Shop/src/Resources/lang/ben/app.php b/packages/Webkul/Shop/src/Resources/lang/ben/app.php index a11b779b4..b9368e529 100644 --- a/packages/Webkul/Shop/src/Resources/lang/ben/app.php +++ b/packages/Webkul/Shop/src/Resources/lang/ben/app.php @@ -611,6 +611,7 @@ return [ 'invalid-coupon' => 'কুপন কোড অবৈধ।', 'success-coupon' => 'কুপন কোড সফলভাবে প্রয়োগ করা হয়েছে।', 'coupon-apply-issue' => 'কুপন কোড প্রয়োগ করা যাবে না।', + 'coupon-already-applied' => 'কুপন কোড ইতিমধ্যেই প্রয়োগ করা হয়েছে।', ], 'success' => [ diff --git a/packages/Webkul/Shop/src/Resources/lang/de/app.php b/packages/Webkul/Shop/src/Resources/lang/de/app.php index fccc9d96e..0fa43f85e 100755 --- a/packages/Webkul/Shop/src/Resources/lang/de/app.php +++ b/packages/Webkul/Shop/src/Resources/lang/de/app.php @@ -609,6 +609,7 @@ return [ 'invalid-coupon' => 'Gutscheincode ist ungültig.', 'success-coupon' => 'Gutscheincode erfolgreich angewendet.', 'coupon-apply-issue' => 'Gutscheincode kann nicht angewendet werden.', + 'coupon-already-applied' => 'Gutscheincode bereits angewendet.', ], 'success' => [ diff --git a/packages/Webkul/Shop/src/Resources/lang/en/app.php b/packages/Webkul/Shop/src/Resources/lang/en/app.php index b41f80f72..a4f370d04 100755 --- a/packages/Webkul/Shop/src/Resources/lang/en/app.php +++ b/packages/Webkul/Shop/src/Resources/lang/en/app.php @@ -623,6 +623,7 @@ return [ 'invalid-coupon' => 'Coupon code is invalid.', 'success-coupon' => 'Coupon code applied successfully.', 'coupon-apply-issue' => 'Coupon code can\'t be applied.', + 'coupon-already-applied' => 'Coupon code already applied.', ], 'success' => [ diff --git a/packages/Webkul/Shop/src/Resources/lang/es/app.php b/packages/Webkul/Shop/src/Resources/lang/es/app.php index 043028f8f..9ef95e06d 100644 --- a/packages/Webkul/Shop/src/Resources/lang/es/app.php +++ b/packages/Webkul/Shop/src/Resources/lang/es/app.php @@ -614,6 +614,7 @@ return [ 'invalid-coupon' => 'El código del cupón no es válido.', 'success-coupon' => 'Código del cupón aplicado correctamente.', 'coupon-apply-issue' => 'No se puede aplicar el código de cupón.', + 'coupon-already-applied' => 'Código de cupón ya aplicado.', ], 'success' => [ diff --git a/packages/Webkul/Shop/src/Resources/lang/fa/app.php b/packages/Webkul/Shop/src/Resources/lang/fa/app.php index bf248cc52..8a05684bb 100644 --- a/packages/Webkul/Shop/src/Resources/lang/fa/app.php +++ b/packages/Webkul/Shop/src/Resources/lang/fa/app.php @@ -610,6 +610,7 @@ return [ 'invalid-coupon' => 'کد کوپن نامعتبر است', 'success-coupon' => 'کد کوپن با موفقیت اعمال شد', 'coupon-apply-issue' => 'کد کوپن نمی تواند اعمال شود', + 'coupon-already-applied' => 'کد کوپن قبلاً اعمال شده است.', ], 'success' => [ diff --git a/packages/Webkul/Shop/src/Resources/lang/fr/app.php b/packages/Webkul/Shop/src/Resources/lang/fr/app.php index 1982451d9..290b6c30e 100755 --- a/packages/Webkul/Shop/src/Resources/lang/fr/app.php +++ b/packages/Webkul/Shop/src/Resources/lang/fr/app.php @@ -613,6 +613,7 @@ return [ 'invalid-coupon' => 'Le code promo n\'est pas valide.', 'success-coupon' => 'Code promo appliqué avec succès.', 'coupon-apply-issue' => 'Le code promo ne peut pas être appliqué.', + 'coupon-already-applied' => 'Code promo déjà appliqué.', ], 'success' => [ diff --git a/packages/Webkul/Shop/src/Resources/lang/he/app.php b/packages/Webkul/Shop/src/Resources/lang/he/app.php index 782089626..a26dda76a 100644 --- a/packages/Webkul/Shop/src/Resources/lang/he/app.php +++ b/packages/Webkul/Shop/src/Resources/lang/he/app.php @@ -610,6 +610,7 @@ return [ 'invalid-coupon' => 'קוד הקופון אינו חוקי.', 'success-coupon' => 'קוד הקופון הוחל בהצלחה.', 'coupon-apply-issue' => 'לא ניתן להחיל קוד קופון.', + 'coupon-already-applied' => 'קוד קופון כבר הוחל.', ], 'success' => [ diff --git a/packages/Webkul/Shop/src/Resources/lang/hi_IN/app.php b/packages/Webkul/Shop/src/Resources/lang/hi_IN/app.php index b23e3923b..62c9306ce 100644 --- a/packages/Webkul/Shop/src/Resources/lang/hi_IN/app.php +++ b/packages/Webkul/Shop/src/Resources/lang/hi_IN/app.php @@ -622,6 +622,7 @@ return [ 'invalid-coupon' => 'कूपन कोड अमान्य है।', 'success-coupon' => 'कूपन कोड सफलतापूर्वक लागू किया गया।', 'coupon-apply-issue' => 'कूपन कोड लागू नहीं किया जा सकता', + 'coupon-already-applied' => 'कूपन कोड पहले से ही लागू है।', ], 'success' => [ diff --git a/packages/Webkul/Shop/src/Resources/lang/it/app.php b/packages/Webkul/Shop/src/Resources/lang/it/app.php index 7aff25b90..cf611c1c9 100644 --- a/packages/Webkul/Shop/src/Resources/lang/it/app.php +++ b/packages/Webkul/Shop/src/Resources/lang/it/app.php @@ -612,6 +612,7 @@ return [ 'invalid-coupon' => 'Il Codice Promo non è valido.', 'success-coupon' => 'Codice Promo applicato con successo.', 'coupon-apply-issue' => 'Il Codice Promo non può essere applicato.', + 'coupon-already-applied' => 'Codice coupon già applicato.', ], 'success' => [ diff --git a/packages/Webkul/Shop/src/Resources/lang/nl/app.php b/packages/Webkul/Shop/src/Resources/lang/nl/app.php index da96cfeee..573162f27 100644 --- a/packages/Webkul/Shop/src/Resources/lang/nl/app.php +++ b/packages/Webkul/Shop/src/Resources/lang/nl/app.php @@ -619,6 +619,7 @@ return [ 'invalid-coupon' => 'Couponcode is ongeldig.', 'success-coupon' => 'Couponcode succesvol toegepast.', 'coupon-apply-issue' => 'Coupon code can\'t be applied.', + 'coupon-already-applied' => 'Couponcode reeds toegepast.', ], 'success' => [ diff --git a/packages/Webkul/Shop/src/Resources/lang/pl/app.php b/packages/Webkul/Shop/src/Resources/lang/pl/app.php index 37630e227..019e07e4a 100644 --- a/packages/Webkul/Shop/src/Resources/lang/pl/app.php +++ b/packages/Webkul/Shop/src/Resources/lang/pl/app.php @@ -612,6 +612,7 @@ return [ 'invalid-coupon' => 'Kod kuponu jest nieprawidłowy.', 'success-coupon' => 'Kod kuponu został pomyślnie zastosowany.', 'coupon-apply-issue' => 'Nie można zastosować kodu kuponu.', + 'coupon-already-applied' => 'Kod kuponu został już zastosowany.', ], 'success' => [ diff --git a/packages/Webkul/Shop/src/Resources/lang/pt_BR/app.php b/packages/Webkul/Shop/src/Resources/lang/pt_BR/app.php index f181b7dc4..392f57020 100755 --- a/packages/Webkul/Shop/src/Resources/lang/pt_BR/app.php +++ b/packages/Webkul/Shop/src/Resources/lang/pt_BR/app.php @@ -599,6 +599,7 @@ return [ 'invalid-coupon' => 'Código do Cupom é inválido.', 'success-coupon' => 'Cupom aplicado com sucesso.', 'coupon-apply-issue' => 'Não foi possível aplicar esse Cupom', + 'coupon-already-applied' => 'Coupon code already applied.', ], 'success' => [ diff --git a/packages/Webkul/Shop/src/Resources/lang/ru/app.php b/packages/Webkul/Shop/src/Resources/lang/ru/app.php index 5d7068db1..333bc78f3 100644 --- a/packages/Webkul/Shop/src/Resources/lang/ru/app.php +++ b/packages/Webkul/Shop/src/Resources/lang/ru/app.php @@ -611,6 +611,7 @@ return [ 'invalid-coupon' => 'Код купона недействителен.', 'success-coupon' => 'Код купона успешно применен.', 'coupon-apply-issue' => 'Код купона не может быть применен.', + 'coupon-already-applied' => 'Coupon code already applied.', ], 'success' => [ diff --git a/packages/Webkul/Shop/src/Resources/lang/sin/app.php b/packages/Webkul/Shop/src/Resources/lang/sin/app.php index d4555ca28..c85c3d47a 100644 --- a/packages/Webkul/Shop/src/Resources/lang/sin/app.php +++ b/packages/Webkul/Shop/src/Resources/lang/sin/app.php @@ -610,6 +610,7 @@ return [ 'invalid-coupon' => 'කූපන් කේතය වලංගු නැත.', 'success-coupon' => 'කූපන් කේතය සාර්ථකව යොදන ලදී.', 'coupon-apply-issue' => 'කූපන් කේතය යෙදිය නොහැක.', + 'coupon-already-applied' => 'Coupon code already applied.', ], 'success' => [ diff --git a/packages/Webkul/Shop/src/Resources/lang/tr/app.php b/packages/Webkul/Shop/src/Resources/lang/tr/app.php index 958712db0..5c1b638f2 100644 --- a/packages/Webkul/Shop/src/Resources/lang/tr/app.php +++ b/packages/Webkul/Shop/src/Resources/lang/tr/app.php @@ -611,6 +611,7 @@ return [ 'invalid-coupon' => 'Kupon kodu geçersiz.', 'success-coupon' => 'Kupon kodu başarıyla uygulandı.', 'coupon-apply-issue' => 'Kupon kodu uygulanamaz.', + 'coupon-already-applied' => 'Kupon kodu zaten uygulandı.', ], 'success' => [ diff --git a/packages/Webkul/Shop/src/Resources/lang/zh_CN/app.php b/packages/Webkul/Shop/src/Resources/lang/zh_CN/app.php index 4ec9e950b..04ce4fb76 100644 --- a/packages/Webkul/Shop/src/Resources/lang/zh_CN/app.php +++ b/packages/Webkul/Shop/src/Resources/lang/zh_CN/app.php @@ -612,7 +612,8 @@ return [ 'cannot-apply-coupon' => '不能应用优惠券', 'invalid-coupon' => '优惠券代码无效.', 'success-coupon' => '优惠券代码已应用成功.', - 'coupon-apply-issue' => '优惠券代码不能被应用.' + 'coupon-apply-issue' => '优惠券代码不能被应用.', + 'coupon-already-applied' => '優惠券代碼已應用', ], 'success' => [