diff options
author | Étienne Loks <etienne.loks@iggdrasil.net> | 2018-09-11 17:44:09 +0200 |
---|---|---|
committer | Étienne Loks <etienne.loks@iggdrasil.net> | 2018-10-24 12:06:08 +0200 |
commit | df09e512f1b52cf785b039e5accef6dc4b63e1f3 (patch) | |
tree | 3a848bc6b55ac7bfaf59e9d0afdb6119839f4ece /archaeological_finds/forms.py | |
parent | 05c85f7b03233cc5df9b1f817636a47e7445af3e (diff) | |
download | Ishtar-df09e512f1b52cf785b039e5accef6dc4b63e1f3.tar.bz2 Ishtar-df09e512f1b52cf785b039e5accef6dc4b63e1f3.zip |
Generic QA form - QA find basket form
Diffstat (limited to 'archaeological_finds/forms.py')
-rw-r--r-- | archaeological_finds/forms.py | 26 |
1 files changed, 25 insertions, 1 deletions
diff --git a/archaeological_finds/forms.py b/archaeological_finds/forms.py index e50172f1c..eb27c22cc 100644 --- a/archaeological_finds/forms.py +++ b/archaeological_finds/forms.py @@ -79,7 +79,7 @@ __all__ = [ 'check_treatment', 'ResultFindForm', 'ResultFindFormSet', 'FindDeletionForm', 'UpstreamFindFormSelection', 'NewFindBasketForm', 'SelectFindBasketForm', 'DeleteFindBasketForm', 'FindBasketAddItemForm', - 'QAFindFormSingle', 'QAFindFormMulti' + 'QAFindFormSingle', 'QAFindFormMulti', 'QAFindBasketForm' ] logger = logging.getLogger(__name__) @@ -442,6 +442,30 @@ class QAFindFormSingle(QAFindFormMulti): self.fields.pop('qa_seal_number') +class QAFindBasketForm(IshtarForm): + create_or_update = forms.ChoiceField( + choices=(('create', _(u"Create")), + ('update', _(u"Update"))), initial='create') + label = forms.CharField(label="", max_length=None, required=False) + basket = forms.ChoiceField(label=_(u"Basket"), required=True, choices=[]) + + 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.items = kwargs.pop('items') + + super(QAFindBasketForm, self).__init__(*args, **kwargs) + if not self.user: + return + self.fields['basket'].choices = [('', '--')] + [ + (b.pk, unicode(b)) + for b in models.FindBasket.objects.filter(user=self.user) + ] + + class PreservationForm(CustomForm, ManageOldType): form_label = _("Preservation") form_admin_name = _(u"Find - 030 - Preservation") |