diff options
author | Étienne Loks <etienne.loks@iggdrasil.net> | 2019-05-29 12:05:49 +0200 |
---|---|---|
committer | Étienne Loks <etienne.loks@iggdrasil.net> | 2019-06-17 13:21:28 +0200 |
commit | 0e30743556cdf9b6f8268cb8e24b24abf76a2e2b (patch) | |
tree | d4d6c917902002f8c4a86b3c9f65ecacad12d7ec /archaeological_finds/forms.py | |
parent | 81ee5b2f6d5bb4868128296108a0e99074d1ca72 (diff) | |
download | Ishtar-0e30743556cdf9b6f8268cb8e24b24abf76a2e2b.tar.bz2 Ishtar-0e30743556cdf9b6f8268cb8e24b24abf76a2e2b.zip |
QA: duplicate find
Diffstat (limited to 'archaeological_finds/forms.py')
-rw-r--r-- | archaeological_finds/forms.py | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/archaeological_finds/forms.py b/archaeological_finds/forms.py index 58c10971a..129a1446e 100644 --- a/archaeological_finds/forms.py +++ b/archaeological_finds/forms.py @@ -726,6 +726,31 @@ class QAFindBasketForm(IshtarForm): basket.items.add(item) +class QAFindDuplicateForm(IshtarForm): + label = forms.CharField(label=_("Free ID"), max_length=None, required=True) + denomination = forms.CharField(label=_("Denomination"), max_length=None, + required=False) + # modify = forms.BooleanField(label=_("Edit the new find"), required=False) + + def __init__(self, *args, **kwargs): + self.user = None + if 'user' in kwargs: + self.user = kwargs.pop('user') + if hasattr(self.user, 'ishtaruser'): + self.user = self.user.ishtaruser + self.find = kwargs.pop('items')[0] + super(QAFindDuplicateForm, self).__init__(*args, **kwargs) + self.fields['label'].initial = self.find.label + str( + _(u" - duplicate")) + self.fields['denomination'].initial = self.find.denomination or "" + + def save(self): + return self.find.duplicate( + self.user, duplicate_for_treatment=False, + data={"label": self.cleaned_data["label"], + "denomination": self.cleaned_data["denomination"]}) + + class QAFindbasketDuplicateForm(IshtarForm): label = forms.CharField(label="", max_length=None, required=True) |