summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ishtar/furnitures/forms.py12
-rw-r--r--ishtar/furnitures/models.py2
-rw-r--r--ishtar/furnitures/views.py1
3 files changed, 12 insertions, 3 deletions
diff --git a/ishtar/furnitures/forms.py b/ishtar/furnitures/forms.py
index a45c564af..c7e3a3199 100644
--- a/ishtar/furnitures/forms.py
+++ b/ishtar/furnitures/forms.py
@@ -188,8 +188,11 @@ class Wizard(NamedUrlSessionFormWizard):
if key.startswith('hidden_'):
continue
value = form.cleaned_data[key]
- if key in associated_models and value:
- value = associated_models[key].objects.get(pk=value)
+ if key in associated_models:
+ if value:
+ value = associated_models[key].objects.get(pk=value)
+ else:
+ value = None
dct[key] = value
dct = self.get_extra_model(dct, request, storage, form_list)
obj = self.get_current_object(request, storage)
@@ -692,6 +695,7 @@ class FileFormSelection(forms.Form):
class FileFormGeneral(forms.Form):
form_label = _("General")
associated_models = {'in_charge':models.Person,
+ 'related_file':models.File,
'file_type':models.FileType}
in_charge = forms.IntegerField(label=_("Person in charge"),
widget=widgets.JQueryAutoComplete(reverse_lazy('autocomplete-person',
@@ -710,6 +714,10 @@ max_length=60, validators=[models.is_unique(models.File, 'internal_reference')])
initial=get_now, widget=widgets.JQueryDate)
file_type = forms.ChoiceField(label=_("File type"),
choices=models.FileType.get_types())
+ related_file = forms.IntegerField(label=_("Related file"), required=False,
+ widget=widgets.JQueryAutoComplete(reverse_lazy('autocomplete-file'),
+ associated_model=models.File),
+ validators=[models.valid_id(models.File)])
comment = forms.CharField(label=_(u"Comment"), widget=forms.Textarea,
required=False)
diff --git a/ishtar/furnitures/models.py b/ishtar/furnitures/models.py
index 5c19f050f..dc9253fdd 100644
--- a/ishtar/furnitures/models.py
+++ b/ishtar/furnitures/models.py
@@ -292,6 +292,8 @@ class File(BaseHistorizedItem, OwnPerms):
default=datetime.datetime.now)
reception_date = models.DateField(_(u'Reception date'), blank=True,
null=True)
+ related_file = models.ForeignKey("File", verbose_name=_(u"Related file"),
+ blank=True, null=True)
if settings.COUNTRY == 'fr':
saisine_type = models.ForeignKey(SaisineType, blank=True, null=True,
verbose_name= u"Type de saisine")
diff --git a/ishtar/furnitures/views.py b/ishtar/furnitures/views.py
index 591ead231..041ebfb76 100644
--- a/ishtar/furnitures/views.py
+++ b/ishtar/furnitures/views.py
@@ -70,7 +70,6 @@ def autocomplete_person(request, person_type=None):
for q in q.split(' '):
query = query & (Q(name__istartswith=q) | Q(surname__istartswith=q) | \
Q(email__icontains=q))
- print person_type
if person_type:
try:
typs = [int(tp) for tp in person_type.split('_') if tp]