summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorÉtienne Loks <etienne.loks@iggdrasil.net>2017-10-29 15:39:40 +0100
committerÉtienne Loks <etienne.loks@iggdrasil.net>2017-10-29 15:39:40 +0100
commitd45ba08e3e94c1f4d56c6f46feac9442a1d2209f (patch)
tree240da06fd072e052c47e747d7d53390775415d8f
parentc7de83a5d3159d938797245b195e10460bce328f (diff)
downloadIshtar-d45ba08e3e94c1f4d56c6f46feac9442a1d2209f.tar.bz2
Ishtar-d45ba08e3e94c1f4d56c6f46feac9442a1d2209f.zip
Town: generate area
-rw-r--r--example_project/settings.py1
-rw-r--r--ishtar_common/models.py11
2 files changed, 12 insertions, 0 deletions
diff --git a/example_project/settings.py b/example_project/settings.py
index f631047cb..84462b396 100644
--- a/example_project/settings.py
+++ b/example_project/settings.py
@@ -213,6 +213,7 @@ LOGGING = {
# Ishtar custom
SRID = 27572
+SURFACE_SRID = 2154
ENCODING = 'windows-1252'
ALT_ENCODING = 'ISO-8859-15'
APP_NAME = "SRA - Pays de la Loire"
diff --git a/ishtar_common/models.py b/ishtar_common/models.py
index 703d4ccf7..14869e2a5 100644
--- a/ishtar_common/models.py
+++ b/ishtar_common/models.py
@@ -2702,6 +2702,7 @@ class Town(Imported, models.Model):
def generate_geo(self, force=False):
force = self.generate_limit(force=force)
self.generate_center(force=force)
+ self.generate_area(force=force)
def generate_limit(self, force=False):
if not force and self.limit:
@@ -2734,6 +2735,16 @@ class Town(Imported, models.Model):
self.save()
return True
+ def generate_area(self, force=False):
+ if not force and (self.surface or not self.limit):
+ return
+ self.surface = self.limit.transform(settings.SURFACE_SRID,
+ clone=True).area
+ if not self.surface:
+ return False
+ self.save()
+ return True
+
def _generate_cached_label(self):
cached_label = self.name
if settings.COUNTRY == "fr":