diff options
| author | Étienne Loks <etienne.loks@iggdrasil.net> | 2018-02-18 18:59:12 +0100 | 
|---|---|---|
| committer | Étienne Loks <etienne.loks@iggdrasil.net> | 2018-02-18 18:59:12 +0100 | 
| commit | 19f63ba9641bb963ccaee345e6593b05f3b35497 (patch) | |
| tree | 339bd5355a4422a17f5694375887c7e5b70af37d | |
| parent | 9121004af3f6a86e642c74e1aa3391fd8302fa3e (diff) | |
| download | Ishtar-19f63ba9641bb963ccaee345e6593b05f3b35497.tar.bz2 Ishtar-19f63ba9641bb963ccaee345e6593b05f3b35497.zip | |
Context record: site field
| -rw-r--r-- | archaeological_context_records/forms.py | 21 | ||||
| -rw-r--r-- | archaeological_operations/templates/ishtar/sheet_site.html | 2 | 
2 files changed, 20 insertions, 3 deletions
| diff --git a/archaeological_context_records/forms.py b/archaeological_context_records/forms.py index b2bf9f39b..ac37ee6f6 100644 --- a/archaeological_context_records/forms.py +++ b/archaeological_context_records/forms.py @@ -29,7 +29,7 @@ from django.forms.formsets import formset_factory  from django.utils.safestring import mark_safe  from django.utils.translation import ugettext_lazy as _ -from ishtar_common.models import valid_id +from ishtar_common.models import valid_id, IshtarSiteProfile  from archaeological_operations.models import Period, Parcel, Operation, \      ArchaeologicalSite, RelationType as OpeRelationType  import models @@ -71,7 +71,7 @@ class RecordSelect(TableSelect):      operation__year = forms.IntegerField(label=_(u"Operation's year"))      operation__operation_code = forms.IntegerField(          label=_(u"Operation's number (index by year)")) -    archaeological_sites = forms.IntegerField( +    archaeological_site = forms.IntegerField(          label=_("Archaeological site"),          widget=widgets.JQueryAutoComplete(              reverse_lazy('autocomplete-archaeologicalsite'), @@ -147,6 +147,10 @@ class RecordFormGeneral(CustomForm, ManageOldType):      pk = forms.IntegerField(required=False, widget=forms.HiddenInput)      operation_id = forms.IntegerField(widget=forms.HiddenInput)      parcel = forms.ChoiceField(label=_("Parcel"), choices=[]) +    archaeological_site = forms.ChoiceField( +        label=" ", choices=[], required=False, +        help_text=_(u"Only {} associated to the operation can be selected.") +    )      label = forms.CharField(label=_(u"ID"),                              validators=[validators.MaxLengthValidator(200)])      description = forms.CharField(label=_(u"Description"), @@ -225,6 +229,15 @@ class RecordFormGeneral(CustomForm, ManageOldType):                      kwargs.pop('files')          super(RecordFormGeneral, self).__init__(*args, **kwargs)          self.fields['parcel'].choices = [('', '--')] + +        site_label = IshtarSiteProfile.get_default_site_label() +        self.fields['archaeological_site'].label = site_label +        self.fields['archaeological_site'].help_text = \ +            unicode(self.fields['archaeological_site'].help_text).format( +                site_label +            ) +        self.fields['archaeological_site'].choices = [('', '--')] +          if operation:              self.fields['operation_id'].initial = operation.pk              parcels = operation.parcels.all() @@ -235,6 +248,10 @@ class RecordFormGeneral(CustomForm, ManageOldType):                      (" - ".join([k for k in key if k]),                       [(parcel.pk, parcel.short_label) for parcel in gparcels])                  ) +            self.fields['archaeological_site'].choices += [ +                (site.pk, unicode(site)) +                for site in operation.archaeological_sites.all() +            ]      def clean(self):          # manage unique context record ID diff --git a/archaeological_operations/templates/ishtar/sheet_site.html b/archaeological_operations/templates/ishtar/sheet_site.html index 87bec9bd7..ec00480d9 100644 --- a/archaeological_operations/templates/ishtar/sheet_site.html +++ b/archaeological_operations/templates/ishtar/sheet_site.html @@ -21,7 +21,7 @@              <div class="row">                  <div class="col main">                      {{item.reference}} -                    {{item.name}} +                    {{item.name|default:''}}                  </div>                  <div class="col text-muted">                      {% include "ishtar/blocks/sheet_external_id.html" %} | 
