summaryrefslogtreecommitdiff
path: root/archaeological_finds/forms.py
diff options
context:
space:
mode:
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
commitdf09e512f1b52cf785b039e5accef6dc4b63e1f3 (patch)
tree3a848bc6b55ac7bfaf59e9d0afdb6119839f4ece /archaeological_finds/forms.py
parent05c85f7b03233cc5df9b1f817636a47e7445af3e (diff)
downloadIshtar-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.py26
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")