diff options
| 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 | 
| commit | be22353b89b61521757acc2e81e84d77b48b3547 (patch) | |
| tree | 240da06fd072e052c47e747d7d53390775415d8f /ishtar_common/models.py | |
| parent | 7407e3927ee991010609b6ab56670c73c9b690a8 (diff) | |
| download | Ishtar-be22353b89b61521757acc2e81e84d77b48b3547.tar.bz2 Ishtar-be22353b89b61521757acc2e81e84d77b48b3547.zip | |
Town: generate area
Diffstat (limited to 'ishtar_common/models.py')
| -rw-r--r-- | ishtar_common/models.py | 11 | 
1 files changed, 11 insertions, 0 deletions
| 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": | 
