summaryrefslogtreecommitdiff
path: root/archaeological_files_pdl
diff options
context:
space:
mode:
authorÉtienne Loks <etienne.loks@proxience.com>2015-08-18 12:49:29 +0200
committerÉtienne Loks <etienne.loks@proxience.com>2015-08-18 12:49:29 +0200
commit1d12ef323a174c2d39a1de6805b9baa981c405a5 (patch)
tree2355a140f45b934a3660530e94d939ad17261ade /archaeological_files_pdl
parentdf41373f7eba2cce4e4d3a5ca77ba29c20f98f6b (diff)
downloadIshtar-1d12ef323a174c2d39a1de6805b9baa981c405a5.tar.bz2
Ishtar-1d12ef323a174c2d39a1de6805b9baa981c405a5.zip
Archaeological files: by default don't give a closing date. PEP8 and formating
Diffstat (limited to 'archaeological_files_pdl')
-rw-r--r--archaeological_files_pdl/forms.py187
1 files changed, 103 insertions, 84 deletions
diff --git a/archaeological_files_pdl/forms.py b/archaeological_files_pdl/forms.py
index 0cb67dbd1..03c308ba5 100644
--- a/archaeological_files_pdl/forms.py
+++ b/archaeological_files_pdl/forms.py
@@ -30,17 +30,18 @@ from archaeological_files import models
from ishtar_common.forms import get_now, reverse_lazy
from ishtar_common.forms_common import get_advanced_town_field
from archaeological_files.forms import GENERAL_CONTRACTOR, \
- GENERAL_CONTRACTOR_ORGA, RESPONSIBLE_PLANNING_SERVICE, \
- RESPONSIBLE_PLANNING_SERVICE_ORGA
+ GENERAL_CONTRACTOR_ORGA, RESPONSIBLE_PLANNING_SERVICE, \
+ RESPONSIBLE_PLANNING_SERVICE_ORGA
from ishtar_common import widgets
+
class FileFormGeneral(forms.Form):
form_label = _("General")
- associated_models = {'file_type':models.FileType}
+ associated_models = {'file_type': models.FileType}
file_type = forms.ChoiceField(label=_("File type"), choices=[])
year = forms.IntegerField(label=_("Year"),
- initial=lambda:datetime.datetime.now().year,
+ initial=lambda: datetime.datetime.now().year,
validators=[validators.MinValueValidator(1900),
validators.MaxValueValidator(2100)])
creation_date = forms.DateField(label=_(u"Creation date"),
@@ -53,61 +54,67 @@ class FileFormGeneral(forms.Form):
self.fields['file_type'].choices = models.FileType.get_types()
self.fields['file_type'].help_text = models.FileType.get_help()
+
class FileFormPreventiveType(forms.Form):
form_label = u"Saisine"
- associated_models = {'saisine_type':models.SaisineType,
- 'permit_type':models.PermitType}
+ associated_models = {'saisine_type': models.SaisineType,
+ 'permit_type': models.PermitType}
permit_type = forms.ChoiceField(label=_(u"Permit type"), required=False,
choices=[])
saisine_type = forms.ChoiceField(label=_(u"Saisine type"),
choices=[])
+
def __init__(self, *args, **kwargs):
super(FileFormPreventiveType, 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')
+ self.fields['permit_type'].choices = \
+ models.PermitType.get_types(default='NP')
self.fields['permit_type'].help_text = models.PermitType.get_help()
+
class FileFormPlanning(forms.Form):
form_label = _(u"Planning")
- associated_models = {'main_town':models.Town}
+ associated_models = {'main_town': models.Town}
name = forms.CharField(label=_(u"Planning name"), required=False,
max_length=100)
main_town = get_advanced_town_field(required=True)
locality = forms.CharField(label=_(u"Locality"), max_length=100,
required=False)
- address = forms.CharField(label=_(u"Address (number/street)"),
- widget=forms.Textarea(
- attrs={"placeholder":_(u"Number/street")}),
- required=False,
- )
+ address = forms.CharField(
+ label=_(u"Address (number/street)"),
+ widget=forms.Textarea(attrs={"placeholder": _(u"Number/street")}),
+ required=False)
postal_code = forms.CharField(label=_(u"Postal code"), max_length=10,
required=False)
- total_surface = forms.IntegerField(required=False,
- widget=widgets.AreaWidget,
- label=_(u"Total surface (m²)"),
- validators=[validators.MinValueValidator(0),
- validators.MaxValueValidator(999999999)])
- total_developed_surface = forms.IntegerField(widget=widgets.AreaWidget,
- label=_(u"Total developed surface (m²)"),
- required=False, 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)])
+ total_developed_surface = forms.IntegerField(
+ widget=widgets.AreaWidget,
+ label=_(u"Total developed surface (m²)"),
+ required=False,
+ validators=[validators.MinValueValidator(0),
+ validators.MaxValueValidator(999999999)])
+
class FileFormResearchAddress(forms.Form):
form_label = _(u"Address")
- associated_models = {'main_town':models.Town}
+ associated_models = {'main_town': models.Town}
main_town = get_advanced_town_field(required=True)
locality = forms.CharField(label=_(u"Locality"), max_length=100,
required=False)
- address = forms.CharField(label=_(u"Address (number/street)"),
- widget=forms.Textarea(
- attrs={"placeholder":_(u"Number/street")}),
- required=False,
- )
+ address = forms.CharField(
+ label=_(u"Address (number/street)"),
+ widget=forms.Textarea(attrs={"placeholder": _(u"Number/street")}),
+ required=False)
postal_code = forms.CharField(label=_(u"Postal code"), max_length=10,
required=False)
+
class PersonOrgaForm(forms.Form):
PERSON_FIELD = 'TO BE DEFINED'
PERSON_TYPE = GENERAL_CONTRACTOR
@@ -128,14 +135,16 @@ class PersonOrgaForm(forms.Form):
if 'data' in kwargs:
# the order is important: PERSON can have an ORGA
for field in [self.ORGA_FIELD, self.PERSON_FIELD]:
- current_item_key = ((kwargs['prefix'] + '-') \
- if kwargs.get('prefix') else '') + field
+ current_item_key = (
+ (kwargs['prefix'] + '-')
+ if kwargs.get('prefix') else '') + field
if kwargs['data'] and kwargs['data'].get(current_item_key):
model = self.associated_models[field]
try:
- item = model.objects.get(pk=kwargs['data'][current_item_key])
- current_status = 'natural' if field == self.PERSON_FIELD \
- else 'corporation'
+ model.objects.get(
+ pk=kwargs['data'][current_item_key])
+ current_status = 'natural' \
+ if field == self.PERSON_FIELD else 'corporation'
except (model.DoesNotExist, ValueError):
pass
initial = kwargs.get("initial", {})
@@ -145,9 +154,9 @@ class PersonOrgaForm(forms.Form):
value = initial.get(field)
model = self.associated_models[field]
try:
- item = model.objects.get(pk=value)
+ model.objects.get(pk=value)
current_status = 'natural' if field == self.PERSON_FIELD \
- else 'corporation'
+ else 'corporation'
except (model.DoesNotExist, ValueError):
pass
@@ -173,36 +182,37 @@ class PersonOrgaForm(forms.Form):
# distinct widget for natural and corporation
if status == 'natural':
self.fields[self.PERSON_FIELD] = forms.IntegerField(
- label=self.PERSON_LABEL,
- required=False,
- initial= initial.get(self.PERSON_FIELD, None),
- widget=widgets.JQueryPersonOrganization(
- reverse_lazy('autocomplete-person',
- args=[self.PERSON_TYPE.pk]),
- reverse_lazy('person_create'),
- model=Person,
- limit={'person_types':[self.PERSON_TYPE.pk],
- 'attached_to__isnull':True},
- js_template='ishtar/blocks/JQueryNaturalPerson.js',
- new=True),
- validators=[valid_id(Person)])
+ label=self.PERSON_LABEL,
+ required=False,
+ initial=initial.get(self.PERSON_FIELD, None),
+ widget=widgets.JQueryPersonOrganization(
+ reverse_lazy('autocomplete-person',
+ args=[self.PERSON_TYPE.pk]),
+ reverse_lazy('person_create'),
+ model=Person,
+ limit={'person_types': [self.PERSON_TYPE.pk],
+ 'attached_to__isnull': True},
+ js_template='ishtar/blocks/JQueryNaturalPerson.js',
+ new=True),
+ validators=[valid_id(Person)])
else:
self.fields[self.ORGA_FIELD] = forms.IntegerField(
- label=self.ORGA_LABEL,
- required=False,
- initial= initial.get(self.ORGA_FIELD, None),
- widget=widgets.JQueryAutoComplete(
- reverse_lazy('autocomplete-organization',
- args=[self.ORGA_TYPE.pk]),
- limit={'organization_type':[self.ORGA_TYPE.pk]},
- associated_model=models.Organization,
- new=True),
- validators=[valid_id(models.Organization)])
+ label=self.ORGA_LABEL,
+ required=False,
+ initial=initial.get(self.ORGA_FIELD, None),
+ widget=widgets.JQueryAutoComplete(
+ reverse_lazy('autocomplete-organization',
+ args=[self.ORGA_TYPE.pk]),
+ limit={'organization_type': [self.ORGA_TYPE.pk]},
+ associated_model=models.Organization,
+ new=True),
+ validators=[valid_id(models.Organization)])
+
class FileFormGeneralContractor(PersonOrgaForm):
form_label = _(u"General contractor")
- associated_models = {'general_contractor':models.Person,
- 'corporation_general_contractor':models.Organization}
+ associated_models = {'general_contractor': models.Person,
+ 'corporation_general_contractor': models.Organization}
PERSON_FIELD = 'general_contractor'
PERSON_TYPE = GENERAL_CONTRACTOR
PERSON_LABEL = _(u"General contractor")
@@ -211,15 +221,16 @@ class FileFormGeneralContractor(PersonOrgaForm):
ORGA_LABEL = _(u"General contractor")
# default initialisation before dynamic
- general_contractor = forms.IntegerField(label=" ", widget=forms.HiddenInput,
- required=False)
- corporation_general_contractor = forms.IntegerField(label=" ",
- widget=forms.HiddenInput, required=False)
+ general_contractor = forms.IntegerField(
+ label=" ", widget=forms.HiddenInput, required=False)
+ corporation_general_contractor = forms.IntegerField(
+ label=" ", widget=forms.HiddenInput, required=False)
+
class FileFormPlanningService(PersonOrgaForm):
form_label = _(u"Town planning service")
- associated_models = {'responsible_town_planning_service':models.Person,
- 'planning_service':models.Organization}
+ associated_models = {'responsible_town_planning_service': models.Person,
+ 'planning_service': models.Organization}
reference_number = forms.IntegerField(label=_(u"File reference"),
required=False)
@@ -231,25 +242,33 @@ class FileFormPlanningService(PersonOrgaForm):
ORGA_LABEL = _(u"Planning service")
# default initialisation before dynamic
- responsible_town_planning_service = forms.IntegerField(label=" ",
- widget=forms.HiddenInput, required=False)
+ responsible_town_planning_service = forms.IntegerField(
+ label=" ", widget=forms.HiddenInput, required=False)
planning_service = forms.IntegerField(label=" ", widget=forms.HiddenInput,
required=False)
+
class FileFormInstruction(forms.Form):
form_label = u"Instruction SRA"
- associated_models = {'in_charge':models.Person,
- 'related_file':models.File}
- in_charge = forms.IntegerField(label=_("Person in charge"),
- widget=widgets.JQueryAutoComplete(reverse_lazy('autocomplete-person',
- args=[PersonType.objects.get(txt_idx='sra_agent').pk]),
- limit={'person_types':[PersonType.objects.get(txt_idx='sra_agent').pk]},
- associated_model=Person, new=True),
+ associated_models = {'in_charge': models.Person,
+ 'related_file': models.File}
+ in_charge = forms.IntegerField(
+ label=_("Person in charge"),
+ widget=widgets.JQueryAutoComplete(
+ reverse_lazy(
+ 'autocomplete-person',
+ args=[PersonType.objects.get(txt_idx='sra_agent').pk]),
+ limit={
+ 'person_types': [
+ PersonType.objects.get(txt_idx='sra_agent').pk]
+ },
+ associated_model=Person, new=True),
validators=[valid_id(Person)])
- 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)
instruction_deadline = forms.DateField(widget=widgets.JQueryDate,
@@ -259,8 +278,7 @@ class FileFormInstruction(forms.Form):
validators.MaxValueValidator(2100)])
numeric_reference = forms.IntegerField(label=_("Numeric reference"),
required=False)
- end_date = forms.DateField(initial=get_now, widget=widgets.JQueryDate,
- required=False)
+ end_date = forms.DateField(widget=widgets.JQueryDate, required=False)
def __init__(self, *args, **kwargs):
c_year = datetime.date.today().year
@@ -268,10 +286,11 @@ class FileFormInstruction(forms.Form):
c_year = kwargs.pop('year')
super(FileFormInstruction, self).__init__(*args, **kwargs)
self.fields['year'].initial = c_year
- self.fields['year'].widget.attrs.update({'readonly':'readonly'})
+ self.fields['year'].widget.attrs.update({'readonly': 'readonly'})
c_num, lasts = 0, ""
q = models.File.objects.filter(numeric_reference__isnull=False,
- year=c_year).order_by('-numeric_reference')
+ year=c_year
+ ).order_by('-numeric_reference')
if q.count():
c_num = q.all()[0].numeric_reference
lasts = u"SRA %s-%d" % (unicode(c_year), c_num)