diff options
author | Étienne Loks <etienne.loks@iggdrasil.net> | 2018-02-14 18:03:56 +0100 |
---|---|---|
committer | Étienne Loks <etienne.loks@iggdrasil.net> | 2018-02-15 17:20:19 +0100 |
commit | 300cac90732e559ef6b900f48ddb606c1ff5aefc (patch) | |
tree | 92b533c6b223a7fa9d6a7e4e00b057c5c3195a40 /archaeological_operations/forms.py | |
parent | 7c3a4661c5a783cce329210fad5af2db6ea48155 (diff) | |
download | Ishtar-300cac90732e559ef6b900f48ddb606c1ff5aefc.tar.bz2 Ishtar-300cac90732e559ef6b900f48ddb606c1ff5aefc.zip |
Archaeological site: simple creation wizard (refs #3913)
Diffstat (limited to 'archaeological_operations/forms.py')
-rw-r--r-- | archaeological_operations/forms.py | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/archaeological_operations/forms.py b/archaeological_operations/forms.py index 38efb269f..bf69a74b5 100644 --- a/archaeological_operations/forms.py +++ b/archaeological_operations/forms.py @@ -1288,6 +1288,32 @@ class SiteFormSelection(IshtarForm): return cleaned_data +class SiteForm(ManageOldType): + form_label = _(u"General") + form_admin_name = _(u"Archaeological site - 010 - General") + associated_models = {'period': models.Period, 'remain': models.RemainType} + reference = forms.CharField(label=_(u"Reference"), max_length=20) + name = forms.CharField(label=_(u"Name"), max_length=200, required=False) + period = forms.MultipleChoiceField( + label=_("Periods"), choices=[], widget=widgets.Select2Multiple, + required=False) + remain = forms.MultipleChoiceField( + label=_("Remains"), choices=[], widget=widgets.Select2Multiple, + required=False) + + TYPES = [ + FieldType('period', models.Period, True), + FieldType('remain', models.RemainType, True), + ] + + def clean_reference(self): + reference = self.cleaned_data['reference'] + if models.ArchaeologicalSite.objects.filter( + reference=reference).count(): + raise forms.ValidationError(_(u"This reference already exists.")) + return reference + + #################################### # Source management for operations # #################################### |