diff options
Diffstat (limited to 'chimere/models.py')
| -rw-r--r-- | chimere/models.py | 12 | 
1 files changed, 9 insertions, 3 deletions
| diff --git a/chimere/models.py b/chimere/models.py index 1b6ff06..452fc63 100644 --- a/chimere/models.py +++ b/chimere/models.py @@ -715,11 +715,17 @@ class GeographicItem(models.Model):              return          return property -    def getProperties(self, area_name=None): +    def getProperties(self, area_name=None, available=True):          """Get all the property availables          """          properties = [] -        querys = PropertyModel.getAvailable(area_name=area_name) +        if not available: +            if area_name.endswith('/'): +                area_name = area_name[:-1] +            querys = [PropertyModel.objects.filter( +                Q(areas=None) | Q(areas__urn=area_name))] +        else: +            querys = PropertyModel.getAvailable(area_name=area_name)          for query in querys:              for pm in query.all():                  property = self.getProperty(pm) @@ -732,7 +738,7 @@ class GeographicItem(models.Model):          Decorate the object with properties has attributes          :return:          """ -        for proprty in self.getProperties(area_name=area_name): +        for proprty in self.getProperties(area_name=area_name, available=False):              setattr(self, proprty.propertymodel.slug.replace('-', '_'),                      str(proprty)) | 
