summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorÉtienne Loks <etienne.loks@iggdrasil.net>2021-02-12 15:43:15 +0100
committerÉtienne Loks <etienne.loks@iggdrasil.net>2021-02-28 12:15:24 +0100
commit13b9ef1c26bb89349a15be94db7d01512e270d5a (patch)
treebb7c35ca850f60028c576ee42e3fb95db20a64be
parent7e6c628ff9f4d27609efda613b790f87bbeacea1 (diff)
downloadIshtar-13b9ef1c26bb89349a15be94db7d01512e270d5a.tar.bz2
Ishtar-13b9ef1c26bb89349a15be94db7d01512e270d5a.zip
Refactor - clean
-rw-r--r--archaeological_context_records/admin.py4
-rw-r--r--archaeological_context_records/forms.py135
-rw-r--r--archaeological_context_records/ishtar_menu.py10
-rw-r--r--archaeological_context_records/lookups.py2
-rw-r--r--archaeological_context_records/models.py18
-rw-r--r--archaeological_context_records/views.py14
-rw-r--r--archaeological_files/forms.py114
-rw-r--r--archaeological_files/ishtar_menu.py38
-rw-r--r--archaeological_files/lookups.py2
-rw-r--r--archaeological_files/models.py88
-rw-r--r--archaeological_files/views.py18
-rw-r--r--archaeological_files/wizards.py4
-rw-r--r--archaeological_files_pdl/forms.py46
-rw-r--r--archaeological_files_pdl/views.py4
-rw-r--r--archaeological_operations/admin.py4
-rw-r--r--archaeological_operations/forms.py424
-rw-r--r--archaeological_operations/ishtar_menu.py40
-rw-r--r--archaeological_operations/lookups.py4
-rw-r--r--archaeological_operations/models.py12
-rw-r--r--archaeological_operations/utils.py6
-rw-r--r--archaeological_operations/views.py20
-rw-r--r--archaeological_operations/widgets.py6
-rw-r--r--archaeological_operations/wizards.py5
-rw-r--r--archaeological_warehouse/ishtar_menu.py30
-rw-r--r--archaeological_warehouse/lookups.py4
-rw-r--r--example_project/__init__.py.base.sample16
-rw-r--r--example_project/__init__.py.celery.sample16
-rw-r--r--example_project/settings.py8
-rw-r--r--ishtar_common/__init__.py6
-rw-r--r--ishtar_common/admin.py91
-rw-r--r--ishtar_common/forms.py77
-rw-r--r--ishtar_common/forms_common.py6
-rw-r--r--ishtar_common/ishtar_menu.py60
-rw-r--r--ishtar_common/management/commands/fix_missing_cached_labels.py6
-rw-r--r--ishtar_common/management/commands/ishtar_import.py2
-rw-r--r--ishtar_common/management/commands/process_pending_update.py6
-rw-r--r--ishtar_common/management/commands/reassociate_similar_images.py16
-rw-r--r--ishtar_common/management/commands/regenerate_external_id.py4
-rw-r--r--ishtar_common/management/commands/regenerate_qrcodes.py6
-rw-r--r--ishtar_common/management/commands/regenerate_search_vector_cached_label.py6
-rw-r--r--ishtar_common/models.py37
41 files changed, 694 insertions, 721 deletions
diff --git a/archaeological_context_records/admin.py b/archaeological_context_records/admin.py
index 9bd2f5c05..abee0a6d0 100644
--- a/archaeological_context_records/admin.py
+++ b/archaeological_context_records/admin.py
@@ -47,9 +47,9 @@ class AdminContextRecordForm(forms.ModelForm):
class Meta:
model = models.ContextRecord
exclude = []
- point_2d = PointField(label=_(u"Point"), required=False,
+ point_2d = PointField(label=_("Point"), required=False,
widget=OSMWidget)
- multi_polygon = MultiPolygonField(label=_(u"Multi polygon"), required=False,
+ multi_polygon = MultiPolygonField(label=_("Multi polygon"), required=False,
widget=OSMWidget)
operation = AutoCompleteSelectField('operation')
parcel = AutoCompleteSelectField('parcel', required=False)
diff --git a/archaeological_context_records/forms.py b/archaeological_context_records/forms.py
index 357f5ce13..c4fa6f8fe 100644
--- a/archaeological_context_records/forms.py
+++ b/archaeological_context_records/forms.py
@@ -49,12 +49,12 @@ from ishtar_common import widgets
class OperationFormSelection(CustomForm, forms.Form):
form_label = _("Operation")
- form_admin_name = _(u"Context record - 010 - Operation choice")
+ form_admin_name = _("Context record - 010 - Operation choice")
form_slug = "contextrecord-010-operationchoice"
associated_models = {'operation': Operation}
currents = {'operation': Operation}
operation = forms.IntegerField(
- label=_(u"Operation"), required=False,
+ label=_("Operation"), required=False,
widget=widgets.JQueryAutoComplete(
reverse_lazy('autocomplete-operation'),
associated_model=Operation),
@@ -200,9 +200,12 @@ def get_init_parcel(form, operation, prefix=""):
parcels = sorted(parcels, key=sort)
for key, gparcels in groupby(parcels, sort):
form.fields[prefix + 'parcel'].choices.append(
- (" - ".join([k for k in key if k]),
- [(parcel.pk, parcel.short_label) for parcel in gparcels])
+ (
+ " - ".join(k for k in key if k),
+ [(parcel.pk, parcel.short_label) for parcel in gparcels],
+ )
)
+
if len(form.fields[prefix + 'parcel'].choices) == 1 and \
(prefix + 'town') in form.fields:
# only the empty choice is available
@@ -218,7 +221,7 @@ def get_init_parcel(form, operation, prefix=""):
class RecordFormGeneral(CustomForm, ManageOldType):
HEADERS = {}
form_label = _("General")
- form_admin_name = _(u"Context record - 020 - General")
+ form_admin_name = _("Context record - 020 - General")
form_slug = "contextrecord-020-general"
file_upload = True
base_models = ["documentation"]
@@ -230,58 +233,58 @@ class RecordFormGeneral(CustomForm, ManageOldType):
'excavation_technic': models.ExcavationTechnicType}
pk = forms.IntegerField(required=False, widget=forms.HiddenInput)
operation_id = forms.IntegerField(widget=forms.HiddenInput)
- parcel = forms.ChoiceField(label=_(u"Parcel"), choices=[])
- town = forms.ChoiceField(label=_(u"Town"), choices=[], required=False)
+ parcel = forms.ChoiceField(label=_("Parcel"), choices=[])
+ town = forms.ChoiceField(label=_("Town"), choices=[], required=False)
archaeological_site = forms.ChoiceField(
label=" ", choices=[], required=False,
- help_text=_(u"Only the items associated to the operation can be "
- u"selected.")
+ help_text=_("Only the items associated to the operation can be "
+ "selected.")
)
- label = forms.CharField(label=_(u"ID"),
+ label = forms.CharField(label=_("ID"),
validators=[validators.MaxLengthValidator(200)])
- unit = forms.ChoiceField(label=_(u"Context record type"), required=False,
+ unit = forms.ChoiceField(label=_("Context record type"), required=False,
choices=[])
- description = forms.CharField(label=_(u"Description"),
+ description = forms.CharField(label=_("Description"),
widget=forms.Textarea, required=False)
- comment = forms.CharField(label=_(u"General comment"),
+ comment = forms.CharField(label=_("General comment"),
widget=forms.Textarea, required=False)
excavation_technic = forms.ChoiceField(
- label=_(u"Excavation technique"), choices=[], required=False)
+ label=_("Excavation technique"), choices=[], required=False)
surface = forms.IntegerField(
required=False, widget=widgets.AreaWidget,
- label=_(u"Total surface (m2)"),
+ label=_("Total surface (m2)"),
validators=[validators.MinValueValidator(0),
validators.MaxValueValidator(999999999)])
- length = forms.FloatField(label=_(u"Length (m)"), required=False)
- width = forms.FloatField(label=_(u"Width (m)"), required=False)
- thickness = forms.FloatField(label=_(u"Thickness (m)"), required=False)
- diameter = forms.FloatField(label=_(u"Diameter (m)"), required=False)
- depth = forms.FloatField(label=_(u"Depth (m)"), required=False)
+ length = forms.FloatField(label=_("Length (m)"), required=False)
+ width = forms.FloatField(label=_("Width (m)"), required=False)
+ thickness = forms.FloatField(label=_("Thickness (m)"), required=False)
+ diameter = forms.FloatField(label=_("Diameter (m)"), required=False)
+ depth = forms.FloatField(label=_("Depth (m)"), required=False)
depth_of_appearance = forms.FloatField(
- label=_(u"Depth of appearance (m)"), required=False)
- opening_date = forms.DateField(label=_(u"Opening date"),
+ label=_("Depth of appearance (m)"), required=False)
+ opening_date = forms.DateField(label=_("Opening date"),
widget=DatePicker, required=False)
- closing_date = forms.DateField(label=_(u"Closing date"),
+ closing_date = forms.DateField(label=_("Closing date"),
widget=DatePicker, required=False)
documentation = forms.MultipleChoiceField(
label=_("Documentation"), choices=[], required=False,
widget=widgets.Select2Multiple)
location = forms.CharField(
- label=_(u"Location"), widget=forms.Textarea,
+ label=_("Location"), widget=forms.Textarea,
required=False, validators=[validators.MaxLengthValidator(200)])
- HEADERS['x'] = FormHeader(_(u"Coordinates"))
- x = forms.FloatField(label=_(u"X"), required=False)
- estimated_error_x = forms.FloatField(label=_(u"Estimated error for X"),
+ HEADERS['x'] = FormHeader(_("Coordinates"))
+ x = forms.FloatField(label=_("X"), required=False)
+ estimated_error_x = forms.FloatField(label=_("Estimated error for X"),
required=False)
- y = forms.FloatField(label=_(u"Y"), required=False)
- estimated_error_y = forms.FloatField(label=_(u"Estimated error for Y"),
+ y = forms.FloatField(label=_("Y"), required=False)
+ estimated_error_y = forms.FloatField(label=_("Estimated error for Y"),
required=False)
- z = forms.FloatField(label=_(u"Z"), required=False)
- estimated_error_z = forms.FloatField(label=_(u"Estimated error for Z"),
+ z = forms.FloatField(label=_("Z"), required=False)
+ estimated_error_z = forms.FloatField(label=_("Estimated error for Z"),
required=False)
spatial_reference_system = forms.ChoiceField(
- label=_(u"Spatial Reference System"), required=False, choices=[])
+ label=_("Spatial Reference System"), required=False, choices=[])
TYPES = [
FieldType('unit', models.Unit),
@@ -368,12 +371,12 @@ class RecordFormGeneral(CustomForm, ManageOldType):
if 'pk' in cleaned_data and cleaned_data['pk']:
cr = cr.exclude(pk=int(cleaned_data['pk']))
if cr.count():
- raise forms.ValidationError(_(u"This ID already exists for "
- u"this operation."))
+ raise forms.ValidationError(_("This ID already exists for "
+ "this operation."))
if not self.cleaned_data.get('parcel', None) and not \
self.cleaned_data.get('town', None):
- raise forms.ValidationError(_(u"You have to choose a town or a "
- u"parcel."))
+ raise forms.ValidationError(_("You have to choose a town or a "
+ "parcel."))
return cleaned_data
@@ -384,8 +387,8 @@ class DatingForm(ManageOldType, forms.Form):
'quality': models.DatingQuality,
'period': models.Period}
period = forms.ChoiceField(label=_("Period"), choices=[])
- start_date = forms.IntegerField(label=_(u"Start date"), required=False)
- end_date = forms.IntegerField(label=_(u"End date"), required=False)
+ start_date = forms.IntegerField(label=_("Start date"), required=False)
+ end_date = forms.IntegerField(label=_("End date"), required=False)
quality = forms.ChoiceField(label=_("Quality"), required=False, choices=[])
dating_type = forms.ChoiceField(label=_("Dating type"), required=False,
choices=[])
@@ -402,7 +405,7 @@ class DatingForm(ManageOldType, forms.Form):
DatingFormSet = formset_factory(DatingForm, can_delete=True,
formset=FormSet)
DatingFormSet.form_label = _("Dating")
-DatingFormSet.form_admin_name = _(u"Context record - 030 - Dating")
+DatingFormSet.form_admin_name = _("Context record - 030 - Dating")
DatingFormSet.form_slug = "contextrecord-030-datings"
@@ -412,7 +415,7 @@ class RecordRelationsForm(OpeRecordRelationsForm):
associated_models = {'right_record': models.ContextRecord,
'relation_type': models.RelationType}
right_record = forms.ChoiceField(
- label=_(u"Context record"), choices=[], required=False)
+ label=_("Context record"), choices=[], required=False)
def __init__(self, *args, **kwargs):
crs = None
@@ -428,34 +431,34 @@ class RecordRelationsForm(OpeRecordRelationsForm):
RecordRelationsFormSet = formset_factory(
RecordRelationsForm, can_delete=True, formset=RecordRelationsFormSetBase)
-RecordRelationsFormSet.form_label = _(u"Relations")
-RecordRelationsFormSet.form_admin_name = _(u"Context record - 050 - Relations")
+RecordRelationsFormSet.form_label = _("Relations")
+RecordRelationsFormSet.form_admin_name = _("Context record - 050 - Relations")
RecordRelationsFormSet.form_slug = "contextrecord-050-recordrelations"
class RecordFormInterpretation(CustomForm, ManageOldType, forms.Form):
- form_label = _(u"Interpretation")
- form_admin_name = _(u"Context record - 040 - Interpretation")
+ form_label = _("Interpretation")
+ form_admin_name = _("Context record - 040 - Interpretation")
form_slug = "contextrecord-040-interpretation"
associated_models = {'activity': models.ActivityType,
'identification': models.IdentificationType}
datings_comment = forms.CharField(
- label=_(u"Comments on dating"), required=False,
+ label=_("Comments on dating"), required=False,
widget=forms.Textarea)
- filling = forms.CharField(label=_(u"Filling"),
+ filling = forms.CharField(label=_("Filling"),
widget=forms.Textarea, required=False)
- interpretation = forms.CharField(label=_(u"Interpretation"),
+ interpretation = forms.CharField(label=_("Interpretation"),
widget=forms.Textarea, required=False)
- activity = forms.ChoiceField(label=_(u"Activity"), required=False,
+ activity = forms.ChoiceField(label=_("Activity"), required=False,
choices=[])
identification = forms.ChoiceField(label=_("Identification"),
required=False, choices=[])
- taq = forms.IntegerField(label=_(u"TAQ"), required=False)
- taq_estimated = forms.IntegerField(label=_(u"Estimated TAQ"),
+ taq = forms.IntegerField(label=_("TAQ"), required=False)
+ taq_estimated = forms.IntegerField(label=_("Estimated TAQ"),
required=False)
- tpq = forms.IntegerField(label=_(u"TPQ"), required=False)
- tpq_estimated = forms.IntegerField(label=_(u"Estimated TPQ"),
+ tpq = forms.IntegerField(label=_("TPQ"), required=False)
+ tpq_estimated = forms.IntegerField(label=_("Estimated TPQ"),
required=False)
TYPES = [
@@ -465,27 +468,27 @@ class RecordFormInterpretation(CustomForm, ManageOldType, forms.Form):
OperationRecordFormSelection = get_form_selection(
- 'OperationRecordFormSelection', _(u"Operation search"), 'operation_id',
+ 'OperationRecordFormSelection', _("Operation search"), 'operation_id',
Operation, OperationSelect, 'get-operation',
- _(u"You should select an operation."))
+ _("You should select an operation."))
class RecordDeletionForm(FinalForm):
confirm_msg = " "
- confirm_end_msg = _(u"Would you like to delete this context record?")
+ confirm_end_msg = _("Would you like to delete this context record?")
class QAOperationCR(IshtarForm):
- town = forms.ChoiceField(label=_(u"Town"), choices=[])
+ town = forms.ChoiceField(label=_("Town"), choices=[])
archaeological_site = forms.ChoiceField(
label=" ", choices=[], required=False,
- help_text=_(u"Only the items associated to the operation can be "
- u"selected.")
+ help_text=_("Only the items associated to the operation can be "
+ "selected.")
)
- label = forms.CharField(label=_(u"ID"),
+ label = forms.CharField(label=_("ID"),
validators=[validators.MaxLengthValidator(200)])
- parcel = forms.ChoiceField(label=_(u"Parcel"), choices=[], required=False)
- unit = forms.ChoiceField(label=_(u"Context record type"), required=False,
+ parcel = forms.ChoiceField(label=_("Parcel"), choices=[], required=False)
+ unit = forms.ChoiceField(label=_("Context record type"), required=False,
choices=[])
TYPES = [
@@ -517,8 +520,8 @@ class QAOperationCR(IshtarForm):
]
if self.profil.parcel_mandatory:
self.fields['parcel'].choices += [('', '--')] + [
- (str(parcel.pk), u"{} - {}".format(parcel.short_label,
- parcel.town))
+ (str(parcel.pk), "{} - {}".format(parcel.short_label,
+ parcel.town))
for parcel in operation.parcels.all()]
def save(self, items):
@@ -539,9 +542,9 @@ class QAOperationCR(IshtarForm):
class QAContextRecordDuplicateForm(IshtarForm):
qa_label = forms.CharField(label=_("ID"), max_length=None, required=True)
- qa_parcel = forms.ChoiceField(label=_(u"Parcel"), choices=[])
- qa_town = forms.ChoiceField(label=_(u"Town"), choices=[], required=False)
- qa_unit = forms.ChoiceField(label=_(u"Context record type"), required=False,
+ qa_parcel = forms.ChoiceField(label=_("Parcel"), choices=[])
+ qa_town = forms.ChoiceField(label=_("Town"), choices=[], required=False)
+ qa_unit = forms.ChoiceField(label=_("Context record type"), required=False,
choices=[])
TYPES = [
diff --git a/archaeological_context_records/ishtar_menu.py b/archaeological_context_records/ishtar_menu.py
index fc02c5eef..a7efd8da4 100644
--- a/archaeological_context_records/ishtar_menu.py
+++ b/archaeological_context_records/ishtar_menu.py
@@ -26,22 +26,22 @@ from . import models
# be carreful: each access_controls must be relevant with check_rights in urls
MENU_SECTIONS = [
- (40, SectionItem('record_management', _(u"Context record"),
+ (40, SectionItem('record_management', _("Context record"),
profile_restriction='context_record',
css='menu-context-record',
- childs=[MenuItem('record_search', _(u"Search"),
+ childs=[MenuItem('record_search', _("Search"),
model=models.ContextRecord,
access_controls=['view_contextrecord',
'view_own_contextrecord']),
- MenuItem('record_creation', _(u"Creation"),
+ MenuItem('record_creation', _("Creation"),
model=models.ContextRecord,
access_controls=['add_contextrecord',
'add_own_contextrecord']),
- MenuItem('record_modification', _(u"Modification"),
+ MenuItem('record_modification', _("Modification"),
model=models.ContextRecord,
access_controls=['change_contextrecord',
'change_own_contextrecord']),
- MenuItem('record_deletion', _(u"Deletion"),
+ MenuItem('record_deletion', _("Deletion"),
model=models.ContextRecord,
access_controls=['delete_contextrecord',
'delete_own_contextrecord']),
diff --git a/archaeological_context_records/lookups.py b/archaeological_context_records/lookups.py
index 8356f5e12..7b7d5b85d 100644
--- a/archaeological_context_records/lookups.py
+++ b/archaeological_context_records/lookups.py
@@ -22,4 +22,4 @@ class ContextRecordLookup(LookupChannel):
return self.model.objects.filter(query).order_by('cached_label')[:20]
def format_item_display(self, item):
- return u"<span class='ajax-label'>%s</span>" % item.cached_label
+ return "<span class='ajax-label'>%s</span>" % item.cached_label
diff --git a/archaeological_context_records/models.py b/archaeological_context_records/models.py
index ff5f937e3..1576088ed 100644
--- a/archaeological_context_records/models.py
+++ b/archaeological_context_records/models.py
@@ -217,16 +217,12 @@ class Dating(models.Model):
return True
def context_records_lbl(self):
- return " - ".join(
- [cr.cached_label for cr in self.context_records.all()]
- )
+ return " - ".join(cr.cached_label for cr in self.context_records.all())
context_records_lbl.short_description = _("Context record")
context_records_lbl.admin_order_field = "context_records__cached_label"
def finds_lbl(self):
- return " - ".join(
- [f.cached_label for f in self.find.all()]
- )
+ return " - ".join(f.cached_label for f in self.find.all())
finds_lbl.short_description = _("Find")
finds_lbl.admin_order_field = "find__cached_label"
@@ -514,14 +510,14 @@ class ContextRecord(BulkUpdatedItem, DocumentItem, BaseHistorizedItem,
QA_LOCK = QuickAction(
url="contextrecord-qa-lock", icon_class="fa fa-lock",
- text=_(u"Lock/Unlock"), target="many",
+ text=_("Lock/Unlock"), target="many",
rights=['change_contextrecord', 'change_own_contextrecord']
)
QUICK_ACTIONS = [
QA_LOCK,
QuickAction(
url="contextrecord-qa-duplicate", icon_class="fa fa-clone",
- text=_(u"Duplicate"), target="one",
+ text=_("Duplicate"), target="one",
rights=['change_contextrecord', 'change_own_contextrecord']),
]
@@ -861,8 +857,7 @@ class ContextRecord(BulkUpdatedItem, DocumentItem, BaseHistorizedItem,
return self.full_label()
def _generate_cached_periods(self):
- return " & ".join([dating.period.label
- for dating in self.datings.all()])
+ return " & ".join(dating.period.label for dating in self.datings.all())
def _generate_cached_related_context_records(self):
return self.detailed_related_context_records()
@@ -888,8 +883,7 @@ class ContextRecord(BulkUpdatedItem, DocumentItem, BaseHistorizedItem,
return self.archaeological_site.reference
if self.operation.archaeological_sites.count():
return "-".join(
- [a.reference for a in self.operation.archaeological_sites.all()]
- )
+ a.reference for a in self.operation.archaeological_sites.all())
return ""
@property
diff --git a/archaeological_context_records/views.py b/archaeological_context_records/views.py
index 215dd2b4a..2de60dc2c 100644
--- a/archaeological_context_records/views.py
+++ b/archaeological_context_records/views.py
@@ -99,7 +99,7 @@ get_contextrecordrelationdetail = get_item(
record_search_wizard = wizards.RecordSearch.as_view([
('general-record_search', forms.RecordFormSelection)],
- label=_(u"Context record search"),
+ label=_("Context record search"),
url_name='record_search',)
record_creation_steps = [
@@ -113,7 +113,7 @@ record_creation_steps = [
record_creation_wizard = wizards.RecordWizard.as_view(
record_creation_steps,
- label=_(u"New context record"),
+ label=_("New context record"),
url_name='record_creation',
)
@@ -129,7 +129,7 @@ record_modification_steps = [
record_modification_wizard = wizards.RecordModifWizard.as_view(
record_modification_steps,
- label=_(u"Context record modification"),
+ label=_("Context record modification"),
url_name='record_modification',
)
@@ -147,7 +147,7 @@ def record_modify(request, pk):
record_deletion_wizard = wizards.RecordDeletionWizard.as_view([
('selec-record_deletion', forms.RecordFormMultiSelection),
('final-record_deletion', forms.RecordDeletionForm)],
- label=_(u"Context record deletion"),
+ label=_("Context record deletion"),
url_name='record_deletion',)
@@ -216,12 +216,12 @@ class QAOperationContextRecordView(QAItemForm):
template_name = 'ishtar/forms/qa_operation_contextrecord.html'
model = Operation
form_class = forms.QAOperationCR
- page_name = _(u"Context record")
+ page_name = _("Context record")
def get_quick_action(self):
return QuickAction(
url="operation-qa-contextrecord", icon_class="fa fa-plus",
- text=_(u"Add context record"), target="one",
+ text=_("Add context record"), target="one",
rights=['add_contextrecord', 'add_own_contextrecord'])
def form_valid(self, form):
@@ -253,6 +253,6 @@ class QAContextRecordDuplicateFormView(QAItemForm):
def get_context_data(self, **kwargs):
data = super(QAContextRecordDuplicateFormView, self).get_context_data(
**kwargs)
- data['action_name'] = _(u"Duplicate")
+ data['action_name'] = _("Duplicate")
data["operation"] = self.items[0].operation
return data
diff --git a/archaeological_files/forms.py b/archaeological_files/forms.py
index 9d2c14691..0108a8375 100644
--- a/archaeological_files/forms.py
+++ b/archaeological_files/forms.py
@@ -64,34 +64,34 @@ class FileSelect(DocumentItemSelect):
internal_reference = forms.CharField(max_length=200,
label=_("Other reference"))
towns = get_town_field()
- parcel = forms.CharField(label=_(u"Parcel"))
+ parcel = forms.CharField(label=_("Parcel"))
if settings.ISHTAR_DPTS:
towns__numero_insee__startswith = forms.ChoiceField(
- label=_(u"Department"), choices=[])
- name = forms.CharField(label=_(u"File name"), max_length=200)
+ label=_("Department"), choices=[])
+ name = forms.CharField(label=_("File name"), max_length=200)
file_type = forms.ChoiceField(label=_("File type"), choices=[])
- end_date = forms.NullBooleanField(label=_(u"Is active?"))
+ end_date = forms.NullBooleanField(label=_("Is active?"))
saisine_type = forms.ChoiceField(label=_("Saisine type"), choices=[])
permit_type = forms.ChoiceField(label=_("Permit type"), choices=[])
permit_reference = forms.CharField(max_length=200,
label=_("Permit reference"))
- comment = forms.CharField(label=_(u"Comment"), max_length=500)
+ comment = forms.CharField(label=_("Comment"), max_length=500)
in_charge = forms.IntegerField(
- label=_(u"In charge"),
+ label=_("In charge"),
widget=widgets.JQueryAutoComplete(
reverse_lazy('autocomplete-person',
args=[person_type_pk_lazy('sra_agent')]),
associated_model=Person),
validators=[valid_id(Person)])
general_contractor = forms.IntegerField(
- label=_(u"General contractor"),
+ label=_("General contractor"),
widget=widgets.JQueryAutoComplete(
reverse_lazy('autocomplete-person',
args=[person_type_pk_lazy('general_contractor')]),
associated_model=Person),
validators=[valid_id(Person)])
general_contractor__attached_to = forms.IntegerField(
- label=_(u"Organization of general contractor"),
+ label=_("Organization of general contractor"),
widget=widgets.JQueryAutoComplete(
reverse_lazy('autocomplete-organization',
args=[organization_type_pks_lazy([
@@ -99,14 +99,14 @@ class FileSelect(DocumentItemSelect):
associated_model=Organization),
validators=[valid_id(Organization)])
history_creator = forms.IntegerField(
- label=_(u"Created by"),
+ label=_("Created by"),
widget=widgets.JQueryAutoComplete(
reverse_lazy('autocomplete-person',
args=['0', 'user']),
associated_model=Person),
validators=[valid_id(Person)])
history_modifier = forms.IntegerField(
- label=_(u"Modified by"),
+ label=_("Modified by"),
widget=widgets.JQueryAutoComplete(
reverse_lazy('autocomplete-person',
args=['0', 'user']),
@@ -155,8 +155,8 @@ class FileFormMultiSelection(LockForm, MultiSearchForm):
validators=[valid_ids(models.File)])
-DATE_SOURCE = (('creation', _(u"Creation date")),
- ("reception", _(u"Reception date")))
+DATE_SOURCE = (('creation', _("Creation date")),
+ ("reception", _("Reception date")))
class DashboardForm(IshtarForm):
@@ -171,9 +171,9 @@ class DashboardForm(IshtarForm):
saisine_type = forms.ChoiceField(
label=_("Saisine type"), choices=[], required=False)
after = forms.DateField(
- label=_(u"Date after"), widget=DatePicker, required=False)
+ label=_("Date after"), widget=DatePicker, required=False)
before = forms.DateField(
- label=_(u"Date before"), widget=DatePicker, required=False)
+ label=_("Date before"), widget=DatePicker, required=False)
def __init__(self, *args, **kwargs):
if 'prefix' not in kwargs:
@@ -230,9 +230,9 @@ class FileFormGeneral(ManageOldType):
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"),
+ label=_("Other reference"), max_length=60, required=False)
+ name = forms.CharField(label=_("Name"), required=False, max_length=100)
+ creation_date = forms.DateField(label=_("Creation date"),
initial=get_now, widget=DatePicker)
file_type = forms.ChoiceField(label=_("File type"), choices=[])
related_file = forms.IntegerField(
@@ -240,11 +240,11 @@ class FileFormGeneral(ManageOldType):
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,
+ comment = forms.CharField(label=_("Comment"), widget=forms.Textarea,
required=False)
total_surface = forms.FloatField(
required=False, widget=widgets.AreaWidget,
- label=_(u"Total surface (m2)"),
+ label=_("Total surface (m2)"),
validators=[validators.MinValueValidator(0),
validators.MaxValueValidator(999999999)])
address = forms.CharField(label=_("Main address"), widget=forms.Textarea)
@@ -262,16 +262,16 @@ class FileFormGeneral(ManageOldType):
.exclude(internal_reference='').order_by('-pk')
if q.count() and 'internal_reference' in self.fields:
lbl = self.fields['internal_reference'].label
- lbl += _(u"<br/>(last recorded: %s)") % (
+ lbl += _("<br/>(last recorded: %s)") % (
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}))
+ label=_("Year"), widget=forms.TextInput(attrs={'readonly': True}))
numeric_reference = forms.IntegerField(
- label=_(u"Numeric reference"), widget=forms.TextInput())
+ label=_("Numeric reference"), widget=forms.TextInput())
id = forms.IntegerField(' ', widget=forms.HiddenInput, required=False)
def clean(self):
@@ -284,13 +284,13 @@ class FileFormGeneralRO(FileFormGeneral):
.exclude(pk=pk)
if numeric_reference and q.count():
raise forms.ValidationError(
- _(u"Another file with this numeric id exists."))
+ _("Another file with this numeric id exists."))
return cleaned_data
ParcelFormset = formset_factory(ParcelForm, can_delete=True,
formset=ParcelFormSet)
-ParcelFormset.form_label = _(u"Parcels")
+ParcelFormset.form_label = _("Parcels")
ParcelFormset.form_admin_name = _("Archaeological file - 020 - Parcel")
ParcelFormset.form_slug = "file-020-parcels"
@@ -325,20 +325,20 @@ class FileFormPreventive(ManageOldType, forms.Form):
]},
associated_model=Person, new=True),
validators=[valid_id(Person)])
- permit_type = forms.ChoiceField(label=_(u"Permit type"), required=False,
+ permit_type = forms.ChoiceField(label=_("Permit type"), required=False,
choices=[])
permit_reference = forms.CharField(
- label=_(u"Permit reference"), required=False,
+ label=_("Permit reference"), required=False,
validators=[validators.MaxLengthValidator(60)])
total_developed_surface = forms.FloatField(
- widget=widgets.AreaWidget, label=_(u"Total developed surface (m2)"),
+ widget=widgets.AreaWidget, label=_("Total developed surface (m2)"),
required=False, validators=[validators.MinValueValidator(0),
validators.MaxValueValidator(999999999)])
if settings.COUNTRY == 'fr':
- saisine_type = forms.ChoiceField(label=_(u"Saisine type"),
+ saisine_type = forms.ChoiceField(label=_("Saisine type"),
choices=[])
reception_date = forms.DateField(
- label=_(u"Reception date"), initial=get_now, widget=DatePicker)
+ label=_("Reception date"), initial=get_now, widget=DatePicker)
def __init__(self, *args, **kwargs):
super(FileFormPreventive, self).__init__(*args, **kwargs)
@@ -393,19 +393,19 @@ class FileFormResearch(CustomForm, ManageOldType, forms.Form):
validators=[valid_id(Organization)], required=False,
)
if settings.COUNTRY == 'fr':
- cira_advised = forms.NullBooleanField(label=u"Passage en CIRA",
+ cira_advised = forms.NullBooleanField(label="Passage en CIRA",
required=False)
research_comment = forms.CharField(
- label=_(u"Comment"), widget=forms.Textarea, required=False)
+ label=_("Comment"), widget=forms.Textarea, required=False)
if settings.COUNTRY == 'fr':
mh_register = forms.NullBooleanField(
- label=u"Sur Monument Historique classé", required=False)
+ label="Sur Monument Historique classé", required=False)
mh_listing = forms.NullBooleanField(
- label=u"Sur Monument Historique inscrit", required=False)
+ label="Sur Monument Historique inscrit", required=False)
classified_area = forms.NullBooleanField(
- label=_(u"Classified area"), required=False)
+ label=_("Classified area"), required=False)
protected_area = forms.NullBooleanField(
- label=_(u"Protected area"), required=False)
+ label=_("Protected area"), required=False)
def __init__(self, *args, **kwargs):
super(FileFormResearch, self).__init__(*args, **kwargs)
@@ -420,34 +420,34 @@ class FileFormResearch(CustomForm, ManageOldType, forms.Form):
class FinalFileClosingForm(FinalForm):
confirm_msg = " "
- confirm_end_msg = _(u"Would you like to close this archaeological file?")
+ confirm_end_msg = _("Would you like to close this archaeological file?")
class FinalFileDeleteForm(FinalForm):
confirm_msg = " "
- confirm_end_msg = _(u"Would you like to delete this archaeological file ?")
+ confirm_end_msg = _("Would you like to delete this archaeological file ?")
class AdministrativeActFileModifySelect(TableSelect):
_model = AdministrativeAct
search_vector = forms.CharField(
- label=_(u"Full text search"), widget=widgets.SearchWidget(
+ label=_("Full text search"), widget=widgets.SearchWidget(
'archaeological-operations', 'administrativeact',
'administrativeactfile',
))
year = forms.IntegerField(label=_("Year"))
index = forms.IntegerField(label=_("Index"))
if settings.COUNTRY == 'fr':
- ref_sra = forms.CharField(label=u"Référence SRA",
+ ref_sra = forms.CharField(label="Référence SRA",
max_length=15)
act_type = forms.ChoiceField(label=_("Act type"), choices=[])
- act_object = forms.CharField(label=_(u"Object (full text search)"),
+ act_object = forms.CharField(label=_("Object (full text search)"),
max_length=300)
operation__towns = get_town_field()
if settings.ISHTAR_DPTS:
operation__towns__numero_insee__startswith = forms.ChoiceField(
- label=_(u"Department"), choices=[])
+ label=_("Department"), choices=[])
def __init__(self, *args, **kwargs):
super(AdministrativeActFileModifySelect, self).__init__(*args,
@@ -467,33 +467,33 @@ class AdministrativeActFileSelect(TableSelect):
_model = AdministrativeAct
search_vector = forms.CharField(
- label=_(u"Full text search"), widget=widgets.SearchWidget(
+ label=_("Full text search"), widget=widgets.SearchWidget(
'archaeological-operations', 'administrativeact',
'administrativeactfile',
))
year = forms.IntegerField(label=_("Year"))
index = forms.IntegerField(label=_("Index"))
if settings.COUNTRY == 'fr':
- ref_sra = forms.CharField(label=u"Autre référence",
+ ref_sra = forms.CharField(label="Autre référence",
max_length=15)
act_type = forms.ChoiceField(label=_("Act type"), choices=[])
- indexed = forms.NullBooleanField(label=_(u"Indexed?"))
+ indexed = forms.NullBooleanField(label=_("Indexed?"))
associated_file__towns = get_town_field()
- parcel = forms.CharField(label=_(u"Parcel"))
+ parcel = forms.CharField(label=_("Parcel"))
if settings.ISHTAR_DPTS:
associated_file__towns__numero_insee__startswith = forms.ChoiceField(
- label=_(u"Department"), choices=[])
- act_object = forms.CharField(label=_(u"Object"),
+ label=_("Department"), choices=[])
+ act_object = forms.CharField(label=_("Object"),
max_length=300)
signature_date_before = forms.DateField(
- label=_(u"Signature date before"), widget=DatePicker)
+ label=_("Signature date before"), widget=DatePicker)
signature_date_after = forms.DateField(
- label=_(u"Signature date after"), widget=DatePicker)
+ label=_("Signature date after"), widget=DatePicker)
associated_file__name = forms.CharField(
- label=_(u"File name"), max_length=200)
+ label=_("File name"), max_length=200)
associated_file__general_contractor = forms.IntegerField(
- label=_(u"General contractor"),
+ label=_("General contractor"),
widget=widgets.JQueryAutoComplete(
reverse_lazy(
'autocomplete-person',
@@ -501,7 +501,7 @@ class AdministrativeActFileSelect(TableSelect):
associated_model=Person),
validators=[valid_id(Person)])
associated_file__general_contractor__attached_to = forms.IntegerField(
- label=_(u"Organization of general contractor"),
+ label=_("Organization of general contractor"),
widget=widgets.JQueryAutoComplete(
reverse_lazy(
'autocomplete-organization',
@@ -514,7 +514,7 @@ class AdministrativeActFileSelect(TableSelect):
associated_file__internal_reference = forms.CharField(
max_length=200, label=_("File other reference"))
associated_file__in_charge = forms.IntegerField(
- label=_(u"File in charge"),
+ label=_("File in charge"),
widget=widgets.JQueryAutoComplete(
reverse_lazy(
'autocomplete-person',
@@ -524,7 +524,7 @@ class AdministrativeActFileSelect(TableSelect):
associated_file__permit_reference = forms.CharField(
max_length=200, label=_("File permit reference"))
history_creator = forms.IntegerField(
- label=_(u"Created by"),
+ label=_("Created by"),
widget=widgets.JQueryAutoComplete(
reverse_lazy(
'autocomplete-person',
@@ -532,7 +532,7 @@ class AdministrativeActFileSelect(TableSelect):
associated_model=Person),
validators=[valid_id(Person)])
history_modifier = forms.IntegerField(
- label=_(u"Modified by"),
+ label=_("Modified by"),
widget=widgets.JQueryAutoComplete(
reverse_lazy('autocomplete-person',
args=['0', 'user']),
@@ -576,9 +576,9 @@ class AdministrativeActFileModifyFormSelection(
class AdministrativeActFileForm(AdministrativeActForm):
- form_admin_name = _(u"Archaeological file - Administrative act - General")
+ form_admin_name = _("Archaeological file - Administrative act - General")
form_slug = "file-adminact-general"
- act_type = forms.ChoiceField(label=_(u"Act type"), choices=[])
+ act_type = forms.ChoiceField(label=_("Act type"), choices=[])
TYPES = [
FieldType('act_type', ActType,
diff --git a/archaeological_files/ishtar_menu.py b/archaeological_files/ishtar_menu.py
index 889d27287..7c5f870a6 100644
--- a/archaeological_files/ishtar_menu.py
+++ b/archaeological_files/ishtar_menu.py
@@ -30,47 +30,47 @@ from . import models
MENU_SECTIONS = [
(20,
SectionItem(
- 'file_management', _(u"Archaeological file"),
+ 'file_management', _("Archaeological file"),
profile_restriction='files',
css='menu-file',
childs=[
MenuItem(
- 'file_search', _(u"Search"),
+ 'file_search', _("Search"),
model=models.File,
access_controls=['view_file', 'view_own_file']),
MenuItem(
- 'file_creation', _(u"Creation"),
+ 'file_creation', _("Creation"),
model=models.File,
access_controls=['add_file', 'add_own_file']),
MenuItem(
- 'file_modification', _(u"Modification"),
+ 'file_modification', _("Modification"),
model=models.File,
access_controls=['change_file', 'change_own_file']),
MenuItem(
- 'file_closing', _(u"Closing"),
+ 'file_closing', _("Closing"),
model=models.File,
access_controls=['close_file']),
MenuItem(
- 'file_deletion', _(u"Deletion"),
+ 'file_deletion', _("Deletion"),
model=models.File,
access_controls=['delete_file', 'delete_own_file']),
SectionItem(
- 'admin_act_files', _(u"Administrative act"),
+ 'admin_act_files', _("Administrative act"),
childs=[
MenuItem('file_administrativeactfil_search',
- _(u"Search"),
+ _("Search"),
model=AdministrativeAct,
access_controls=['change_administrativeact']),
MenuItem('file_administrativeactfil',
- _(u"Creation"),
+ _("Creation"),
model=AdministrativeAct,
access_controls=['change_administrativeact']),
MenuItem('file_administrativeactfil_modification',
- _(u"Modification"),
+ _("Modification"),
model=AdministrativeAct,
access_controls=['change_administrativeact']),
MenuItem('file_administrativeactfil_deletion',
- _(u"Deletion"),
+ _("Deletion"),
model=AdministrativeAct,
access_controls=['change_administrativeact']),
],)]),),
@@ -78,29 +78,29 @@ MENU_SECTIONS = [
"""
(100,
SectionItem(
- 'dashboard', _(u"Dashboard"),
+ 'dashboard', _("Dashboard"),
profile_restriction='files',
css='menu-file',
- childs=[MenuItem('dashboard_main', _(u"General informations"),
+ childs=[MenuItem('dashboard_main', _("General informations"),
model=models.File,
access_controls=['change_file', 'change_own_file']),
- MenuItem('dashboard_file', _(u"Archaeological files"),
+ MenuItem('dashboard_file', _("Archaeological files"),
model=models.File,
access_controls=['change_file', 'change_own_file']),
]),
),
- SectionItem('dashboard', _(u"Dashboard"),
+ SectionItem('dashboard', _("Dashboard"),
childs=[
- MenuItem('dashboard_main', _(u"General informations"),
+ MenuItem('dashboard_main', _("General informations"),
model=models.File,
access_controls=['change_file', 'change_own_file']),
- MenuItem('dashboard_file', _(u"Archaeological files"),
+ MenuItem('dashboard_file', _("Archaeological files"),
model=models.File,
access_controls=['change_file', 'change_own_file']),
- #MenuItem('dashboard_treatment', _(u"Treatments"),
+ #MenuItem('dashboard_treatment', _("Treatments"),
# model=models.Treatment,
# access_controls=['change_treatment',]),
- #MenuItem('dashboard_warehouse', _(u"Warehouses"),
+ #MenuItem('dashboard_warehouse', _("Warehouses"),
# model=models.Warehouse,
# access_controls=['change_warehouse',]),
]),
diff --git a/archaeological_files/lookups.py b/archaeological_files/lookups.py
index dab3fb38c..a96974c9f 100644
--- a/archaeological_files/lookups.py
+++ b/archaeological_files/lookups.py
@@ -20,4 +20,4 @@ class FileLookup(LookupChannel):
return self.model.objects.filter(query).order_by('cached_label')[:20]
def format_item_display(self, item):
- return u"<span class='ajax-label'>%s</span>" % item.cached_label
+ return "<span class='ajax-label'>%s</span>" % item.cached_label
diff --git a/archaeological_files/models.py b/archaeological_files/models.py
index bef7d53a1..5b2c89e16 100644
--- a/archaeological_files/models.py
+++ b/archaeological_files/models.py
@@ -47,8 +47,8 @@ from archaeological_operations.models import get_values_town_related, \
class FileType(GeneralType):
class Meta:
- verbose_name = _(u"Archaeological file type")
- verbose_name_plural = _(u"Archaeological file types")
+ verbose_name = _("Archaeological file type")
+ verbose_name_plural = _("Archaeological file types")
ordering = ('label',)
@classmethod
@@ -67,8 +67,8 @@ post_delete.connect(post_save_cache, sender=FileType)
class PermitType(GeneralType):
class Meta:
- verbose_name = _(u"Permit type")
- verbose_name_plural = _(u"Permit types")
+ verbose_name = _("Permit type")
+ verbose_name_plural = _("Permit types")
ordering = ('label',)
@@ -164,7 +164,7 @@ class File(ClosedItem, DocumentItem, BaseHistorizedItem, CompleteIdentifierItem,
]
COL_LABELS = {
- 'towns_label': _(u"Towns"),
+ 'towns_label': _("Towns"),
}
REVERSED_BOOL_FIELDS = [
@@ -237,7 +237,7 @@ class File(ClosedItem, DocumentItem, BaseHistorizedItem, CompleteIdentifierItem,
),
'general_contractor__attached_to': SearchAltName(
pgettext_lazy("key for text search",
- u"general-contractor-organization"),
+ "general-contractor-organization"),
'general_contractor__attached_to__cached_label__iexact'
),
}
@@ -283,7 +283,7 @@ class File(ClosedItem, DocumentItem, BaseHistorizedItem, CompleteIdentifierItem,
verbose_name=_("Responsible for planning service"),
on_delete=models.SET_NULL,) # service instructeur - personne
raw_town_planning_service = models.CharField(
- _(u"Planning service (raw)"), max_length=200,
+ _("Planning service (raw)"), max_length=200,
blank=True, null=True)
planning_service = models.ForeignKey(
Organization,
@@ -320,14 +320,14 @@ class File(ClosedItem, DocumentItem, BaseHistorizedItem, CompleteIdentifierItem,
saisine_type = models.ForeignKey(
SaisineType, blank=True, null=True,
on_delete=models.SET_NULL,
- verbose_name=u"Type de saisine")
+ verbose_name="Type de saisine")
instruction_deadline = models.DateField(_(u'Instruction deadline'),
blank=True, null=True)
- total_surface = models.FloatField(_(u"Total surface (m2)"),
+ total_surface = models.FloatField(_("Total surface (m2)"),
blank=True, null=True)
total_developed_surface = models.FloatField(
- _(u"Total developed surface (m2)"), blank=True, null=True)
- locality = models.CharField(_(u"Locality"),
+ _("Total developed surface (m2)"), blank=True, null=True)
+ locality = models.CharField(_("Locality"),
max_length=100, null=True, blank=True)
address = models.TextField(_("Main address"), blank=True, default="")
postal_code = models.CharField(_("Main address - postal code"),
@@ -335,34 +335,34 @@ class File(ClosedItem, DocumentItem, BaseHistorizedItem, CompleteIdentifierItem,
comment = models.TextField(_("Comment"), blank=True, default="")
# research archaeology -->
departments = models.ManyToManyField(
- Department, verbose_name=_(u"Departments"), blank=True)
+ Department, verbose_name=_("Departments"), blank=True)
requested_operation_type = models.ForeignKey(
OperationType, related_name='+',
on_delete=models.SET_NULL,
- null=True, blank=True, verbose_name=_(u"Requested operation type"))
+ null=True, blank=True, verbose_name=_("Requested operation type"))
organization = models.ForeignKey(
- Organization, blank=True, null=True, verbose_name=_(u"Organization"),
+ Organization, blank=True, null=True, verbose_name=_("Organization"),
related_name='files', on_delete=models.SET_NULL)
scientist = models.ForeignKey(
Person, blank=True, null=True, related_name='scientist',
- on_delete=models.SET_NULL, verbose_name=_(u"Scientist in charge"))
+ on_delete=models.SET_NULL, verbose_name=_("Scientist in charge"))
research_comment = models.TextField(
_("Research archaeology comment"), blank=True, default="")
classified_area = models.NullBooleanField(
- _(u"Classified area"), blank=True, null=True)
+ _("Classified area"), blank=True, null=True)
protected_area = models.NullBooleanField(
- _(u"Protected area"), blank=True, null=True)
+ _("Protected area"), blank=True, null=True)
if settings.COUNTRY == 'fr':
cira_advised = models.NullBooleanField(
- u"Passage en CIRA", blank=True, null=True)
+ "Passage en CIRA", blank=True, null=True)
mh_register = models.NullBooleanField(
- u"Sur Monument Historique classé", blank=True, null=True)
+ "Sur Monument Historique classé", blank=True, null=True)
mh_listing = models.NullBooleanField(
- u"Sur Monument Historique inscrit", blank=True, null=True)
+ "Sur Monument Historique inscrit", blank=True, null=True)
# <-- research archaeology
documents = models.ManyToManyField(
- Document, related_name="files", verbose_name=_(u"Documents"),
+ Document, related_name="files", verbose_name=_("Documents"),
blank=True)
cached_label = models.TextField(
@@ -380,15 +380,15 @@ class File(ClosedItem, DocumentItem, BaseHistorizedItem, CompleteIdentifierItem,
]
class Meta:
- verbose_name = _(u"Archaeological file")
- verbose_name_plural = _(u"Archaeological files")
+ verbose_name = _("Archaeological file")
+ verbose_name_plural = _("Archaeological files")
permissions = (
- ("view_file", u"Can view all Archaeological files"),
- ("view_own_file", u"Can view own Archaeological file"),
- ("add_own_file", u"Can add own Archaeological file"),
- ("change_own_file", u"Can change own Archaeological file"),
- ("delete_own_file", u"Can delete own Archaeological file"),
- ("close_file", u"Can close File"),
+ ("view_file", "Can view all Archaeological files"),
+ ("view_own_file", "Can view own Archaeological file"),
+ ("add_own_file", "Can add own Archaeological file"),
+ ("change_own_file", "Can change own Archaeological file"),
+ ("delete_own_file", "Can delete own Archaeological file"),
+ ("close_file", "Can close File"),
)
ordering = ('cached_label',)
indexes = [
@@ -398,22 +398,22 @@ class File(ClosedItem, DocumentItem, BaseHistorizedItem, CompleteIdentifierItem,
@classmethod
def _get_department_code(cls, value):
if not settings.ISHTAR_DPTS:
- return u""
+ return ""
for k, v in settings.ISHTAR_DPTS:
if v.lower() == value:
return k
- return u""
+ return ""
def _get_base_image_path(self):
- return u"{}/{}".format(self.SLUG, self.reference or self.short_label)
+ return "{}/{}".format(self.SLUG, self.reference or self.short_label)
@property
def short_class_name(self):
- return _(u"FILE")
+ return _("FILE")
@property
def full_internal_ref(self):
- return u"{}{}".format(settings.ISHTAR_FILE_PREFIX or '',
+ return "{}{}".format(settings.ISHTAR_FILE_PREFIX or '',
self.external_id or '')
@property
@@ -455,7 +455,7 @@ class File(ClosedItem, DocumentItem, BaseHistorizedItem, CompleteIdentifierItem,
address = ''
if self.general_contractor:
if self.general_contractor.name:
- address = u" ".join([
+ address = " ".join([
str(getattr(self.general_contractor, key))
for key in ('title', 'surname', 'name')
if getattr(self.general_contractor, key)])
@@ -472,12 +472,12 @@ class File(ClosedItem, DocumentItem, BaseHistorizedItem, CompleteIdentifierItem,
if self.general_contractor and self.general_contractor.address:
address = self.general_contractor.address
if self.general_contractor.address_complement:
- address += u" " + self.general_contractor.address_complement
+ address += " " + self.general_contractor.address_complement
if not address and self.corporation_general_contractor and\
self.corporation_general_contractor.address:
address = self.corporation_general_contractor.address
if self.corporation_general_contractor.address_complement:
- address += u" " + \
+ address += " " + \
self.corporation_general_contractor.address_complement
return address
@@ -485,13 +485,13 @@ class File(ClosedItem, DocumentItem, BaseHistorizedItem, CompleteIdentifierItem,
def general_contractor_address_3(self):
address = ''
if self.general_contractor and self.general_contractor.postal_code:
- address = u" ".join([
+ address = " ".join([
getattr(self.general_contractor, key)
for key in ('postal_code', 'town')
if getattr(self.general_contractor, key)])
if not address and self.corporation_general_contractor and\
self.corporation_general_contractor.address:
- address = u" ".join([
+ address = " ".join([
getattr(self.corporation_general_contractor, key)
for key in ('postal_code', 'town')
if getattr(self.corporation_general_contractor, key)])
@@ -576,7 +576,7 @@ class File(ClosedItem, DocumentItem, BaseHistorizedItem, CompleteIdentifierItem,
@property
def reference(self):
- return self.external_id or u""
+ return self.external_id or ""
def _generate_cached_label(self):
items = [self.get_town_label(), self.reference]
@@ -595,7 +595,7 @@ class File(ClosedItem, DocumentItem, BaseHistorizedItem, CompleteIdentifierItem,
elif self.towns.count() == 1:
lbl = self.towns.all()[0].name
elif self.towns.count() == 0:
- lbl = str(_(u"No town"))
+ lbl = str(_("No town"))
return lbl
def get_department(self):
@@ -632,7 +632,7 @@ class File(ClosedItem, DocumentItem, BaseHistorizedItem, CompleteIdentifierItem,
@property
def town_list(self):
- return u", ".join([str(tw) for tw in self.towns.all()])
+ return ", ".join([str(tw) for tw in self.towns.all()])
def total_surface_ha(self):
if self.total_surface:
@@ -789,8 +789,8 @@ class FileByDepartment(models.Model):
DELETE_SQL = """
DROP VIEW IF EXISTS file_department;
"""
- file = models.ForeignKey(File, verbose_name=_(u"File"))
- department = models.ForeignKey(Department, verbose_name=_(u"Department"),
+ file = models.ForeignKey(File, verbose_name=_("File"))
+ department = models.ForeignKey(Department, verbose_name=_("Department"),
on_delete=models.DO_NOTHING,
blank=True, null=True)
diff --git a/archaeological_files/views.py b/archaeological_files/views.py
index f94de1cb1..dcd1387f9 100644
--- a/archaeological_files/views.py
+++ b/archaeological_files/views.py
@@ -110,7 +110,7 @@ def dashboard_file(request, *args, **kwargs):
file_search_wizard = wizards.FileSearch.as_view(
[('general-file_search', forms.FileFormSelection)],
- label=_(u"File search"), url_name='file_search',)
+ label=_("File search"), url_name='file_search',)
file_creation_wizard = wizards.FileWizard.as_view(
[('general-file_creation', forms.FileFormGeneral),
@@ -119,7 +119,7 @@ file_creation_wizard = wizards.FileWizard.as_view(
('preventive-file_creation', forms.FileFormPreventive),
('research-file_creation', forms.FileFormResearch),
('final-file_creation', forms.FinalForm)],
- label=_(u"New file"),
+ label=_("New file"),
condition_dict={
'preventive-file_creation':
is_preventive('general-file_creation', models.FileType,
@@ -138,7 +138,7 @@ file_modification_wizard = wizards.FileModificationWizard.as_view(
('preventive-file_modification', forms.FileFormPreventive),
('research-file_modification', forms.FileFormResearch),
('final-file_modification', forms.FinalForm)],
- label=_(u"File modification"),
+ label=_("File modification"),
condition_dict={
'preventive-file_modification':
is_preventive('general-file_modification',
@@ -164,12 +164,12 @@ file_closing_wizard = wizards.FileClosingWizard.as_view(
[('selec-file_closing', forms.FileFormSelection),
('date-file_closing', ClosingDateFormSelection),
('final-file_closing', forms.FinalFileClosingForm)],
- label=_(u"File closing"), url_name='file_closing',)
+ label=_("File closing"), url_name='file_closing',)
file_deletion_wizard = wizards.FileDeletionWizard.as_view(
[('selec-file_deletion', forms.FileFormMultiSelection),
('final-file_deletion', forms.FinalFileDeleteForm)],
- label=_(u"File deletion"),
+ label=_("File deletion"),
url_name='file_deletion',)
@@ -186,7 +186,7 @@ file_administrativeactfile_search_wizard = \
SearchWizard.as_view([
('selec-file_administrativeactfile_search',
forms.AdministrativeActFileFormSelection)],
- label=_(u"File: search administrative act"),
+ label=_("File: search administrative act"),
url_name='file_administrativeactfile_search',)
file_administrativeactfile_wizard = \
@@ -195,7 +195,7 @@ file_administrativeactfile_wizard = \
('administrativeact-file_administrativeactfile',
forms.AdministrativeActFileForm),
('final-file_administrativeactfile', forms.FinalForm)],
- label=_(u"File: new administrative act"),
+ label=_("File: new administrative act"),
url_name='file_administrativeactfile',)
file_administrativeactfile_modification_wizard = \
@@ -205,7 +205,7 @@ file_administrativeactfile_modification_wizard = \
('administrativeact-file_administrativeactfile_modification',
forms.AdministrativeActFileModifForm),
('final-file_administrativeactfile_modification', forms.FinalForm)],
- label=_(u"File: administrative act modification"),
+ label=_("File: administrative act modification"),
url_name='file_administrativeactfile_modification',)
@@ -231,7 +231,7 @@ file_administrativeactfile_deletion_wizard = \
forms.AdministrativeActFileFormSelection),
('final-file_administrativeactfile_deletion',
FinalAdministrativeActDeleteForm)],
- label=_(u"File: administrative act deletion"),
+ label=_("File: administrative act deletion"),
url_name='file_administrativeactfile_deletion',)
diff --git a/archaeological_files/wizards.py b/archaeological_files/wizards.py
index c208dc097..c259effbe 100644
--- a/archaeological_files/wizards.py
+++ b/archaeological_files/wizards.py
@@ -145,7 +145,7 @@ class FileAdministrativeActWizard(OperationAdministrativeActWizard):
file_id = self.session_get_value(form_key, "pk")
try:
return (
- (_(u"Archaeological file"),
+ (_("Archaeological file"),
str(models.File.objects.get(pk=file_id))),)
except models.File.DoesNotExist:
return
@@ -155,7 +155,7 @@ class FileAdministrativeActWizard(OperationAdministrativeActWizard):
admin = AdministrativeAct.objects.get(pk=admin_id)
if not admin.associated_file:
return
- return ((_(u"Archaeological file"),
+ return ((_("Archaeological file"),
str(admin.associated_file)),)
except AdministrativeAct.DoesNotExist:
return
diff --git a/archaeological_files_pdl/forms.py b/archaeological_files_pdl/forms.py
index d4cc749a4..54cc51dde 100644
--- a/archaeological_files_pdl/forms.py
+++ b/archaeological_files_pdl/forms.py
@@ -43,7 +43,7 @@ from bootstrap_datepicker.widgets import DatePicker
class FileFormGeneral(CustomForm, ManageOldType):
form_label = _("General")
- form_admin_name = _(u"Archaeological file - 010 - General")
+ form_admin_name = _("Archaeological file - 010 - General")
form_slug = "file-010-general"
associated_models = {'file_type': models.FileType}
file_type = forms.ChoiceField(label=_("File type"), choices=[])
@@ -69,14 +69,14 @@ class FileFormGeneral(CustomForm, ManageOldType):
class FileFormPreventiveType(CustomForm, ManageOldType, forms.Form):
- form_label = u"Saisine"
- form_admin_name = _(u"Archaeological file - 013 - Preventive - Saisine")
+ form_label = "Saisine"
+ form_admin_name = _("Archaeological file - 013 - Preventive - Saisine")
form_slug = "file-013-preventivesaisine"
associated_models = {'saisine_type': models.SaisineType,
'permit_type': models.PermitType}
- permit_type = forms.ChoiceField(label=_(u"Permit type"), required=False,
+ permit_type = forms.ChoiceField(label=_("Permit type"), required=False,
choices=[])
- saisine_type = forms.ChoiceField(label=_(u"Saisine type"),
+ saisine_type = forms.ChoiceField(label=_("Saisine type"),
choices=[])
TYPES = [
FieldType('saisine_type', models.SaisineType),
@@ -90,14 +90,14 @@ class FileFormPreventiveType(CustomForm, ManageOldType, forms.Form):
class FileFormPlanning(CustomForm, ManageOldType):
- form_label = _(u"Planning")
- form_admin_name = _(u"Archaeological file - 017 - Preventive - Planning")
+ form_label = _("Planning")
+ form_admin_name = _("Archaeological file - 017 - Preventive - Planning")
form_slug = "file-017-preventiveplanning"
base_models = ['town', 'department']
associated_models = {'town': Town, 'department': Department}
HEADERS = {}
HEADERS['town'] = FormHeader(_("Localisation"))
- name = forms.CharField(label=_(u"Planning name"), required=False,
+ name = forms.CharField(label=_("Planning name"), required=False,
max_length=100)
town = widgets.Select2MultipleField(
model=Town, label=_("Towns"), required=False, remote=True)
@@ -105,48 +105,48 @@ class FileFormPlanning(CustomForm, ManageOldType):
model=Department, label=_("Departments"), required=False,
help_text=_("Only relevant when no town is provided.")
)
- locality = forms.CharField(label=_(u"Locality"), max_length=100,
+ locality = forms.CharField(label=_("Locality"), max_length=100,
required=False)
address = forms.CharField(
- label=_(u"Address (number/street)"),
- widget=forms.Textarea(attrs={"placeholder": _(u"Number/street")}),
+ label=_("Address (number/street)"),
+ widget=forms.Textarea(attrs={"placeholder": _("Number/street")}),
required=False)
- postal_code = forms.CharField(label=_(u"Postal code"), max_length=10,
+ postal_code = forms.CharField(label=_("Postal code"), max_length=10,
required=False)
HEADERS['total_surface'] = FormHeader(_("Surfaces"))
total_surface = forms.FloatField(
required=False,
widget=widgets.AreaWidget,
- label=_(u"Total surface (m2)"),
+ label=_("Total surface (m2)"),
validators=[validators.MinValueValidator(0),
validators.MaxValueValidator(999999999)])
total_developed_surface = forms.FloatField(
widget=widgets.AreaWidget,
- label=_(u"Total developed surface (m2)"),
+ label=_("Total developed surface (m2)"),
required=False,
validators=[validators.MinValueValidator(0),
validators.MaxValueValidator(999999999)])
class FileFormResearchAddress(CustomForm, forms.Form):
- form_label = _(u"Address")
- form_admin_name = _(u"Archaeological file - 015 - Research - Address")
+ form_label = _("Address")
+ form_admin_name = _("Archaeological file - 015 - Research - Address")
form_slug = "file-015-researchplanning"
base_models = ['town', 'department']
associated_models = {'town': Town, 'department': Department}
- name = forms.CharField(label=_(u"Project name"), required=False,
+ name = forms.CharField(label=_("Project name"), required=False,
max_length=100)
town = widgets.Select2MultipleField(
model=Town, label=_("Towns"), required=False, remote=True)
department = widgets.Select2MultipleField(
model=Department, label=_("Departments"), required=False)
- locality = forms.CharField(label=_(u"Locality"), max_length=100,
+ locality = forms.CharField(label=_("Locality"), max_length=100,
required=False)
address = forms.CharField(
- label=_(u"Address (number/street)"),
- widget=forms.Textarea(attrs={"placeholder": _(u"Number/street")}),
+ label=_("Address (number/street)"),
+ widget=forms.Textarea(attrs={"placeholder": _("Number/street")}),
required=False)
- postal_code = forms.CharField(label=_(u"Postal code"), max_length=10,
+ postal_code = forms.CharField(label=_("Postal code"), max_length=10,
required=False)
@@ -247,7 +247,7 @@ class PersonOrgaForm(forms.Form):
class FileFormGeneralContractor(CustomForm, ManageOldType):
- form_label = _(u"General contractor")
+ form_label = _("General contractor")
form_admin_name = _("Archaeological file - 030 - General contractor")
form_slug = "file-030-generalcontractor"
extra_form_modals = ["person", "organization"]
@@ -404,7 +404,7 @@ class FileFormInstruction(CustomForm, IshtarForm):
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,
+ comment = forms.CharField(label=_("Comment"), widget=forms.Textarea,
required=False)
instruction_deadline = forms.DateField(widget=DatePicker,
required=False)
diff --git a/archaeological_files_pdl/views.py b/archaeological_files_pdl/views.py
index 0f5d0171d..a7d0dee02 100644
--- a/archaeological_files_pdl/views.py
+++ b/archaeological_files_pdl/views.py
@@ -46,7 +46,7 @@ file_creation_wizard = FileWizard.as_view([
('research-file_creation', ref_forms.FileFormResearch),
('instruction-file_creation', forms.FileFormInstruction),
('final-file_creation', ref_forms.FinalForm)],
- label=_(u"New file"),
+ label=_("New file"),
condition_dict={
'preventivetype-file_creation': file_creation_wizard_is_preventive,
'preventiveplanning-file_creation': file_creation_wizard_is_preventive,
@@ -73,7 +73,7 @@ file_modification_wizard = FileModificationWizard.as_view([
('research-file_modification', ref_forms.FileFormResearch),
('instruction-file_modification', forms.FileFormInstructionEdit),
('final-file_modification', ref_forms.FinalForm)],
- label=_(u"File modification"),
+ label=_("File modification"),
condition_dict={
'preventivetype-file_modification': file_modification_wizard_is_preventive,
'preventiveplanning-file_modification':
diff --git a/archaeological_operations/admin.py b/archaeological_operations/admin.py
index 312f2c3d3..0650d4711 100644
--- a/archaeological_operations/admin.py
+++ b/archaeological_operations/admin.py
@@ -96,9 +96,9 @@ class AdminOperationForm(forms.ModelForm):
class Meta:
model = models.Operation
exclude = []
- point = PointField(label=_(u"Point"), required=False,
+ point = PointField(label=_("Point"), required=False,
widget=OSMWidget)
- multi_polygon = MultiPolygonField(label=_(u"Multi polygon"), required=False,
+ multi_polygon = MultiPolygonField(label=_("Multi polygon"), required=False,
widget=OSMWidget)
in_charge = AutoCompleteSelectField('person', required=False)
scientist = AutoCompleteSelectField('person', required=False)
diff --git a/archaeological_operations/forms.py b/archaeological_operations/forms.py
index 3714b2e6a..b54a081d8 100644
--- a/archaeological_operations/forms.py
+++ b/archaeological_operations/forms.py
@@ -60,7 +60,7 @@ class ParcelField(forms.MultiValueField):
super(ParcelField, self).__init__(*args, **kwargs)
def compress(self, data_list):
- return u"-".join(data_list)
+ return "-".join(data_list)
class ParcelForm(IshtarForm):
@@ -73,12 +73,12 @@ class ParcelForm(IshtarForm):
year = forms.IntegerField(label=_("Year"), required=False,
validators=[validators.MinValueValidator(1000),
validators.MaxValueValidator(2100)])
- section = forms.CharField(label=_(u"Section"), required=False,
+ section = forms.CharField(label=_("Section"), required=False,
validators=[validators.MaxLengthValidator(4)])
parcel_number = forms.CharField(
- label=_(u"Parcel number"), required=False,
+ label=_("Parcel number"), required=False,
validators=[validators.MaxLengthValidator(6)])
- public_domain = forms.BooleanField(label=_(u"Public domain"),
+ public_domain = forms.BooleanField(label=_("Public domain"),
initial=False, required=False)
def __init__(self, *args, **kwargs):
@@ -122,7 +122,7 @@ class ParcelForm(IshtarForm):
not self.cleaned_data.get('public_domain'):
return {}
if not self.cleaned_data.get('town'):
- raise forms.ValidationError(_(u"Town section is required."))
+ raise forms.ValidationError(_("Town section is required."))
return self.cleaned_data
@classmethod
@@ -193,10 +193,10 @@ class ParcelForm(IshtarForm):
res += " ; "
res += town + u' : '
if c_section:
- res += u" / "
+ res += " / "
c_section = section
res += section + u' '
- res += u", ".join(parcel_numbers)
+ res += ", ".join(parcel_numbers)
if year:
res += " (%s)" % str(year)
return res
@@ -206,10 +206,10 @@ class ParcelSelectionForm(IshtarForm):
_town = forms.ChoiceField(label=_("Town"), choices=(), required=False,
validators=[valid_id(models.Town)])
_parcel_selection = forms.CharField(
- label=_(u"Full text input"),
+ label=_("Full text input"),
widget=SelectParcelWidget(attrs={'class': 'parcel-select'}),
- help_text=_(u"example: \"2013: XD:1 to 13,24,33 to 39, YD:24\" or "
- u"\"AB:24,AC:42\""),
+ help_text=_("example: \"2013: XD:1 to 13,24,33 to 39, YD:24\" or "
+ "\"AB:24,AC:42\""),
max_length=100, required=False)
@@ -373,10 +373,10 @@ class RecordRelationsForm(ManageOldType):
current_related_model = models.Operation
associated_models = {'right_record': models.Operation,
'relation_type': models.RelationType}
- relation_type = forms.ChoiceField(label=_(u"Relation type"),
+ relation_type = forms.ChoiceField(label=_("Relation type"),
choices=[], required=False)
right_record = forms.IntegerField(
- label=_(u"Operation"),
+ label=_("Operation"),
widget=widgets.JQueryAutoComplete(
reverse_lazy('autocomplete-operation'),
associated_model=models.Operation),
@@ -398,8 +398,8 @@ class RecordRelationsForm(ManageOldType):
if not nc or nc[-1][0] != rel:
nc.append([rel, []])
nc[-1][1].append(ope)
- rendered = u";".join(
- [u"{}{} {}".format(rel, _(u":"), u" ; ".join(opes))
+ rendered = ";".join(
+ ["{}{} {}".format(rel, _(":"), " ; ".join(opes))
for rel, opes in nc])
return rendered
@@ -407,16 +407,16 @@ class RecordRelationsForm(ManageOldType):
cleaned_data = self.cleaned_data
if (cleaned_data.get('relation_type', None) and
not cleaned_data.get('right_record', None)):
- raise forms.ValidationError(_(u"You should select an operation."))
+ raise forms.ValidationError(_("You should select an operation."))
if (not cleaned_data.get('relation_type', None) and
cleaned_data.get('right_record', None)):
raise forms.ValidationError(
- _(u"You should select a relation type."))
+ _("You should select a relation type."))
if self.left_record and \
str(cleaned_data.get('right_record', None)) == str(
self.left_record.pk):
raise forms.ValidationError(
- _(u"An operation cannot be related to herself."))
+ _("An operation cannot be related to herself."))
return cleaned_data
@classmethod
@@ -448,7 +448,7 @@ class RecordRelationsForm(ManageOldType):
nc[-1][1].append(ope)
result.append((_("Current relations"), cls._format_lst(current)))
if deleted:
- result.append((_("Deleted relations"), u" ; ".join(deleted)))
+ result.append((_("Deleted relations"), " ; ".join(deleted)))
return result
@@ -472,37 +472,37 @@ class RecordRelationsFormSetBase(FormSet):
RecordRelationsFormSet = formset_factory(
RecordRelationsForm, can_delete=True, formset=RecordRelationsFormSetBase)
-RecordRelationsFormSet.form_label = _(u"Relations")
-RecordRelationsFormSet.form_admin_name = _(u"Operation - 080 - Relations")
+RecordRelationsFormSet.form_label = _("Relations")
+RecordRelationsFormSet.form_admin_name = _("Operation - 080 - Relations")
RecordRelationsFormSet.form_slug = "operation-080-relations"
class OperationSelect(DocumentItemSelect):
_model = models.Operation
- form_admin_name = _(u"Operation - 001 - Search")
+ form_admin_name = _("Operation - 001 - Search")
form_slug = "operation-001-search"
search_vector = forms.CharField(
- label=_(u"Full text search"), widget=widgets.SearchWidget(
+ label=_("Full text search"), widget=widgets.SearchWidget(
'archaeological-operations', 'operation'))
year = forms.IntegerField(label=_("Year"))
- operation_code = forms.IntegerField(label=_(u"Numeric reference"))
+ operation_code = forms.IntegerField(label=_("Numeric reference"))
code_patriarche = forms.CharField(
max_length=500,
widget=OAWidget,
label="Code PATRIARCHE")
drassm_code = forms.CharField(
- label=_(u"DRASSM code"), required=False, max_length=100)
+ label=_("DRASSM code"), required=False, max_length=100)
towns = get_town_field()
towns__areas = forms.ChoiceField(label=_("Areas"), choices=[])
- parcel = forms.CharField(label=_(u"Parcel"))
+ parcel = forms.CharField(label=_("Parcel"))
if settings.ISHTAR_DPTS:
towns__numero_insee__startswith = forms.ChoiceField(
- label=_(u"Department"), choices=[])
- common_name = forms.CharField(label=_(u"Name"), max_length=30)
- address = forms.CharField(label=_(u"Address / Locality"), max_length=100)
- operation_type = forms.ChoiceField(label=_(u"Operation type"), choices=[])
- end_date = forms.NullBooleanField(label=_(u"Is open?"))
+ label=_("Department"), choices=[])
+ common_name = forms.CharField(label=_("Name"), max_length=30)
+ address = forms.CharField(label=_("Address / Locality"), max_length=100)
+ operation_type = forms.ChoiceField(label=_("Operation type"), choices=[])
+ end_date = forms.NullBooleanField(label=_("Is open?"))
in_charge = forms.IntegerField(
widget=widgets.JQueryAutoComplete(
reverse_lazy(
@@ -510,14 +510,14 @@ class OperationSelect(DocumentItemSelect):
args=[person_type_pks_lazy(['sra_agent'])]
),
associated_model=Person),
- label=_(u"In charge"))
+ label=_("In charge"))
scientist = forms.IntegerField(
widget=widgets.JQueryAutoComplete(
reverse_lazy(
'autocomplete-person-permissive',
args=[person_type_pks_lazy(['sra_agent', 'head_scientist'])]),
associated_model=Person),
- label=_(u"Scientist in charge"))
+ label=_("Scientist in charge"))
operator = forms.IntegerField(
label=_("Operator"),
widget=widgets.JQueryAutoComplete(
@@ -526,24 +526,24 @@ class OperationSelect(DocumentItemSelect):
args=[organization_type_pks_lazy(['operator'])]),
associated_model=Organization),
validators=[valid_id(Organization)])
- # operator_reference = forms.CharField(label=_(u"Operator reference"),
+ # operator_reference = forms.CharField(label=_("Operator reference"),
# max_length=20)
- remains = forms.ChoiceField(label=_(u"Remains"), choices=[])
- periods = forms.ChoiceField(label=_(u"Periods"), choices=[])
- start_before = DateField(label=_(u"Started before"))
- start_after = DateField(label=_(u"Started after"))
- end_before = DateField(label=_(u"Ended before"))
- end_after = DateField(label=_(u"Ended after"))
+ remains = forms.ChoiceField(label=_("Remains"), choices=[])
+ periods = forms.ChoiceField(label=_("Periods"), choices=[])
+ start_before = DateField(label=_("Started before"))
+ start_after = DateField(label=_("Started after"))
+ end_before = DateField(label=_("Ended before"))
+ end_after = DateField(label=_("Ended after"))
relation_types = forms.ChoiceField(
- label=_(u"Search within relations"), choices=[])
- comment = forms.CharField(label=_(u"Comment"), max_length=500)
- abstract = forms.CharField(label=_(u"Abstract (full text search)"))
+ label=_("Search within relations"), choices=[])
+ comment = forms.CharField(label=_("Comment"), max_length=500)
+ abstract = forms.CharField(label=_("Abstract (full text search)"))
scientific_documentation_comment = forms.CharField(
- label=_(u"Comment about scientific documentation"))
- record_quality_type = forms.ChoiceField(label=_(u"Record quality"))
- report_processing = forms.ChoiceField(label=_(u"Report processing"),
+ label=_("Comment about scientific documentation"))
+ record_quality_type = forms.ChoiceField(label=_("Record quality"))
+ report_processing = forms.ChoiceField(label=_("Report processing"),
choices=[])
- virtual_operation = forms.NullBooleanField(label=_(u"Virtual operation"))
+ virtual_operation = forms.NullBooleanField(label=_("Virtual operation"))
archaeological_sites = forms.IntegerField(
label=_("Archaeological site"),
widget=widgets.JQueryAutoComplete(
@@ -551,31 +551,31 @@ class OperationSelect(DocumentItemSelect):
associated_model=models.ArchaeologicalSite),
validators=[valid_id(models.ArchaeologicalSite)])
history_creator = forms.IntegerField(
- label=_(u"Created by"),
+ label=_("Created by"),
widget=widgets.JQueryAutoComplete(
reverse_lazy('autocomplete-person', args=['0', 'user']),
associated_model=Person),
validators=[valid_id(Person)])
history_modifier = forms.IntegerField(
- label=_(u"Modified by"),
+ label=_("Modified by"),
widget=widgets.JQueryAutoComplete(
reverse_lazy('autocomplete-person',
args=['0', 'user']),
associated_model=Person),
validators=[valid_id(Person)])
documentation_received = forms.NullBooleanField(
- label=_(u"Documentation received"))
+ label=_("Documentation received"))
documentation_deadline_before = DateField(
- label=_(u"Documentation deadline before"))
+ label=_("Documentation deadline before"))
documentation_deadline_after = DateField(
- label=_(u"Documentation deadline after"))
+ label=_("Documentation deadline after"))
has_finds = forms.NullBooleanField(label=_("Has finds"))
finds_received = forms.NullBooleanField(
- label=_(u"Finds received"))
+ label=_("Finds received"))
finds_deadline_before = DateField(
- label=_(u"Finds deadline before"))
+ label=_("Finds deadline before"))
finds_deadline_after = DateField(
- label=_(u"Finds deadline after"))
+ label=_("Finds deadline after"))
TYPES = [
FieldType('operation_type', models.OperationType),
@@ -608,7 +608,7 @@ class OperationSelect(DocumentItemSelect):
class OperationFormSelection(LockForm, CustomFormSearch):
SEARCH_AND_SELECT = True
- form_label = _(u"Operation search")
+ form_label = _("Operation search")
associated_models = {'pk': models.Operation}
extra_form_modals = ["person", "organization"]
currents = {'pk': models.Operation}
@@ -622,7 +622,7 @@ class OperationFormSelection(LockForm, CustomFormSearch):
class OperationFormMultiSelection(LockForm, MultiSearchForm):
- form_label = _(u"Operation search")
+ form_label = _("Operation search")
associated_models = {'pks': models.Operation}
extra_form_modals = ["person", "organization"]
pk_key = 'pks'
@@ -642,7 +642,7 @@ class OperationCodeInput(forms.TextInput):
name, value = args
base_name = '-'.join(name.split('-')[:-1])
rendered = super(OperationCodeInput, self).render(*args, **kwargs)
- js = u"""\n <script type="text/javascript"><!--//
+ js = """\n <script type="text/javascript"><!--//
function initialyse_operation_code () {
// if the form is in creation mode
if(!$("#id_%(base_name)s-pk").val()){
@@ -663,33 +663,33 @@ class OperationCodeInput(forms.TextInput):
class OperationFormFileChoice(IshtarForm):
- form_label = _(u"Associated file")
+ form_label = _("Associated file")
associated_models = {'associated_file': File, }
currents = {'associated_file': File}
associated_file = forms.IntegerField(
- label=_(u"Archaeological file"),
+ label=_("Archaeological file"),
widget=widgets.JQueryAutoComplete(
reverse_lazy('autocomplete-file'), associated_model=File),
validators=[valid_id(File)], required=False)
class OperationFormAbstract(CustomForm, IshtarForm):
- form_label = _(u"Abstract")
- form_admin_name = _(u"Operation - 090 - Abstract")
+ form_label = _("Abstract")
+ form_admin_name = _("Operation - 090 - Abstract")
form_slug = "operation-090-abstract"
abstract = forms.CharField(
- label=_(u"Abstract"),
+ label=_("Abstract"),
widget=forms.Textarea(attrs={'class': 'xlarge'}), required=False)
-SLICING = (("month", _(u"months")), ('year', _(u"years")),)
+SLICING = (("month", _("months")), ('year', _("years")),)
-DATE_SOURCE = (('creation', _(u"Creation date")),
- ("start", _(u"Start of field work")))
+DATE_SOURCE = (('creation', _("Creation date")),
+ ("start", _("Start of field work")))
PREVENTIVE_RESARCH = (('all', _('All')),
- ('preventive', _(u"Preventive")),
- ('research', _(u"Research")),)
+ ('preventive', _("Preventive")),
+ ('research', _("Research")),)
class DashboardForm(IshtarForm):
@@ -706,8 +706,8 @@ class DashboardForm(IshtarForm):
required=False)
operator = forms.ChoiceField(label=_("Operator"), choices=[],
required=False)
- after = DateField(label=_(u"Date after"), required=False)
- before = DateField(label=_(u"Date before"), required=False)
+ after = DateField(label=_("Date after"), required=False)
+ before = DateField(label=_("Date before"), required=False)
with_report = forms.BooleanField(label=_("With reports"), required=False)
with_finds = forms.BooleanField(label=_("With finds"), required=False)
@@ -762,8 +762,8 @@ class DashboardForm(IshtarForm):
class OperationFormGeneral(CustomForm, ManageOldType):
HEADERS = {}
- form_label = _(u"General")
- form_admin_name = _(u"Operation - 010 - General")
+ form_label = _("General")
+ form_admin_name = _("Operation - 010 - General")
form_slug = "operation-010-general"
extra_form_modals = ["person", "organization"]
@@ -779,19 +779,19 @@ class OperationFormGeneral(CustomForm, ManageOldType):
'spatial_reference_system': SpatialReferenceSystem,
}
pk = forms.IntegerField(required=False, widget=forms.HiddenInput)
- code_patriarche = forms.CharField(label=u"Code PATRIARCHE",
+ code_patriarche = forms.CharField(label="Code PATRIARCHE",
max_length=500,
widget=OAWidget,
required=False)
drassm_code = forms.CharField(
- label=_(u"DRASSM code"), required=False, max_length=100)
- operation_type = forms.ChoiceField(label=_(u"Operation type"),
+ label=_("DRASSM code"), required=False, max_length=100)
+ operation_type = forms.ChoiceField(label=_("Operation type"),
choices=[])
- common_name = forms.CharField(label=_(u"Generic name"), required=False,
+ common_name = forms.CharField(label=_("Generic name"), required=False,
max_length=500, widget=forms.Textarea)
- address = forms.CharField(label=_(u"Address / Locality"), required=False,
+ address = forms.CharField(label=_("Address / Locality"), required=False,
max_length=500, widget=forms.Textarea)
- year = forms.IntegerField(label=_(u"Year"),
+ year = forms.IntegerField(label=_("Year"),
initial=lambda: datetime.datetime.now().year,
validators=[validators.MinValueValidator(1000),
validators.MaxValueValidator(2100)])
@@ -820,7 +820,7 @@ class OperationFormGeneral(CustomForm, ManageOldType):
tips=lazy(get_operator_label),
associated_model=Organization, new=True),
validators=[valid_id(Organization)], required=False)
- operator_reference = forms.CharField(label=_(u"Operator reference"),
+ operator_reference = forms.CharField(label=_("Operator reference"),
required=False, max_length=20)
in_charge = forms.IntegerField(
label=_("In charge"),
@@ -838,12 +838,12 @@ class OperationFormGeneral(CustomForm, ManageOldType):
label=_("Total surface (m2)"),
validators=[validators.MinValueValidator(0),
validators.MaxValueValidator(999999999)])
- start_date = DateField(label=_(u"Start date"), required=False)
- excavation_end_date = DateField(label=_(u"Excavation end date"),
+ start_date = DateField(label=_("Start date"), required=False)
+ excavation_end_date = DateField(label=_("Excavation end date"),
required=False)
- report_delivery_date = DateField(label=_(u"Report delivery date"),
+ report_delivery_date = DateField(label=_("Report delivery date"),
required=False)
- report_processing = forms.ChoiceField(label=_(u"Report processing"),
+ report_processing = forms.ChoiceField(label=_("Report processing"),
choices=[], required=False)
if settings.COUNTRY == 'fr':
cira_date = DateField(label="Date avis CTRA/CIRA", required=False)
@@ -947,13 +947,13 @@ class OperationFormGeneral(CustomForm, ManageOldType):
and cleaned_data.get('excavation_end_date', None):
if not cleaned_data.get('start_date', None):
raise forms.ValidationError(
- _(u"If you want to set an excavation end date you "
- u"have to provide a start date."))
+ _("If you want to set an excavation end date you "
+ "have to provide a start date."))
if cleaned_data['excavation_end_date'] \
< cleaned_data['start_date']:
raise forms.ValidationError(
- _(u"The excavation end date cannot be before the start "
- u"date."))
+ _("The excavation end date cannot be before the start "
+ "date."))
# verify patriarche
code_p = self.cleaned_data.get('code_patriarche', None)
@@ -963,8 +963,8 @@ class OperationFormGeneral(CustomForm, ManageOldType):
if 'pk' in cleaned_data and cleaned_data['pk']:
ops = ops.exclude(pk=cleaned_data['pk'])
if ops.count():
- msg = u"Ce code OA a déjà été affecté à une "\
- u"autre opération"
+ msg = "Ce code OA a déjà été affecté à une "\
+ "autre opération"
raise forms.ValidationError(msg)
# manage unique operation ID
@@ -982,21 +982,21 @@ class OperationFormGeneral(CustomForm, ManageOldType):
Max('operation_code'))["operation_code__max"]
if year and max_val:
msg = _(
- u"Operation code already exists for year: %(year)d - use a "
- u"value bigger than %(last_val)d") % {
+ "Operation code already exists for year: %(year)d - use a "
+ "value bigger than %(last_val)d") % {
'year': year, 'last_val': max_val}
else:
- msg = _(u"Bad operation code")
+ msg = _("Bad operation code")
raise forms.ValidationError(msg)
return self.cleaned_data
class OperationFormModifGeneral(OperationFormGeneral):
- operation_code = forms.IntegerField(label=_(u"Operation code"),
+ operation_code = forms.IntegerField(label=_("Operation code"),
required=False)
currents = {'associated_file': File}
associated_file = forms.IntegerField(
- label=_(u"Archaeological file"),
+ label=_("Archaeological file"),
widget=widgets.JQueryAutoComplete(
reverse_lazy('autocomplete-file'),
associated_model=File),
@@ -1038,16 +1038,16 @@ class CourtOrderedSeizureForm(CustomForm, IshtarForm):
}
seizure_name = forms.CharField(
- label=_(u"Seizure name"), required=False,
+ label=_("Seizure name"), required=False,
)
official_report_number = forms.CharField(
- label=_(u"Official report number"), required=False,
+ label=_("Official report number"), required=False,
)
protagonist = forms.IntegerField(
widget=widgets.JQueryAutoComplete(
reverse_lazy('autocomplete-person-permissive'),
associated_model=Person, new=True),
- label=_(u"Protagonist"), required=False,
+ label=_("Protagonist"), required=False,
)
applicant_authority = forms.IntegerField(
widget=widgets.JQueryAutoComplete(
@@ -1064,8 +1064,8 @@ class CourtOrderedSeizureForm(CustomForm, IshtarForm):
class CollaboratorForm(CustomForm, IshtarForm):
- form_label = _(u"Collaborators")
- form_admin_name = _(u"Operation - 020 - Collaborators")
+ form_label = _("Collaborators")
+ form_admin_name = _("Operation - 020 - Collaborators")
form_slug = "operation-020-collaborators"
base_models = ['collaborator']
@@ -1080,37 +1080,37 @@ class CollaboratorForm(CustomForm, IshtarForm):
class OperationFormPreventive(CustomForm, IshtarForm):
- form_label = _(u"Preventive informations - excavation")
- form_admin_name = _(u"Operation - 033 - Preventive - Excavation")
+ form_label = _("Preventive informations - excavation")
+ form_admin_name = _("Operation - 033 - Preventive - Excavation")
form_slug = "operation-033-preventive-excavation"
- cost = forms.IntegerField(label=_(u"Cost (euros)"), required=False)
- scheduled_man_days = forms.IntegerField(label=_(u"Scheduled man-days"),
+ cost = forms.IntegerField(label=_("Cost (euros)"), required=False)
+ scheduled_man_days = forms.IntegerField(label=_("Scheduled man-days"),
required=False)
- optional_man_days = forms.IntegerField(label=_(u"Optional man-days"),
+ optional_man_days = forms.IntegerField(label=_("Optional man-days"),
required=False)
- effective_man_days = forms.IntegerField(label=_(u"Effective man-days"),
+ effective_man_days = forms.IntegerField(label=_("Effective man-days"),
required=False)
if settings.COUNTRY == 'fr':
fnap_financing = forms.FloatField(
- required=False, label=u"Pourcentage de financement FNAP",
+ required=False, label="Pourcentage de financement FNAP",
validators=[validators.MinValueValidator(0),
validators.MaxValueValidator(100)])
class OperationFormPreventiveDiag(CustomForm, IshtarForm):
form_label = _("Preventive informations - diagnostic")
- form_admin_name = _(u"Operation - 037 - Preventive - Diagnostic")
+ form_admin_name = _("Operation - 037 - Preventive - Diagnostic")
form_slug = "operation-037-preventive-diagnostic"
if settings.COUNTRY == 'fr':
zoning_prescription = forms.NullBooleanField(
- required=False, label=_(u"Prescription on zoning"))
+ required=False, label=_("Prescription on zoning"))
large_area_prescription = forms.NullBooleanField(
- required=False, label=_(u"Prescription on large area"))
+ required=False, label=_("Prescription on large area"))
geoarchaeological_context_prescription = forms.NullBooleanField(
required=False,
- label=_(u"Prescription on geoarchaeological context"))
+ label=_("Prescription on geoarchaeological context"))
class SelectedTownForm(IshtarForm):
@@ -1130,13 +1130,13 @@ class SelectedTownForm(IshtarForm):
SelectedTownFormset = formset_factory(SelectedTownForm, can_delete=True,
formset=TownFormSet)
-SelectedTownFormset.form_label = _(u"Towns")
-SelectedTownFormset.form_admin_name = _(u"Operation - 040 - Towns")
+SelectedTownFormset.form_label = _("Towns")
+SelectedTownFormset.form_admin_name = _("Operation - 040 - Towns")
SelectedTownFormset.form_slug = "operation-040-towns"
TownFormset = formset_factory(TownForm, can_delete=True, formset=TownFormSet)
TownFormset.form_label = _("Towns")
-TownFormset.form_admin_name = _(u"Operation - 040 - Towns (2)")
+TownFormset.form_admin_name = _("Operation - 040 - Towns (2)")
TownFormset.form_slug = "operation-040-towns-2"
@@ -1158,14 +1158,14 @@ class SelectedParcelForm(IshtarForm):
SelectedParcelFormSet = formset_factory(SelectedParcelForm, can_delete=True,
formset=ParcelFormSet)
SelectedParcelFormSet.form_label = _("Parcels")
-SelectedParcelFormSet.form_admin_name = _(u"Operation - 050 - Parcels")
+SelectedParcelFormSet.form_admin_name = _("Operation - 050 - Parcels")
SelectedParcelFormSet.form_slug = "operation-050-parcels"
SelectedParcelGeneralFormSet = formset_factory(ParcelForm, can_delete=True,
formset=ParcelFormSet)
SelectedParcelGeneralFormSet.form_label = _("Parcels")
SelectedParcelGeneralFormSet.form_admin_name = _(
- u"Operation - 050 - Parcels (2)")
+ "Operation - 050 - Parcels (2)")
SelectedParcelGeneralFormSet.form_slug = "operation-050-parcels-2"
"""
@@ -1195,14 +1195,14 @@ class SelectedParcelFormSet(forms.Form):
class RemainForm(CustomForm, ManageOldType, forms.Form):
- form_label = _(u"Remain types")
- form_admin_name = _(u"Operation - 060 - Remains")
+ form_label = _("Remain types")
+ form_admin_name = _("Operation - 060 - Remains")
form_slug = "operation-060-remains"
base_model = 'remain'
associated_models = {'remain': models.RemainType}
remain = widgets.Select2MultipleField(
- label=_(u"Remain type"), required=False
+ label=_("Remain type"), required=False
)
TYPES = [
@@ -1211,14 +1211,14 @@ class RemainForm(CustomForm, ManageOldType, forms.Form):
class PeriodForm(CustomForm, ManageOldType, forms.Form):
- form_label = _(u"Periods")
- form_admin_name = _(u"Operation - 070 - Periods")
+ form_label = _("Periods")
+ form_admin_name = _("Operation - 070 - Periods")
form_slug = "operation-070-periods"
base_model = 'period'
associated_models = {'period': models.Period}
period = widgets.Select2MultipleField(
- label=_(u"Period"), required=False
+ label=_("Period"), required=False
)
TYPES = [
@@ -1231,9 +1231,9 @@ class ArchaeologicalSiteForm(ManageOldType):
'cultural_attribution': models.CulturalAttributionType,
'spatial_reference_system': SpatialReferenceSystem}
HEADERS = {}
- reference = forms.CharField(label=_(u"Reference"), max_length=200)
- name = forms.CharField(label=_(u"Name"), max_length=200, required=False)
- other_reference = forms.CharField(label=_(u"Other reference"),
+ reference = forms.CharField(label=_("Reference"), max_length=200)
+ name = forms.CharField(label=_("Name"), max_length=200, required=False)
+ other_reference = forms.CharField(label=_("Other reference"),
required=False)
periods = forms.MultipleChoiceField(
label=_("Periods"), choices=[], widget=widgets.Select2Multiple,
@@ -1245,18 +1245,18 @@ class ArchaeologicalSiteForm(ManageOldType):
label=_("Cultural attributions"), choices=[],
widget=widgets.Select2Multiple,
required=False)
- HEADERS['x'] = FormHeader(_(u"Coordinates"))
- x = forms.FloatField(label=_(u"X"), required=False)
- estimated_error_x = forms.FloatField(label=_(u"Estimated error for X"),
+ HEADERS['x'] = FormHeader(_("Coordinates"))
+ x = forms.FloatField(label=_("X"), required=False)
+ estimated_error_x = forms.FloatField(label=_("Estimated error for X"),
required=False)
- y = forms.FloatField(label=_(u"Y"), required=False)
- estimated_error_y = forms.FloatField(label=_(u"Estimated error for Y"),
+ y = forms.FloatField(label=_("Y"), required=False)
+ estimated_error_y = forms.FloatField(label=_("Estimated error for Y"),
required=False)
- z = forms.FloatField(label=_(u"Z"), required=False)
- estimated_error_z = forms.FloatField(label=_(u"Estimated error for Z"),
+ z = forms.FloatField(label=_("Z"), required=False)
+ estimated_error_z = forms.FloatField(label=_("Estimated error for Z"),
required=False)
spatial_reference_system = forms.ChoiceField(
- label=_(u"Spatial Reference System"), required=False, choices=[])
+ label=_("Spatial Reference System"), required=False, choices=[])
PROFILE_FILTER = {
'mapping': [
@@ -1287,7 +1287,7 @@ class ArchaeologicalSiteForm(ManageOldType):
reference = self.cleaned_data['reference']
if models.ArchaeologicalSite.objects\
.filter(reference=reference).count():
- raise forms.ValidationError(_(u"This reference already exists."))
+ raise forms.ValidationError(_("This reference already exists."))
return reference
def save(self, user):
@@ -1345,9 +1345,9 @@ class ArchaeologicalSiteBasicForm(widgets.Select2Media, IshtarForm):
ArchaeologicalSiteFormSet = formset_factory(
ArchaeologicalSiteBasicForm, can_delete=True, formset=FormSet)
-ArchaeologicalSiteFormSet.form_label = _(u"Archaeological sites")
+ArchaeologicalSiteFormSet.form_label = _("Archaeological sites")
ArchaeologicalSiteFormSet.form_admin_name = _(
- u"Operation - 030 - Archaeological sites")
+ "Operation - 030 - Archaeological sites")
ArchaeologicalSiteFormSet.form_slug = "operation-030-archaeological-sites"
ArchaeologicalSiteFormSet.extra_form_modals = ["archaeologicalsite"]
@@ -1360,17 +1360,17 @@ class ArchaeologicalSiteSelectionForm(IshtarForm):
reverse_lazy('autocomplete-archaeologicalsite'),
associated_model=models.ArchaeologicalSite, new=True,
multiple=True),
- label=_(u"Search"))
+ label=_("Search"))
class FinalOperationClosingForm(FinalForm):
confirm_msg = " "
- confirm_end_msg = _(u"Would you like to close this operation?")
+ confirm_end_msg = _("Would you like to close this operation?")
class OperationDeletionForm(FinalForm):
confirm_msg = " "
- confirm_end_msg = _(u"Would you like to delete this operation?")
+ confirm_end_msg = _("Would you like to delete this operation?")
#########
# Sites #
@@ -1379,60 +1379,60 @@ class OperationDeletionForm(FinalForm):
class SiteSelect(DocumentItemSelect):
_model = models.ArchaeologicalSite
- form_admin_name = _(u"Archaeological site - 001 - Search")
+ form_admin_name = _("Archaeological site - 001 - Search")
form_slug = "archaeological_site-001-search"
search_vector = forms.CharField(
- label=_(u"Full text search"), widget=widgets.SearchWidget(
+ label=_("Full text search"), widget=widgets.SearchWidget(
'archaeological-operations', 'site'))
- reference = forms.CharField(label=_(u"Reference"), max_length=200,
+ reference = forms.CharField(label=_("Reference"), max_length=200,
required=False)
- name = forms.CharField(label=_(u"Name"), max_length=200, required=False)
+ name = forms.CharField(label=_("Name"), max_length=200, required=False)
other_reference = forms.CharField(label=_("Other reference"),
max_length=200, required=False)
- periods = forms.ChoiceField(label=_(u"Periods"), choices=[], required=False)
- remains = forms.ChoiceField(label=_(u"Remains"), choices=[], required=False)
+ periods = forms.ChoiceField(label=_("Periods"), choices=[], required=False)
+ remains = forms.ChoiceField(label=_("Remains"), choices=[], required=False)
cultural_attributions = forms.ChoiceField(
label=_("Cultural attribution"), choices=[], required=False)
towns = get_town_field()
towns__areas = forms.ChoiceField(label=_("Areas"), choices=[])
- comment = forms.CharField(label=_(u"Comment"), max_length=200,
+ comment = forms.CharField(label=_("Comment"), max_length=200,
required=False)
top_operation = forms.IntegerField(
- label=_(u"Top operation"), required=False,
+ label=_("Top operation"), required=False,
widget=widgets.JQueryAutoComplete(
reverse_lazy('autocomplete-operation'),
associated_model=models.Operation),
validators=[valid_id(models.Operation)])
operation = forms.IntegerField(
- label=_(u"Operation"), required=False,
+ label=_("Operation"), required=False,
widget=widgets.JQueryAutoComplete(
reverse_lazy('autocomplete-operation'),
associated_model=models.Operation),
validators=[valid_id(models.Operation)])
locality_ngi = forms.CharField(
- label=_(u"National Geographic Institute locality"), max_length=200,
+ label=_("National Geographic Institute locality"), max_length=200,
required=False)
locality_cadastral = forms.CharField(
- label=_(u"Cadastral locality"), max_length=200,
+ label=_("Cadastral locality"), max_length=200,
required=False)
affmar_number = forms.CharField(
- label=_(u"AffMar number"), required=False, max_length=100)
+ label=_("AffMar number"), required=False, max_length=100)
drassm_number = forms.CharField(
- label=_(u"DRASSM number"), required=False, max_length=100)
+ label=_("DRASSM number"), required=False, max_length=100)
shipwreck_name = forms.CharField(
- label=_(u"Shipwreck name"), max_length=200,
+ label=_("Shipwreck name"), max_length=200,
required=False)
oceanographic_service_localisation = forms.CharField(
- label=_(u"Oceanographic service localisation"), max_length=200,
+ label=_("Oceanographic service localisation"), max_length=200,
required=False)
shipwreck_code = forms.CharField(
- label=_(u"Shipwreck code"), max_length=200,
+ label=_("Shipwreck code"), max_length=200,
required=False)
- sinking_date = DateField(label=_(u"Sinking date"), required=False)
+ sinking_date = DateField(label=_("Sinking date"), required=False)
discovery_area = forms.CharField(
- label=_(u"Discovery area"), max_length=200,
+ label=_("Discovery area"), max_length=200,
required=False)
TYPES = [
FieldType('periods', models.Period),
@@ -1491,9 +1491,9 @@ class SiteFormMultiSelection(LockForm, MultiSearchForm):
class SiteForm(CustomForm, ManageOldType):
HEADERS = {}
- form_label = _(u"General")
- form_admin_name = _(u"Archaeological site - 010 - General")
- form_slug = u"archaeological_site-010-general"
+ form_label = _("General")
+ form_admin_name = _("Archaeological site - 010 - General")
+ form_slug = "archaeological_site-010-general"
associated_models = {'period': models.Period, 'remain': models.RemainType,
'spatial_reference_system': SpatialReferenceSystem,
'cultural_attribution': models.CulturalAttributionType,
@@ -1501,8 +1501,8 @@ class SiteForm(CustomForm, ManageOldType):
base_models = ["period", "remain", "collaborator", "cultural_attribution"]
pk = forms.IntegerField(required=False, widget=forms.HiddenInput)
- reference = forms.CharField(label=_(u"Reference"), max_length=200)
- name = forms.CharField(label=_(u"Name"), max_length=200, required=False)
+ reference = forms.CharField(label=_("Reference"), max_length=200)
+ name = forms.CharField(label=_("Name"), max_length=200, required=False)
other_reference = forms.CharField(label=_("Other reference"),
required=False)
period = forms.MultipleChoiceField(
@@ -1517,29 +1517,29 @@ class SiteForm(CustomForm, ManageOldType):
required=False)
collaborator = widgets.Select2MultipleField(
model=Person, label=_("Collaborators"), required=False, remote=True)
- comment = forms.CharField(label=_(u"Comment"), widget=forms.Textarea,
+ comment = forms.CharField(label=_("Comment"), widget=forms.Textarea,
required=False)
locality_ngi = forms.CharField(
- label=_(u"National Geographic Institute locality"),
+ label=_("National Geographic Institute locality"),
widget=forms.Textarea, required=False
)
locality_cadastral = forms.CharField(
- label=_(u"Cadastral locality"),
+ label=_("Cadastral locality"),
widget=forms.Textarea, required=False
)
- HEADERS['x'] = FormHeader(_(u"Coordinates"))
- x = forms.FloatField(label=_(u"X"), required=False)
- estimated_error_x = forms.FloatField(label=_(u"Estimated error for X"),
+ HEADERS['x'] = FormHeader(_("Coordinates"))
+ x = forms.FloatField(label=_("X"), required=False)
+ estimated_error_x = forms.FloatField(label=_("Estimated error for X"),
required=False)
- y = forms.FloatField(label=_(u"Y"), required=False)
- estimated_error_y = forms.FloatField(label=_(u"Estimated error for Y"),
+ y = forms.FloatField(label=_("Y"), required=False)
+ estimated_error_y = forms.FloatField(label=_("Estimated error for Y"),
required=False)
- z = forms.FloatField(label=_(u"Z"), required=False)
- estimated_error_z = forms.FloatField(label=_(u"Estimated error for Z"),
+ z = forms.FloatField(label=_("Z"), required=False)
+ estimated_error_z = forms.FloatField(label=_("Estimated error for Z"),
required=False)
spatial_reference_system = forms.ChoiceField(
- label=_(u"Spatial Reference System"), required=False, choices=[])
+ label=_("Spatial Reference System"), required=False, choices=[])
PROFILE_FILTER = {
'mapping': [
@@ -1571,15 +1571,15 @@ class SiteForm(CustomForm, ManageOldType):
if 'pk' in self.cleaned_data and self.cleaned_data['pk']:
q = q.exclude(pk=self.cleaned_data['pk'])
if q.count():
- raise forms.ValidationError(_(u"This reference already exists."))
+ raise forms.ValidationError(_("This reference already exists."))
return reference
SiteTownFormset = formset_factory(TownForm, can_delete=True,
formset=TownFormSet)
-SiteTownFormset.form_label = _(u"Towns")
-SiteTownFormset.form_admin_name = _(u"Archaeological site - 020 - Towns")
-SiteTownFormset.form_slug = u"archaeological_site-020-towns"
+SiteTownFormset.form_label = _("Towns")
+SiteTownFormset.form_admin_name = _("Archaeological site - 020 - Towns")
+SiteTownFormset.form_slug = "archaeological_site-020-towns"
def check_underwater_module(self):
@@ -1587,24 +1587,24 @@ def check_underwater_module(self):
class SiteUnderwaterForm(CustomForm, ManageOldType):
- form_label = _(u"Underwater")
- form_admin_name = _(u"Archaeological site - 030 - Underwater")
- form_slug = u"archaeological_site-030-underwater"
+ form_label = _("Underwater")
+ form_admin_name = _("Archaeological site - 030 - Underwater")
+ form_slug = "archaeological_site-030-underwater"
affmar_number = forms.CharField(
- label=_(u"AffMar number"), required=False, max_length=100)
+ label=_("AffMar number"), required=False, max_length=100)
drassm_number = forms.CharField(
- label=_(u"DRASSM number"), required=False, max_length=100)
+ label=_("DRASSM number"), required=False, max_length=100)
shipwreck_name = forms.CharField(
- label=_(u"Shipwreck name"), required=False)
+ label=_("Shipwreck name"), required=False)
shipwreck_code = forms.CharField(
- label=_(u"Shipwreck code"), required=False)
+ label=_("Shipwreck code"), required=False)
sinking_date = DateField(
- label=_(u"Sinking date"), required=False)
+ label=_("Sinking date"), required=False)
discovery_area = forms.CharField(
- label=_(u"Discovery area"), widget=forms.Textarea, required=False)
+ label=_("Discovery area"), widget=forms.Textarea, required=False)
oceanographic_service_localisation = forms.CharField(
- label=_(u"Oceanographic service localisation"),
+ label=_("Oceanographic service localisation"),
widget=forms.Textarea, required=False
)
@@ -1618,36 +1618,36 @@ class AdministrativeActOpeSelect(TableSelect):
_model = models.AdministrativeAct
search_vector = forms.CharField(
- label=_(u"Full text search"), widget=widgets.SearchWidget(
+ label=_("Full text search"), widget=widgets.SearchWidget(
'archaeological-operations', 'administrativeact',
'administrativeactop',
))
year = forms.IntegerField(label=_("Year"))
index = forms.IntegerField(label=_("Index"))
if settings.COUNTRY == 'fr':
- ref_sra = forms.CharField(label=u"Autre référence",
+ ref_sra = forms.CharField(label="Autre référence",
max_length=15)
operation__code_patriarche = forms.CharField(
max_length=500,
widget=OAWidget,
label="Code PATRIARCHE")
act_type = forms.ChoiceField(label=_("Act type"), choices=[])
- indexed = forms.NullBooleanField(label=_(u"Indexed?"))
+ indexed = forms.NullBooleanField(label=_("Indexed?"))
operation__towns = get_town_field()
- parcel = forms.CharField(label=_(u"Parcel"))
+ parcel = forms.CharField(label=_("Parcel"))
if settings.ISHTAR_DPTS:
operation__towns__numero_insee__startswith = forms.ChoiceField(
- label=_(u"Department"), choices=[])
- act_object = forms.CharField(label=_(u"Object"),
+ label=_("Department"), choices=[])
+ act_object = forms.CharField(label=_("Object"),
max_length=300)
history_creator = forms.IntegerField(
- label=_(u"Created by"),
+ label=_("Created by"),
widget=widgets.JQueryAutoComplete(
reverse_lazy('autocomplete-person', args=['0', 'user']),
associated_model=Person),
validators=[valid_id(Person)])
history_modifier = forms.IntegerField(
- label=_(u"Modified by"),
+ label=_("Modified by"),
widget=widgets.JQueryAutoComplete(
reverse_lazy('autocomplete-person',
args=['0', 'user']),
@@ -1683,7 +1683,7 @@ class AdministrativeActOpeFormSelection(IshtarForm):
cleaned_data = self.cleaned_data
if 'pk' not in cleaned_data or not cleaned_data['pk']:
raise forms.ValidationError(
- _(u"You should select an administrative act."))
+ _("You should select an administrative act."))
return cleaned_data
@@ -1699,12 +1699,12 @@ class AdministrativeActForm(CustomForm, ManageOldType):
reverse_lazy('autocomplete-person'), associated_model=Person,
new=True),
validators=[valid_id(Person)], required=False)
- act_object = forms.CharField(label=_(u"Object"), max_length=300,
+ act_object = forms.CharField(label=_("Object"), max_length=300,
widget=forms.Textarea, required=False)
signature_date = DateField(
- label=_(u"Signature date"), initial=get_now)
+ label=_("Signature date"), initial=get_now)
if settings.COUNTRY == 'fr':
- ref_sra = forms.CharField(label=u"Autre référence", max_length=15,
+ ref_sra = forms.CharField(label="Autre référence", max_length=15,
required=False)
TYPES = [
@@ -1714,7 +1714,7 @@ class AdministrativeActForm(CustomForm, ManageOldType):
class AdministrativeActOpeForm(AdministrativeActForm):
- form_admin_name = _(u"Operation - Administrative act - General")
+ form_admin_name = _("Operation - Administrative act - General")
form_slug = "operation-adminact-general"
@@ -1748,11 +1748,11 @@ class AdministrativeActModifForm(object):
msg = ''
if year and max_val:
msg = _(
- u"This index already exists for year: %(year)d - use a "
- u"value bigger than %(last_val)d") % {
+ "This index already exists for year: %(year)d - use a "
+ "value bigger than %(last_val)d") % {
'year': year, 'last_val': max_val}
else:
- msg = _(u"Bad index")
+ msg = _("Bad index")
raise forms.ValidationError(msg)
return self.cleaned_data
@@ -1765,7 +1765,7 @@ class AdministrativeActOpeModifForm(AdministrativeActModifForm,
class FinalAdministrativeActDeleteForm(FinalForm):
confirm_msg = " "
- confirm_end_msg = _(u"Would you like to delete this administrative act?")
+ confirm_end_msg = _("Would you like to delete this administrative act?")
class DocumentGenerationAdminActForm(IshtarForm):
@@ -1788,18 +1788,18 @@ class DocumentGenerationAdminActForm(IshtarForm):
def clean(self):
if not self.obj:
raise forms.ValidationError(
- _(u"You should select an administrative act."))
+ _("You should select an administrative act."))
cleaned_data = self.cleaned_data
try:
dt = DocumentTemplate.objects.get(
pk=self.cleaned_data['document_template'])
except DocumentTemplate.DoesNotExist:
- raise forms.ValidationError(_(u"This document is not intended for "
- u"this type of act."))
+ raise forms.ValidationError(_("This document is not intended for "
+ "this type of act."))
if self.obj.act_type.pk not in [
act_type.pk for act_type in dt.acttypes.all()]:
- raise forms.ValidationError(_(u"This document is not intended for "
- u"this type of act."))
+ raise forms.ValidationError(_("This document is not intended for "
+ "this type of act."))
return cleaned_data
def save(self, object_pk):
@@ -1818,7 +1818,7 @@ class DocumentGenerationAdminActForm(IshtarForm):
class GenerateDocForm(IshtarForm):
form_label = _("Doc generation")
doc_generation = forms.ChoiceField(
- required=False, choices=[], label=_(u"Generate the associated doc?"))
+ required=False, choices=[], label=_("Generate the associated doc?"))
def __init__(self, *args, **kwargs):
choices = []
@@ -1830,7 +1830,7 @@ class GenerateDocForm(IshtarForm):
class AdministrativeActRegisterSelect(AdministrativeActOpeSelect):
- indexed = forms.NullBooleanField(label=_(u"Indexed?"))
+ indexed = forms.NullBooleanField(label=_("Indexed?"))
def __init__(self, *args, **kwargs):
super(AdministrativeActRegisterSelect, self).__init__(*args, **kwargs)
@@ -1839,7 +1839,7 @@ class AdministrativeActRegisterSelect(AdministrativeActOpeSelect):
class AdministrativeActRegisterFormSelection(IshtarForm):
- form_label = pgettext_lazy('admin act register', u"Register")
+ form_label = pgettext_lazy('admin act register', "Register")
associated_models = {'pk': models.AdministrativeAct}
currents = {'pk': models.AdministrativeAct}
pk = forms.IntegerField(
@@ -1855,7 +1855,7 @@ class AdministrativeActRegisterFormSelection(IshtarForm):
cleaned_data = self.cleaned_data
if 'pk' not in cleaned_data or not cleaned_data['pk']:
raise forms.ValidationError(
- _(u"You should select an administrative act."))
+ _("You should select an administrative act."))
return cleaned_data
@@ -1875,7 +1875,7 @@ class QAOperationFormMulti(QAForm):
'qa_operator',
]
qa_operation_type = forms.ChoiceField(
- label=_(u"Operation type"), required=False
+ label=_("Operation type"), required=False
)
qa_towns = get_town_field(required=False)
qa_operator = forms.IntegerField(
diff --git a/archaeological_operations/ishtar_menu.py b/archaeological_operations/ishtar_menu.py
index 615e1f491..6a5ae1d46 100644
--- a/archaeological_operations/ishtar_menu.py
+++ b/archaeological_operations/ishtar_menu.py
@@ -29,57 +29,57 @@ from archaeological_operations import models
MENU_SECTIONS = [
(30, SectionItem(
- 'operation_management', _(u"Operation"),
+ 'operation_management', _("Operation"),
css='menu-operation',
childs=[
MenuItem(
- 'operation_search', _(u"Search"),
+ 'operation_search', _("Search"),
model=models.Operation,
access_controls=['view_operation',
'view_own_operation']),
MenuItem(
- 'operation_creation', _(u"Creation"),
+ 'operation_creation', _("Creation"),
model=models.Operation,
access_controls=['add_operation',
'add_own_operation']),
MenuItem(
- 'operation_modification', _(u"Modification"),
+ 'operation_modification', _("Modification"),
model=models.Operation,
access_controls=['change_operation',
'change_own_operation']),
MenuItem(
- 'operation_closing', _(u"Closing"),
+ 'operation_closing', _("Closing"),
model=models.Operation,
access_controls=['close_operation']),
MenuItem(
- 'operation_deletion', _(u"Deletion"),
+ 'operation_deletion', _("Deletion"),
model=models.Operation,
access_controls=['change_operation',
'change_own_operation']),
SectionItem(
'admin_act_operations',
- _(u"Administrative act"),
+ _("Administrative act"),
profile_restriction='files',
childs=[
MenuItem(
'operation_administrativeactop_search',
- _(u"Search"),
+ _("Search"),
model=models.AdministrativeAct,
access_controls=[
'change_administrativeact']),
MenuItem(
'operation_administrativeactop',
- _(u"Creation"),
+ _("Creation"),
model=models.AdministrativeAct,
access_controls=['change_administrativeact']),
MenuItem(
'operation_administrativeactop_modification',
- _(u"Modification"),
+ _("Modification"),
model=models.AdministrativeAct,
access_controls=['change_administrativeact']),
MenuItem(
'operation_administrativeactop_deletion',
- _(u"Deletion"),
+ _("Deletion"),
model=models.AdministrativeAct,
access_controls=['change_administrativeact']),
],),
@@ -87,13 +87,13 @@ MENU_SECTIONS = [
),
(
35, SectionItem(
- 'administrativact_management', _(u"Administrative Act"),
+ 'administrativact_management', _("Administrative Act"),
profile_restriction='files',
css='menu-file',
childs=[
MenuItem(
'administrativact_register',
- pgettext_lazy('admin act register', u"Register"),
+ pgettext_lazy('admin act register', "Register"),
model=models.AdministrativeAct,
access_controls=['view_administrativeact',
'view_own_administrativeact']),
@@ -105,22 +105,22 @@ MENU_SECTIONS = [
profile_restriction='archaeological_site',
childs=[
MenuItem(
- 'site_search', _(u"Search"),
+ 'site_search', _("Search"),
model=models.ArchaeologicalSite,
access_controls=['view_archaeologicalsite',
'view_own_archaeologicalsite']),
MenuItem(
- 'site_creation', _(u"Creation"),
+ 'site_creation', _("Creation"),
model=models.ArchaeologicalSite,
access_controls=['add_archaeologicalsite',
'add_own_archaeologicalsite']),
MenuItem(
- 'site_modification', _(u"Modification"),
+ 'site_modification', _("Modification"),
model=models.ArchaeologicalSite,
access_controls=['change_archaeologicalsite',
'change_own_archaeologicalsite']),
MenuItem('site_deletion',
- _(u"Deletion"),
+ _("Deletion"),
model=models.ArchaeologicalSite,
access_controls=['change_archaeologicalsite']),
]),
@@ -129,15 +129,15 @@ MENU_SECTIONS = [
"""
(
102, SectionItem(
- 'dashboard', _(u"Dashboard"),
+ 'dashboard', _("Dashboard"),
css='menu-operation',
childs=[
MenuItem(
- 'dashboard_main', _(u"General informations"),
+ 'dashboard_main', _("General informations"),
model=models.Operation,
access_controls=['change_operation']),
MenuItem(
- 'dashboard_operation', _(u"Operations"),
+ 'dashboard_operation', _("Operations"),
model=models.Operation,
access_controls=['change_operation']),
]),
diff --git a/archaeological_operations/lookups.py b/archaeological_operations/lookups.py
index 2d70029ce..66bcf0831 100644
--- a/archaeological_operations/lookups.py
+++ b/archaeological_operations/lookups.py
@@ -24,7 +24,7 @@ class OperationLookup(LookupChannel):
return self.model.objects.filter(query).order_by('cached_label')[:20]
def format_item_display(self, item):
- return u"<span class='ajax-label'>%s</span>" % item.cached_label
+ return "<span class='ajax-label'>%s</span>" % item.cached_label
@register('archaeological_site')
@@ -75,7 +75,7 @@ class ParcelLookup(LookupChannel):
return escape(force_text(obj.long_label()))
def format_item_display(self, item):
- return u"<span class='ajax-label'>%s</span>" % item.long_label()
+ return "<span class='ajax-label'>%s</span>" % item.long_label()
@register("cultural_attribution_type")
diff --git a/archaeological_operations/models.py b/archaeological_operations/models.py
index 0c4f6330b..014d1071b 100644
--- a/archaeological_operations/models.py
+++ b/archaeological_operations/models.py
@@ -212,7 +212,7 @@ class ArchaeologicalSite(DocumentItem, BaseHistorizedItem, CompleteIdentifierIte
'towns__cached_label__iexact'
),
'towns__areas': SearchAltName(
- pgettext_lazy("key for text search", u"area"),
+ pgettext_lazy("key for text search", "area"),
'towns__areas__label__iexact'
),
'comment': SearchAltName(
@@ -286,13 +286,13 @@ class ArchaeologicalSite(DocumentItem, BaseHistorizedItem, CompleteIdentifierIte
QA_LOCK = QuickAction(
url="site-qa-lock", icon_class="fa fa-lock",
- text=_(u"Lock/Unlock"), target="many",
+ text=_("Lock/Unlock"), target="many",
rights=['change_archaeologicalsite',
'change_own_archaeologicalsite']
)
QA_EDIT = QuickAction(
url="site-qa-bulk-update", icon_class="fa fa-pencil",
- text=_(u"Bulk update"), target="many",
+ text=_("Bulk update"), target="many",
rights=['change_archaeologicalsite',
'change_own_archaeologicalsite']
)
@@ -863,7 +863,7 @@ class Operation(ClosedItem, DocumentItem, BaseHistorizedItem,
'towns__cached_label__iexact'
),
'towns__areas': SearchAltName(
- pgettext_lazy("key for text search", u"area"),
+ pgettext_lazy("key for text search", "area"),
'towns__areas__label__iexact'
),
'parcel': SearchAltName(
@@ -1000,12 +1000,12 @@ class Operation(ClosedItem, DocumentItem, BaseHistorizedItem,
QA_EDIT = QuickAction(
url="operation-qa-bulk-update", icon_class="fa fa-pencil",
- text=_(u"Bulk update"), target="many",
+ text=_("Bulk update"), target="many",
rights=['change_operation', 'change_own_operation']
)
QA_LOCK = QuickAction(
url="operation-qa-lock", icon_class="fa fa-lock",
- text=_(u"Lock/Unlock"), target="many",
+ text=_("Lock/Unlock"), target="many",
rights=['change_operation', 'change_own_operation']
)
QUICK_ACTIONS = [
diff --git a/archaeological_operations/utils.py b/archaeological_operations/utils.py
index 801cc6ea4..55fb9ef76 100644
--- a/archaeological_operations/utils.py
+++ b/archaeological_operations/utils.py
@@ -337,12 +337,12 @@ def parse_comment_addr_nature(nature, addr, owner):
nature = parse_string(nature)
comments = []
if nature:
- comments += [u"Aménagement :", nature]
+ comments += ["Aménagement :", nature]
if addr:
- comments += [u"Adresse :", addr]
+ comments += ["Adresse :", addr]
if not comments:
return ""
- return u"\n".join(comments)
+ return "\n".join(comments)
# si pas de start date : premier janvier de year
diff --git a/archaeological_operations/views.py b/archaeological_operations/views.py
index 0c3dc28a1..9bf7779f6 100644
--- a/archaeological_operations/views.py
+++ b/archaeological_operations/views.py
@@ -169,7 +169,7 @@ def dashboard_operation(request, *args, **kwargs):
operation_search_wizard = wizards.OperationSearch.as_view(
[('general-operation_search', forms.OperationFormSelection)],
- label=_(u"Operation search"),
+ label=_("Operation search"),
url_name='operation_search',)
@@ -233,7 +233,7 @@ ope_crea_condition_dict = {
operation_creation_wizard = wizards.OperationWizard.as_view(
wizard_steps,
- label=_(u"New operation"),
+ label=_("New operation"),
condition_dict=ope_crea_condition_dict,
url_name='operation_creation',)
@@ -284,7 +284,7 @@ ope_modif_condition_dict = {
operation_modification_wizard = wizards.OperationModificationWizard.as_view(
operation_modif_wizard_steps,
- label=_(u"Operation modification"),
+ label=_("Operation modification"),
condition_dict=ope_modif_condition_dict,
url_name='operation_modification',)
@@ -316,7 +316,7 @@ operation_closing_steps = [
operation_closing_wizard = wizards.OperationClosingWizard.as_view(
operation_closing_steps,
- label=_(u"Operation closing"),
+ label=_("Operation closing"),
url_name='operation_closing',)
@@ -327,7 +327,7 @@ operation_deletion_steps = [
operation_deletion_wizard = wizards.OperationDeletionWizard.as_view(
operation_deletion_steps,
- label=_(u"Operation deletion"),
+ label=_("Operation deletion"),
url_name='operation_deletion',)
@@ -410,7 +410,7 @@ site_deletion_steps = [
site_deletion_wizard = wizards.SiteDeletionWizard.as_view(
site_deletion_steps,
- label=_(u"Site deletion"),
+ label=_("Site deletion"),
url_name='site_deletion',)
@@ -427,7 +427,7 @@ def site_delete(request, pk):
operation_administrativeactop_search_wizard = wizards.SearchWizard.as_view([
('general-operation_administrativeactop_search',
forms.AdministrativeActOpeFormSelection)],
- label=_(u"Administrative act search"),
+ label=_("Administrative act search"),
url_name='operation_administrativeactop_search',)
administrativeactop_steps = [
@@ -440,7 +440,7 @@ administrativeactop_steps = [
operation_administrativeactop_wizard = \
wizards.OperationAdministrativeActWizard.as_view(
administrativeactop_steps,
- label=_(u"Operation: new administrative act"),
+ label=_("Operation: new administrative act"),
url_name='operation_administrativeactop',)
operation_administrativeactop_modification_wizard = \
@@ -472,7 +472,7 @@ operation_administrativeactop_deletion_wizard = \
forms.AdministrativeActOpeFormSelection),
('final-operation_administrativeactop_deletion',
forms.FinalAdministrativeActDeleteForm)],
- label=_(u"Operation: administrative act deletion"),
+ label=_("Operation: administrative act deletion"),
url_name='operation_administrativeactop_deletion',)
@@ -491,7 +491,7 @@ def operation_administrativeactop_delete(request, pk):
administrativact_register_wizard = SearchWizard.as_view([
('general-administrativact_register',
forms.AdministrativeActRegisterFormSelection)],
- label=pgettext_lazy('admin act register', u"Register"),
+ label=pgettext_lazy('admin act register', "Register"),
url_name='administrativact_register',)
diff --git a/archaeological_operations/widgets.py b/archaeological_operations/widgets.py
index 4ea86188f..fa7306208 100644
--- a/archaeological_operations/widgets.py
+++ b/archaeological_operations/widgets.py
@@ -52,18 +52,18 @@ class ParcelWidget(widgets.MultiWidget):
class SelectParcelWidget(widgets.TextInput):
def render(self, *args, **kwargs):
render = super(SelectParcelWidget, self).render(*args, **kwargs)
- html = u"""{}
+ html = """{}
<div class="input-group-append">
<button class='input-group-text btn btn-success' name='formset_add'
value='add'>{}</button>
- </div>""".format(render, _(u"Add"))
+ </div>""".format(render, _("Add"))
return mark_safe(html)
class OAWidget(forms.TextInput):
def render(self, name, value, attrs=None, renderer=None):
if not value:
- value = u""
+ value = ""
final_attrs = flatatt(
self.build_attrs(attrs, {'name': name, 'value': value}))
dct = {'final_attrs': final_attrs,
diff --git a/archaeological_operations/wizards.py b/archaeological_operations/wizards.py
index fc5ce0bf8..c76bbd313 100644
--- a/archaeological_operations/wizards.py
+++ b/archaeological_operations/wizards.py
@@ -207,8 +207,9 @@ class OperationWizard(Wizard):
has_no_af = [form.prefix for form in forms
if form.prefix == 'townsgeneral-operation'] and True
if has_no_af:
- datas = [[_(u"Warning: No Archaeological File is provided. "
- u"If you have forget it return to the first step."), []]]\
+ datas = [[
+ _("Warning: No Archaeological File is provided. "
+ "If you have forget it return to the first step."), []]]\
+ datas
return datas
diff --git a/archaeological_warehouse/ishtar_menu.py b/archaeological_warehouse/ishtar_menu.py
index 17acae47a..fe012d214 100644
--- a/archaeological_warehouse/ishtar_menu.py
+++ b/archaeological_warehouse/ishtar_menu.py
@@ -27,46 +27,46 @@ from . import models
MENU_SECTIONS = [
- (80, SectionItem('warehouse', _(u"Warehouse"),
+ (80, SectionItem('warehouse', _("Warehouse"),
profile_restriction='warehouse',
css='menu-warehouse',
childs=[
- MenuItem('warehouse_search', _(u"Search"),
+ MenuItem('warehouse_search', _("Search"),
model=models.Warehouse,
access_controls=['view_warehouse', 'view_own_warehouse']),
- MenuItem('warehouse_creation', _(u"Creation"),
+ MenuItem('warehouse_creation', _("Creation"),
model=models.Warehouse,
access_controls=['add_warehouse',]),
- MenuItem('warehouse_modification', _(u"Modification"),
+ MenuItem('warehouse_modification', _("Modification"),
model=models.Warehouse,
access_controls=['change_warehouse',]),
- MenuItem('warehouse_deletion', _(u"Deletion"),
+ MenuItem('warehouse_deletion', _("Deletion"),
model=models.Warehouse,
access_controls=['change_warehouse',]),
SectionItem(
- 'containers', _(u"Containers"),
+ 'containers', _("Containers"),
childs=[
- MenuItem('container_search', _(u"Search"),
+ MenuItem('container_search', _("Search"),
model=models.Warehouse,
access_controls=['view_container',
'view_own_container']),
- MenuItem('container_creation', _(u"Creation"),
+ MenuItem('container_creation', _("Creation"),
model=models.Warehouse,
access_controls=['add_container',
'add_own_container']),
- MenuItem('container_modification', _(u"Modification"),
+ MenuItem('container_modification', _("Modification"),
model=models.Warehouse,
access_controls=['change_container',
'change_own_container']),
MenuItem(
- 'container-merge', _(u"Automatic merge"),
+ 'container-merge', _("Automatic merge"),
model=models.Container,
access_controls=['administrator']),
MenuItem(
- 'container-manual-merge', _(u"Manual merge"),
+ 'container-manual-merge', _("Manual merge"),
model=models.Container,
access_controls=['administrator']),
- MenuItem('container_deletion', _(u"Deletion"),
+ MenuItem('container_deletion', _("Deletion"),
model=models.Warehouse,
access_controls=['change_container',
'change_own_container']),
@@ -74,13 +74,13 @@ MENU_SECTIONS = [
]))
]
"""
- MenuItem('warehouse_inventory', _(u"Inventory"),
+ MenuItem('warehouse_inventory', _("Inventory"),
model=models.Warehouse,
access_controls=['change_warehouse',]),
- MenuItem('warehouse_recording', _(u"Recording"),
+ MenuItem('warehouse_recording', _("Recording"),
model=Treatment,
access_controls=['add_treatment', 'add_own_treatment']),
- MenuItem('warehouse_lend', _(u"Lending"),
+ MenuItem('warehouse_lend', _("Lending"),
model=Treatment,
access_controls=['add_treatment', 'add_own_treatment']),
"""
diff --git a/archaeological_warehouse/lookups.py b/archaeological_warehouse/lookups.py
index f4df88a7d..ea06db3c5 100644
--- a/archaeological_warehouse/lookups.py
+++ b/archaeological_warehouse/lookups.py
@@ -30,7 +30,7 @@ class ContainerLookup(LookupChannel):
return escape(force_text(obj.cached_label))
def format_item_display(self, item):
- return u"<span class='ajax-label'>%s</span>" % item.cached_label
+ return "<span class='ajax-label'>%s</span>" % item.cached_label
@register('warehouse')
@@ -48,4 +48,4 @@ class WarehouseLookup(LookupChannel):
return self.model.objects.filter(query).order_by('name')[:20]
def format_item_display(self, item):
- return u"<span class='ajax-label'>%s</span>" % item.name
+ return "<span class='ajax-label'>%s</span>" % item.name
diff --git a/example_project/__init__.py.base.sample b/example_project/__init__.py.base.sample
index c6adb7559..6631c46d5 100644
--- a/example_project/__init__.py.base.sample
+++ b/example_project/__init__.py.base.sample
@@ -1,11 +1,11 @@
# force the retranslation of generated strings and external module
from django.utils.translation import ugettext_lazy as _
-_(u"username")
-_(u"email address")
-_(u"warehouse")
-_(u"New warehouse")
-_(u"warehouse")
-_(u"New organization")
-_(u"New person")
-_(u"New author")
+_("username")
+_("email address")
+_("warehouse")
+_("New warehouse")
+_("warehouse")
+_("New organization")
+_("New person")
+_("New author")
diff --git a/example_project/__init__.py.celery.sample b/example_project/__init__.py.celery.sample
index 5dad2ced8..3cda63729 100644
--- a/example_project/__init__.py.celery.sample
+++ b/example_project/__init__.py.celery.sample
@@ -5,11 +5,11 @@ from .celery_app import app as celery_app
__all__ = ('celery_app',)
-_(u"username")
-_(u"email address")
-_(u"warehouse")
-_(u"New warehouse")
-_(u"warehouse")
-_(u"New organization")
-_(u"New person")
-_(u"New author")
+_("username")
+_("email address")
+_("warehouse")
+_("New warehouse")
+_("warehouse")
+_("New organization")
+_("New person")
+_("New author")
diff --git a/example_project/settings.py b/example_project/settings.py
index 8e2ad2e01..07d5de200 100644
--- a/example_project/settings.py
+++ b/example_project/settings.py
@@ -91,9 +91,9 @@ LANGUAGE_CODE = 'fr-fr'
COUNTRY = "fr"
-OOOK_DATE_FORMAT = u"%-d %B %Y"
-OOO_DATE_FORMAT = u"%-d %B %Y"
-DATE_FORMAT = u"%-d %B %Y"
+OOOK_DATE_FORMAT = "%-d %B %Y"
+OOO_DATE_FORMAT = "%-d %B %Y"
+DATE_FORMAT = "%-d %B %Y"
SITE_ID = 1
@@ -287,7 +287,7 @@ ISHTAR_OPE_TYPES = {}
# DB key: txt_idx
ISHTAR_PERIODS = {}
ISHTAR_PERMIT_TYPES = {}
-ISHTAR_DOC_TYPES = {u"undefined": u"Undefined"}
+ISHTAR_DOC_TYPES = {"undefined": "Undefined"}
ISHTAR_SEARCH_LANGUAGE = "french"
diff --git a/ishtar_common/__init__.py b/ishtar_common/__init__.py
index 6ae20f3c8..3d19ae8ff 100644
--- a/ishtar_common/__init__.py
+++ b/ishtar_common/__init__.py
@@ -5,8 +5,8 @@
from django.utils.translation import ugettext_lazy as _
# overload of translation of registration module
-_(u"username")
-_(u"email address")
-_(u"Related item")
+_("username")
+_("email address")
+_("Related item")
default_app_config = 'ishtar_common.apps.IshtarCommonConfig'
diff --git a/ishtar_common/admin.py b/ishtar_common/admin.py
index 75e79b714..cccc1f889 100644
--- a/ishtar_common/admin.py
+++ b/ishtar_common/admin.py
@@ -92,9 +92,9 @@ ISHTAR_FORMS = [common_forms, file_pdl_forms, file_forms, operation_forms,
class ImportGenericForm(forms.Form):
csv_file = forms.FileField(
- _(u"CSV file"),
- help_text=_(u"Only unicode encoding is managed - convert your"
- u" file first")
+ _("CSV file"),
+ help_text=_("Only unicode encoding is managed - convert your"
+ " file first")
)
@@ -360,7 +360,7 @@ class AdminIshtarSiteProfileForm(forms.ModelForm):
class Meta:
model = models.IshtarSiteProfile
exclude = []
- default_center = PointField(label=_(u"Maps - default center"),
+ default_center = PointField(label=_("Maps - default center"),
widget=OSMWidget)
@@ -398,8 +398,8 @@ admin_site.register(models.Organization, OrganizationAdmin)
class ProfileInline(admin.TabularInline):
model = models.UserProfile
- verbose_name = _(u"Profile")
- verbose_name_plural = _(u"Profiles")
+ verbose_name = _("Profile")
+ verbose_name_plural = _("Profiles")
extra = 1
@@ -570,31 +570,31 @@ class ImportActionAdmin(admin.ModelAdmin):
class ImportGeoJsonForm(forms.Form):
json_file = forms.FileField(
- _(u"Geojson file"),
- help_text=_(u"Only unicode encoding is managed - convert your"
- u" file first. The file must be a geojson file or a zip "
- u"containing a geojson file.")
+ _("Geojson file"),
+ help_text=_("Only unicode encoding is managed - convert your"
+ " file first. The file must be a geojson file or a zip "
+ "containing a geojson file.")
)
numero_insee_prefix = forms.CharField(
- label=_(u"Prefix for numero INSEE"), max_length=20, required=False)
+ label=_("Prefix for numero INSEE"), max_length=20, required=False)
numero_insee_name = forms.CharField(
- label=_(u"Field name for numero INSEE"), max_length=200,
+ label=_("Field name for numero INSEE"), max_length=200,
initial='numero_insee')
name_name = forms.CharField(
- label=_(u"Field name for name"), max_length=200, initial='name')
- UNIT_CHOICES = (('1', _(u"m2")), ('1000', _(u"km2")))
+ label=_("Field name for name"), max_length=200, initial='name')
+ UNIT_CHOICES = (('1', _("m2")), ('1000', _("km2")))
surface_unit = forms.ChoiceField(
- label=_(u"Surface unit"), choices=UNIT_CHOICES)
+ label=_("Surface unit"), choices=UNIT_CHOICES)
surface_name = forms.CharField(
- label=_(u"Field name for surface"), max_length=200, required=False)
+ label=_("Field name for surface"), max_length=200, required=False)
year_name = forms.CharField(
- label=_(u"Field name for year"), max_length=200, required=False,
+ label=_("Field name for year"), max_length=200, required=False,
initial="year",
- help_text=_(u"Not required for new town. Leave it empty when not "
- u"available.")
+ help_text=_("Not required for new town. Leave it empty when not "
+ "available.")
)
update = forms.BooleanField(
- label=_(u"Update only geometry of existing towns"), required=False,
+ label=_("Update only geometry of existing towns"), required=False,
widget=forms.CheckboxInput
)
@@ -708,14 +708,14 @@ class ImportGEOJSONActionAdmin(object):
if zipfile.is_zipfile(tmpfilename):
zfile = zipfile.ZipFile(tmpfilename)
for zmember in zfile.namelist():
- if os.sep in zmember or u".." in zmember:
+ if os.sep in zmember or ".." in zmember:
continue
if zmember.endswith("json"):
zfile.extract(zmember, tempdir)
json_filename = tempdir + os.sep + zmember
break
if not json_filename:
- error = _(u"No json file found in zipfile")
+ error = _("No json file found in zipfile")
return self.import_geojson_error(request, error,
base_dct, tempdir)
else:
@@ -738,7 +738,7 @@ class ImportGEOJSONActionAdmin(object):
assert 'features' in dct
assert dct['features']
except (ValueError, AssertionError):
- error = _(u"Bad geojson file")
+ error = _("Bad geojson file")
return self.import_geojson_error(
request, error, base_dct, tempdir)
@@ -748,7 +748,7 @@ class ImportGEOJSONActionAdmin(object):
for idx, feat in enumerate(dct['features']):
trace_error = True
if error_count == 6:
- self.message_user(request, _(u"Too many errors..."),
+ self.message_user(request, _("Too many errors..."),
level=messages.ERROR)
if error_count > 5:
trace_error = False
@@ -859,27 +859,27 @@ class AdminRelatedTownForm(forms.ModelForm):
model = models_common.Town.children.through
exclude = []
from_town = AutoCompleteSelectField(
- 'town', required=True, label=_(u"Parent"))
+ 'town', required=True, label=_("Parent"))
class AdminTownForm(forms.ModelForm):
class Meta:
model = models_common.Town
exclude = ['imports', 'departement']
- center = PointField(label=_(u"Center"), required=False,
+ center = PointField(label=_("Center"), required=False,
widget=OSMWidget)
- limit = MultiPolygonField(label=_(u"Limit"), required=False,
+ limit = MultiPolygonField(label=_("Limit"), required=False,
widget=OSMWidget)
children = AutoCompleteSelectMultipleField('town', required=False,
- label=_(u"Town children"))
+ label=_("Town children"))
class TownParentInline(admin.TabularInline):
model = models_common.Town.children.through
fk_name = 'to_town'
form = AdminRelatedTownForm
- verbose_name = _(u"Parent")
- verbose_name_plural = _(u"Parents")
+ verbose_name = _("Parent")
+ verbose_name_plural = _("Parents")
extra = 1
@@ -1059,10 +1059,7 @@ class CreateDepartmentActionAdmin(GeneralTypeAdmin):
area = models.Area.objects.get(
id=form.cleaned_data["area"])
dpt_num = form.cleaned_data['department_number']
- if dpt_num < 10:
- dpt_num = "0" + str(dpt_num)
- else:
- dpt_num = str(dpt_num)
+ dpt_num = "0" + str(dpt_num) if dpt_num < 10 else str(dpt_num)
current_towns = [a.numero_insee for a in area.towns.all()]
nb = 0
for town in models.Town.objects.filter(
@@ -1190,7 +1187,7 @@ def duplicate_importertype(modeladmin, request, queryset):
old_pk = obj.pk
obj.pk = None
obj.slug = create_slug(models.ImporterType, obj.name)
- obj.name = obj.name + u" - duplicate"
+ obj.name = obj.name + " - duplicate"
obj.name = obj.name[:200]
obj.save() # create new
old_obj = modeladmin.model.objects.get(pk=old_pk)
@@ -1229,7 +1226,7 @@ def duplicate_importertype(modeladmin, request, queryset):
messages.add_message(
request, messages.INFO,
str(_("{} importer type(s) duplicated: {}.")).format(
- queryset.count(), u" ; ".join(res))
+ queryset.count(), " ; ".join(res))
)
url = reverse(
'admin:%s_%s_changelist' % (
@@ -1239,7 +1236,7 @@ def duplicate_importertype(modeladmin, request, queryset):
return HttpResponseRedirect(url)
-duplicate_importertype.short_description = _(u"Duplicate")
+duplicate_importertype.short_description = _("Duplicate")
def generate_libreoffice_template(modeladmin, request, queryset):
@@ -1313,7 +1310,7 @@ def duplicate_importercolumn(modeladmin, request, queryset):
for col in queryset.order_by('col_number'):
old_pk = col.pk
col.pk = None
- col.label = (col.label or u"") + u" - duplicate"
+ col.label = (col.label or "") + " - duplicate"
col.label = col.label[:200]
# get the next available col number
col_nb = col.col_number + 1
@@ -1335,7 +1332,7 @@ def duplicate_importercolumn(modeladmin, request, queryset):
messages.add_message(
request, messages.INFO,
str(_("{} importer column(s) duplicated: {}.")).format(
- queryset.count(), u" ; ".join(res))
+ queryset.count(), " ; ".join(res))
)
url = reverse(
'admin:%s_%s_changelist' % (
@@ -1345,7 +1342,7 @@ def duplicate_importercolumn(modeladmin, request, queryset):
return HttpResponseRedirect(url)
-duplicate_importercolumn.short_description = _(u"Duplicate")
+duplicate_importercolumn.short_description = _("Duplicate")
def shift_right(modeladmin, request, queryset):
@@ -1369,7 +1366,7 @@ def shift_right(modeladmin, request, queryset):
return HttpResponseRedirect(url)
-shift_right.short_description = _(u"Shift right")
+shift_right.short_description = _("Shift right")
def shift_left(modeladmin, request, queryset):
@@ -1410,7 +1407,7 @@ def shift_left(modeladmin, request, queryset):
return HttpResponseRedirect(url)
-shift_left.short_description = _(u"Shift left")
+shift_left.short_description = _("Shift left")
class ImporterDuplicateFieldInline(admin.TabularInline):
@@ -1556,8 +1553,8 @@ class JsonDataFieldAdmin(admin.ModelAdmin):
list_display = ['name', 'content_type', 'key', 'display',
'value_type', 'search_index', 'order', 'section']
actions = [
- change_value('display', True, _(u"Display selected")),
- change_value('display', False, _(u"Hide selected"))
+ change_value('display', True, _("Display selected")),
+ change_value('display', False, _("Hide selected"))
]
list_filter = ['value_type', 'search_index']
form = JsonDataFieldForm
@@ -1586,9 +1583,9 @@ class CustomFormForm(forms.ModelForm):
class Meta:
model = models.CustomForm
exclude = []
- form = forms.ChoiceField(label=_(u"Form"), choices=get_choices_form)
+ form = forms.ChoiceField(label=_("Form"), choices=get_choices_form)
users = AutoCompleteSelectMultipleField('ishtaruser', required=False,
- label=_(u"Users"))
+ label=_("Users"))
class ExcludeFieldFormset(BaseInlineFormSet):
@@ -1608,7 +1605,7 @@ class ExcludeFieldForm(forms.ModelForm):
class Meta:
model = models.ExcludedField
exclude = []
- field = forms.ChoiceField(label=_(u"Field"))
+ field = forms.ChoiceField(label=_("Field"))
def __init__(self, *args, **kwargs):
choices = kwargs.pop('choices')
diff --git a/ishtar_common/forms.py b/ishtar_common/forms.py
index f1e5b34ca..74590c240 100644
--- a/ishtar_common/forms.py
+++ b/ishtar_common/forms.py
@@ -81,7 +81,7 @@ reverse_lazy = lazy(my_reverse, str)
regexp_name = re.compile(r"^[\.,:/\w\-'\"() \&\[\]@]+$", re.UNICODE)
name_validator = validators.RegexValidator(
regexp_name,
- _(u"Enter a valid name consisting of letters, spaces and hyphens."),
+ _("Enter a valid name consisting of letters, spaces and hyphens."),
'invalid')
@@ -100,19 +100,19 @@ class FloatField(forms.FloatField):
Allow the use of comma for separating float fields
"""
def clean(self, value):
- if value and (isinstance(value, str) or isinstance(value, str)):
+ if value and isinstance(value, str):
value = value.replace(',', '.').replace('%', '')
return super(FloatField, self).clean(value)
class FinalForm(forms.Form):
final = True
- form_label = _(u"Confirm")
+ form_label = _("Confirm")
class FinalDeleteForm(FinalForm):
confirm_msg = " "
- confirm_end_msg = _(u"Are you sure you want to delete?")
+ confirm_end_msg = _("Are you sure you want to delete?")
def get_readonly_clean(key):
@@ -151,11 +151,11 @@ class BSForm(object):
widget.attrs['class'] = cls
# 32 bits max value
if isinstance(self.fields[k], forms.IntegerField):
- has_max = False
- for validator in self.fields[k].validators:
- if isinstance(validator, validators.MaxValueValidator):
- has_max = True
- break
+ has_max = any(
+ isinstance(validator, validators.MaxValueValidator)
+ for validator in self.fields[k].validators
+ )
+
if not has_max:
self.fields[k].validators.append(
validators.MaxValueValidator(2147483647))
@@ -249,10 +249,7 @@ class CustomForm(BSForm):
self._post_init()
def are_available(self, keys):
- for k in keys:
- if k not in self.fields:
- return False
- return True
+ return all(k in self.fields for k in keys)
def remove_field(self, key):
if key in self.fields:
@@ -404,13 +401,10 @@ class LockForm(object):
if not pk_key:
raise NotImplementedError("pk_key must be set")
if pk_key not in cleaned_data or not cleaned_data[pk_key]:
- raise forms.ValidationError(_(u"You should select an item."))
+ raise forms.ValidationError(_("You should select an item."))
model = self.associated_models[pk_key]
pks = self.cleaned_data[pk_key]
- if isinstance(pks, int):
- pks = [pks]
- else:
- pks = pks.split(",")
+ pks = [pks] if isinstance(pks, int) else pks.split(",")
for pk in pks:
try:
item = model.objects.get(pk=pk)
@@ -464,10 +458,10 @@ class MultiSearchForm(CustomFormSearch):
except (current_model.DoesNotExist, ValueError):
continue
return [
- (u"",
+ ("",
mark_safe(
- u"<ul class='compact'><li>" + u"</li><li>".join(items) +
- u"</li></ul>"
+ "<ul class='compact'><li>" + "</li><li>".join(items) +
+ "</li></ul>"
))
]
@@ -497,7 +491,7 @@ class FormSet(CustomForm, BaseFormSet):
if not error_msg:
error_msg = _("There are identical items.")
items = []
- for i in range(0, self.total_form_count()):
+ for i in range(self.total_form_count()):
form = self.forms[i]
if not form.is_valid():
continue
@@ -586,7 +580,7 @@ class FormHeader(object):
"<h{level}>{label}</h{level}>{help_message}".format(
label=self.label, level=self.level,
help_message=help_message))
- html = u"""<div id="collapse-parent-{slug}" class="collapse-form">
+ html = """<div id="collapse-parent-{slug}" class="collapse-form">
<div class="card">
<div class="card-header" id="collapse-head-{slug}">
<h{level} href="#">
@@ -612,7 +606,7 @@ class FormHeader(object):
def render_end(self):
if not self.collapse:
return ""
- return mark_safe(u"""
+ return mark_safe("""
</div>
</div>
</div>
@@ -865,10 +859,8 @@ class TableSelect(IshtarForm):
if k == 'search_vector':
cls += " search-vector"
self.fields[k].widget.attrs['class'] = cls
- if k in alt_names:
- self.fields[k].alt_name = alt_names[k].search_key
- else:
- self.fields[k].alt_name = k
+ self.fields[k].alt_name = alt_names[k].search_key \
+ if k in alt_names else k
key = list(self.fields.keys())[0]
self.fields[key].widget.attrs['autofocus'] = 'autofocus'
@@ -878,13 +870,13 @@ class TableSelect(IshtarForm):
class HistorySelect(CustomForm, TableSelect):
history_creator = forms.IntegerField(
- label=_(u"Created by"),
+ label=_("Created by"),
widget=widgets.JQueryAutoComplete(
reverse_lazy('autocomplete-user'),
associated_model=User), required=False
)
history_modifier = forms.IntegerField(
- label=_(u"Last modified by"),
+ label=_("Last modified by"),
widget=widgets.JQueryAutoComplete(
reverse_lazy('autocomplete-user'),
associated_model=User), required=False
@@ -931,13 +923,12 @@ class DocumentItemSelect(HistorySelect):
def get_now():
format = formats.get_format('DATE_INPUT_FORMATS')[0]
- value = datetime.datetime.now().strftime(format)
- return value
+ return datetime.datetime.now().strftime(format)
class ClosingDateFormSelection(IshtarForm):
form_label = _("Closing date")
- end_date = DateField(label=_(u"Closing date"))
+ end_date = DateField(label=_("Closing date"))
def __init__(self, *args, **kwargs):
if 'initial' not in kwargs:
@@ -953,8 +944,8 @@ def has_map():
def get_form_selection(
class_name, label, key, model, base_form, get_url,
- not_selected_error=_(u"You should select an item."), new=False,
- new_message=_(u"Add a new item"), get_full_url=None,
+ not_selected_error=_("You should select an item."), new=False,
+ new_message=_("Add a new item"), get_full_url=None,
gallery=False, map=False, multi=False, base_form_select=None,
alt_pk_field=None
):
@@ -1120,13 +1111,13 @@ class QAForm(CustomForm, ManageOldType):
elif int(v) in list(dct_choices.keys()):
values.append(str(dct_choices[int(v)]))
self.fields[k].rendered_value = mark_safe(
- u" ; ".join(values))
+ " ; ".join(values))
if k not in self.REPLACE_FIELDS:
self.fields[k].label = str(self.fields[k].label) + \
- str(_(u" - append to existing"))
+ str(_(" - append to existing"))
else:
self.fields[k].label = str(self.fields[k].label) + \
- str(_(u" - replace"))
+ str(_(" - replace"))
def _set_value(self, item, base_key):
value = self.cleaned_data[base_key]
@@ -1143,19 +1134,15 @@ class QAForm(CustomForm, ManageOldType):
if not isinstance(v, field.related_model):
v = field.related_model.objects.get(pk=v)
new_value.append(v)
- if is_list:
- value = new_value
- else:
- value = new_value[0]
+ value = new_value if is_list else new_value[0]
if getattr(field, 'many_to_many', None):
if type(value) not in (list, tuple):
value = [value]
for v in value:
getattr(item, key).add(v)
else:
- if base_key not in self.REPLACE_FIELDS:
- if getattr(item, key):
- value = getattr(item, key) + u"\n" + value
+ if base_key not in self.REPLACE_FIELDS and getattr(item, key):
+ value = getattr(item, key) + "\n" + value
setattr(item, key, value)
def save(self, items, user):
diff --git a/ishtar_common/forms_common.py b/ishtar_common/forms_common.py
index 96a473c28..7224620e0 100644
--- a/ishtar_common/forms_common.py
+++ b/ishtar_common/forms_common.py
@@ -1872,9 +1872,9 @@ class QADocumentPackagingForm(IshtarForm):
container_to_change = forms.ChoiceField(
label=_("Change "), required=True,
choices=(
- ('current-and-reference', _(u"current and reference containers")),
- ('reference', _(u"the reference container")),
- ('current', _(u"the current container")),
+ ('current-and-reference', _("current and reference containers")),
+ ('reference', _("the reference container")),
+ ('current', _("the current container")),
)
)
diff --git a/ishtar_common/ishtar_menu.py b/ishtar_common/ishtar_menu.py
index 501177eb5..1e64a80f2 100644
--- a/ishtar_common/ishtar_menu.py
+++ b/ishtar_common/ishtar_menu.py
@@ -26,80 +26,80 @@ from . import models
# be careful: each access_controls must be relevant with check_rights in urls
MENU_SECTIONS = [
- (1, SectionItem('home', _(u"Home"), childs=[])),
- (5, SectionItem('admin', _(u"Administration"),
+ (1, SectionItem('home', _("Home"), childs=[])),
+ (5, SectionItem('admin', _("Administration"),
childs=[
SectionItem(
- 'account', _(u"Account"),
- childs=[MenuItem('account_management', _(u"Addition/modification"),
+ 'account', _("Account"),
+ childs=[MenuItem('account_management', _("Addition/modification"),
model=models.IshtarUser,
access_controls=['administrator', ]),
- MenuItem('account_deletion', _(u"Deletion"),
+ MenuItem('account_deletion', _("Deletion"),
model=models.IshtarUser,
access_controls=['administrator', ]), ]),
- MenuItem('admin-globalvar', _(u"Global variables"),
+ MenuItem('admin-globalvar', _("Global variables"),
model=models.GlobalVar,
access_controls=['administrator', ]),
])
),
- (10, SectionItem('administration', _(u"Directory"),
+ (10, SectionItem('administration', _("Directory"),
childs=[
SectionItem(
- 'person', _(u"Person"),
+ 'person', _("Person"),
childs=[
MenuItem(
- 'person_search', _(u"Search"),
+ 'person_search', _("Search"),
model=models.Person,
access_controls=['add_person']),
MenuItem(
- 'person_creation', _(u"Creation"),
+ 'person_creation', _("Creation"),
model=models.Person,
access_controls=['add_person']),
MenuItem(
- 'person_modification', _(u"Modification"),
+ 'person_modification', _("Modification"),
model=models.Person,
access_controls=['change_person', 'change_own_person']),
MenuItem(
- 'person-merge', _(u"Automatic merge"),
+ 'person-merge', _("Automatic merge"),
model=models.Person,
access_controls=['administrator']),
MenuItem(
- 'person-manual-merge', _(u"Manual merge"),
+ 'person-manual-merge', _("Manual merge"),
model=models.Person,
access_controls=['administrator']),
MenuItem(
- 'person_deletion', _(u"Deletion"),
+ 'person_deletion', _("Deletion"),
model=models.Person,
access_controls=['change_person', 'change_own_person']),
]),
SectionItem(
- 'organization', _(u"Organization"),
+ 'organization', _("Organization"),
childs=[
MenuItem(
- 'organization_search', _(u"Search"),
+ 'organization_search', _("Search"),
model=models.Organization,
access_controls=['add_organization',
'add_own_organization']),
MenuItem(
- 'organization_creation', _(u"Creation"),
+ 'organization_creation', _("Creation"),
model=models.Organization,
access_controls=['add_organization',
'add_own_organization']),
MenuItem(
- 'organization_modification', _(u"Modification"),
+ 'organization_modification', _("Modification"),
model=models.Organization,
access_controls=['change_organization',
'change_own_organization']),
MenuItem(
- 'organization-merge', _(u"Automatic merge"),
+ 'organization-merge', _("Automatic merge"),
model=models.Organization,
access_controls=['administrator']),
MenuItem(
- 'orga-manual-merge', _(u"Manual merge"),
+ 'orga-manual-merge', _("Manual merge"),
model=models.Organization,
access_controls=['administrator']),
MenuItem(
- 'organization_deletion', _(u"Deletion"),
+ 'organization_deletion', _("Deletion"),
model=models.Organization,
access_controls=['change_organization',
'change_own_organization']),
@@ -107,41 +107,41 @@ MENU_SECTIONS = [
])
),
(15, SectionItem(
- 'imports', _(u"Imports"),
+ 'imports', _("Imports"),
childs=[
MenuItem(
- 'import-new', _(u"New import"),
+ 'import-new', _("New import"),
model=models.Import,
access_controls=['change_import']),
MenuItem(
- 'import-list', _(u"Current imports"),
+ 'import-list', _("Current imports"),
model=models.Import,
access_controls=['change_import']),
MenuItem(
- 'import-list-old', _(u"Old imports"),
+ 'import-list-old', _("Old imports"),
model=models.Import,
access_controls=['change_import']),
])),
(250, SectionItem(
- 'document', _(u"Documentation / Images"),
+ 'document', _("Documentation / Images"),
childs=[
MenuItem('document/search',
- _(u"Search"),
+ _("Search"),
model=models.Document,
access_controls=['view_document',
'view_own_document']),
MenuItem('document/create',
- _(u"Creation"),
+ _("Creation"),
model=models.Document,
access_controls=['add_document',
'add_own_document']),
MenuItem('document/edit',
- _(u"Modification"),
+ _("Modification"),
model=models.Document,
access_controls=['change_document',
'change_own_document']),
MenuItem('document/delete',
- _(u"Deletion"),
+ _("Deletion"),
model=models.Document,
access_controls=['change_document',
'change_own_document']),
diff --git a/ishtar_common/management/commands/fix_missing_cached_labels.py b/ishtar_common/management/commands/fix_missing_cached_labels.py
index 368d98fae..ad2767c56 100644
--- a/ishtar_common/management/commands/fix_missing_cached_labels.py
+++ b/ishtar_common/management/commands/fix_missing_cached_labels.py
@@ -52,7 +52,7 @@ class Command(BaseCommand):
if limit and app != limit:
continue
if not quiet:
- print(u"* app: {}".format(app))
+ print("* app: {}".format(app))
for model in apps.get_app_config(app).get_models():
if model_name and model.__name__.lower() != model_name:
continue
@@ -79,14 +79,14 @@ class Command(BaseCommand):
else:
query |= subquery
q = model.objects.filter(query)
- msg = u"-> processing {}: ".format(model._meta.verbose_name)
+ msg = "-> processing {}: ".format(model._meta.verbose_name)
ln = q.count()
for idx, obj_id in enumerate(q.values('pk').all()):
obj = model.objects.get(pk=obj_id['pk'])
obj.skip_history_when_saving = True
obj._no_move = True
obj._no_geo_check = True
- cmsg = u"\r{} {}/{}".format(msg, idx + 1, ln)
+ cmsg = "\r{} {}/{}".format(msg, idx + 1, ln)
if not quiet:
sys.stdout.write(cmsg)
sys.stdout.flush()
diff --git a/ishtar_common/management/commands/ishtar_import.py b/ishtar_common/management/commands/ishtar_import.py
index a8c9d3736..011af2f8c 100644
--- a/ishtar_common/management/commands/ishtar_import.py
+++ b/ishtar_common/management/commands/ishtar_import.py
@@ -31,7 +31,7 @@ class Command(BaseCommand):
"| name\n")
self.stdout.write("*" * 80 + "\n")
for imp in models.Import.objects.exclude(state="AC").all():
- self.stdout.write(u"|{: ^6}| {: ^32} | {: ^12} | {}\n".format(
+ self.stdout.write("|{: ^6}| {: ^32} | {: ^12} | {}\n".format(
imp.pk, str(imp.importer_type)[:32],
state[imp.state][:12],
imp.name[:128]))
diff --git a/ishtar_common/management/commands/process_pending_update.py b/ishtar_common/management/commands/process_pending_update.py
index 6e97847cc..6feff38c3 100644
--- a/ishtar_common/management/commands/process_pending_update.py
+++ b/ishtar_common/management/commands/process_pending_update.py
@@ -42,7 +42,7 @@ class Command(BaseCommand):
quiet = options['quiet']
for app in APPS:
if not quiet:
- print(u"* app: {}".format(app))
+ print("* app: {}".format(app))
for model in apps.get_app_config(app).get_models():
if model.__name__.startswith('Historical'):
continue
@@ -50,14 +50,14 @@ class Command(BaseCommand):
[True for k in model._meta.get_fields()
if k.name == "need_update"]):
continue
- msg = u"-> processing {}: ".format(model._meta.verbose_name)
+ msg = "-> processing {}: ".format(model._meta.verbose_name)
q = model.objects.filter(need_update=True)
ln = q.count()
for idx, obj_id in enumerate(q.values('pk').all()):
obj = model.objects.get(pk=obj_id['pk'])
obj.skip_history_when_saving = True
obj._no_move = True
- cmsg = u"\r{} {}/{}".format(msg, idx + 1, ln)
+ cmsg = "\r{} {}/{}".format(msg, idx + 1, ln)
if not quiet:
sys.stdout.write(cmsg)
sys.stdout.flush()
diff --git a/ishtar_common/management/commands/reassociate_similar_images.py b/ishtar_common/management/commands/reassociate_similar_images.py
index 0dbb3a765..9e52bc6f6 100644
--- a/ishtar_common/management/commands/reassociate_similar_images.py
+++ b/ishtar_common/management/commands/reassociate_similar_images.py
@@ -127,9 +127,9 @@ class Command(BaseCommand):
for attr in attributes:
ref_value = getattr(ref_item, attr)
other_value = getattr(item, attr)
+ if not other_value:
+ continue
if ref_value:
- if not other_value:
- continue
if other_value != ref_value:
if attr == 'title' and merged_title:
setattr(ref_item, 'title', merged_title)
@@ -138,8 +138,6 @@ class Command(BaseCommand):
(attr, ref_value, other_value)
)
else:
- if not other_value:
- continue
setattr(ref_item, attr, other_value)
base_csv = [
@@ -184,11 +182,11 @@ class Command(BaseCommand):
item.delete()
nb_merged_items += 1
if not quiet:
- out.write(u"\n")
+ out.write("\n")
n = datetime.datetime.now().isoformat().split('.')[0].replace(':', '-')
if conflicts:
- filename = output_path + u"{}-conflict.csv".format(n)
+ filename = output_path + "{}-conflict.csv".format(n)
with open(filename, 'w') as csvfile:
writer = csv.writer(csvfile)
writer.writerow(
@@ -202,10 +200,10 @@ class Command(BaseCommand):
for conflict in conflicts:
writer.writerow(conflict)
if not quiet:
- out.write(u"* {} conflicted items ({})\n".format(
+ out.write("* {} conflicted items ({})\n".format(
nb_conflicted_items, filename))
if merged:
- filename = output_path + u"{}-merged.csv".format(n)
+ filename = output_path + "{}-merged.csv".format(n)
with open(filename, 'w') as csvfile:
writer = csv.writer(csvfile)
writer.writerow(
@@ -218,7 +216,7 @@ class Command(BaseCommand):
for merge in merged:
writer.writerow(merge)
if not quiet:
- out.write(u"* {} merged items ({})\n".format(nb_merged_items,
+ out.write("* {} merged items ({})\n".format(nb_merged_items,
filename))
if not quiet:
out.write("* {} distinct images\n".format(distinct_image))
diff --git a/ishtar_common/management/commands/regenerate_external_id.py b/ishtar_common/management/commands/regenerate_external_id.py
index b64629386..5d1aad88e 100644
--- a/ishtar_common/management/commands/regenerate_external_id.py
+++ b/ishtar_common/management/commands/regenerate_external_id.py
@@ -51,14 +51,14 @@ class Command(BaseCommand):
if not bool(
[k for k in dir(model) if k == "external_id"]):
continue
- msg = u"* processing {} - {}:".format(
+ msg = "* processing {} - {}:".format(
app, model._meta.verbose_name)
ln = model.objects.count()
for idx, object in enumerate(model.objects.all()):
object.skip_history_when_saving = True
object.external_id = None
object._no_move = True
- cmsg = u"\r{} {}/{}".format(msg, idx + 1, ln)
+ cmsg = "\r{} {}/{}".format(msg, idx + 1, ln)
sys.stdout.write(cmsg)
sys.stdout.flush()
object.save()
diff --git a/ishtar_common/management/commands/regenerate_qrcodes.py b/ishtar_common/management/commands/regenerate_qrcodes.py
index 6c1ed8ecc..d915d2e21 100644
--- a/ishtar_common/management/commands/regenerate_qrcodes.py
+++ b/ishtar_common/management/commands/regenerate_qrcodes.py
@@ -54,7 +54,7 @@ class Command(BaseCommand):
for app in APPS:
if limit and app != limit:
continue
- print(u"* app: {}".format(app))
+ print("* app: {}".format(app))
for model in apps.get_app_config(app).get_models():
if model_name and model.__name__.lower() != model_name:
continue
@@ -64,13 +64,13 @@ class Command(BaseCommand):
model._meta.get_field('qrcode')
except FieldDoesNotExist:
continue
- msg = u"-> processing {}: ".format(model._meta.verbose_name)
+ msg = "-> processing {}: ".format(model._meta.verbose_name)
ln = model.objects.count()
tmpdir = tempfile.mkdtemp("-qrcode")
for idx, object in enumerate(model.objects.all()):
object.skip_history_when_saving = True
object._no_move = True
- cmsg = u"\r{} {}/{}".format(msg, idx + 1, ln)
+ cmsg = "\r{} {}/{}".format(msg, idx + 1, ln)
sys.stdout.write(cmsg)
sys.stdout.flush()
object.generate_qrcode(secure=secure, tmpdir=tmpdir)
diff --git a/ishtar_common/management/commands/regenerate_search_vector_cached_label.py b/ishtar_common/management/commands/regenerate_search_vector_cached_label.py
index 6a560df80..ab7f134ff 100644
--- a/ishtar_common/management/commands/regenerate_search_vector_cached_label.py
+++ b/ishtar_common/management/commands/regenerate_search_vector_cached_label.py
@@ -51,7 +51,7 @@ class Command(BaseCommand):
if limit and app != limit:
continue
if not quiet:
- print(u"* app: {}".format(app))
+ print("* app: {}".format(app))
for model in apps.get_app_config(app).get_models():
if model_name and model.__name__.lower() != model_name:
continue
@@ -62,7 +62,7 @@ class Command(BaseCommand):
if k.startswith('_generate_') or
k == "search_vector"]):
continue
- msg = u"-> processing {}: ".format(model._meta.verbose_name)
+ msg = "-> processing {}: ".format(model._meta.verbose_name)
ln = model.objects.count()
for idx, obj_id in enumerate(model.objects.values('pk').all()):
obj = model.objects.get(pk=obj_id['pk'])
@@ -74,7 +74,7 @@ class Command(BaseCommand):
obj.point_2d = None
obj.x = None
obj.y = None
- cmsg = u"\r{} {}/{}".format(msg, idx + 1, ln)
+ cmsg = "\r{} {}/{}".format(msg, idx + 1, ln)
if not quiet:
sys.stdout.write(cmsg)
sys.stdout.flush()
diff --git a/ishtar_common/models.py b/ishtar_common/models.py
index 79fa8f6c0..bf8c8c19c 100644
--- a/ishtar_common/models.py
+++ b/ishtar_common/models.py
@@ -197,7 +197,7 @@ class ValueGetter(object):
val = ''
elif (key in self.GET_VALUES_EXTRA_TYPES or "type" in key) and (
val.__class__.__name__.split('.')[0] == 'ManyRelatedManager'):
- val = " ; ".join([str(v) for v in val.all()])
+ val = " ; ".join(str(v) for v in val.all())
elif not isinstance(val, (tuple, list, dict)):
val = str(val)
if val.endswith('.None'):
@@ -219,10 +219,7 @@ class ValueGetter(object):
def get_empty_values(cls, prefix=''):
if not prefix:
prefix = cls._prefix
- values = {}
- for field_name in get_all_field_names(cls):
- values[prefix + field_name] = ''
- return values
+ return {prefix + field_name: '' for field_name in get_all_field_names(cls)}
class HistoryModel(models.Model):
@@ -296,7 +293,7 @@ class TinyUrl(models.Model):
@classmethod
def index_to_char(cls, seq):
- return "".join([cls.CHAR_MAP[x] for x in seq])
+ return "".join(cls.CHAR_MAP[x] for x in seq)
def get_short_id(self):
c_id = self.id
@@ -348,7 +345,7 @@ class ImageModel(models.Model, ImageContainerModel):
return True
manager = getattr(self.__class__, 'objects')
old = getattr(manager.get(pk=self.pk), field)
- return not getattr(self, field) == old
+ return getattr(self, field) != old
def create_thumb(self, image, size):
"""Returns the image resized to fit inside a box of the given size"""
@@ -2211,13 +2208,13 @@ class Person(Address, Merge, OwnPerms, ValueGetter, MainItem):
@property
def person_types_list(self):
- return ", ".join([str(pt) for pt in self.person_types.all()])
+ return ", ".join(str(pt) for pt in self.person_types.all())
profiles_list_lbl = _("Profiles")
@property
def profiles_list(self):
- return ", ".join([str(p) for p in self.profiles.all()])
+ return ", ".join(str(p) for p in self.profiles.all())
def generate_merge_key(self):
if self.name and self.name.strip():
@@ -2389,8 +2386,7 @@ class UserProfile(models.Model):
lbl = self.name or str(self.profile_type)
if not self.areas.count():
return lbl
- return "{} ({})".format(lbl, ", ".join(
- [str(area) for area in self.areas.all()]))
+ return "{} ({})".format(lbl, ", ".join(str(area) for area in self.areas.all()))
@property
def query_towns(self):
@@ -2403,7 +2399,7 @@ class UserProfile(models.Model):
@property
def area_labels(self):
- return ", ".join([str(area) for area in self.areas.all()])
+ return ", ".join(str(area) for area in self.areas.all())
def duplicate(self, **kwargs):
areas = [area for area in self.areas.all()]
@@ -2574,8 +2570,7 @@ class IshtarUser(FullSearch):
person = Person.objects.create(surname=surname,
name=name, email=email,
history_modifier=user)
- isht_user = cls.objects.create(user_ptr=user, person=person)
- return isht_user
+ return cls.objects.create(user_ptr=user, person=person)
def has_right(self, right_name, session=None):
return self.person.has_right(right_name, session=session)
@@ -2685,13 +2680,11 @@ class Basket(FullSearch, OwnPerms, ValueGetter, TemplateItem):
:param ishtaruser: if provided an alternate user is used
:return: the new basket
"""
- items = []
through = self.items.through
basket_pk = "{}_id".format(self.SLUG)
item_pk = "{}_id".format(self.items.model.SLUG)
q = through.objects.filter(**{basket_pk: self.pk})
- for r in q.values("pk", item_pk).order_by("pk").all():
- items.append(r[item_pk])
+ items = [r[item_pk] for r in q.values("pk", item_pk).order_by("pk").all()]
new_item = self
new_item.pk = None
if ishtaruser:
@@ -3693,7 +3686,7 @@ class Document(BaseHistorizedItem, CompleteIdentifierItem, OwnPerms, ImageModel,
"content": self.creation_date.strftime("%Y-%m-%d")}
tags.append(("meta", date))
if self.tags.count():
- content = ", ".join([str(t) for t in self.tags.all()])
+ content = ", ".join(str(t) for t in self.tags.all())
tg = {"name": "DC.subject", "content": content}
tags.append(("meta", tg))
if self.description:
@@ -3705,8 +3698,8 @@ class Document(BaseHistorizedItem, CompleteIdentifierItem, OwnPerms, ImageModel,
("meta", {"name": "DC.publisher",
"content": self.publisher.name}))
if self.authors.count():
- content = ", ".join([str(t.person.raw_name) for t in
- self.authors.all()])
+ content = ", ".join(str(t.person.raw_name) for t in
+ self.authors.all())
tags.append(
("meta", {"name": "DC.creator",
"content": content}))
@@ -3729,7 +3722,7 @@ class Document(BaseHistorizedItem, CompleteIdentifierItem, OwnPerms, ImageModel,
("meta", {"name": "DC.language",
"content": lang}))
if self.licenses.count():
- licences = ", ".join([str(l) for l in self.licenses.all()])
+ licences = ", ".join(str(l) for l in self.licenses.all())
tags.append(
("meta", {"name": "DC.rights",
"content": licences}))
@@ -3806,7 +3799,7 @@ class Document(BaseHistorizedItem, CompleteIdentifierItem, OwnPerms, ImageModel,
if self.isbn:
info.append(("rft.isbn", self.isbn))
if self.licenses.count():
- licenses = ";".join([str(l) for l in self.licenses.all()])
+ licenses = ";".join(str(l) for l in self.licenses.all())
info.append(("rft.rights", licenses))
if self.language:
info.append(("rft.language", self.language.iso_code))