summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorÉtienne Loks <etienne.loks@iggdrasil.net>2017-09-27 12:25:06 +0200
committerÉtienne Loks <etienne.loks@iggdrasil.net>2017-09-27 12:25:06 +0200
commitce68857ab707ec1fe744a1007c04c10fdb05e0ed (patch)
tree4f85a004df1ea888e182b9ea60320c7533a9f737
parent07b7824f0114df453f191a94b2a30e0f9d524fc0 (diff)
downloadChimère-ce68857ab707ec1fe744a1007c04c10fdb05e0ed.tar.bz2
Chimère-ce68857ab707ec1fe744a1007c04c10fdb05e0ed.zip
Admin: fix property initialization for markers and routes
-rw-r--r--chimere/forms.py21
-rw-r--r--chimere/models.py5
2 files changed, 16 insertions, 10 deletions
diff --git a/chimere/forms.py b/chimere/forms.py
index 63aadf9..6cc1aba 100644
--- a/chimere/forms.py
+++ b/chimere/forms.py
@@ -325,10 +325,13 @@ class MarkerAdminFormBase(forms.ModelForm):
area_name = None
if 'area_name' in keys:
area_name = keys.pop('area_name')
- querys = PropertyModel.getAvailable(area_name=area_name)
self.pms = []
- for query in querys:
- self.pms += [pm for pm in query.all()]
+ if self.is_admin:
+ self.pms = list(PropertyModel.objects.all())
+ else:
+ querys = PropertyModel.getAvailable(area_name=area_name)
+ for query in querys:
+ self.pms += [pm for pm in query.all()]
if 'instance' in keys and keys['instance']:
instance = keys['instance']
property_dct = {}
@@ -355,7 +358,7 @@ class MarkerAdminFormBase(forms.ModelForm):
choices = list(self.fields['categories'].choices)
self.fields['categories'].choices = choices
self.fields['categories'].label = ""
- if (len(choices) == 1):
+ if len(choices) == 1:
self.fields['categories'].widget = forms.MultipleHiddenInput()
choices = list(self.fields['categories'].choices)
if type(choices[0][1]) in (list, tuple):
@@ -488,10 +491,12 @@ class RouteAdminForm(forms.ModelForm):
area_name = None
if 'area_name' in keys:
area_name = keys.pop('area_name')
- querys = PropertyModel.getAvailable(area_name=area_name)
- self.pms = []
- for query in querys:
- self.pms += [pm for pm in query.all()]
+ if self.is_admin:
+ self.pms = list(PropertyModel.objects.all())
+ else:
+ querys = PropertyModel.getAvailable(area_name=area_name)
+ for query in querys:
+ self.pms += [pm for pm in query.all()]
if 'instance' in keys and keys['instance']:
instance = keys['instance']
property_dct = {}
diff --git a/chimere/models.py b/chimere/models.py
index 539ebfa..d8bf638 100644
--- a/chimere/models.py
+++ b/chimere/models.py
@@ -2137,8 +2137,9 @@ class PropertyModel(models.Model):
class PropertyModelChoice(models.Model):
- '''Choices for property model
- '''
+ """
+ Choices for property model
+ """
propertymodel = models.ForeignKey(PropertyModel, related_name='choices',
verbose_name=_("Property model"))
value = models.CharField(_("Value"), max_length=150)