diff options
Diffstat (limited to 'archaeological_files/forms.py')
-rw-r--r-- | archaeological_files/forms.py | 456 |
1 files changed, 245 insertions, 211 deletions
diff --git a/archaeological_files/forms.py b/archaeological_files/forms.py index 5e7229eab..4bde6f97e 100644 --- a/archaeological_files/forms.py +++ b/archaeological_files/forms.py @@ -1,6 +1,6 @@ #!/usr/bin/env python # -*- coding: utf-8 -*- -# Copyright (C) 2010-2014 Étienne Loks <etienne.loks_AT_peacefrogsDOTnet> +# Copyright (C) 2010-2015 Étienne Loks <etienne.loks_AT_peacefrogsDOTnet> # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU Affero General Public License as @@ -25,31 +25,27 @@ import datetime from django import forms from django.conf import settings from django.core import validators -from django.core.exceptions import ObjectDoesNotExist -from django.db.models import Max -from django.shortcuts import render_to_response -from django.template import RequestContext from django.utils.translation import ugettext_lazy as _ from django.utils.safestring import mark_safe -from ishtar_common.models import Person, PersonType, Town, Organization, \ - OrganizationType, valid_id, is_unique, Department +from ishtar_common.models import Person, PersonType, Organization, \ + OrganizationType, valid_id, Department from archaeological_operations.models import ActType, AdministrativeAct, \ - OperationType + OperationType import models -from ishtar_common.forms import FinalForm, FormSet, ClosingDateFormSelection, \ - formset_factory, get_now, reverse_lazy, TableSelect -from ishtar_common.forms_common import get_town_field, get_person_field +from ishtar_common.forms import FinalForm, get_now, reverse_lazy, TableSelect +from ishtar_common.forms_common import get_town_field from archaeological_operations.forms import AdministrativeActOpeForm, \ - AdministrativeActOpeFormSelection, FinalAdministrativeActDeleteForm, \ + AdministrativeActOpeFormSelection, \ ParcelField, SLICING, HEAD_SCIENTIST, SRA_AGENT from ishtar_common import widgets GENERAL_CONTRACTOR, created = PersonType.objects.get_or_create( - txt_idx='general_contractor') + txt_idx='general_contractor') GENERAL_CONTRACTOR_ORGA, created = OrganizationType.objects.get_or_create( - txt_idx='general_contractor') + txt_idx='general_contractor') + class FileSelect(TableSelect): year = forms.IntegerField(label=_("Year")) @@ -63,33 +59,33 @@ class FileSelect(TableSelect): parcel = ParcelField(label=_("Parcel (section/number)")) end_date = forms.NullBooleanField(label=_(u"Is active?")) general_contractor = forms.IntegerField( - label=_(u"General contractor"), - widget=widgets.JQueryAutoComplete( - reverse_lazy('autocomplete-person', - args=[GENERAL_CONTRACTOR.pk]), - associated_model=Person), - validators=[valid_id(Person)]) + label=_(u"General contractor"), + widget=widgets.JQueryAutoComplete( + reverse_lazy('autocomplete-person', + args=[GENERAL_CONTRACTOR.pk]), + associated_model=Person), + validators=[valid_id(Person)]) general_contractor__attached_to = forms.IntegerField( - label=_(u"Organization of general contractor"), - widget=widgets.JQueryAutoComplete( - reverse_lazy('autocomplete-organization', - args=[GENERAL_CONTRACTOR_ORGA.pk]), - associated_model=Organization), - validators=[valid_id(Organization)]) + label=_(u"Organization of general contractor"), + widget=widgets.JQueryAutoComplete( + reverse_lazy('autocomplete-organization', + args=[GENERAL_CONTRACTOR_ORGA.pk]), + associated_model=Organization), + validators=[valid_id(Organization)]) in_charge = forms.IntegerField( - label=_(u"In charge"), - widget=widgets.JQueryAutoComplete( - reverse_lazy('autocomplete-person', - args=[SRA_AGENT.pk]), - associated_model=Person), - validators=[valid_id(Person)]) + label=_(u"In charge"), + widget=widgets.JQueryAutoComplete( + reverse_lazy('autocomplete-person', + args=[SRA_AGENT.pk]), + associated_model=Person), + validators=[valid_id(Person)]) history_creator = forms.IntegerField( - label=_(u"Created by"), - widget=widgets.JQueryAutoComplete( - reverse_lazy('autocomplete-person', - args=['0', 'user']), - associated_model=Person), - validators=[valid_id(Person)]) + label=_(u"Created by"), + widget=widgets.JQueryAutoComplete( + reverse_lazy('autocomplete-person', + args=['0', 'user']), + associated_model=Person), + validators=[valid_id(Person)]) permit_reference = forms.CharField(max_length=200, label=_("Permit reference")) @@ -107,14 +103,18 @@ class FileSelect(TableSelect): ids.append('parcel_1') return ids + class FileFormSelection(forms.Form): form_label = _("Archaeological file search") - associated_models = {'pk':models.File} - currents = {'pk':models.File} - pk = forms.IntegerField(label="", required=False, - widget=widgets.JQueryJqGrid(reverse_lazy('get-file'), - FileSelect, models.File, source_full=reverse_lazy('get-file-full')), - validators=[valid_id(models.File)]) + associated_models = {'pk': models.File} + currents = {'pk': models.File} + pk = forms.IntegerField( + label="", required=False, + widget=widgets.JQueryJqGrid( + reverse_lazy('get-file'), + FileSelect, models.File, + source_full=reverse_lazy('get-file-full')), + validators=[valid_id(models.File)]) def clean(self): cleaned_data = self.cleaned_data @@ -122,24 +122,25 @@ class FileFormSelection(forms.Form): raise forms.ValidationError(_(u"You should select a file.")) return cleaned_data -DATE_SOURCE = (('creation',_(u"Creation date")), - ("reception",_(u"Reception date"))) +DATE_SOURCE = (('creation', _(u"Creation date")), + ("reception", _(u"Reception date"))) + class DashboardForm(forms.Form): - slicing = forms.ChoiceField(label=_("Slicing"), choices=SLICING, - required=False) - department_detail = forms.BooleanField(label=_("Department detail"), - required=False) - date_source = forms.ChoiceField(label=_("Date get from"), - choices=DATE_SOURCE, required=False) - file_type = forms.ChoiceField(label=_("File type"), choices=[], - required=False) - saisine_type = forms.ChoiceField(label=_("Saisine type"), choices=[], - required=False) - after = forms.DateField(label=_(u"Date after"), - widget=widgets.JQueryDate, required=False) - before = forms.DateField(label=_(u"Date before"), - widget=widgets.JQueryDate, required=False) + slicing = forms.ChoiceField( + label=_("Slicing"), choices=SLICING, required=False) + department_detail = forms.BooleanField( + label=_("Department detail"), required=False) + date_source = forms.ChoiceField( + label=_("Date get from"), choices=DATE_SOURCE, required=False) + file_type = forms.ChoiceField( + label=_("File type"), choices=[], required=False) + saisine_type = forms.ChoiceField( + label=_("Saisine type"), choices=[], required=False) + after = forms.DateField( + label=_(u"Date after"), widget=widgets.JQueryDate, required=False) + before = forms.DateField( + label=_(u"Date before"), widget=widgets.JQueryDate, required=False) def __init__(self, *args, **kwargs): if 'prefix' not in kwargs: @@ -150,7 +151,7 @@ class DashboardForm(forms.Form): def get_show_detail(self): return hasattr(self, 'cleaned_data') and \ - self.cleaned_data.get('department_detail') + self.cleaned_data.get('department_detail') def get_date_source(self): date_source = 'creation' @@ -174,40 +175,43 @@ class DashboardForm(forms.Form): fltr[date_source+'_date__lte'] = self.cleaned_data['before'] return fltr + class FileFormGeneral(forms.Form): form_label = _("General") - associated_models = {'in_charge':Person, - 'related_file':models.File, - 'file_type':models.FileType} - in_charge = forms.IntegerField(label=_("Person in charge"), - widget=widgets.JQueryAutoComplete(reverse_lazy('autocomplete-person', - args=[SRA_AGENT.pk]), - limit={'person_types':[SRA_AGENT.pk]}, - associated_model=Person, new=True), + associated_models = {'in_charge': Person, + 'related_file': models.File, + 'file_type': models.FileType} + in_charge = forms.IntegerField( + label=_("Person in charge"), + widget=widgets.JQueryAutoComplete( + reverse_lazy('autocomplete-person', args=[SRA_AGENT.pk]), + limit={'person_types': [SRA_AGENT.pk]}, + associated_model=Person, new=True), validators=[valid_id(Person)]) year = forms.IntegerField(label=_("Year"), - initial=lambda:datetime.datetime.now().year, + initial=lambda: datetime.datetime.now().year, validators=[validators.MinValueValidator(1900), validators.MaxValueValidator(2100)]) - numeric_reference = forms.IntegerField(label=_("Numeric reference"), - widget=forms.HiddenInput, required=False) - internal_reference = forms.CharField(label=_(u"Other reference"), - max_length=60, required=False) + numeric_reference = forms.IntegerField( + label=_("Numeric reference"), widget=forms.HiddenInput, required=False) + internal_reference = forms.CharField( + label=_(u"Other reference"), max_length=60, required=False) name = forms.CharField(label=_(u"Name"), required=False, max_length=100) creation_date = forms.DateField(label=_(u"Creation date"), initial=get_now, widget=widgets.JQueryDate) file_type = forms.ChoiceField(label=_("File type"), choices=[]) - related_file = forms.IntegerField(label=_("Related file"), required=False, - widget=widgets.JQueryAutoComplete(reverse_lazy('autocomplete-file'), - associated_model=models.File), - validators=[valid_id(models.File)]) + related_file = forms.IntegerField( + label=_("Related file"), required=False, + widget=widgets.JQueryAutoComplete(reverse_lazy('autocomplete-file'), + associated_model=models.File), + validators=[valid_id(models.File)]) comment = forms.CharField(label=_(u"Comment"), widget=forms.Textarea, required=False) - total_surface = forms.IntegerField(required=False, - widget=widgets.AreaWidget, - label=_(u"Total surface (m²)"), - validators=[validators.MinValueValidator(0), - validators.MaxValueValidator(999999999)]) + total_surface = forms.IntegerField( + required=False, widget=widgets.AreaWidget, + label=_(u"Total surface (m²)"), + validators=[validators.MinValueValidator(0), + validators.MaxValueValidator(999999999)]) address = forms.CharField(label=_(u"Main address"), widget=forms.Textarea) address_complement = forms.CharField(label=_(u"Main address - complement"), required=False) @@ -216,19 +220,21 @@ class FileFormGeneral(forms.Form): super(FileFormGeneral, self).__init__(*args, **kwargs) self.fields['file_type'].choices = models.FileType.get_types() self.fields['file_type'].help_text = models.FileType.get_help() - q = models.File.objects.filter(internal_reference__isnull=False - ).exclude(internal_reference='').order_by('-pk') + q = models.File.objects\ + .filter(internal_reference__isnull=False)\ + .exclude(internal_reference='').order_by('-pk') if q.count(): lbl = self.fields['internal_reference'].label lbl += _(u"<br/>(last recorded: %s)") % ( - q.all()[0].internal_reference) + q.all()[0].internal_reference) self.fields['internal_reference'].label = mark_safe(lbl) + class FileFormGeneralRO(FileFormGeneral): - year = forms.IntegerField(label=_(u"Year"), - widget=forms.TextInput(attrs={'readonly':True})) - numeric_reference = forms.IntegerField(label=_(u"Numeric reference"), - widget=forms.TextInput()) + year = forms.IntegerField( + label=_(u"Year"), widget=forms.TextInput(attrs={'readonly': True})) + numeric_reference = forms.IntegerField( + label=_(u"Numeric reference"), widget=forms.TextInput()) id = forms.IntegerField(' ', widget=forms.HiddenInput, required=False) def clean(self): @@ -236,123 +242,136 @@ class FileFormGeneralRO(FileFormGeneral): year = cleaned_data.get('year') pk = cleaned_data.get('id') numeric_reference = cleaned_data.get('numeric_reference') - q = models.File.objects.filter(year=year, - numeric_reference=numeric_reference - ).exclude(pk=pk) + q = models.File.objects\ + .filter(year=year, numeric_reference=numeric_reference)\ + .exclude(pk=pk) if numeric_reference and q.count(): raise forms.ValidationError( - _(u"Another file with this numeric id exists.")) + _(u"Another file with this numeric id exists.")) return cleaned_data RESPONSIBLE_PLANNING_SERVICE, created = PersonType.objects.get_or_create( - txt_idx='responsible_planning_service') + txt_idx='responsible_planning_service') RESPONSIBLE_PLANNING_SERVICE_ORGA, created = \ - OrganizationType.objects.get_or_create( - txt_idx='planning_service') + OrganizationType.objects.get_or_create(txt_idx='planning_service') + + class FileFormPreventive(forms.Form): form_label = _(u"Preventive informations") - associated_models = {'general_contractor':Person, - 'saisine_type':models.SaisineType, - 'permit_type':models.PermitType, - 'responsible_town_planning_service':Person} - general_contractor = forms.IntegerField(label=_(u"General contractor"), - widget=widgets.JQueryAutoComplete( - reverse_lazy('autocomplete-person', - args=[PersonType.objects.get(txt_idx='general_contractor').pk]), - limit={'person_types': - [PersonType.objects.get(txt_idx='general_contractor').pk]}, - associated_model=Person, new=True), - validators=[valid_id(Person)]) - responsible_town_planning_service = forms.IntegerField(required=False, - label=_(u"Responsible for town planning service"), - widget=widgets.JQueryAutoComplete( - reverse_lazy('autocomplete-person', - args=[RESPONSIBLE_PLANNING_SERVICE.pk]), - limit={'person_types': - [RESPONSIBLE_PLANNING_SERVICE.pk]}, - associated_model=Person, new=True), - validators=[valid_id(Person)]) + associated_models = {'general_contractor': Person, + 'saisine_type': models.SaisineType, + 'permit_type': models.PermitType, + 'responsible_town_planning_service': Person} + general_contractor = forms.IntegerField( + label=_(u"General contractor"), + widget=widgets.JQueryAutoComplete( + reverse_lazy( + 'autocomplete-person', + args=[PersonType.objects.get(txt_idx='general_contractor').pk] + ), + limit={'person_types': [ + PersonType.objects.get(txt_idx='general_contractor').pk]}, + associated_model=Person, new=True), + validators=[valid_id(Person)]) + responsible_town_planning_service = forms.IntegerField( + required=False, + label=_(u"Responsible for town planning service"), + widget=widgets.JQueryAutoComplete( + reverse_lazy( + 'autocomplete-person', + args=[RESPONSIBLE_PLANNING_SERVICE.pk] + ), + limit={'person_types': [ + RESPONSIBLE_PLANNING_SERVICE.pk]}, + associated_model=Person, new=True), + validators=[valid_id(Person)]) permit_type = forms.ChoiceField(label=_(u"Permit type"), required=False, choices=[]) - permit_reference = forms.CharField(label=_(u"Permit reference"), - required=False, validators=[validators.MaxLengthValidator(60)]) - total_developed_surface = forms.IntegerField(widget=widgets.AreaWidget, - label=_(u"Total developed surface (m²)"), - required=False, validators=[validators.MinValueValidator(0), - validators.MaxValueValidator(999999999)]) + permit_reference = forms.CharField( + label=_(u"Permit reference"), required=False, + validators=[validators.MaxLengthValidator(60)]) + total_developed_surface = forms.IntegerField( + widget=widgets.AreaWidget, label=_(u"Total developed surface (m²)"), + required=False, validators=[validators.MinValueValidator(0), + validators.MaxValueValidator(999999999)]) if settings.COUNTRY == 'fr': saisine_type = forms.ChoiceField(label=_(u"Saisine type"), choices=[]) - reception_date = forms.DateField(label=_(u"Reception date"), - initial=get_now, widget=widgets.JQueryDate) + reception_date = forms.DateField( + label=_(u"Reception date"), initial=get_now, widget=widgets.JQueryDate) + def __init__(self, *args, **kwargs): super(FileFormPreventive, self).__init__(*args, **kwargs) self.fields['saisine_type'].choices = models.SaisineType.get_types() self.fields['saisine_type'].help_text = models.SaisineType.get_help() self.fields['permit_type'].choices = models.PermitType.get_types( - default='NP') + default='NP') self.fields['permit_type'].help_text = models.PermitType.get_help() + class FileFormResearch(forms.Form): form_label = _("Research archaeology") base_model = 'department' - associated_models = {'scientist':Person, - 'requested_operation_type':OperationType, - 'organization':Organization, - 'department':Department} + associated_models = {'scientist': Person, + 'requested_operation_type': OperationType, + 'organization': Organization, + 'department': Department} department = widgets.MultipleAutocompleteField( - model=Department, - label=_("Departments"), - required=False) + model=Department, + label=_("Departments"), + required=False) scientist = forms.IntegerField( - widget=widgets.JQueryAutoComplete(reverse_lazy('autocomplete-person', - args=["_".join( - [unicode(HEAD_SCIENTIST.pk), - unicode(SRA_AGENT.pk)])]), - limit={'person_types': - [unicode(HEAD_SCIENTIST.pk), - unicode(SRA_AGENT.pk)]}, - associated_model=Person, new=True), label=_(u"Scientist in charge")) + widget=widgets.JQueryAutoComplete( + reverse_lazy( + 'autocomplete-person', + args=["_".join([unicode(HEAD_SCIENTIST.pk), + unicode(SRA_AGENT.pk)])]), + limit={'person_types': [unicode(HEAD_SCIENTIST.pk), + unicode(SRA_AGENT.pk)]}, + associated_model=Person, new=True), + label=_(u"Scientist in charge")) requested_operation_type = forms.ChoiceField( - label=_(u"Requested operation type"), - choices=[]) - organization = forms.IntegerField(label=_(u"Lead organization"), - widget=widgets.JQueryAutoComplete( - reverse_lazy('autocomplete-organization'), - associated_model=Organization, new=True), - validators=[valid_id(Organization)], required=False) + label=_(u"Requested operation type"), choices=[]) + organization = forms.IntegerField( + label=_(u"Lead organization"), + widget=widgets.JQueryAutoComplete( + reverse_lazy('autocomplete-organization'), + associated_model=Organization, new=True), + validators=[valid_id(Organization)], required=False) if settings.COUNTRY == 'fr': cira_advised = forms.NullBooleanField(label=u"Passage en CIRA", required=False) - research_comment = forms.CharField(label=_(u"Comment"), - widget=forms.Textarea, required=False) + research_comment = forms.CharField( + label=_(u"Comment"), widget=forms.Textarea, required=False) if settings.COUNTRY == 'fr': mh_register = forms.NullBooleanField( - label=u"Sur Monument Historique classé", - required=False) + label=u"Sur Monument Historique classé", required=False) mh_listing = forms.NullBooleanField( - label=u"Sur Monument Historique inscrit", - required=False) - classified_area = forms.NullBooleanField(label=_(u"Classified area"), - required=False) - protected_area = forms.NullBooleanField(label=_(u"Protected area"), - required=False) + label=u"Sur Monument Historique inscrit", required=False) + classified_area = forms.NullBooleanField( + label=_(u"Classified area"), required=False) + protected_area = forms.NullBooleanField( + label=_(u"Protected area"), required=False) + def __init__(self, *args, **kwargs): super(FileFormResearch, self).__init__(*args, **kwargs) self.fields['requested_operation_type'].choices = \ - OperationType.get_types(dct={"preventive":False}) + OperationType.get_types(dct={"preventive": False}) self.fields['requested_operation_type'].help_text = \ - OperationType.get_help() + OperationType.get_help() + class FinalFileClosingForm(FinalForm): confirm_msg = " " confirm_end_msg = _(u"Would you like to close this archaeological file?") + class FinalFileDeleteForm(FinalForm): confirm_msg = " " confirm_end_msg = _(u"Would you like to delete this archaelogical file ?") + class AdministrativeActFileModifySelect(TableSelect): year = forms.IntegerField(label=_("Year")) index = forms.IntegerField(label=_("Index")) @@ -363,77 +382,92 @@ class AdministrativeActFileModifySelect(TableSelect): operation__towns = get_town_field() def __init__(self, *args, **kwargs): - super(AdministrativeActFileModifySelect, self).__init__(*args, **kwargs) + super(AdministrativeActFileModifySelect, self).__init__(*args, + **kwargs) self.fields['act_type'].choices = ActType.get_types( - dct={'intented_to':'F'}) + dct={'intented_to': 'F'}) self.fields['act_type'].help_text = ActType.get_help( - dct={'intented_to':'F'}) + dct={'intented_to': 'F'}) + class AdministrativeActFileSelect(TableSelect): associated_file__towns = get_town_field() act_type = forms.ChoiceField(label=_("Act type"), choices=[]) - signature_date_after = forms.DateField(label=_(u"Signature date after"), - widget=widgets.JQueryDate) - signature_date_before = forms.DateField(label=_(u"Signature date before"), - widget=widgets.JQueryDate) - associated_file__name = forms.CharField(label=_(u"File name"), - max_length=200) + signature_date_after = forms.DateField( + label=_(u"Signature date after"), widget=widgets.JQueryDate) + signature_date_before = forms.DateField( + label=_(u"Signature date before"), widget=widgets.JQueryDate) + associated_file__name = forms.CharField( + label=_(u"File name"), max_length=200) associated_file__general_contractor = forms.IntegerField( - label=_(u"General contractor"), - widget=widgets.JQueryAutoComplete( - reverse_lazy('autocomplete-person', - args=[PersonType.objects.get(txt_idx='general_contractor').pk]), + label=_(u"General contractor"), + widget=widgets.JQueryAutoComplete( + reverse_lazy( + 'autocomplete-person', + args=[ + PersonType.objects.get(txt_idx='general_contractor').pk]), associated_model=Person), - validators=[valid_id(Person)]) + validators=[valid_id(Person)]) associated_file__general_contractor__attached_to = forms.IntegerField( - label=_(u"Organization of general contractor"), - widget=widgets.JQueryAutoComplete( - reverse_lazy('autocomplete-organization', + label=_(u"Organization of general contractor"), + widget=widgets.JQueryAutoComplete( + reverse_lazy( + 'autocomplete-organization', args=[GENERAL_CONTRACTOR_ORGA.pk]), - associated_model=Organization), - validators=[valid_id(Organization)]) + associated_model=Organization), + validators=[valid_id(Organization)]) associated_file__numeric_reference = forms.IntegerField( - label=_("Numeric reference")) + label=_("Numeric reference")) associated_file__year = forms.IntegerField(label=_("Year")) - associated_file__internal_reference = forms.CharField(max_length=200, - label=_("Other reference")) + associated_file__internal_reference = forms.CharField( + max_length=200, label=_("Other reference")) associated_file__in_charge = forms.IntegerField( - label=_(u"In charge"), - widget=widgets.JQueryAutoComplete( - reverse_lazy('autocomplete-person', + label=_(u"In charge"), + widget=widgets.JQueryAutoComplete( + reverse_lazy( + 'autocomplete-person', args=[SRA_AGENT.pk]), - associated_model=Person), - validators=[valid_id(Person)]) - associated_file__permit_reference = forms.CharField(max_length=200, - label=_("Permit reference")) + associated_model=Person), + validators=[valid_id(Person)]) + associated_file__permit_reference = forms.CharField( + max_length=200, label=_("Permit reference")) history_creator = forms.IntegerField( - label=_(u"Created by"), - widget=widgets.JQueryAutoComplete( - reverse_lazy('autocomplete-person', + label=_(u"Created by"), + widget=widgets.JQueryAutoComplete( + reverse_lazy( + 'autocomplete-person', args=['0', 'user']), - associated_model=Person), - validators=[valid_id(Person)]) + associated_model=Person), + validators=[valid_id(Person)]) def __init__(self, *args, **kwargs): super(AdministrativeActFileSelect, self).__init__(*args, **kwargs) self.fields['act_type'].choices = ActType.get_types( - dct={'intented_to':'F'}) + dct={'intented_to': 'F'}) self.fields['act_type'].help_text = ActType.get_help( - dct={'intented_to':'F'}) + dct={'intented_to': 'F'}) + class AdministrativeActFileFormSelection(AdministrativeActOpeFormSelection): - pk = forms.IntegerField(label="", required=False, - widget=widgets.JQueryJqGrid(reverse_lazy('get-administrativeactfile'), - AdministrativeActFileSelect, AdministrativeAct, - table_cols='TABLE_COLS_FILE'), - validators=[valid_id(AdministrativeAct)]) - -class AdministrativeActFileModifyFormSelection(AdministrativeActOpeFormSelection): - pk = forms.IntegerField(label="", required=False, - widget=widgets.JQueryJqGrid(reverse_lazy('get-administrativeactfile'), - AdministrativeActFileModifySelect, AdministrativeAct, - table_cols='TABLE_COLS_FILE'), - validators=[valid_id(AdministrativeAct)]) + pk = forms.IntegerField( + label="", required=False, + widget=widgets.JQueryJqGrid( + reverse_lazy('get-administrativeactfile'), + AdministrativeActFileSelect, AdministrativeAct, + table_cols='TABLE_COLS_FILE'), + validators=[valid_id(AdministrativeAct)]) + + +class AdministrativeActFileModifyFormSelection( + AdministrativeActOpeFormSelection): + pk = forms.IntegerField( + label="", required=False, + widget=widgets.JQueryJqGrid( + reverse_lazy('get-administrativeactfile'), + AdministrativeActFileModifySelect, AdministrativeAct, + table_cols='TABLE_COLS_FILE'), + validators=[valid_id(AdministrativeAct)]) + class AdministrativeActFileForm(AdministrativeActOpeForm): act_type = forms.ChoiceField(label=_(u"Act type"), choices=[]) @@ -441,6 +475,6 @@ class AdministrativeActFileForm(AdministrativeActOpeForm): def __init__(self, *args, **kwargs): super(AdministrativeActFileForm, self).__init__(*args, **kwargs) self.fields['act_type'].choices = ActType.get_types( - dct={'intented_to':'F'}) + dct={'intented_to': 'F'}) self.fields['act_type'].help_text = ActType.get_help( - dct={'intented_to':'F'}) + dct={'intented_to': 'F'}) |