summaryrefslogtreecommitdiff
path: root/chimere/main/forms.py
diff options
context:
space:
mode:
Diffstat (limited to 'chimere/main/forms.py')
-rw-r--r--chimere/main/forms.py15
1 files changed, 13 insertions, 2 deletions
diff --git a/chimere/main/forms.py b/chimere/main/forms.py
index dc1fbad..89d8a5a 100644
--- a/chimere/main/forms.py
+++ b/chimere/main/forms.py
@@ -30,7 +30,7 @@ from django.core.mail import EmailMessage, BadHeaderError
from chimere import settings
from chimere.main.models import Marker, Route, PropertyModel, Property, Area,\
- News, Category, SubCategory
+ News, Category, SubCategory, RouteFile
from chimere.main.widgets import AreaField, PointField, TextareaWidget
from datetime import timedelta, datetime, tzinfo
@@ -214,6 +214,8 @@ class RouteForm(RouteAdminForm):
"""
picture = forms.ImageField(label=_("Image"), required=False)
point = forms.CharField(label=" ", required=False, widget=forms.HiddenInput)
+ associated_file_id = forms.CharField(label=" ", required=False,
+ widget=forms.HiddenInput)
class Meta:
model = Route
exclude = ('status',)
@@ -225,9 +227,18 @@ class RouteForm(RouteAdminForm):
def save(self, *args, **keys):
"""
- Custom save method in order to manage associated marker
+ Custom save method in order to manage associated marker and file
"""
new_route = super(RouteForm, self).save(*args, **keys)
+ # associate a route file
+ if 'associated_file_id' in self.cleaned_data and \
+ self.cleaned_data['associated_file_id']:
+ #try:
+ file_pk = int(self.cleaned_data['associated_file_id'])
+ new_route.associated_file = RouteFile.objects.get(pk=file_pk)
+ new_route.save()
+ #except:
+ #pass
marker_fields = [f.attname for f in Marker._meta.fields]
marker_dct = dict([(k, self.cleaned_data[k]) for k in self.cleaned_data
if k in marker_fields])