summaryrefslogtreecommitdiff
path: root/ishtar/furnitures/forms.py
diff options
context:
space:
mode:
Diffstat (limited to 'ishtar/furnitures/forms.py')
-rw-r--r--ishtar/furnitures/forms.py16
1 files changed, 15 insertions, 1 deletions
diff --git a/ishtar/furnitures/forms.py b/ishtar/furnitures/forms.py
index bf8f089a2..b5437d65f 100644
--- a/ishtar/furnitures/forms.py
+++ b/ishtar/furnitures/forms.py
@@ -29,6 +29,7 @@ from django.utils.translation import ugettext_lazy as _
from django.template import Context, RequestContext
from django.shortcuts import render_to_response
from django.forms.formsets import formset_factory, BaseFormSet
+from django.db.models import Max
from django import forms
@@ -115,6 +116,10 @@ class Wizard(NamedUrlSessionFormWizard):
datas.append((lbl, value))
return datas
+ def get_extra_model(self, dct, request, storage, form_list):
+ dct['history_modifier'] = request.user
+ return dct
+
def done(self, request, storage, form_list, return_object=False, **kwargs):
"""
Save to the model
@@ -143,7 +148,7 @@ class Wizard(NamedUrlSessionFormWizard):
if key in associated_models:
value = associated_models[key].objects.get(pk=value)
dct[key] = value
- dct['history_modifier'] = request.user
+ dct = self.get_extra_model(dct, request, storage, form_list)
obj = self.model(**dct)
obj.save()
for key, value in m2m:
@@ -239,6 +244,15 @@ class FileWizard(Wizard):
files)
return form
+ def get_extra_model(self, dct, request, storage, form_list):
+ dct = super(FileWizard, self).get_extra_model(dct, request, storage,
+ form_list)
+ models.File.objects.filter(year=dct['year'])
+ current_ref = models.File.objects.filter(year=dct['year']
+ ).aggregate(Max('numeric_reference'))["numeric_reference__max"]
+ dct['numeric_reference'] = current_ref and current_ref + 1 or 1
+ return dct
+
def done(self, request, storage, form_list, **kwargs):
'''
Save parcels