diff --git a/addons/website_sale/controllers/main.py b/addons/website_sale/controllers/main.py
index d5fa0a750e0..75ff784675a 100644
--- a/addons/website_sale/controllers/main.py
+++ b/addons/website_sale/controllers/main.py
@@ -322,12 +322,13 @@ class WebsiteSale(http.Controller):
@http.route(['/shop/pricelist'], type='http', auth="public", website=True)
def pricelist(self, promo, **post):
+ redirect = post.get('r', '/shop/cart')
pricelist = request.env['product.pricelist'].sudo().search([('code', '=', promo)], limit=1)
- if pricelist and not request.website.is_pricelist_available(pricelist.id):
- return request.redirect("/shop/cart?code_not_available=1")
+ if not pricelist or (pricelist and not request.website.is_pricelist_available(pricelist.id)):
+ return request.redirect("%s?code_not_available=1" % redirect)
request.website.sale_get_order(code=promo)
- return request.redirect("/shop/cart")
+ return request.redirect(redirect)
@http.route(['/shop/cart'], type='http', auth="public", website=True)
def cart(self, **post):
@@ -353,9 +354,6 @@ class WebsiteSale(http.Controller):
if post.get('type') == 'popover':
return request.render("website_sale.cart_popover", values)
- if post.get('code_not_available'):
- values['code_not_available'] = post.get('code_not_available')
-
return request.render("website_sale.cart", values)
@http.route(['/shop/cart/update'], type='http', auth="public", methods=['POST'], website=True, csrf=False)
diff --git a/addons/website_sale/static/src/css/website_sale.css b/addons/website_sale/static/src/css/website_sale.css
index 1e07076f96b..bf1f19a614d 100644
--- a/addons/website_sale/static/src/css/website_sale.css
+++ b/addons/website_sale/static/src/css/website_sale.css
@@ -629,3 +629,8 @@ a.no-decoration {
.break-word {
word-wrap: break-word;
}
+
+#coupon_box form {
+ max-width: 300px;
+}
+
diff --git a/addons/website_sale/static/src/css/website_sale.sass b/addons/website_sale/static/src/css/website_sale.sass
index 11acccca662..225a584a537 100644
--- a/addons/website_sale/static/src/css/website_sale.sass
+++ b/addons/website_sale/static/src/css/website_sale.sass
@@ -550,3 +550,6 @@ a.no-decoration
.break-word
word-wrap: break-word
+
+#coupon_box form
+ max-width: 300px
diff --git a/addons/website_sale/views/templates.xml b/addons/website_sale/views/templates.xml
index 8ccbf410bf9..a1c634dd219 100644
--- a/addons/website_sale/views/templates.xml
+++ b/addons/website_sale/views/templates.xml
@@ -1029,24 +1029,31 @@
+
+ This promo code is not available
Have a coupon code? Fill in this field and apply.
This promo code is not availableCoupon Code
+ Have a coupon code? Fill in this field and apply. +
+- Have a coupon code? Fill in this field and apply. -
-This promo code is not available
-