FIX sale_planner It is possible that the 'fall back' core geo_localize can raise an index error

This commit is contained in:
Jared Kipe
2019-08-06 16:11:36 -07:00
parent 70c7e8e894
commit 7a6eee075d
2 changed files with 39 additions and 34 deletions

View File

@@ -13,6 +13,7 @@ class Partner(models.Model):
def geo_localize(self):
# We need country names in English below
for partner in self.with_context(lang='en_US'):
try:
if SearchEngine and partner.zip:
with SearchEngine() as search:
zipcode = search.by_zipcode(str(self.zip).split('-')[0])
@@ -26,4 +27,6 @@ class Partner(models.Model):
super(Partner, partner).geo_localize()
else:
super(Partner, partner).geo_localize()
except:
pass
return True

View File

@@ -58,8 +58,9 @@ class FakePartner():
@property
def date_localization(self):
if not hasattr(self, 'date_localization') and self.date_localization:
self.date_localization = 'TODAY!'
if not self._date_localization:
try:
self._date_localization = 'TODAY!'
# The fast way.
if SearchEngine and self.zip:
with SearchEngine() as search:
@@ -67,7 +68,7 @@ class FakePartner():
if zipcode and zipcode.lat:
self.partner_latitude = zipcode.lat
self.partner_longitude = zipcode.lng
return self.date_localization
return self._date_localization
# The slow way.
result = geo_find(geo_query_address(
@@ -78,8 +79,9 @@ class FakePartner():
if result:
self.partner_latitude = result[0]
self.partner_longitude = result[1]
return self.date_localization
except:
self._date_localization = 'ERROR'
return self._date_localization
def __getattr__(self, item):
return False