@ -1,8 +1,8 @@
# Copyright 2021 Le Filament (<http://www.le-filament.com>)
# Copyright 2021 Le Filament (<http://www.le-filament.com>)
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
from odoo import http
from odoo.http import request
from odoo.http import request
from odoo import http , _
from odoo.addons.website_sale.controllers.main import WebsiteSale
from odoo.addons.website_sale.controllers.main import WebsiteSale
from odoo.addons.website_coupon.controllers.main import WebsiteCoupon
from odoo.addons.website_coupon.controllers.main import WebsiteCoupon
@ -22,34 +22,9 @@ class WebsiteCoupon(WebsiteCoupon):
class WebsiteSale ( WebsiteSale ) :
class WebsiteSale ( WebsiteSale ) :
@http.route ( [ ' /shop/cart/update_json ' ] , type = ' json ' , auth = " public " , methods = [ ' POST ' ] , website = True , csrf = False )
def cart_update_json ( self , product_id , line_id = None , add_qty = None , set_qty = None , display = True ) :
res = super ( WebsiteSale , self ) . cart_update_json ( product_id , line_id , add_qty , set_qty , display )
return res
@http.route ( [ ' /shop/cart/update ' ] , type = ' http ' , auth = " public " , methods = [ ' POST ' ] , website = True , csrf = False )
def cart_update ( self , product_id , add_qty = 1 , set_qty = 0 , * * kw ) :
res = super ( WebsiteSale , self ) . cart_update ( product_id , add_qty , set_qty , * * kw )
return res
# """This route is called when adding a product to cart (no options)."""
# sale_order = request.website.sale_get_order(force_create=True)
# if sale_order.state != 'draft':
# request.session['sale_order_id'] = None
# sale_order = request.website.sale_get_order(force_create=True)
#
# product_custom_attribute_values = None
# if kw.get('product_custom_attribute_values'):
# product_custom_attribute_values = json.loads(kw.get('product_custom_attribute_values'))
#
# no_variant_attribute_values = None
# if kw.get('no_variant_attribute_values'):
# no_variant_attribute_values = json.loads(kw.get('no_variant_attribute_values'))
#
# sale_order._cart_update(
# product_id=int(product_id),
# add_qty=add_qty,
# set_qty=set_qty,
# product_custom_attribute_values=product_custom_attribute_values,
# no_variant_attribute_values=no_variant_attribute_values
# )
# return request.redirect("/shop/cart")
@http.route ( [ ' /shop/checkout ' ] , type = ' http ' , auth = " public " , website = True , sitemap = False )
def checkout ( self , * * post ) :
order = request . website . sale_get_order ( )
if order . amount_total < = request . website . amount_limit :
return request . redirect ( ' /shop/cart ' )
return super ( WebsiteSale , self ) . checkout ( * * post )