summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorÉtienne Loks <etienne.loks@iggdrasil.net>2020-03-09 12:53:12 +0100
committerÉtienne Loks <etienne.loks@iggdrasil.net>2020-03-09 12:53:12 +0100
commit41aa41d8b8743e1450654f399e543c2b01311a78 (patch)
tree88ee1d7bd9c9f07b345eca1e655dac5f93f727a2
parentcd71a36e769623a07701f3a2d38b35968752addd (diff)
downloadIshtar-41aa41d8b8743e1450654f399e543c2b01311a78.tar.bz2
Ishtar-41aa41d8b8743e1450654f399e543c2b01311a78.zip
Quick actions - tables - operation: operator field
-rw-r--r--CHANGES.md1
-rw-r--r--archaeological_operations/forms.py23
2 files changed, 22 insertions, 2 deletions
diff --git a/CHANGES.md b/CHANGES.md
index 16c5c7cb0..fc3574f57 100644
--- a/CHANGES.md
+++ b/CHANGES.md
@@ -8,6 +8,7 @@ v3.0.4 - 2020-XX-XX
- Quick actions - tables:
- find: edit - add appraisal date and treatment emergency fields
- person: edit - add organization field
+ - operation: edit - add operator field
v3.0.3 - 2020-02-24
-------------------
diff --git a/archaeological_operations/forms.py b/archaeological_operations/forms.py
index eab5de15b..f8cc19165 100644
--- a/archaeological_operations/forms.py
+++ b/archaeological_operations/forms.py
@@ -604,6 +604,7 @@ class OperationFormSelection(LockForm, CustomFormSearch):
SEARCH_AND_SELECT = True
form_label = _(u"Operation search")
associated_models = {'pk': models.Operation}
+ extra_form_modals = ["person", "organization"]
currents = {'pk': models.Operation}
pk = forms.IntegerField(
label="", required=False,
@@ -617,6 +618,7 @@ class OperationFormSelection(LockForm, CustomFormSearch):
class OperationFormMultiSelection(LockForm, MultiSearchForm):
form_label = _(u"Operation search")
associated_models = {'pks': models.Operation}
+ extra_form_modals = ["person", "organization"]
pk_key = 'pks'
pk = forms.CharField(
label="", required=False,
@@ -1848,22 +1850,32 @@ class AdministrativeActRegisterFormSelection(IshtarForm):
class QAOperationFormMulti(QAForm):
- form_admin_name = _(u"Operation - Quick action - Modify")
+ form_admin_name = _("Operation - Quick action - Modify")
form_slug = "operation-quickaction-modify"
base_models = ['qa_operation_type']
associated_models = {
'qa_operation_type': models.OperationType,
- 'qa_towns': Town
+ 'qa_towns': Town,
+ 'qa_operator': Organization,
}
MULTI = True
REPLACE_FIELDS = [
'qa_operation_type',
+ 'qa_operator',
]
qa_operation_type = forms.ChoiceField(
label=_(u"Operation type"), required=False
)
qa_towns = get_town_field(required=False)
+ qa_operator = forms.IntegerField(
+ label=_("Operator"),
+ widget=widgets.JQueryAutoComplete(
+ reverse_lazy('autocomplete-organization',
+ args=[organization_type_pk_lazy('operator')]),
+ limit={'organization_type': organization_type_pk_lazy('operator')},
+ associated_model=Organization, new=True),
+ validators=[valid_id(Organization)], required=False)
TYPES = [
FieldType('qa_operation_type', models.OperationType),
@@ -1876,6 +1888,13 @@ class QAOperationFormMulti(QAForm):
return ""
return value
+ def _get_qa_operator(self, value):
+ try:
+ value = Organization.objects.get(pk=value).cached_label
+ except Organization.DoesNotExist:
+ return ""
+ return value
+
class QAOperationDuplicateForm(IshtarForm):
qa_code_patriarche = forms.CharField(