diff options
| -rw-r--r-- | archaeological_finds/forms.py | 23 | ||||
| -rw-r--r-- | archaeological_finds/migrations/0020_auto_20180326_1650.py | 35 | ||||
| -rw-r--r-- | archaeological_finds/models_finds.py | 13 | ||||
| -rw-r--r-- | archaeological_finds/templates/ishtar/sheet_find.html | 16 | ||||
| -rw-r--r-- | ishtar_common/templates/blocks/bs_field_snippet.html | 2 | ||||
| -rw-r--r-- | scss/custom.scss | 2 | 
6 files changed, 83 insertions, 8 deletions
| diff --git a/archaeological_finds/forms.py b/archaeological_finds/forms.py index 04001366e..6a72aa590 100644 --- a/archaeological_finds/forms.py +++ b/archaeological_finds/forms.py @@ -142,8 +142,8 @@ class FindForm(CustomForm, ManageOldType):                           'get_first_base_find__spatial_reference_system':                           SpatialReferenceSystem}      HEADERS = {} -      HEADERS['label'] = FormHeader(_(u"Identification")) +      label = forms.CharField(          label=_(u"Free ID"),          validators=[validators.MaxLengthValidator(60)]) @@ -158,7 +158,10 @@ class FindForm(CustomForm, ManageOldType):      description = forms.CharField(label=_(u"Description"),                                    widget=forms.Textarea, required=False)      get_first_base_find__discovery_date = forms.DateField( -        label=_(u"Discovery date"), widget=DatePicker, required=False) +        label=_(u"Discovery date (exact or TPQ)"), widget=DatePicker, +        required=False) +    get_first_base_find__discovery_date_taq = forms.DateField( +        label=_(u"Discovery date (TAQ)"), widget=DatePicker, required=False)      get_first_base_find__batch = forms.ChoiceField(          label=_(u"Batch/object"), choices=[],          required=False) @@ -254,6 +257,22 @@ class FindForm(CustomForm, ManageOldType):          self.fields['checked'].choices = models.CHECK_CHOICES      def clean(self): +        taq = self.cleaned_data.get('get_first_base_find__discovery_date_taq', +                                    None) +        tpq = self.cleaned_data.get('get_first_base_find__discovery_date', +                                    None) +        if taq and not tpq: +            raise forms.ValidationError( +                unicode(_( +                    u"Discovery date: if a TAQ date is provided a TPQ date has " +                    u"to be informed. If you have a precise date fill only the " +                    u"TPQ - discovery date field.")) +            ) +        elif tpq and taq and taq < tpq: +            raise forms.ValidationError( +                unicode(_(u"Discovery date: TAQ date must be older than TPQ " +                          u"date."))) +          if not get_current_profile().mapping:              return self.cleaned_data          x = self.cleaned_data.get('get_first_base_find__x', None) diff --git a/archaeological_finds/migrations/0020_auto_20180326_1650.py b/archaeological_finds/migrations/0020_auto_20180326_1650.py new file mode 100644 index 000000000..ed0564384 --- /dev/null +++ b/archaeological_finds/migrations/0020_auto_20180326_1650.py @@ -0,0 +1,35 @@ +# -*- coding: utf-8 -*- +# Generated by Django 1.11.10 on 2018-03-26 16:50 +from __future__ import unicode_literals + +from django.db import migrations, models + + +class Migration(migrations.Migration): + +    dependencies = [ +        ('archaeological_finds', '0019_auto_20180315_1000'), +    ] + +    operations = [ +        migrations.AddField( +            model_name='basefind', +            name='discovery_date_taq', +            field=models.DateField(blank=True, null=True, verbose_name='Discovery date (TAQ)'), +        ), +        migrations.AddField( +            model_name='historicalbasefind', +            name='discovery_date_taq', +            field=models.DateField(blank=True, null=True, verbose_name='Discovery date (TAQ)'), +        ), +        migrations.AlterField( +            model_name='basefind', +            name='discovery_date', +            field=models.DateField(blank=True, null=True, verbose_name='Discovery date (exact or TPQ)'), +        ), +        migrations.AlterField( +            model_name='historicalbasefind', +            name='discovery_date', +            field=models.DateField(blank=True, null=True, verbose_name='Discovery date (exact or TPQ)'), +        ), +    ] diff --git a/archaeological_finds/models_finds.py b/archaeological_finds/models_finds.py index 1f132d3e8..ae3c45579 100644 --- a/archaeological_finds/models_finds.py +++ b/archaeological_finds/models_finds.py @@ -219,8 +219,10 @@ class BaseFind(BulkUpdatedItem, BaseHistorizedItem, OwnPerms):      context_record = models.ForeignKey(          ContextRecord, related_name='base_finds',          verbose_name=_(u"Context Record")) -    discovery_date = models.DateField(_(u"Discovery date"), +    discovery_date = models.DateField(_(u"Discovery date (exact or TPQ)"),                                        blank=True, null=True) +    discovery_date_taq = models.DateField(_(u"Discovery date (TAQ)"), +                                          blank=True, null=True)      batch = models.ForeignKey(BatchType, verbose_name=_(u"Batch/object"),                                blank=True, null=True)      index = models.IntegerField(u"Index", default=0) @@ -594,7 +596,10 @@ class Find(BulkUpdatedItem, ValueGetter, BaseHistorizedItem, ImageModel,          'base_finds__topographic_localisation': _(u"Base find - "                                                    u"Topographic localisation"),          'base_finds__special_interest': _(u"Base find - Special interest"), -        'base_finds__discovery_date': _(u"Base find - Discovery date"), +        'base_finds__discovery_date': _( +            u"Base find - Discovery date (exact or TPQ)"), +        'base_finds__discovery_date_taq': _( +            u"Base find - Discovery date (TAQ)"),          'container__cached_label': _(u"Container"),          'datings__period__label': _(u"Periods"),          'material_types__label': _(u"Material types"), @@ -607,7 +612,9 @@ class Find(BulkUpdatedItem, ValueGetter, BaseHistorizedItem, ImageModel,          'base_finds__comment', 'base_finds__description',          'base_finds__topographic_localisation',          'base_finds__special_interest', -        'base_finds__discovery_date'] +        'base_finds__discovery_date', +        'base_finds__discovery_date_taq', +    ]      ATTRS_EQUIV = {'get_first_base_find': 'base_finds'}      # search parameters diff --git a/archaeological_finds/templates/ishtar/sheet_find.html b/archaeological_finds/templates/ishtar/sheet_find.html index 6b49a66b9..de1993634 100644 --- a/archaeological_finds/templates/ishtar/sheet_find.html +++ b/archaeological_finds/templates/ishtar/sheet_find.html @@ -239,7 +239,21 @@      {% field_flex "Batch/object" base_find.batch|from_dict:base_find.history_object.IS_ISOLATED_DICT %}      {% endif %} -    {% field_flex "Discovery date" base_find.discovery_date %} +    {# START discovery dates #} +    {% if not base_find.discovery_date_taq %} +    {% trans "Discovery date" as discovery_date_label %} +    {% field_flex discovery_date_label base_find.discovery_date %} +    {% elif base_find.discovery_date.year == base_find.discovery_date_taq.year and base_find.discovery_date_taq|date:"d-m" == "31-12" and base_find.discovery_date|date:"d-m" == "01-01" %} +    {% trans "Discovery year" as discovery_year_label %} +    {% field_flex discovery_year_label base_find.discovery_date.year %} +    {% else %} +    {% trans "Discovery date (TPQ)" as discovery_tpq_label %} +    {% field_flex discovery_tpq_label base_find.discovery_date %} +    {% trans "Discovery date (TAQ)" as discovery_taq_label %} +    {% field_flex discovery_taq_label base_find.discovery_date_taq %} +    {% endif %} +    {# END discovery dates #} +      {% field_flex "Special interest" base_find.special_interest %}      {% field_flex_detail "Context record" base_find.context_record %}      {% field_flex "Town" base_find.context_record.parcel.town %} diff --git a/ishtar_common/templates/blocks/bs_field_snippet.html b/ishtar_common/templates/blocks/bs_field_snippet.html index 549550cef..4c4e17bf1 100644 --- a/ishtar_common/templates/blocks/bs_field_snippet.html +++ b/ishtar_common/templates/blocks/bs_field_snippet.html @@ -1,5 +1,5 @@  {% load i18n %} -    <div class="form-group col-lg-6{% if field.errors %} is-invalid{% endif %}{% if field.field.required %} required{% endif %}"> +    <div class="form-group {% if field.field.widget.attrs.cols %}col-lg-12{% else %}col-lg-6{% endif %}{% if field.errors %} is-invalid{% endif %}{% if field.field.required %} required{% endif %}">          {{ field.label_tag }}          {% if field.help_text %}          <div class="input-group"> diff --git a/scss/custom.scss b/scss/custom.scss index 436ef9579..38b36d69a 100644 --- a/scss/custom.scss +++ b/scss/custom.scss @@ -110,7 +110,7 @@ h4, .h4 {  }  textarea { -    height: 150px; +    height: 90px;  }  .sheet h4 { color: $text-muted; } | 
