From 0547363cd17bdc538b0ede04cf0b667355361350 Mon Sep 17 00:00:00 2001 From: resteve Date: Wed, 16 Mar 2016 18:38:19 +0100 Subject: [PATCH] Change validation carrier/zip from check quotation to pre-validate --- sale.py | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/sale.py b/sale.py index 28976b8..d1e8a9e 100644 --- a/sale.py +++ b/sale.py @@ -72,22 +72,24 @@ class Sale: and self.shipment_address.zip or None) return context - def check_for_quotation(self): - res = super(Sale, self).check_for_quotation() + def pre_validate(self): + super(Sale, self).pre_validate() + self.check_carrier_zip() + + def check_carrier_zip(self): shipment_zip = (self.shipment_address and self.shipment_address.zip or '') carrier = self.carrier if not carrier or not carrier.zips: - return res + return if (carrier and shipment_zip): for carrier_zip in carrier.zips: if (int(carrier_zip.start_zip) <= int(shipment_zip) <= int(carrier_zip.end_zip)): break else: - self.raise_user_warning('%s.on_change_carrier' % self, - 'zip_unavailable', (shipment_zip, carrier.party.rec_name)) - return res + self.raise_user_error('zip_unavailable', + (shipment_zip, carrier.party.rec_name)) def create_shipment(self, shipment_type): with Transaction().set_context(self._get_carrier_context()):