diff options
Diffstat (limited to 'archaeological_finds')
-rw-r--r-- | archaeological_finds/forms.py | 53 | ||||
-rw-r--r-- | archaeological_finds/models_finds.py | 8 | ||||
-rw-r--r-- | archaeological_finds/urls.py | 10 | ||||
-rw-r--r-- | archaeological_finds/views.py | 2 |
4 files changed, 72 insertions, 1 deletions
diff --git a/archaeological_finds/forms.py b/archaeological_finds/forms.py index 460e34375..381541614 100644 --- a/archaeological_finds/forms.py +++ b/archaeological_finds/forms.py @@ -216,12 +216,16 @@ class BasicFindForm(CustomForm, ManageOldType): "communicabilitie", "cultural_attribution", "functional_area", + "technical_area", + "technical_processe", ] associated_models = { "material_type": models.MaterialType, "cultural_attribution": CulturalAttributionType, "object_type": models.ObjectType, "functional_area": models.FunctionalArea, + "technical_area": models.TechnicalAreaType, + "technical_processe": models.TechnicalProcessType, "communicabilitie": models.CommunicabilityType, "material_type_quality": models.MaterialTypeQualityType, "object_type_quality": models.ObjectTypeQualityType, @@ -241,12 +245,15 @@ class BasicFindForm(CustomForm, ManageOldType): "is_complete", "material_type", "material_type_quality", + "technical_processe", "material_comment", "object_type", "object_type_quality", "functional_area", + "technical_area", "find_number", "min_number_of_individuals", + "quantity_comment", "decoration", "inscription", "manufacturing_place", @@ -302,6 +309,10 @@ class BasicFindForm(CustomForm, ManageOldType): material_type_quality = forms.ChoiceField( label=_("Material type quality"), required=False, choices=[] ) + technical_processe = widgets.Select2MultipleField( + label=_("Technical processes"), + required=False, + ) material_comment = forms.CharField( label=_("Comment on the material"), required=False, widget=forms.Textarea ) @@ -316,10 +327,17 @@ class BasicFindForm(CustomForm, ManageOldType): label=_("Functional areas"), required=False, ) + technical_area = widgets.Select2MultipleField( + label=_("Technical areas"), + required=False, + ) find_number = forms.IntegerField(label=_("Number of remains"), required=False) min_number_of_individuals = forms.IntegerField( label=_("Minimum number of individuals (MNI)"), required=False ) + quantity_comment = forms.CharField( + label=_("Comment on quantity"), required=False, widget=forms.Textarea + ) decoration = forms.CharField( label=_("Decoration"), widget=forms.Textarea, required=False @@ -409,6 +427,8 @@ class BasicFindForm(CustomForm, ManageOldType): ), FieldType("object_type_quality", models.ObjectTypeQualityType), FieldType("functional_area", models.FunctionalArea, is_multiple=True), + FieldType("technical_area", models.TechnicalAreaType, is_multiple=True), + FieldType("technical_processe", models.TechnicalProcessType, is_multiple=True), FieldType("communicabilitie", models.CommunicabilityType, is_multiple=True), FieldType("checked_type", models.CheckedType, is_multiple=True), ] @@ -463,12 +483,15 @@ class FindForm(BasicFindForm): "is_complete", "material_type", "material_type_quality", + "technical_processe", "material_comment", "object_type", "object_type_quality", "functional_area", + "technical_area", "find_number", "min_number_of_individuals", + "quantity_comment", "inscription", "decoration", "manufacturing_place", @@ -569,6 +592,9 @@ class ResultingFindForm(CustomForm, ManageOldType): resulting_min_number_of_individuals = forms.IntegerField( label=_("Minimum number of individuals (MNI)"), required=False ) + resulting_quantity_comment = forms.CharField( + label=_("Comment on quantity"), required=False, widget=forms.Textarea + ) resulting_decoration = forms.CharField( label=_("Decoration"), widget=forms.Textarea, required=False @@ -688,8 +714,10 @@ class QAFindFormMulti(QAForm): ] associated_models = { "qa_material_types": models.MaterialType, + "qa_technical_processes": models.TechnicalProcessType, "qa_object_types": models.ObjectType, "qa_functional_areas": models.FunctionalArea, + "qa_technical_areas": models.TechnicalAreaType, "qa_communicabilities": models.CommunicabilityType, "qa_alterations": models.AlterationType, "qa_alteration_causes": models.AlterationCauseType, @@ -766,6 +794,10 @@ class QAFindFormMulti(QAForm): qa_material_types = widgets.Select2MultipleField( label=_("Material types"), required=False ) + qa_technical_processes = widgets.Select2MultipleField( + label=_("Technical processes"), + required=False, + ) qa_object_types = widgets.Select2MultipleField( label=_("Object types"), required=False, @@ -774,6 +806,10 @@ class QAFindFormMulti(QAForm): label=_("Functional areas"), required=False, ) + qa_technical_areas = widgets.Select2MultipleField( + label=_("Technical areas"), + required=False, + ) qa_manufacturing_place = forms.CharField( label=_("Manufacturing place"), required=False ) @@ -821,6 +857,8 @@ class QAFindFormMulti(QAForm): FieldType("qa_material_types", models.MaterialType, is_multiple=True), FieldType("qa_object_types", models.ObjectType, is_multiple=True), FieldType("qa_functional_areas", models.FunctionalArea, is_multiple=True), + FieldType("qa_technical_areas", models.TechnicalAreaType, is_multiple=True), + FieldType("qa_technical_processes", models.TechnicalProcessType, is_multiple=True), FieldType("qa_communicabilities", models.CommunicabilityType, is_multiple=True), FieldType("qa_alterations", models.AlterationType, is_multiple=True), FieldType("qa_alteration_causes", models.AlterationCauseType, is_multiple=True), @@ -1385,6 +1423,13 @@ class FindSelect(GeoItemSelect, PeriodSelect): material_type_quality = forms.ChoiceField( label=_("Material type quality"), choices=[] ) + technical_processes = forms.IntegerField( + label=_("Technical processes"), + widget=widgets.JQueryAutoComplete( + reverse_lazy("autocomplete-technicalprocess"), + associated_model=models.TechnicalProcessType, + ), + ) material_comment = forms.CharField(label=_("Comment on the material")) object_types = forms.IntegerField( label=_("Object type"), @@ -1400,7 +1445,13 @@ class FindSelect(GeoItemSelect, PeriodSelect): associated_model=models.FunctionalArea, ), ) - + technical_areas = forms.IntegerField( + label=_("Technical areas"), + widget=widgets.JQueryAutoComplete( + reverse_lazy("autocomplete-technicalarea"), + associated_model=models.TechnicalAreaType, + ), + ) find_number = forms.IntegerField(label=_("Number of remains")) min_number_of_individuals = forms.IntegerField( label=_("Minimum number of individuals (MNI)") diff --git a/archaeological_finds/models_finds.py b/archaeological_finds/models_finds.py index 6c086ea93..0df6cdf75 100644 --- a/archaeological_finds/models_finds.py +++ b/archaeological_finds/models_finds.py @@ -1615,6 +1615,14 @@ class Find( pgettext_lazy("key for text search", "functional-area"), "functional_areas__label__iexact", ), + "technical_areas": SearchAltName( + pgettext_lazy("key for text search", "technical-area"), + "technical_areas__label__iexact", + ), + "technical_processes": SearchAltName( + pgettext_lazy("key for text search", "technical-process"), + "technical_processes__label__iexact", + ), "base_finds__context_record__operation__address": SearchAltName( pgettext_lazy("key for text search", "operation-address"), "base_finds__context_record__operation__address__iexact", diff --git a/archaeological_finds/urls.py b/archaeological_finds/urls.py index 06cc504ec..a1b240363 100644 --- a/archaeological_finds/urls.py +++ b/archaeological_finds/urls.py @@ -432,6 +432,16 @@ urlpatterns = [ name="autocomplete-functionalarea", ), url( + r"autocomplete-technicalarea/$", + views.autocomplete_technicalarea, + name="autocomplete-technicalarea", + ), + url( + r"autocomplete-technicalprocess/$", + views.autocomplete_technicalprocess, + name="autocomplete-technicalprocess", + ), + url( r"autocomplete-materialtype/$", views.autocomplete_materialtype, name="autocomplete-materialtype", diff --git a/archaeological_finds/views.py b/archaeological_finds/views.py index bf8d0dfcb..e6ab574c9 100644 --- a/archaeological_finds/views.py +++ b/archaeological_finds/views.py @@ -478,6 +478,8 @@ autocomplete_materialtype = get_autocomplete_generic(models.MaterialType) autocomplete_treatmenttype = get_autocomplete_generic(models.TreatmentType) autocomplete_integritytype = get_autocomplete_generic(models.IntegrityType) autocomplete_functionalarea = get_autocomplete_generic(models.FunctionalArea) +autocomplete_technicalarea = get_autocomplete_generic(models.TechnicalAreaType) +autocomplete_technicalprocess = get_autocomplete_generic(models.TechnicalProcessType) class NewFindBasketView(IshtarMixin, LoginRequiredMixin, CreateView): |