diff options
| author | Étienne Loks <etienne.loks@peacefrogs.net> | 2011-06-07 14:11:49 +0200 | 
|---|---|---|
| committer | Étienne Loks <etienne.loks@peacefrogs.net> | 2011-06-07 14:11:49 +0200 | 
| commit | d3ca19836857031289a10d2aed8e5794c11f63cc (patch) | |
| tree | 2c4b3245d20848c43fba4dac264578ee37aa9920 /chimere/main/models.py | |
| parent | 494b96ec210a9eefa00fbabc499d4ed240580ab3 (diff) | |
| download | Chimère-d3ca19836857031289a10d2aed8e5794c11f63cc.tar.bz2 Chimère-d3ca19836857031289a10d2aed8e5794c11f63cc.zip | |
Add automaticaly a begin POI for new route (closes #300)
Better management of properties saving.
Diffstat (limited to 'chimere/main/models.py')
| -rw-r--r-- | chimere/main/models.py | 26 | 
1 files changed, 26 insertions, 0 deletions
| diff --git a/chimere/main/models.py b/chimere/main/models.py index 198b837..40204d1 100644 --- a/chimere/main/models.py +++ b/chimere/main/models.py @@ -257,6 +257,32 @@ Format YYYY-MM-DD"))                  properties.append(property)          return properties +    def saveProperties(self, values): +        """ +        Save properties +        """ +        for propertymodel in PropertyModel.objects.filter(available=True): +            properties = Property.objects.filter(marker=self, +                                          propertymodel=propertymodel).all() +            # in case of multiple edition as the same time delete arbitrary +            # the others +            if len(properties) > 1: +                for property in properties[1:]: +                    property.delete() +            val = u"" +            if unicode(propertymodel.id) in values: +                val = values[unicode(propertymodel.id)] +            # new property +            if not properties: +                new_property = Property.objects.create(marker=self, +                                    propertymodel=propertymodel, +                                    value=val) +                new_property.save() +            else: +                property = properties[0] +                property.value = val +                property.save() +      def getGeoJSON(self, categories_id=[]):          '''Return a GeoJSON string          ''' | 
