diff options
| 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 | 
| commit | 41aa41d8b8743e1450654f399e543c2b01311a78 (patch) | |
| tree | 88ee1d7bd9c9f07b345eca1e655dac5f93f727a2 | |
| parent | cd71a36e769623a07701f3a2d38b35968752addd (diff) | |
| download | Ishtar-41aa41d8b8743e1450654f399e543c2b01311a78.tar.bz2 Ishtar-41aa41d8b8743e1450654f399e543c2b01311a78.zip | |
Quick actions - tables - operation: operator field
| -rw-r--r-- | CHANGES.md | 1 | ||||
| -rw-r--r-- | archaeological_operations/forms.py | 23 | 
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( | 
