diff options
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)  | 
