summaryrefslogtreecommitdiff
path: root/chimere/models.py
diff options
context:
space:
mode:
Diffstat (limited to 'chimere/models.py')
-rw-r--r--chimere/models.py12
1 files changed, 10 insertions, 2 deletions
diff --git a/chimere/models.py b/chimere/models.py
index 19c99eb..0db9899 100644
--- a/chimere/models.py
+++ b/chimere/models.py
@@ -291,6 +291,10 @@ class GeographicItem(models.Model):
self.import_key = new_keys
self.save()
+ @classmethod
+ def properties(cls):
+ return [pm for pm in PropertyModel.objects.filter(available=True)]
+
class Marker(GeographicItem):
'''Marker for a POI
'''
@@ -312,8 +316,7 @@ class Marker(GeographicItem):
super(Marker, self).__init__(*args, **kwargs)
# add read attributes for properties
for property in self.getProperties():
- attr_name = defaultfilters.slugify(property.propertymodel.name)
- attr_name = re.sub(r'-','_', attr_name)
+ attr_name = property.propertymodel.getAttrName()
if not hasattr(self, attr_name):
setattr(self, attr_name, property.python_value)
@@ -1049,6 +1052,11 @@ class PropertyModel(models.Model):
ordering = ('order',)
verbose_name = _("Property model")
+ def getAttrName(self):
+ attr_name = defaultfilters.slugify(self.name)
+ attr_name = re.sub(r'-','_', attr_name)
+ return attr_name
+
def getNamedId(self):
'''Get the name used as named id (easily sortable)
'''