diff options
| author | Étienne Loks <etienne.loks@peacefrogs.net> | 2012-04-19 21:05:30 +0200 | 
|---|---|---|
| committer | Étienne Loks <etienne.loks@peacefrogs.net> | 2012-04-19 21:05:30 +0200 | 
| commit | 3a19d84d3e197a12239a597a7d771383111ce211 (patch) | |
| tree | 754d3912f213c73a9a9bae448596f1ac917f914f /chimere/forms.py | |
| parent | 5a288ffd137ab2167479e995b173edfd6e6d235c (diff) | |
| download | Chimère-3a19d84d3e197a12239a597a7d771383111ce211.tar.bz2 Chimère-3a19d84d3e197a12239a597a7d771383111ce211.zip | |
Fix multimedia and picture submissions for new multimedia files
Diffstat (limited to 'chimere/forms.py')
| -rw-r--r-- | chimere/forms.py | 8 | 
1 files changed, 3 insertions, 5 deletions
| diff --git a/chimere/forms.py b/chimere/forms.py index fb71057..84ae27b 100644 --- a/chimere/forms.py +++ b/chimere/forms.py @@ -280,6 +280,7 @@ class BaseFileForm(forms.ModelForm):          if not hasattr(self, '_related_name') or not self._related_name:              raise ImproperlyConfigured          super(BaseFileForm, self).__init__(*args, **kwargs) +        self.fields.pop('marker')      def save(self, associated_marker):          if not hasattr(self, 'cleaned_data') or not self.cleaned_data: @@ -287,11 +288,8 @@ class BaseFileForm(forms.ModelForm):          instance = None          if self.cleaned_data.get('id'):              try: -                # marker must be equal to none because the link has just be -                # removed - this condition is necessary to prevent modification -                # of already validated items by a forged request                  instance = self._meta.model.objects.get( -                           pk=self.cleaned_data['id'], marker=None) +                                    pk=self.cleaned_data['id'])              except:                  pass              self.cleaned_data.pop('id') @@ -300,13 +298,13 @@ class BaseFileForm(forms.ModelForm):                  instance.delete()              return          self.cleaned_data.pop('DELETE') +        self.cleaned_data['marker'] = associated_marker          if instance:              for k in self.cleaned_data:                  setattr(instance, k, self.cleaned_data[k])              instance.save()          else:              instance = self._meta.model.objects.create(**self.cleaned_data) -        getattr(associated_marker, self._related_name).add(instance)  class MultimediaFileForm(BaseFileForm):      """ | 
