Files
enterprise-addons/website_sale_external_tax/controllers/main.py
T

37 lines
1.2 KiB
Python

# Part of Odoo. See LICENSE file for full copyright and licensing details.
from odoo import _
from odoo.exceptions import UserError
from odoo.addons.website_sale.controllers import delivery, main
class WebsiteSaleExternalTaxCalculation(main.WebsiteSale):
def _get_shop_payment_errors(self, order):
errors = super()._get_shop_payment_errors(order)
try:
order._get_and_set_external_taxes_on_eligible_records()
except UserError as e:
errors.append(
(_("Validation Error"),
_("This address does not appear to be valid. Please make sure it has been filled in correctly. Error details: %s", e))
)
return errors
def _get_shop_payment_values(self, order, **kwargs):
res = super()._get_shop_payment_values(order, **kwargs)
res['on_payment_step'] = True
return res
class WebsiteSaleDelivery(delivery.Delivery):
def _order_summary_values(self, order, **post):
res = super()._order_summary_values(order, **post)
try:
order._get_and_set_external_taxes_on_eligible_records()
except UserError as e:
res['external_tax_error'] = str(e)
return res