summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorÉtienne Loks <etienne.loks@iggdrasil.net>2018-12-03 15:23:46 +0100
committerÉtienne Loks <etienne.loks@iggdrasil.net>2018-12-03 15:23:46 +0100
commitb2edacfd52f6fcfbceb44f7bc5eaa4d0779663ab (patch)
treeb8e0a353d59985477d96e504684a599a8c677e40
parentd7a9c7865ac3ed1a2296a67368a75179eaffca61 (diff)
downloadIshtar-b2edacfd52f6fcfbceb44f7bc5eaa4d0779663ab.tar.bz2
Ishtar-b2edacfd52f6fcfbceb44f7bc5eaa4d0779663ab.zip
Submarine modul: add fields in site and operation
-rw-r--r--archaeological_context_records/migrations/0033_auto_20181203_1442.py590
-rw-r--r--archaeological_files/migrations/0016_auto_20181203_1442.py433
-rw-r--r--archaeological_finds/migrations/0047_auto_20181203_1442.py1523
-rw-r--r--archaeological_operations/forms.py40
-rw-r--r--archaeological_operations/migrations/0041_auto_20181203_1442.py1117
-rw-r--r--archaeological_operations/models.py79
-rw-r--r--archaeological_operations/templates/ishtar/sheet_operation.html1
-rw-r--r--archaeological_operations/templates/ishtar/sheet_site.html4
-rw-r--r--archaeological_warehouse/migrations/0026_auto_20181203_1442.py374
-rw-r--r--ishtar_common/migrations/0078_auto_20181203_1442.py1832
10 files changed, 5953 insertions, 40 deletions
diff --git a/archaeological_context_records/migrations/0033_auto_20181203_1442.py b/archaeological_context_records/migrations/0033_auto_20181203_1442.py
new file mode 100644
index 000000000..0497d68e3
--- /dev/null
+++ b/archaeological_context_records/migrations/0033_auto_20181203_1442.py
@@ -0,0 +1,590 @@
+# -*- coding: utf-8 -*-
+# Generated by Django 1.11.10 on 2018-12-03 14:42
+from __future__ import unicode_literals
+
+from django.conf import settings
+import django.contrib.gis.db.models.fields
+import django.contrib.postgres.search
+import django.core.validators
+from django.db import migrations, models
+import django.db.models.deletion
+import ishtar_common.models
+import re
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('archaeological_context_records', '0032_auto_20181017_1854'),
+ ]
+
+ operations = [
+ migrations.AlterModelOptions(
+ name='activitytype',
+ options={'ordering': ('order',), 'verbose_name': "Type d'activit\xe9", 'verbose_name_plural': "Types d'activit\xe9"},
+ ),
+ migrations.AlterModelOptions(
+ name='contextrecord',
+ options={'ordering': ('cached_label',), 'permissions': (('view_contextrecord', 'Can view all Context Records'), ('view_own_contextrecord', 'Can view own Context Record'), ('add_own_contextrecord', 'Can add own Context Record'), ('change_own_contextrecord', 'Can change own Context Record'), ('delete_own_contextrecord', 'Can delete own Context Record')), 'verbose_name': "Unit\xe9 d'Enregistrement", 'verbose_name_plural': "Unit\xe9 d'Enregistrement"},
+ ),
+ migrations.AlterModelOptions(
+ name='dating',
+ options={'verbose_name': 'Datation', 'verbose_name_plural': 'Datations'},
+ ),
+ migrations.AlterModelOptions(
+ name='datingquality',
+ options={'ordering': ('label',), 'verbose_name': 'Type de qualit\xe9 de datation', 'verbose_name_plural': 'Types de qualit\xe9 de datation'},
+ ),
+ migrations.AlterModelOptions(
+ name='datingtype',
+ options={'ordering': ('label',), 'verbose_name': 'Type de datation', 'verbose_name_plural': 'Types de datation'},
+ ),
+ migrations.AlterModelOptions(
+ name='documentationtype',
+ options={'ordering': ('label',), 'verbose_name': 'Type de documentation', 'verbose_name_plural': 'Types de documentation'},
+ ),
+ migrations.AlterModelOptions(
+ name='excavationtechnictype',
+ options={'ordering': ('label',), 'verbose_name': 'Type de m\xe9thode de fouille', 'verbose_name_plural': 'Types de m\xe9thode de fouille'},
+ ),
+ migrations.AlterModelOptions(
+ name='historicalcontextrecord',
+ options={'get_latest_by': 'history_date', 'ordering': ('-history_date', '-history_id'), 'verbose_name': "historical Unit\xe9 d'Enregistrement"},
+ ),
+ migrations.AlterModelOptions(
+ name='identificationtype',
+ options={'ordering': ('order', 'label'), 'verbose_name': "Type d'identification", 'verbose_name_plural': "Types d'identification"},
+ ),
+ migrations.AlterModelOptions(
+ name='recordrelations',
+ options={'permissions': [('view_recordrelation', 'Can view all Context record relations')], 'verbose_name': "Relation entre Unit\xe9s d'Enregistrement", 'verbose_name_plural': "Relations entre Unit\xe9s d'Enregistrement"},
+ ),
+ migrations.AlterModelOptions(
+ name='relationtype',
+ options={'ordering': ('order', 'label'), 'verbose_name': 'Type de relation', 'verbose_name_plural': 'Types de relation'},
+ ),
+ migrations.AlterModelOptions(
+ name='unit',
+ options={'ordering': ('order', 'label'), 'verbose_name': "Type d'Unit\xe9 d'Enregistrement", 'verbose_name_plural': "Types d'Unit\xe9 d'Enregistrement"},
+ ),
+ migrations.AlterField(
+ model_name='activitytype',
+ name='available',
+ field=models.BooleanField(default=True, verbose_name='Disponible'),
+ ),
+ migrations.AlterField(
+ model_name='activitytype',
+ name='comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire'),
+ ),
+ migrations.AlterField(
+ model_name='activitytype',
+ name='label',
+ field=models.TextField(verbose_name='D\xe9nomination'),
+ ),
+ migrations.AlterField(
+ model_name='activitytype',
+ name='order',
+ field=models.IntegerField(verbose_name='Ordre'),
+ ),
+ migrations.AlterField(
+ model_name='activitytype',
+ name='txt_idx',
+ field=models.TextField(help_text='Le "slug" est une version standardis\xe9e du nom. Il ne contient que des lettres en minuscule, des nombres et des tirets (-). Chaque "slug" doit \xeatre unique dans la typologie.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), "Ce champ ne doit contenir que des lettres, des nombres, des tirets bas _ et des traits d'union.", 'invalid')], verbose_name='Identifiant textuel'),
+ ),
+ migrations.AlterField(
+ model_name='contextrecord',
+ name='activity',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='archaeological_context_records.ActivityType', verbose_name='Activit\xe9'),
+ ),
+ migrations.AlterField(
+ model_name='contextrecord',
+ name='archaeological_site',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='context_records', to='archaeological_operations.ArchaeologicalSite', verbose_name='Entit\xe9 (EA)'),
+ ),
+ migrations.AlterField(
+ model_name='contextrecord',
+ name='auto_external_id',
+ field=models.BooleanField(default=False, verbose_name="L'identifiant est attribu\xe9 automatiquement"),
+ ),
+ migrations.AlterField(
+ model_name='contextrecord',
+ name='cached_label',
+ field=models.TextField(blank=True, db_index=True, null=True, verbose_name='Nom en cache'),
+ ),
+ migrations.AlterField(
+ model_name='contextrecord',
+ name='closing_date',
+ field=models.DateField(blank=True, null=True, verbose_name='Date de cl\xf4ture'),
+ ),
+ migrations.AlterField(
+ model_name='contextrecord',
+ name='comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire g\xe9n\xe9ral'),
+ ),
+ migrations.AlterField(
+ model_name='contextrecord',
+ name='datings_comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire relatif aux datations'),
+ ),
+ migrations.AlterField(
+ model_name='contextrecord',
+ name='depth',
+ field=models.FloatField(blank=True, null=True, verbose_name='Profondeur (m)'),
+ ),
+ migrations.AlterField(
+ model_name='contextrecord',
+ name='depth_of_appearance',
+ field=models.FloatField(blank=True, null=True, verbose_name="Profondeur d'apparition (m)"),
+ ),
+ migrations.AlterField(
+ model_name='contextrecord',
+ name='diameter',
+ field=models.FloatField(blank=True, null=True, verbose_name='Diam\xe8tre (m)'),
+ ),
+ migrations.AlterField(
+ model_name='contextrecord',
+ name='excavation_technic',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='archaeological_context_records.ExcavationTechnicType', verbose_name='M\xe9thode de fouille'),
+ ),
+ migrations.AlterField(
+ model_name='contextrecord',
+ name='external_id',
+ field=models.TextField(blank=True, null=True, verbose_name='Identifiant'),
+ ),
+ migrations.AlterField(
+ model_name='contextrecord',
+ name='filling',
+ field=models.TextField(blank=True, null=True, verbose_name='Remplissage'),
+ ),
+ migrations.AlterField(
+ model_name='contextrecord',
+ name='history_creator',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to=settings.AUTH_USER_MODEL, verbose_name='Cr\xe9ateur'),
+ ),
+ migrations.AlterField(
+ model_name='contextrecord',
+ name='history_modifier',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to=settings.AUTH_USER_MODEL, verbose_name='Dernier \xe9diteur'),
+ ),
+ migrations.AlterField(
+ model_name='contextrecord',
+ name='interpretation',
+ field=models.TextField(blank=True, null=True, verbose_name='Interpr\xe9tation'),
+ ),
+ migrations.AlterField(
+ model_name='contextrecord',
+ name='label',
+ field=models.CharField(max_length=200, verbose_name='Identifiant'),
+ ),
+ migrations.AlterField(
+ model_name='contextrecord',
+ name='length',
+ field=models.FloatField(blank=True, null=True, verbose_name='Taille (m)'),
+ ),
+ migrations.AlterField(
+ model_name='contextrecord',
+ name='location',
+ field=models.TextField(blank=True, help_text="Une courte description de la localisation de l'Unit\xe9 d'Enregistrement", null=True, verbose_name='Localisation'),
+ ),
+ migrations.AlterField(
+ model_name='contextrecord',
+ name='multi_polygon',
+ field=django.contrib.gis.db.models.fields.MultiPolygonField(blank=True, null=True, srid=4326, verbose_name='Polygones multi-parties'),
+ ),
+ migrations.AlterField(
+ model_name='contextrecord',
+ name='opening_date',
+ field=models.DateField(blank=True, null=True, verbose_name="Date d'ouverture"),
+ ),
+ migrations.AlterField(
+ model_name='contextrecord',
+ name='operation',
+ field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='context_record', to='archaeological_operations.Operation', verbose_name='Op\xe9ration'),
+ ),
+ migrations.AlterField(
+ model_name='contextrecord',
+ name='parcel',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='context_record', to='archaeological_operations.Parcel', verbose_name='Parcelle'),
+ ),
+ migrations.AlterField(
+ model_name='contextrecord',
+ name='relation_image',
+ field=models.FileField(blank=True, null=True, upload_to=ishtar_common.models.get_image_path, verbose_name='Image des relations (SVG g\xe9n\xe9r\xe9)'),
+ ),
+ migrations.AlterField(
+ model_name='contextrecord',
+ name='search_vector',
+ field=django.contrib.postgres.search.SearchVectorField(blank=True, help_text='Auto-rempli \xe0 la sauvegarde', null=True, verbose_name='Vecteur de recherche'),
+ ),
+ migrations.AlterField(
+ model_name='contextrecord',
+ name='taq',
+ field=models.IntegerField(blank=True, help_text="\xab Terminus Ante Quem \xbb. L'Unit\xe9 d'Enregistrement ne peut avoir \xe9t\xe9 cr\xe9\xe9e apr\xe8s cette date.", null=True, verbose_name='TAQ'),
+ ),
+ migrations.AlterField(
+ model_name='contextrecord',
+ name='taq_estimated',
+ field=models.IntegerField(blank=True, help_text="Estimation d'un \xab Terminus Ante Quem \xbb.", null=True, verbose_name='TAQ estim\xe9'),
+ ),
+ migrations.AlterField(
+ model_name='contextrecord',
+ name='thickness',
+ field=models.FloatField(blank=True, null=True, verbose_name='\xc9paisseur (m)'),
+ ),
+ migrations.AlterField(
+ model_name='contextrecord',
+ name='town',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='context_record', to='ishtar_common.Town', verbose_name='Commune'),
+ ),
+ migrations.AlterField(
+ model_name='contextrecord',
+ name='tpq',
+ field=models.IntegerField(blank=True, help_text="\xab Terminus Post Quem \xbb. L'Unit\xe9 d'Enregistrement ne peut avoir \xe9t\xe9 cr\xe9\xe9e avant cette date.", null=True, verbose_name='TPQ'),
+ ),
+ migrations.AlterField(
+ model_name='contextrecord',
+ name='tpq_estimated',
+ field=models.IntegerField(blank=True, help_text="Estimation d'un \xab Terminus Post Quem \xbb.", null=True, verbose_name='TPQ estim\xe9'),
+ ),
+ migrations.AlterField(
+ model_name='contextrecord',
+ name='unit',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='+', to='archaeological_context_records.Unit', verbose_name="Type d'Unit\xe9 d'Enregistrement"),
+ ),
+ migrations.AlterField(
+ model_name='contextrecord',
+ name='width',
+ field=models.FloatField(blank=True, null=True, verbose_name='Largeur (m)'),
+ ),
+ migrations.AlterField(
+ model_name='dating',
+ name='dating_type',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='archaeological_context_records.DatingType', verbose_name='Type de datation'),
+ ),
+ migrations.AlterField(
+ model_name='dating',
+ name='end_date',
+ field=models.IntegerField(blank=True, null=True, verbose_name='Date de fin'),
+ ),
+ migrations.AlterField(
+ model_name='dating',
+ name='period',
+ field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='archaeological_operations.Period', verbose_name='P\xe9riode'),
+ ),
+ migrations.AlterField(
+ model_name='dating',
+ name='precise_dating',
+ field=models.TextField(blank=True, null=True, verbose_name='Datation pr\xe9cise'),
+ ),
+ migrations.AlterField(
+ model_name='dating',
+ name='quality',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='archaeological_context_records.DatingQuality', verbose_name='Qualit\xe9'),
+ ),
+ migrations.AlterField(
+ model_name='dating',
+ name='start_date',
+ field=models.IntegerField(blank=True, null=True, verbose_name='Date de d\xe9but'),
+ ),
+ migrations.AlterField(
+ model_name='datingquality',
+ name='available',
+ field=models.BooleanField(default=True, verbose_name='Disponible'),
+ ),
+ migrations.AlterField(
+ model_name='datingquality',
+ name='comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire'),
+ ),
+ migrations.AlterField(
+ model_name='datingquality',
+ name='label',
+ field=models.TextField(verbose_name='D\xe9nomination'),
+ ),
+ migrations.AlterField(
+ model_name='datingquality',
+ name='txt_idx',
+ field=models.TextField(help_text='Le "slug" est une version standardis\xe9e du nom. Il ne contient que des lettres en minuscule, des nombres et des tirets (-). Chaque "slug" doit \xeatre unique dans la typologie.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), "Ce champ ne doit contenir que des lettres, des nombres, des tirets bas _ et des traits d'union.", 'invalid')], verbose_name='Identifiant textuel'),
+ ),
+ migrations.AlterField(
+ model_name='datingtype',
+ name='available',
+ field=models.BooleanField(default=True, verbose_name='Disponible'),
+ ),
+ migrations.AlterField(
+ model_name='datingtype',
+ name='comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire'),
+ ),
+ migrations.AlterField(
+ model_name='datingtype',
+ name='label',
+ field=models.TextField(verbose_name='D\xe9nomination'),
+ ),
+ migrations.AlterField(
+ model_name='datingtype',
+ name='txt_idx',
+ field=models.TextField(help_text='Le "slug" est une version standardis\xe9e du nom. Il ne contient que des lettres en minuscule, des nombres et des tirets (-). Chaque "slug" doit \xeatre unique dans la typologie.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), "Ce champ ne doit contenir que des lettres, des nombres, des tirets bas _ et des traits d'union.", 'invalid')], verbose_name='Identifiant textuel'),
+ ),
+ migrations.AlterField(
+ model_name='documentationtype',
+ name='available',
+ field=models.BooleanField(default=True, verbose_name='Disponible'),
+ ),
+ migrations.AlterField(
+ model_name='documentationtype',
+ name='comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire'),
+ ),
+ migrations.AlterField(
+ model_name='documentationtype',
+ name='label',
+ field=models.TextField(verbose_name='D\xe9nomination'),
+ ),
+ migrations.AlterField(
+ model_name='documentationtype',
+ name='txt_idx',
+ field=models.TextField(help_text='Le "slug" est une version standardis\xe9e du nom. Il ne contient que des lettres en minuscule, des nombres et des tirets (-). Chaque "slug" doit \xeatre unique dans la typologie.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), "Ce champ ne doit contenir que des lettres, des nombres, des tirets bas _ et des traits d'union.", 'invalid')], verbose_name='Identifiant textuel'),
+ ),
+ migrations.AlterField(
+ model_name='excavationtechnictype',
+ name='available',
+ field=models.BooleanField(default=True, verbose_name='Disponible'),
+ ),
+ migrations.AlterField(
+ model_name='excavationtechnictype',
+ name='comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire'),
+ ),
+ migrations.AlterField(
+ model_name='excavationtechnictype',
+ name='label',
+ field=models.TextField(verbose_name='D\xe9nomination'),
+ ),
+ migrations.AlterField(
+ model_name='excavationtechnictype',
+ name='txt_idx',
+ field=models.TextField(help_text='Le "slug" est une version standardis\xe9e du nom. Il ne contient que des lettres en minuscule, des nombres et des tirets (-). Chaque "slug" doit \xeatre unique dans la typologie.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), "Ce champ ne doit contenir que des lettres, des nombres, des tirets bas _ et des traits d'union.", 'invalid')], verbose_name='Identifiant textuel'),
+ ),
+ migrations.AlterField(
+ model_name='historicalcontextrecord',
+ name='auto_external_id',
+ field=models.BooleanField(default=False, verbose_name="L'identifiant est attribu\xe9 automatiquement"),
+ ),
+ migrations.AlterField(
+ model_name='historicalcontextrecord',
+ name='cached_label',
+ field=models.TextField(blank=True, db_index=True, null=True, verbose_name='Nom en cache'),
+ ),
+ migrations.AlterField(
+ model_name='historicalcontextrecord',
+ name='closing_date',
+ field=models.DateField(blank=True, null=True, verbose_name='Date de cl\xf4ture'),
+ ),
+ migrations.AlterField(
+ model_name='historicalcontextrecord',
+ name='comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire g\xe9n\xe9ral'),
+ ),
+ migrations.AlterField(
+ model_name='historicalcontextrecord',
+ name='datings_comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire relatif aux datations'),
+ ),
+ migrations.AlterField(
+ model_name='historicalcontextrecord',
+ name='depth',
+ field=models.FloatField(blank=True, null=True, verbose_name='Profondeur (m)'),
+ ),
+ migrations.AlterField(
+ model_name='historicalcontextrecord',
+ name='depth_of_appearance',
+ field=models.FloatField(blank=True, null=True, verbose_name="Profondeur d'apparition (m)"),
+ ),
+ migrations.AlterField(
+ model_name='historicalcontextrecord',
+ name='diameter',
+ field=models.FloatField(blank=True, null=True, verbose_name='Diam\xe8tre (m)'),
+ ),
+ migrations.AlterField(
+ model_name='historicalcontextrecord',
+ name='external_id',
+ field=models.TextField(blank=True, null=True, verbose_name='Identifiant'),
+ ),
+ migrations.AlterField(
+ model_name='historicalcontextrecord',
+ name='filling',
+ field=models.TextField(blank=True, null=True, verbose_name='Remplissage'),
+ ),
+ migrations.AlterField(
+ model_name='historicalcontextrecord',
+ name='interpretation',
+ field=models.TextField(blank=True, null=True, verbose_name='Interpr\xe9tation'),
+ ),
+ migrations.AlterField(
+ model_name='historicalcontextrecord',
+ name='label',
+ field=models.CharField(max_length=200, verbose_name='Identifiant'),
+ ),
+ migrations.AlterField(
+ model_name='historicalcontextrecord',
+ name='length',
+ field=models.FloatField(blank=True, null=True, verbose_name='Taille (m)'),
+ ),
+ migrations.AlterField(
+ model_name='historicalcontextrecord',
+ name='location',
+ field=models.TextField(blank=True, help_text="Une courte description de la localisation de l'Unit\xe9 d'Enregistrement", null=True, verbose_name='Localisation'),
+ ),
+ migrations.AlterField(
+ model_name='historicalcontextrecord',
+ name='multi_polygon',
+ field=django.contrib.gis.db.models.fields.MultiPolygonField(blank=True, null=True, srid=4326, verbose_name='Polygones multi-parties'),
+ ),
+ migrations.AlterField(
+ model_name='historicalcontextrecord',
+ name='opening_date',
+ field=models.DateField(blank=True, null=True, verbose_name="Date d'ouverture"),
+ ),
+ migrations.AlterField(
+ model_name='historicalcontextrecord',
+ name='relation_image',
+ field=models.TextField(blank=True, max_length=100, null=True, verbose_name='Image des relations (SVG g\xe9n\xe9r\xe9)'),
+ ),
+ migrations.AlterField(
+ model_name='historicalcontextrecord',
+ name='search_vector',
+ field=django.contrib.postgres.search.SearchVectorField(blank=True, help_text='Auto-rempli \xe0 la sauvegarde', null=True, verbose_name='Vecteur de recherche'),
+ ),
+ migrations.AlterField(
+ model_name='historicalcontextrecord',
+ name='taq',
+ field=models.IntegerField(blank=True, help_text="\xab Terminus Ante Quem \xbb. L'Unit\xe9 d'Enregistrement ne peut avoir \xe9t\xe9 cr\xe9\xe9e apr\xe8s cette date.", null=True, verbose_name='TAQ'),
+ ),
+ migrations.AlterField(
+ model_name='historicalcontextrecord',
+ name='taq_estimated',
+ field=models.IntegerField(blank=True, help_text="Estimation d'un \xab Terminus Ante Quem \xbb.", null=True, verbose_name='TAQ estim\xe9'),
+ ),
+ migrations.AlterField(
+ model_name='historicalcontextrecord',
+ name='thickness',
+ field=models.FloatField(blank=True, null=True, verbose_name='\xc9paisseur (m)'),
+ ),
+ migrations.AlterField(
+ model_name='historicalcontextrecord',
+ name='tpq',
+ field=models.IntegerField(blank=True, help_text="\xab Terminus Post Quem \xbb. L'Unit\xe9 d'Enregistrement ne peut avoir \xe9t\xe9 cr\xe9\xe9e avant cette date.", null=True, verbose_name='TPQ'),
+ ),
+ migrations.AlterField(
+ model_name='historicalcontextrecord',
+ name='tpq_estimated',
+ field=models.IntegerField(blank=True, help_text="Estimation d'un \xab Terminus Post Quem \xbb.", null=True, verbose_name='TPQ estim\xe9'),
+ ),
+ migrations.AlterField(
+ model_name='historicalcontextrecord',
+ name='width',
+ field=models.FloatField(blank=True, null=True, verbose_name='Largeur (m)'),
+ ),
+ migrations.AlterField(
+ model_name='identificationtype',
+ name='available',
+ field=models.BooleanField(default=True, verbose_name='Disponible'),
+ ),
+ migrations.AlterField(
+ model_name='identificationtype',
+ name='comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire'),
+ ),
+ migrations.AlterField(
+ model_name='identificationtype',
+ name='label',
+ field=models.TextField(verbose_name='D\xe9nomination'),
+ ),
+ migrations.AlterField(
+ model_name='identificationtype',
+ name='order',
+ field=models.IntegerField(verbose_name='Ordre'),
+ ),
+ migrations.AlterField(
+ model_name='identificationtype',
+ name='txt_idx',
+ field=models.TextField(help_text='Le "slug" est une version standardis\xe9e du nom. Il ne contient que des lettres en minuscule, des nombres et des tirets (-). Chaque "slug" doit \xeatre unique dans la typologie.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), "Ce champ ne doit contenir que des lettres, des nombres, des tirets bas _ et des traits d'union.", 'invalid')], verbose_name='Identifiant textuel'),
+ ),
+ migrations.AlterField(
+ model_name='relationtype',
+ name='available',
+ field=models.BooleanField(default=True, verbose_name='Disponible'),
+ ),
+ migrations.AlterField(
+ model_name='relationtype',
+ name='comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire'),
+ ),
+ migrations.AlterField(
+ model_name='relationtype',
+ name='inverse_relation',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='archaeological_context_records.RelationType', verbose_name='Relation inverse'),
+ ),
+ migrations.AlterField(
+ model_name='relationtype',
+ name='label',
+ field=models.TextField(verbose_name='D\xe9nomination'),
+ ),
+ migrations.AlterField(
+ model_name='relationtype',
+ name='logical_relation',
+ field=models.CharField(blank=True, choices=[(b'above', 'Au-dessus'), (b'bellow', 'En dessous'), (b'equal', '\xc9gal')], max_length=10, null=True, verbose_name='Relation logique'),
+ ),
+ migrations.AlterField(
+ model_name='relationtype',
+ name='order',
+ field=models.IntegerField(default=1, verbose_name='Ordre'),
+ ),
+ migrations.AlterField(
+ model_name='relationtype',
+ name='symmetrical',
+ field=models.BooleanField(verbose_name='Sym\xe9trique'),
+ ),
+ migrations.AlterField(
+ model_name='relationtype',
+ name='tiny_label',
+ field=models.CharField(blank=True, max_length=50, null=True, verbose_name='D\xe9nomination courte'),
+ ),
+ migrations.AlterField(
+ model_name='relationtype',
+ name='txt_idx',
+ field=models.TextField(help_text='Le "slug" est une version standardis\xe9e du nom. Il ne contient que des lettres en minuscule, des nombres et des tirets (-). Chaque "slug" doit \xeatre unique dans la typologie.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), "Ce champ ne doit contenir que des lettres, des nombres, des tirets bas _ et des traits d'union.", 'invalid')], verbose_name='Identifiant textuel'),
+ ),
+ migrations.AlterField(
+ model_name='unit',
+ name='available',
+ field=models.BooleanField(default=True, verbose_name='Disponible'),
+ ),
+ migrations.AlterField(
+ model_name='unit',
+ name='comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire'),
+ ),
+ migrations.AlterField(
+ model_name='unit',
+ name='label',
+ field=models.TextField(verbose_name='D\xe9nomination'),
+ ),
+ migrations.AlterField(
+ model_name='unit',
+ name='order',
+ field=models.IntegerField(verbose_name='Ordre'),
+ ),
+ migrations.AlterField(
+ model_name='unit',
+ name='parent',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='archaeological_context_records.Unit', verbose_name="Type d'UE parent"),
+ ),
+ migrations.AlterField(
+ model_name='unit',
+ name='txt_idx',
+ field=models.TextField(help_text='Le "slug" est une version standardis\xe9e du nom. Il ne contient que des lettres en minuscule, des nombres et des tirets (-). Chaque "slug" doit \xeatre unique dans la typologie.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), "Ce champ ne doit contenir que des lettres, des nombres, des tirets bas _ et des traits d'union.", 'invalid')], verbose_name='Identifiant textuel'),
+ ),
+ ]
diff --git a/archaeological_files/migrations/0016_auto_20181203_1442.py b/archaeological_files/migrations/0016_auto_20181203_1442.py
new file mode 100644
index 000000000..08f1c01ea
--- /dev/null
+++ b/archaeological_files/migrations/0016_auto_20181203_1442.py
@@ -0,0 +1,433 @@
+# -*- coding: utf-8 -*-
+# Generated by Django 1.11.10 on 2018-12-03 14:42
+from __future__ import unicode_literals
+
+import datetime
+from django.conf import settings
+import django.contrib.postgres.search
+import django.core.validators
+from django.db import migrations, models
+import django.db.models.deletion
+import ishtar_common.utils
+import re
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('archaeological_files', '0015_auto_20181017_1854'),
+ ]
+
+ operations = [
+ migrations.AlterModelOptions(
+ name='file',
+ options={'ordering': ('cached_label',), 'permissions': (('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')), 'verbose_name': 'Dossier', 'verbose_name_plural': 'Dossiers'},
+ ),
+ migrations.AlterModelOptions(
+ name='filetype',
+ options={'ordering': ('label',), 'verbose_name': 'Type de dossier arch\xe9ologique', 'verbose_name_plural': 'Types de dossier arch\xe9ologique'},
+ ),
+ migrations.AlterModelOptions(
+ name='historicalfile',
+ options={'get_latest_by': 'history_date', 'ordering': ('-history_date', '-history_id'), 'verbose_name': 'historical Dossier'},
+ ),
+ migrations.AlterModelOptions(
+ name='permittype',
+ options={'ordering': ('label',), 'verbose_name': 'Type de permis', 'verbose_name_plural': 'Types de permis'},
+ ),
+ migrations.AlterField(
+ model_name='file',
+ name='address',
+ field=models.TextField(blank=True, null=True, verbose_name='Adresse des terrains'),
+ ),
+ migrations.AlterField(
+ model_name='file',
+ name='auto_external_id',
+ field=models.BooleanField(default=False, verbose_name="L'identifiant est attribu\xe9 automatiquement"),
+ ),
+ migrations.AlterField(
+ model_name='file',
+ name='cached_label',
+ field=models.TextField(blank=True, db_index=True, null=True, verbose_name='Nom en cache'),
+ ),
+ migrations.AlterField(
+ model_name='file',
+ name='classified_area',
+ field=models.NullBooleanField(verbose_name="Au sein d'un site class\xe9"),
+ ),
+ migrations.AlterField(
+ model_name='file',
+ name='comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire'),
+ ),
+ migrations.AlterField(
+ model_name='file',
+ name='corporation_general_contractor',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='general_contractor_files', to='ishtar_common.Organization', verbose_name="Organisation de l'am\xe9nageur"),
+ ),
+ migrations.AlterField(
+ model_name='file',
+ name='creation_date',
+ field=models.DateField(blank=True, default=datetime.date.today, null=True, verbose_name='Date de cr\xe9ation'),
+ ),
+ migrations.AlterField(
+ model_name='file',
+ name='departments',
+ field=models.ManyToManyField(blank=True, to='ishtar_common.Department', verbose_name='D\xe9partements'),
+ ),
+ migrations.AlterField(
+ model_name='file',
+ name='end_date',
+ field=models.DateField(blank=True, null=True, verbose_name='Date de cl\xf4ture'),
+ ),
+ migrations.AlterField(
+ model_name='file',
+ name='external_id',
+ field=models.CharField(blank=True, max_length=120, null=True, verbose_name='Identifiant'),
+ ),
+ migrations.AlterField(
+ model_name='file',
+ name='file_type',
+ field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='archaeological_files.FileType', verbose_name='Type de dossier'),
+ ),
+ migrations.AlterField(
+ model_name='file',
+ name='general_contractor',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='general_contractor_files', to='ishtar_common.Person', verbose_name='Am\xe9nageur'),
+ ),
+ migrations.AlterField(
+ model_name='file',
+ name='history_creator',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to=settings.AUTH_USER_MODEL, verbose_name='Cr\xe9ateur'),
+ ),
+ migrations.AlterField(
+ model_name='file',
+ name='history_modifier',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to=settings.AUTH_USER_MODEL, verbose_name='Dernier \xe9diteur'),
+ ),
+ migrations.AlterField(
+ model_name='file',
+ name='imported_line',
+ field=models.TextField(blank=True, null=True, verbose_name='Ligne import\xe9e'),
+ ),
+ migrations.AlterField(
+ model_name='file',
+ name='in_charge',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='file_responsability', to='ishtar_common.Person', verbose_name='Dossier suivi par'),
+ ),
+ migrations.AlterField(
+ model_name='file',
+ name='instruction_deadline',
+ field=models.DateField(blank=True, null=True, verbose_name="Date limite d'instruction"),
+ ),
+ migrations.AlterField(
+ model_name='file',
+ name='internal_reference',
+ field=models.CharField(blank=True, max_length=60, null=True, verbose_name='R\xe9f\xe9rence interne'),
+ ),
+ migrations.AlterField(
+ model_name='file',
+ name='locality',
+ field=models.CharField(blank=True, max_length=100, null=True, verbose_name='Lieu-dit'),
+ ),
+ migrations.AlterField(
+ model_name='file',
+ name='main_town',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='file_main', to='ishtar_common.Town', verbose_name='Commune principale'),
+ ),
+ migrations.AlterField(
+ model_name='file',
+ name='name',
+ field=models.TextField(blank=True, null=True, verbose_name='Nom'),
+ ),
+ migrations.AlterField(
+ model_name='file',
+ name='numeric_reference',
+ field=models.IntegerField(blank=True, null=True, verbose_name='R\xe9f\xe9rence num\xe9rique'),
+ ),
+ migrations.AlterField(
+ model_name='file',
+ name='organization',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='files', to='ishtar_common.Organization', verbose_name='Organisation'),
+ ),
+ migrations.AlterField(
+ model_name='file',
+ name='permit_reference',
+ field=models.TextField(blank=True, null=True, verbose_name='R\xe9f\xe9rence du permis'),
+ ),
+ migrations.AlterField(
+ model_name='file',
+ name='permit_type',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='archaeological_files.PermitType', verbose_name='Type de permis'),
+ ),
+ migrations.AlterField(
+ model_name='file',
+ name='planning_service',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='planning_service_files', to='ishtar_common.Organization', verbose_name='Service instructeur'),
+ ),
+ migrations.AlterField(
+ model_name='file',
+ name='postal_code',
+ field=models.CharField(blank=True, max_length=10, null=True, verbose_name='Adresse des terrains - code postal'),
+ ),
+ migrations.AlterField(
+ model_name='file',
+ name='protected_area',
+ field=models.NullBooleanField(verbose_name="Au sein d'un secteur sauvegard\xe9"),
+ ),
+ migrations.AlterField(
+ model_name='file',
+ name='raw_general_contractor',
+ field=models.CharField(blank=True, max_length=200, null=True, verbose_name='Am\xe9nageur (brut)'),
+ ),
+ migrations.AlterField(
+ model_name='file',
+ name='raw_town_planning_service',
+ field=models.CharField(blank=True, max_length=200, null=True, verbose_name='Service instructeur (brut)'),
+ ),
+ migrations.AlterField(
+ model_name='file',
+ name='reception_date',
+ field=models.DateField(blank=True, null=True, verbose_name='Date de r\xe9ception'),
+ ),
+ migrations.AlterField(
+ model_name='file',
+ name='related_file',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='archaeological_files.File', verbose_name='Dossier li\xe9 \xe0'),
+ ),
+ migrations.AlterField(
+ model_name='file',
+ name='requested_operation_type',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='+', to='ishtar_common.OperationType', verbose_name="Type d'op\xe9ration demand\xe9e"),
+ ),
+ migrations.AlterField(
+ model_name='file',
+ name='research_comment',
+ field=models.TextField(blank=True, null=True, verbose_name="Commentaire relatif \xe0 l'arch\xe9ologie programm\xe9e"),
+ ),
+ migrations.AlterField(
+ model_name='file',
+ name='responsible_town_planning_service',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='responsible_town_planning_service_files', to='ishtar_common.Person', verbose_name='Responsable pour le service instructeur'),
+ ),
+ migrations.AlterField(
+ model_name='file',
+ name='scientist',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='scientist', to='ishtar_common.Person', verbose_name='Responsable scientifique'),
+ ),
+ migrations.AlterField(
+ model_name='file',
+ name='search_vector',
+ field=django.contrib.postgres.search.SearchVectorField(blank=True, help_text='Auto-rempli \xe0 la sauvegarde', null=True, verbose_name='Vecteur de recherche'),
+ ),
+ migrations.AlterField(
+ model_name='file',
+ name='total_developed_surface',
+ field=models.FloatField(blank=True, null=True, verbose_name='Surface totale am\xe9nag\xe9e (m2)'),
+ ),
+ migrations.AlterField(
+ model_name='file',
+ name='total_surface',
+ field=models.FloatField(blank=True, null=True, verbose_name='Surface totale des terrains (m2)'),
+ ),
+ migrations.AlterField(
+ model_name='file',
+ name='towns',
+ field=models.ManyToManyField(blank=True, related_name='file', to='ishtar_common.Town', verbose_name='Communes'),
+ ),
+ migrations.AlterField(
+ model_name='file',
+ name='year',
+ field=models.IntegerField(default=ishtar_common.utils.get_current_year, verbose_name='Ann\xe9e'),
+ ),
+ migrations.AlterField(
+ model_name='filetype',
+ name='available',
+ field=models.BooleanField(default=True, verbose_name='Disponible'),
+ ),
+ migrations.AlterField(
+ model_name='filetype',
+ name='comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire'),
+ ),
+ migrations.AlterField(
+ model_name='filetype',
+ name='label',
+ field=models.TextField(verbose_name='D\xe9nomination'),
+ ),
+ migrations.AlterField(
+ model_name='filetype',
+ name='txt_idx',
+ field=models.TextField(help_text='Le "slug" est une version standardis\xe9e du nom. Il ne contient que des lettres en minuscule, des nombres et des tirets (-). Chaque "slug" doit \xeatre unique dans la typologie.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), "Ce champ ne doit contenir que des lettres, des nombres, des tirets bas _ et des traits d'union.", 'invalid')], verbose_name='Identifiant textuel'),
+ ),
+ migrations.AlterField(
+ model_name='historicalfile',
+ name='address',
+ field=models.TextField(blank=True, null=True, verbose_name='Adresse des terrains'),
+ ),
+ migrations.AlterField(
+ model_name='historicalfile',
+ name='auto_external_id',
+ field=models.BooleanField(default=False, verbose_name="L'identifiant est attribu\xe9 automatiquement"),
+ ),
+ migrations.AlterField(
+ model_name='historicalfile',
+ name='cached_label',
+ field=models.TextField(blank=True, db_index=True, null=True, verbose_name='Nom en cache'),
+ ),
+ migrations.AlterField(
+ model_name='historicalfile',
+ name='classified_area',
+ field=models.NullBooleanField(verbose_name="Au sein d'un site class\xe9"),
+ ),
+ migrations.AlterField(
+ model_name='historicalfile',
+ name='comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire'),
+ ),
+ migrations.AlterField(
+ model_name='historicalfile',
+ name='creation_date',
+ field=models.DateField(blank=True, default=datetime.date.today, null=True, verbose_name='Date de cr\xe9ation'),
+ ),
+ migrations.AlterField(
+ model_name='historicalfile',
+ name='end_date',
+ field=models.DateField(blank=True, null=True, verbose_name='Date de cl\xf4ture'),
+ ),
+ migrations.AlterField(
+ model_name='historicalfile',
+ name='external_id',
+ field=models.CharField(blank=True, max_length=120, null=True, verbose_name='Identifiant'),
+ ),
+ migrations.AlterField(
+ model_name='historicalfile',
+ name='imported_line',
+ field=models.TextField(blank=True, null=True, verbose_name='Ligne import\xe9e'),
+ ),
+ migrations.AlterField(
+ model_name='historicalfile',
+ name='instruction_deadline',
+ field=models.DateField(blank=True, null=True, verbose_name="Date limite d'instruction"),
+ ),
+ migrations.AlterField(
+ model_name='historicalfile',
+ name='internal_reference',
+ field=models.CharField(blank=True, max_length=60, null=True, verbose_name='R\xe9f\xe9rence interne'),
+ ),
+ migrations.AlterField(
+ model_name='historicalfile',
+ name='locality',
+ field=models.CharField(blank=True, max_length=100, null=True, verbose_name='Lieu-dit'),
+ ),
+ migrations.AlterField(
+ model_name='historicalfile',
+ name='name',
+ field=models.TextField(blank=True, null=True, verbose_name='Nom'),
+ ),
+ migrations.AlterField(
+ model_name='historicalfile',
+ name='numeric_reference',
+ field=models.IntegerField(blank=True, null=True, verbose_name='R\xe9f\xe9rence num\xe9rique'),
+ ),
+ migrations.AlterField(
+ model_name='historicalfile',
+ name='permit_reference',
+ field=models.TextField(blank=True, null=True, verbose_name='R\xe9f\xe9rence du permis'),
+ ),
+ migrations.AlterField(
+ model_name='historicalfile',
+ name='postal_code',
+ field=models.CharField(blank=True, max_length=10, null=True, verbose_name='Adresse des terrains - code postal'),
+ ),
+ migrations.AlterField(
+ model_name='historicalfile',
+ name='protected_area',
+ field=models.NullBooleanField(verbose_name="Au sein d'un secteur sauvegard\xe9"),
+ ),
+ migrations.AlterField(
+ model_name='historicalfile',
+ name='raw_general_contractor',
+ field=models.CharField(blank=True, max_length=200, null=True, verbose_name='Am\xe9nageur (brut)'),
+ ),
+ migrations.AlterField(
+ model_name='historicalfile',
+ name='raw_town_planning_service',
+ field=models.CharField(blank=True, max_length=200, null=True, verbose_name='Service instructeur (brut)'),
+ ),
+ migrations.AlterField(
+ model_name='historicalfile',
+ name='reception_date',
+ field=models.DateField(blank=True, null=True, verbose_name='Date de r\xe9ception'),
+ ),
+ migrations.AlterField(
+ model_name='historicalfile',
+ name='research_comment',
+ field=models.TextField(blank=True, null=True, verbose_name="Commentaire relatif \xe0 l'arch\xe9ologie programm\xe9e"),
+ ),
+ migrations.AlterField(
+ model_name='historicalfile',
+ name='search_vector',
+ field=django.contrib.postgres.search.SearchVectorField(blank=True, help_text='Auto-rempli \xe0 la sauvegarde', null=True, verbose_name='Vecteur de recherche'),
+ ),
+ migrations.AlterField(
+ model_name='historicalfile',
+ name='total_developed_surface',
+ field=models.FloatField(blank=True, null=True, verbose_name='Surface totale am\xe9nag\xe9e (m2)'),
+ ),
+ migrations.AlterField(
+ model_name='historicalfile',
+ name='total_surface',
+ field=models.FloatField(blank=True, null=True, verbose_name='Surface totale des terrains (m2)'),
+ ),
+ migrations.AlterField(
+ model_name='historicalfile',
+ name='year',
+ field=models.IntegerField(default=ishtar_common.utils.get_current_year, verbose_name='Ann\xe9e'),
+ ),
+ migrations.AlterField(
+ model_name='permittype',
+ name='available',
+ field=models.BooleanField(default=True, verbose_name='Disponible'),
+ ),
+ migrations.AlterField(
+ model_name='permittype',
+ name='comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire'),
+ ),
+ migrations.AlterField(
+ model_name='permittype',
+ name='label',
+ field=models.TextField(verbose_name='D\xe9nomination'),
+ ),
+ migrations.AlterField(
+ model_name='permittype',
+ name='txt_idx',
+ field=models.TextField(help_text='Le "slug" est une version standardis\xe9e du nom. Il ne contient que des lettres en minuscule, des nombres et des tirets (-). Chaque "slug" doit \xeatre unique dans la typologie.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), "Ce champ ne doit contenir que des lettres, des nombres, des tirets bas _ et des traits d'union.", 'invalid')], verbose_name='Identifiant textuel'),
+ ),
+ migrations.AlterField(
+ model_name='saisinetype',
+ name='available',
+ field=models.BooleanField(default=True, verbose_name='Disponible'),
+ ),
+ migrations.AlterField(
+ model_name='saisinetype',
+ name='comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire'),
+ ),
+ migrations.AlterField(
+ model_name='saisinetype',
+ name='delay',
+ field=models.IntegerField(default=30, verbose_name='D\xe9lai (en jours)'),
+ ),
+ migrations.AlterField(
+ model_name='saisinetype',
+ name='label',
+ field=models.TextField(verbose_name='D\xe9nomination'),
+ ),
+ migrations.AlterField(
+ model_name='saisinetype',
+ name='txt_idx',
+ field=models.TextField(help_text='Le "slug" est une version standardis\xe9e du nom. Il ne contient que des lettres en minuscule, des nombres et des tirets (-). Chaque "slug" doit \xeatre unique dans la typologie.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), "Ce champ ne doit contenir que des lettres, des nombres, des tirets bas _ et des traits d'union.", 'invalid')], verbose_name='Identifiant textuel'),
+ ),
+ ]
diff --git a/archaeological_finds/migrations/0047_auto_20181203_1442.py b/archaeological_finds/migrations/0047_auto_20181203_1442.py
new file mode 100644
index 000000000..90ed25028
--- /dev/null
+++ b/archaeological_finds/migrations/0047_auto_20181203_1442.py
@@ -0,0 +1,1523 @@
+# -*- coding: utf-8 -*-
+# Generated by Django 1.11.10 on 2018-12-03 14:42
+from __future__ import unicode_literals
+
+import datetime
+from django.conf import settings
+import django.contrib.gis.db.models.fields
+import django.contrib.postgres.search
+import django.core.validators
+from django.db import migrations, models
+import django.db.models.deletion
+import ishtar_common.utils
+import re
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('archaeological_finds', '0046_treatmentfiletype_treatment_type'),
+ ]
+
+ operations = [
+ migrations.AlterModelOptions(
+ name='alterationcausetype',
+ options={'ordering': ('parent__label', 'label'), 'verbose_name': "Type de cause d'alt\xe9ration", 'verbose_name_plural': "Types de cause d'alt\xe9ration"},
+ ),
+ migrations.AlterModelOptions(
+ name='alterationtype',
+ options={'ordering': ('parent__label', 'label'), 'verbose_name': "Type d'alt\xe9ration", 'verbose_name_plural': "Types d'alt\xe9ration"},
+ ),
+ migrations.AlterModelOptions(
+ name='basefind',
+ options={'permissions': (('view_basefind', 'Can view all Base finds'), ('view_own_basefind', 'Can view own Base find'), ('add_own_basefind', 'Can add own Base find'), ('change_own_basefind', 'Can change own Base find'), ('delete_own_basefind', 'Can delete own Base find')), 'verbose_name': "Mobilier d'origine", 'verbose_name_plural': "Mobilier d'origine"},
+ ),
+ migrations.AlterModelOptions(
+ name='batchtype',
+ options={'ordering': ('order',), 'verbose_name': 'Type de lot', 'verbose_name_plural': 'Types de lot'},
+ ),
+ migrations.AlterModelOptions(
+ name='checkedtype',
+ options={'ordering': ('order',), 'verbose_name': 'Type de v\xe9rification', 'verbose_name_plural': 'Types de v\xe9rification'},
+ ),
+ migrations.AlterModelOptions(
+ name='communicabilitytype',
+ options={'ordering': ('parent__label', 'label'), 'verbose_name': 'Type de communicabilit\xe9', 'verbose_name_plural': 'Types de communicabilit\xe9'},
+ ),
+ migrations.AlterModelOptions(
+ name='find',
+ options={'ordering': ('cached_label',), 'permissions': (('view_find', 'Can view all Finds'), ('view_own_find', 'Can view own Find'), ('add_own_find', 'Can add own Find'), ('change_own_find', 'Can change own Find'), ('delete_own_find', 'Can delete own Find')), 'verbose_name': 'Mobilier', 'verbose_name_plural': 'Mobilier'},
+ ),
+ migrations.AlterModelOptions(
+ name='findbasket',
+ options={'permissions': (('view_find', 'Can view all Finds'), ('view_own_find', 'Can view own Find')), 'verbose_name': 'Panier'},
+ ),
+ migrations.AlterModelOptions(
+ name='historicalbasefind',
+ options={'get_latest_by': 'history_date', 'ordering': ('-history_date', '-history_id'), 'verbose_name': "historical Mobilier d'origine"},
+ ),
+ migrations.AlterModelOptions(
+ name='historicalfind',
+ options={'get_latest_by': 'history_date', 'ordering': ('-history_date', '-history_id'), 'verbose_name': 'historical Mobilier'},
+ ),
+ migrations.AlterModelOptions(
+ name='historicaltreatment',
+ options={'get_latest_by': 'history_date', 'ordering': ('-history_date', '-history_id'), 'verbose_name': 'historical Traitement'},
+ ),
+ migrations.AlterModelOptions(
+ name='historicaltreatmentfile',
+ options={'get_latest_by': 'history_date', 'ordering': ('-history_date', '-history_id'), 'verbose_name': 'historical Demande de traitement'},
+ ),
+ migrations.AlterModelOptions(
+ name='integritytype',
+ options={'ordering': ('label',), 'verbose_name': "Type d'int\xe9grit\xe9 / int\xe9r\xeat", 'verbose_name_plural': "Types d'int\xe9grit\xe9 / int\xe9r\xeat"},
+ ),
+ migrations.AlterModelOptions(
+ name='materialtype',
+ options={'ordering': ('label',), 'verbose_name': 'Type de mat\xe9riau', 'verbose_name_plural': 'Types de mat\xe9riau'},
+ ),
+ migrations.AlterModelOptions(
+ name='materialtypequalitytype',
+ options={'ordering': ('order',), 'verbose_name': 'Type de qualit\xe9 du type de mat\xe9riaux', 'verbose_name_plural': 'Types de qualit\xe9 du type de mat\xe9riaux'},
+ ),
+ migrations.AlterModelOptions(
+ name='objecttype',
+ options={'ordering': ('parent__label', 'label'), 'verbose_name': "Type d'objet", 'verbose_name_plural': "Types d'objet"},
+ ),
+ migrations.AlterModelOptions(
+ name='objecttypequalitytype',
+ options={'ordering': ('order',), 'verbose_name': "Type de qualit\xe9 du type d'objet", 'verbose_name_plural': "Types de qualit\xe9 du type d'objet"},
+ ),
+ migrations.AlterModelOptions(
+ name='property',
+ options={'verbose_name': 'Propri\xe9t\xe9', 'verbose_name_plural': 'Propri\xe9t\xe9s'},
+ ),
+ migrations.AlterModelOptions(
+ name='remarkabilitytype',
+ options={'ordering': ('label',), 'verbose_name': 'Type de remarquabilit\xe9', 'verbose_name_plural': 'Types de remarquabilit\xe9'},
+ ),
+ migrations.AlterModelOptions(
+ name='treatment',
+ options={'ordering': ('start_date',), 'permissions': (('view_treatment', 'Can view all Treatments'), ('view_own_treatment', 'Can view own Treatment'), ('add_own_treatment', 'Can add own Treatment'), ('change_own_treatment', 'Can change own Treatment'), ('delete_own_treatment', 'Can delete own Treatment')), 'verbose_name': 'Traitement', 'verbose_name_plural': 'Traitements'},
+ ),
+ migrations.AlterModelOptions(
+ name='treatmentemergencytype',
+ options={'ordering': ('label',), 'verbose_name': "Type d'urgence de traitement", 'verbose_name_plural': "Types d'urgence du traitement"},
+ ),
+ migrations.AlterModelOptions(
+ name='treatmentfile',
+ options={'ordering': ('cached_label',), 'permissions': (('view_treatmentfile', 'Can view all Treatment requests'), ('view_own_treatmentfile', 'Can view own Treatment request'), ('add_own_treatmentfile', 'Can add own Treatment request'), ('change_own_treatmentfile', 'Can change own Treatment request'), ('delete_own_treatmentfile', 'Can delete own Treatment request')), 'verbose_name': 'Demande de traitement', 'verbose_name_plural': 'Demandes de traitement'},
+ ),
+ migrations.AlterModelOptions(
+ name='treatmentfiletype',
+ options={'ordering': ('label',), 'verbose_name': 'Type de demande de traitement', 'verbose_name_plural': 'Types de demande de traitement'},
+ ),
+ migrations.AlterModelOptions(
+ name='treatmentstate',
+ options={'ordering': ('label',), 'verbose_name': "Type d'\xe9tat de traitement", 'verbose_name_plural': "Types d'\xe9tat de traitement"},
+ ),
+ migrations.AlterModelOptions(
+ name='treatmenttype',
+ options={'ordering': ('order', 'label'), 'verbose_name': 'Type de traitement', 'verbose_name_plural': 'Types de traitement'},
+ ),
+ migrations.AlterField(
+ model_name='alterationcausetype',
+ name='available',
+ field=models.BooleanField(default=True, verbose_name='Disponible'),
+ ),
+ migrations.AlterField(
+ model_name='alterationcausetype',
+ name='comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire'),
+ ),
+ migrations.AlterField(
+ model_name='alterationcausetype',
+ name='label',
+ field=models.TextField(verbose_name='D\xe9nomination'),
+ ),
+ migrations.AlterField(
+ model_name='alterationcausetype',
+ name='txt_idx',
+ field=models.TextField(help_text='Le "slug" est une version standardis\xe9e du nom. Il ne contient que des lettres en minuscule, des nombres et des tirets (-). Chaque "slug" doit \xeatre unique dans la typologie.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), "Ce champ ne doit contenir que des lettres, des nombres, des tirets bas _ et des traits d'union.", 'invalid')], verbose_name='Identifiant textuel'),
+ ),
+ migrations.AlterField(
+ model_name='alterationtype',
+ name='available',
+ field=models.BooleanField(default=True, verbose_name='Disponible'),
+ ),
+ migrations.AlterField(
+ model_name='alterationtype',
+ name='comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire'),
+ ),
+ migrations.AlterField(
+ model_name='alterationtype',
+ name='label',
+ field=models.TextField(verbose_name='D\xe9nomination'),
+ ),
+ migrations.AlterField(
+ model_name='alterationtype',
+ name='txt_idx',
+ field=models.TextField(help_text='Le "slug" est une version standardis\xe9e du nom. Il ne contient que des lettres en minuscule, des nombres et des tirets (-). Chaque "slug" doit \xeatre unique dans la typologie.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), "Ce champ ne doit contenir que des lettres, des nombres, des tirets bas _ et des traits d'union.", 'invalid')], verbose_name='Identifiant textuel'),
+ ),
+ migrations.AlterField(
+ model_name='basefind',
+ name='auto_external_id',
+ field=models.BooleanField(default=False, verbose_name="L'identifiant est attribu\xe9 automatiquement"),
+ ),
+ migrations.AlterField(
+ model_name='basefind',
+ name='batch',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='archaeological_finds.BatchType', verbose_name='Lot/objet'),
+ ),
+ migrations.AlterField(
+ model_name='basefind',
+ name='cache_complete_id',
+ field=models.TextField(blank=True, db_index=True, help_text='Valeur en cache - ne pas \xe9diter', null=True, verbose_name='Identifiant complet'),
+ ),
+ migrations.AlterField(
+ model_name='basefind',
+ name='cache_short_id',
+ field=models.TextField(blank=True, db_index=True, help_text='Valeur en cache - ne pas \xe9diter', null=True, verbose_name='Identifiant court'),
+ ),
+ migrations.AlterField(
+ model_name='basefind',
+ name='comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire'),
+ ),
+ migrations.AlterField(
+ model_name='basefind',
+ name='context_record',
+ field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='base_finds', to='archaeological_context_records.ContextRecord', verbose_name="Unit\xe9 d'Enregistrement"),
+ ),
+ migrations.AlterField(
+ model_name='basefind',
+ name='discovery_date',
+ field=models.DateField(blank=True, null=True, verbose_name='Date de d\xe9couverte (exacte ou TPQ)'),
+ ),
+ migrations.AlterField(
+ model_name='basefind',
+ name='discovery_date_taq',
+ field=models.DateField(blank=True, null=True, verbose_name='Date de d\xe9couverte (TAQ)'),
+ ),
+ migrations.AlterField(
+ model_name='basefind',
+ name='estimated_error_x',
+ field=models.FloatField(blank=True, null=True, verbose_name='Erreur estim\xe9e pour X'),
+ ),
+ migrations.AlterField(
+ model_name='basefind',
+ name='estimated_error_y',
+ field=models.FloatField(blank=True, null=True, verbose_name='Erreur estim\xe9e pour Y'),
+ ),
+ migrations.AlterField(
+ model_name='basefind',
+ name='estimated_error_z',
+ field=models.FloatField(blank=True, null=True, verbose_name='Erreur estim\xe9e pour Z'),
+ ),
+ migrations.AlterField(
+ model_name='basefind',
+ name='excavation_id',
+ field=models.TextField(blank=True, null=True, verbose_name='Identifiant fouille'),
+ ),
+ migrations.AlterField(
+ model_name='basefind',
+ name='external_id',
+ field=models.TextField(blank=True, null=True, verbose_name='Identifiant'),
+ ),
+ migrations.AlterField(
+ model_name='basefind',
+ name='history_creator',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to=settings.AUTH_USER_MODEL, verbose_name='Cr\xe9ateur'),
+ ),
+ migrations.AlterField(
+ model_name='basefind',
+ name='history_modifier',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to=settings.AUTH_USER_MODEL, verbose_name='Dernier \xe9diteur'),
+ ),
+ migrations.AlterField(
+ model_name='basefind',
+ name='label',
+ field=models.TextField(verbose_name='Identifiant libre'),
+ ),
+ migrations.AlterField(
+ model_name='basefind',
+ name='line',
+ field=django.contrib.gis.db.models.fields.LineStringField(blank=True, null=True, srid=4326, verbose_name='Ligne'),
+ ),
+ migrations.AlterField(
+ model_name='basefind',
+ name='material_index',
+ field=models.IntegerField(default=0, verbose_name='Index mat\xe9riel'),
+ ),
+ migrations.AlterField(
+ model_name='basefind',
+ name='multi_polygon',
+ field=django.contrib.gis.db.models.fields.MultiPolygonField(blank=True, null=True, srid=4326, verbose_name='Polygones multi-parties'),
+ ),
+ migrations.AlterField(
+ model_name='basefind',
+ name='search_vector',
+ field=django.contrib.postgres.search.SearchVectorField(blank=True, help_text='Auto-rempli \xe0 la sauvegarde', null=True, verbose_name='Vecteur de recherche'),
+ ),
+ migrations.AlterField(
+ model_name='basefind',
+ name='spatial_reference_system',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='ishtar_common.SpatialReferenceSystem', verbose_name='Syst\xe8me de r\xe9f\xe9rence spatiale'),
+ ),
+ migrations.AlterField(
+ model_name='basefind',
+ name='special_interest',
+ field=models.CharField(blank=True, max_length=120, null=True, verbose_name='Int\xe9r\xeat sp\xe9cifique'),
+ ),
+ migrations.AlterField(
+ model_name='basefind',
+ name='topographic_localisation',
+ field=models.CharField(blank=True, max_length=120, null=True, verbose_name='Point topographique'),
+ ),
+ migrations.AlterField(
+ model_name='batchtype',
+ name='available',
+ field=models.BooleanField(default=True, verbose_name='Disponible'),
+ ),
+ migrations.AlterField(
+ model_name='batchtype',
+ name='comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire'),
+ ),
+ migrations.AlterField(
+ model_name='batchtype',
+ name='label',
+ field=models.TextField(verbose_name='D\xe9nomination'),
+ ),
+ migrations.AlterField(
+ model_name='batchtype',
+ name='order',
+ field=models.IntegerField(default=10, verbose_name='Ordre'),
+ ),
+ migrations.AlterField(
+ model_name='batchtype',
+ name='txt_idx',
+ field=models.TextField(help_text='Le "slug" est une version standardis\xe9e du nom. Il ne contient que des lettres en minuscule, des nombres et des tirets (-). Chaque "slug" doit \xeatre unique dans la typologie.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), "Ce champ ne doit contenir que des lettres, des nombres, des tirets bas _ et des traits d'union.", 'invalid')], verbose_name='Identifiant textuel'),
+ ),
+ migrations.AlterField(
+ model_name='checkedtype',
+ name='available',
+ field=models.BooleanField(default=True, verbose_name='Disponible'),
+ ),
+ migrations.AlterField(
+ model_name='checkedtype',
+ name='comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire'),
+ ),
+ migrations.AlterField(
+ model_name='checkedtype',
+ name='label',
+ field=models.TextField(verbose_name='D\xe9nomination'),
+ ),
+ migrations.AlterField(
+ model_name='checkedtype',
+ name='order',
+ field=models.IntegerField(default=10, verbose_name='Ordre'),
+ ),
+ migrations.AlterField(
+ model_name='checkedtype',
+ name='txt_idx',
+ field=models.TextField(help_text='Le "slug" est une version standardis\xe9e du nom. Il ne contient que des lettres en minuscule, des nombres et des tirets (-). Chaque "slug" doit \xeatre unique dans la typologie.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), "Ce champ ne doit contenir que des lettres, des nombres, des tirets bas _ et des traits d'union.", 'invalid')], verbose_name='Identifiant textuel'),
+ ),
+ migrations.AlterField(
+ model_name='communicabilitytype',
+ name='available',
+ field=models.BooleanField(default=True, verbose_name='Disponible'),
+ ),
+ migrations.AlterField(
+ model_name='communicabilitytype',
+ name='comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire'),
+ ),
+ migrations.AlterField(
+ model_name='communicabilitytype',
+ name='label',
+ field=models.TextField(verbose_name='D\xe9nomination'),
+ ),
+ migrations.AlterField(
+ model_name='communicabilitytype',
+ name='txt_idx',
+ field=models.TextField(help_text='Le "slug" est une version standardis\xe9e du nom. Il ne contient que des lettres en minuscule, des nombres et des tirets (-). Chaque "slug" doit \xeatre unique dans la typologie.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), "Ce champ ne doit contenir que des lettres, des nombres, des tirets bas _ et des traits d'union.", 'invalid')], verbose_name='Identifiant textuel'),
+ ),
+ migrations.AlterField(
+ model_name='conservatorystate',
+ name='available',
+ field=models.BooleanField(default=True, verbose_name='Disponible'),
+ ),
+ migrations.AlterField(
+ model_name='conservatorystate',
+ name='comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire'),
+ ),
+ migrations.AlterField(
+ model_name='conservatorystate',
+ name='label',
+ field=models.TextField(verbose_name='D\xe9nomination'),
+ ),
+ migrations.AlterField(
+ model_name='conservatorystate',
+ name='order',
+ field=models.IntegerField(default=10, verbose_name='Ordre'),
+ ),
+ migrations.AlterField(
+ model_name='conservatorystate',
+ name='txt_idx',
+ field=models.TextField(help_text='Le "slug" est une version standardis\xe9e du nom. Il ne contient que des lettres en minuscule, des nombres et des tirets (-). Chaque "slug" doit \xeatre unique dans la typologie.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), "Ce champ ne doit contenir que des lettres, des nombres, des tirets bas _ et des traits d'union.", 'invalid')], verbose_name='Identifiant textuel'),
+ ),
+ migrations.AlterField(
+ model_name='find',
+ name='alteration_causes',
+ field=models.ManyToManyField(blank=True, related_name='finds', to='archaeological_finds.AlterationCauseType', verbose_name="Cause d'alt\xe9ration"),
+ ),
+ migrations.AlterField(
+ model_name='find',
+ name='alterations',
+ field=models.ManyToManyField(blank=True, related_name='finds', to='archaeological_finds.AlterationType', verbose_name='Alt\xe9ration'),
+ ),
+ migrations.AlterField(
+ model_name='find',
+ name='appraisal_date',
+ field=models.DateField(blank=True, null=True, verbose_name="Date d'\xe9valuation"),
+ ),
+ migrations.AlterField(
+ model_name='find',
+ name='auto_external_id',
+ field=models.BooleanField(default=False, verbose_name="L'identifiant est attribu\xe9 automatiquement"),
+ ),
+ migrations.AlterField(
+ model_name='find',
+ name='base_finds',
+ field=models.ManyToManyField(related_name='find', to='archaeological_finds.BaseFind', verbose_name="Mobilier d'origine"),
+ ),
+ migrations.AlterField(
+ model_name='find',
+ name='cached_label',
+ field=models.TextField(blank=True, db_index=True, null=True, verbose_name='Nom en cache'),
+ ),
+ migrations.AlterField(
+ model_name='find',
+ name='check_date',
+ field=models.DateField(default=datetime.date.today, verbose_name='Date de v\xe9rification'),
+ ),
+ migrations.AlterField(
+ model_name='find',
+ name='checked_type',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='archaeological_finds.CheckedType', verbose_name='V\xe9rification'),
+ ),
+ migrations.AlterField(
+ model_name='find',
+ name='clutter_height',
+ field=models.FloatField(blank=True, null=True, verbose_name='Encombrement - hauteur (cm)'),
+ ),
+ migrations.AlterField(
+ model_name='find',
+ name='clutter_long_side',
+ field=models.FloatField(blank=True, null=True, verbose_name='Encombrement - grand c\xf4t\xe9 (cm)'),
+ ),
+ migrations.AlterField(
+ model_name='find',
+ name='clutter_short_side',
+ field=models.FloatField(blank=True, null=True, verbose_name='Encombrement - petit c\xf4t\xe9 (cm)'),
+ ),
+ migrations.AlterField(
+ model_name='find',
+ name='comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire'),
+ ),
+ migrations.AlterField(
+ model_name='find',
+ name='communicabilities',
+ field=models.ManyToManyField(blank=True, related_name='find', to='archaeological_finds.CommunicabilityType', verbose_name='Communicabilit\xe9'),
+ ),
+ migrations.AlterField(
+ model_name='find',
+ name='conservatory_comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire relatif \xe0 la conservation'),
+ ),
+ migrations.AlterField(
+ model_name='find',
+ name='conservatory_state',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='archaeological_finds.ConservatoryState', verbose_name='\xc9tat de conservation'),
+ ),
+ migrations.AlterField(
+ model_name='find',
+ name='container',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='finds', to='archaeological_warehouse.Container', verbose_name='Contenant'),
+ ),
+ migrations.AlterField(
+ model_name='find',
+ name='dating_comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire relatif aux datations'),
+ ),
+ migrations.AlterField(
+ model_name='find',
+ name='datings',
+ field=models.ManyToManyField(related_name='find', to='archaeological_context_records.Dating', verbose_name='Datation'),
+ ),
+ migrations.AlterField(
+ model_name='find',
+ name='decoration',
+ field=models.TextField(blank=True, null=True, verbose_name='D\xe9cor'),
+ ),
+ migrations.AlterField(
+ model_name='find',
+ name='denomination',
+ field=models.TextField(blank=True, null=True, verbose_name='D\xe9nomination'),
+ ),
+ migrations.AlterField(
+ model_name='find',
+ name='diameter',
+ field=models.FloatField(blank=True, null=True, verbose_name='Diam\xe8tre (cm)'),
+ ),
+ migrations.AlterField(
+ model_name='find',
+ name='dimensions_comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire relatif aux dimensions'),
+ ),
+ migrations.AlterField(
+ model_name='find',
+ name='downstream_treatment',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='upstream', to='archaeological_finds.Treatment', verbose_name='Traitement aval'),
+ ),
+ migrations.AlterField(
+ model_name='find',
+ name='estimated_value',
+ field=models.FloatField(blank=True, null=True, verbose_name='Valeur estim\xe9e'),
+ ),
+ migrations.AlterField(
+ model_name='find',
+ name='external_id',
+ field=models.TextField(blank=True, null=True, verbose_name='Identifiant'),
+ ),
+ migrations.AlterField(
+ model_name='find',
+ name='find_number',
+ field=models.IntegerField(blank=True, null=True, verbose_name='Mobilier (en nombre)'),
+ ),
+ migrations.AlterField(
+ model_name='find',
+ name='height',
+ field=models.FloatField(blank=True, null=True, verbose_name='Hauteur (cm)'),
+ ),
+ migrations.AlterField(
+ model_name='find',
+ name='history_creator',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to=settings.AUTH_USER_MODEL, verbose_name='Cr\xe9ateur'),
+ ),
+ migrations.AlterField(
+ model_name='find',
+ name='history_modifier',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to=settings.AUTH_USER_MODEL, verbose_name='Dernier \xe9diteur'),
+ ),
+ migrations.AlterField(
+ model_name='find',
+ name='insurance_value',
+ field=models.FloatField(blank=True, null=True, verbose_name="Valeur d'assurance"),
+ ),
+ migrations.AlterField(
+ model_name='find',
+ name='integrities',
+ field=models.ManyToManyField(blank=True, related_name='find', to='archaeological_finds.IntegrityType', verbose_name='Int\xe9grit\xe9 / int\xe9r\xeat'),
+ ),
+ migrations.AlterField(
+ model_name='find',
+ name='is_complete',
+ field=models.NullBooleanField(verbose_name='Est complet ?'),
+ ),
+ migrations.AlterField(
+ model_name='find',
+ name='label',
+ field=models.TextField(verbose_name='Identifiant libre'),
+ ),
+ migrations.AlterField(
+ model_name='find',
+ name='length',
+ field=models.FloatField(blank=True, null=True, verbose_name='Longueur (cm)'),
+ ),
+ migrations.AlterField(
+ model_name='find',
+ name='manufacturing_place',
+ field=models.TextField(blank=True, null=True, verbose_name='Lieu de fabrication'),
+ ),
+ migrations.AlterField(
+ model_name='find',
+ name='mark',
+ field=models.TextField(blank=True, null=True, verbose_name='Marquage'),
+ ),
+ migrations.AlterField(
+ model_name='find',
+ name='material_type_quality',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='finds', to='archaeological_finds.MaterialTypeQualityType', verbose_name='Qualit\xe9 du type de mat\xe9riaux'),
+ ),
+ migrations.AlterField(
+ model_name='find',
+ name='material_types',
+ field=models.ManyToManyField(blank=True, related_name='finds', to='archaeological_finds.MaterialType', verbose_name='Types de mat\xe9riau'),
+ ),
+ migrations.AlterField(
+ model_name='find',
+ name='min_number_of_individuals',
+ field=models.IntegerField(blank=True, null=True, verbose_name="Nombre minimum d'individus (NMI)"),
+ ),
+ migrations.AlterField(
+ model_name='find',
+ name='museum_id',
+ field=models.TextField(blank=True, null=True, verbose_name='Identifiant mus\xe9e'),
+ ),
+ migrations.AlterField(
+ model_name='find',
+ name='object_type_quality',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='finds', to='archaeological_finds.ObjectTypeQualityType', verbose_name="Qualit\xe9 du type d'objet"),
+ ),
+ migrations.AlterField(
+ model_name='find',
+ name='object_types',
+ field=models.ManyToManyField(blank=True, related_name='find', to='archaeological_finds.ObjectType', verbose_name="Types d'objet"),
+ ),
+ migrations.AlterField(
+ model_name='find',
+ name='order',
+ field=models.IntegerField(default=1, verbose_name='Ordre'),
+ ),
+ migrations.AlterField(
+ model_name='find',
+ name='preservation_to_considers',
+ field=models.ManyToManyField(blank=True, related_name='finds_recommended', to='archaeological_finds.TreatmentType', verbose_name='Traitements recommand\xe9s'),
+ ),
+ migrations.AlterField(
+ model_name='find',
+ name='previous_id',
+ field=models.TextField(blank=True, null=True, verbose_name='Identifiant pr\xe9c\xe9dent'),
+ ),
+ migrations.AlterField(
+ model_name='find',
+ name='remarkabilities',
+ field=models.ManyToManyField(blank=True, related_name='find', to='archaeological_finds.RemarkabilityType', verbose_name='Remarquabilit\xe9'),
+ ),
+ migrations.AlterField(
+ model_name='find',
+ name='seal_number',
+ field=models.TextField(blank=True, null=True, verbose_name='Num\xe9ro de scell\xe9'),
+ ),
+ migrations.AlterField(
+ model_name='find',
+ name='search_vector',
+ field=django.contrib.postgres.search.SearchVectorField(blank=True, help_text='Auto-rempli \xe0 la sauvegarde', null=True, verbose_name='Vecteur de recherche'),
+ ),
+ migrations.AlterField(
+ model_name='find',
+ name='thickness',
+ field=models.FloatField(blank=True, null=True, verbose_name='\xc9paisseur (cm)'),
+ ),
+ migrations.AlterField(
+ model_name='find',
+ name='treatment_emergency',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='archaeological_finds.TreatmentEmergencyType', verbose_name='Urgence du traitement'),
+ ),
+ migrations.AlterField(
+ model_name='find',
+ name='treatments',
+ field=models.ManyToManyField(blank=True, help_text='Related treatments when no new find is created', related_name='finds', to='archaeological_finds.Treatment', verbose_name='Traitements'),
+ ),
+ migrations.AlterField(
+ model_name='find',
+ name='upstream_treatment',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='downstream', to='archaeological_finds.Treatment', verbose_name='Traitement amont'),
+ ),
+ migrations.AlterField(
+ model_name='find',
+ name='weight',
+ field=models.FloatField(blank=True, null=True, verbose_name='Poids'),
+ ),
+ migrations.AlterField(
+ model_name='find',
+ name='weight_unit',
+ field=models.CharField(blank=True, choices=[(b'g', 'g'), (b'kg', 'kg')], max_length=4, null=True, verbose_name='Unit\xe9 de poids'),
+ ),
+ migrations.AlterField(
+ model_name='find',
+ name='width',
+ field=models.FloatField(blank=True, null=True, verbose_name='Largeur (cm)'),
+ ),
+ migrations.AlterField(
+ model_name='findbasket',
+ name='available',
+ field=models.BooleanField(default=True, verbose_name='Disponible'),
+ ),
+ migrations.AlterField(
+ model_name='findbasket',
+ name='comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire'),
+ ),
+ migrations.AlterField(
+ model_name='findbasket',
+ name='label',
+ field=models.CharField(max_length=1000, verbose_name='D\xe9nomination'),
+ ),
+ migrations.AlterField(
+ model_name='findbasket',
+ name='search_vector',
+ field=django.contrib.postgres.search.SearchVectorField(blank=True, help_text='Auto-rempli \xe0 la sauvegarde', null=True, verbose_name='Vecteur de recherche'),
+ ),
+ migrations.AlterField(
+ model_name='findbasket',
+ name='user',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='findbaskets', to='ishtar_common.IshtarUser', verbose_name='Propri\xe9taire'),
+ ),
+ migrations.AlterField(
+ model_name='historicalbasefind',
+ name='auto_external_id',
+ field=models.BooleanField(default=False, verbose_name="L'identifiant est attribu\xe9 automatiquement"),
+ ),
+ migrations.AlterField(
+ model_name='historicalbasefind',
+ name='cache_complete_id',
+ field=models.TextField(blank=True, db_index=True, help_text='Valeur en cache - ne pas \xe9diter', null=True, verbose_name='Identifiant complet'),
+ ),
+ migrations.AlterField(
+ model_name='historicalbasefind',
+ name='cache_short_id',
+ field=models.TextField(blank=True, db_index=True, help_text='Valeur en cache - ne pas \xe9diter', null=True, verbose_name='Identifiant court'),
+ ),
+ migrations.AlterField(
+ model_name='historicalbasefind',
+ name='comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire'),
+ ),
+ migrations.AlterField(
+ model_name='historicalbasefind',
+ name='discovery_date',
+ field=models.DateField(blank=True, null=True, verbose_name='Date de d\xe9couverte (exacte ou TPQ)'),
+ ),
+ migrations.AlterField(
+ model_name='historicalbasefind',
+ name='discovery_date_taq',
+ field=models.DateField(blank=True, null=True, verbose_name='Date de d\xe9couverte (TAQ)'),
+ ),
+ migrations.AlterField(
+ model_name='historicalbasefind',
+ name='estimated_error_x',
+ field=models.FloatField(blank=True, null=True, verbose_name='Erreur estim\xe9e pour X'),
+ ),
+ migrations.AlterField(
+ model_name='historicalbasefind',
+ name='estimated_error_y',
+ field=models.FloatField(blank=True, null=True, verbose_name='Erreur estim\xe9e pour Y'),
+ ),
+ migrations.AlterField(
+ model_name='historicalbasefind',
+ name='estimated_error_z',
+ field=models.FloatField(blank=True, null=True, verbose_name='Erreur estim\xe9e pour Z'),
+ ),
+ migrations.AlterField(
+ model_name='historicalbasefind',
+ name='excavation_id',
+ field=models.TextField(blank=True, null=True, verbose_name='Identifiant fouille'),
+ ),
+ migrations.AlterField(
+ model_name='historicalbasefind',
+ name='external_id',
+ field=models.TextField(blank=True, null=True, verbose_name='Identifiant'),
+ ),
+ migrations.AlterField(
+ model_name='historicalbasefind',
+ name='label',
+ field=models.TextField(verbose_name='Identifiant libre'),
+ ),
+ migrations.AlterField(
+ model_name='historicalbasefind',
+ name='line',
+ field=django.contrib.gis.db.models.fields.LineStringField(blank=True, null=True, srid=4326, verbose_name='Ligne'),
+ ),
+ migrations.AlterField(
+ model_name='historicalbasefind',
+ name='material_index',
+ field=models.IntegerField(default=0, verbose_name='Index mat\xe9riel'),
+ ),
+ migrations.AlterField(
+ model_name='historicalbasefind',
+ name='multi_polygon',
+ field=django.contrib.gis.db.models.fields.MultiPolygonField(blank=True, null=True, srid=4326, verbose_name='Polygones multi-parties'),
+ ),
+ migrations.AlterField(
+ model_name='historicalbasefind',
+ name='search_vector',
+ field=django.contrib.postgres.search.SearchVectorField(blank=True, help_text='Auto-rempli \xe0 la sauvegarde', null=True, verbose_name='Vecteur de recherche'),
+ ),
+ migrations.AlterField(
+ model_name='historicalbasefind',
+ name='special_interest',
+ field=models.CharField(blank=True, max_length=120, null=True, verbose_name='Int\xe9r\xeat sp\xe9cifique'),
+ ),
+ migrations.AlterField(
+ model_name='historicalbasefind',
+ name='topographic_localisation',
+ field=models.CharField(blank=True, max_length=120, null=True, verbose_name='Point topographique'),
+ ),
+ migrations.AlterField(
+ model_name='historicalfind',
+ name='appraisal_date',
+ field=models.DateField(blank=True, null=True, verbose_name="Date d'\xe9valuation"),
+ ),
+ migrations.AlterField(
+ model_name='historicalfind',
+ name='auto_external_id',
+ field=models.BooleanField(default=False, verbose_name="L'identifiant est attribu\xe9 automatiquement"),
+ ),
+ migrations.AlterField(
+ model_name='historicalfind',
+ name='cached_label',
+ field=models.TextField(blank=True, db_index=True, null=True, verbose_name='Nom en cache'),
+ ),
+ migrations.AlterField(
+ model_name='historicalfind',
+ name='check_date',
+ field=models.DateField(default=datetime.date.today, verbose_name='Date de v\xe9rification'),
+ ),
+ migrations.AlterField(
+ model_name='historicalfind',
+ name='clutter_height',
+ field=models.FloatField(blank=True, null=True, verbose_name='Encombrement - hauteur (cm)'),
+ ),
+ migrations.AlterField(
+ model_name='historicalfind',
+ name='clutter_long_side',
+ field=models.FloatField(blank=True, null=True, verbose_name='Encombrement - grand c\xf4t\xe9 (cm)'),
+ ),
+ migrations.AlterField(
+ model_name='historicalfind',
+ name='clutter_short_side',
+ field=models.FloatField(blank=True, null=True, verbose_name='Encombrement - petit c\xf4t\xe9 (cm)'),
+ ),
+ migrations.AlterField(
+ model_name='historicalfind',
+ name='comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire'),
+ ),
+ migrations.AlterField(
+ model_name='historicalfind',
+ name='conservatory_comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire relatif \xe0 la conservation'),
+ ),
+ migrations.AlterField(
+ model_name='historicalfind',
+ name='dating_comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire relatif aux datations'),
+ ),
+ migrations.AlterField(
+ model_name='historicalfind',
+ name='decoration',
+ field=models.TextField(blank=True, null=True, verbose_name='D\xe9cor'),
+ ),
+ migrations.AlterField(
+ model_name='historicalfind',
+ name='denomination',
+ field=models.TextField(blank=True, null=True, verbose_name='D\xe9nomination'),
+ ),
+ migrations.AlterField(
+ model_name='historicalfind',
+ name='diameter',
+ field=models.FloatField(blank=True, null=True, verbose_name='Diam\xe8tre (cm)'),
+ ),
+ migrations.AlterField(
+ model_name='historicalfind',
+ name='dimensions_comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire relatif aux dimensions'),
+ ),
+ migrations.AlterField(
+ model_name='historicalfind',
+ name='estimated_value',
+ field=models.FloatField(blank=True, null=True, verbose_name='Valeur estim\xe9e'),
+ ),
+ migrations.AlterField(
+ model_name='historicalfind',
+ name='external_id',
+ field=models.TextField(blank=True, null=True, verbose_name='Identifiant'),
+ ),
+ migrations.AlterField(
+ model_name='historicalfind',
+ name='find_number',
+ field=models.IntegerField(blank=True, null=True, verbose_name='Mobilier (en nombre)'),
+ ),
+ migrations.AlterField(
+ model_name='historicalfind',
+ name='height',
+ field=models.FloatField(blank=True, null=True, verbose_name='Hauteur (cm)'),
+ ),
+ migrations.AlterField(
+ model_name='historicalfind',
+ name='insurance_value',
+ field=models.FloatField(blank=True, null=True, verbose_name="Valeur d'assurance"),
+ ),
+ migrations.AlterField(
+ model_name='historicalfind',
+ name='is_complete',
+ field=models.NullBooleanField(verbose_name='Est complet ?'),
+ ),
+ migrations.AlterField(
+ model_name='historicalfind',
+ name='label',
+ field=models.TextField(verbose_name='Identifiant libre'),
+ ),
+ migrations.AlterField(
+ model_name='historicalfind',
+ name='length',
+ field=models.FloatField(blank=True, null=True, verbose_name='Longueur (cm)'),
+ ),
+ migrations.AlterField(
+ model_name='historicalfind',
+ name='manufacturing_place',
+ field=models.TextField(blank=True, null=True, verbose_name='Lieu de fabrication'),
+ ),
+ migrations.AlterField(
+ model_name='historicalfind',
+ name='mark',
+ field=models.TextField(blank=True, null=True, verbose_name='Marquage'),
+ ),
+ migrations.AlterField(
+ model_name='historicalfind',
+ name='min_number_of_individuals',
+ field=models.IntegerField(blank=True, null=True, verbose_name="Nombre minimum d'individus (NMI)"),
+ ),
+ migrations.AlterField(
+ model_name='historicalfind',
+ name='museum_id',
+ field=models.TextField(blank=True, null=True, verbose_name='Identifiant mus\xe9e'),
+ ),
+ migrations.AlterField(
+ model_name='historicalfind',
+ name='order',
+ field=models.IntegerField(default=1, verbose_name='Ordre'),
+ ),
+ migrations.AlterField(
+ model_name='historicalfind',
+ name='previous_id',
+ field=models.TextField(blank=True, null=True, verbose_name='Identifiant pr\xe9c\xe9dent'),
+ ),
+ migrations.AlterField(
+ model_name='historicalfind',
+ name='seal_number',
+ field=models.TextField(blank=True, null=True, verbose_name='Num\xe9ro de scell\xe9'),
+ ),
+ migrations.AlterField(
+ model_name='historicalfind',
+ name='search_vector',
+ field=django.contrib.postgres.search.SearchVectorField(blank=True, help_text='Auto-rempli \xe0 la sauvegarde', null=True, verbose_name='Vecteur de recherche'),
+ ),
+ migrations.AlterField(
+ model_name='historicalfind',
+ name='thickness',
+ field=models.FloatField(blank=True, null=True, verbose_name='\xc9paisseur (cm)'),
+ ),
+ migrations.AlterField(
+ model_name='historicalfind',
+ name='weight',
+ field=models.FloatField(blank=True, null=True, verbose_name='Poids'),
+ ),
+ migrations.AlterField(
+ model_name='historicalfind',
+ name='weight_unit',
+ field=models.CharField(blank=True, choices=[(b'g', 'g'), (b'kg', 'kg')], max_length=4, null=True, verbose_name='Unit\xe9 de poids'),
+ ),
+ migrations.AlterField(
+ model_name='historicalfind',
+ name='width',
+ field=models.FloatField(blank=True, null=True, verbose_name='Largeur (cm)'),
+ ),
+ migrations.AlterField(
+ model_name='historicaltreatment',
+ name='cached_label',
+ field=models.TextField(blank=True, db_index=True, null=True, verbose_name='Nom en cache'),
+ ),
+ migrations.AlterField(
+ model_name='historicaltreatment',
+ name='comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire'),
+ ),
+ migrations.AlterField(
+ model_name='historicaltreatment',
+ name='end_date',
+ field=models.DateField(blank=True, null=True, verbose_name='Date de cl\xf4ture'),
+ ),
+ migrations.AlterField(
+ model_name='historicaltreatment',
+ name='estimated_cost',
+ field=models.FloatField(blank=True, null=True, verbose_name='Co\xfbt estim\xe9'),
+ ),
+ migrations.AlterField(
+ model_name='historicaltreatment',
+ name='external_id',
+ field=models.CharField(blank=True, max_length=200, null=True, verbose_name='Identifiant'),
+ ),
+ migrations.AlterField(
+ model_name='historicaltreatment',
+ name='goal',
+ field=models.TextField(blank=True, null=True, verbose_name='But'),
+ ),
+ migrations.AlterField(
+ model_name='historicaltreatment',
+ name='insurance_cost',
+ field=models.FloatField(blank=True, null=True, verbose_name="Co\xfbt d'assurance"),
+ ),
+ migrations.AlterField(
+ model_name='historicaltreatment',
+ name='label',
+ field=models.CharField(blank=True, max_length=200, null=True, verbose_name='D\xe9nomination'),
+ ),
+ migrations.AlterField(
+ model_name='historicaltreatment',
+ name='other_reference',
+ field=models.CharField(blank=True, max_length=200, null=True, verbose_name='Autre r\xe9f.'),
+ ),
+ migrations.AlterField(
+ model_name='historicaltreatment',
+ name='quoted_cost',
+ field=models.FloatField(blank=True, null=True, verbose_name='Co\xfbt devis\xe9'),
+ ),
+ migrations.AlterField(
+ model_name='historicaltreatment',
+ name='realized_cost',
+ field=models.FloatField(blank=True, null=True, verbose_name='Co\xfbt r\xe9alis\xe9'),
+ ),
+ migrations.AlterField(
+ model_name='historicaltreatment',
+ name='search_vector',
+ field=django.contrib.postgres.search.SearchVectorField(blank=True, help_text='Auto-rempli \xe0 la sauvegarde', null=True, verbose_name='Vecteur de recherche'),
+ ),
+ migrations.AlterField(
+ model_name='historicaltreatment',
+ name='start_date',
+ field=models.DateField(blank=True, null=True, verbose_name='Date de d\xe9but'),
+ ),
+ migrations.AlterField(
+ model_name='historicaltreatment',
+ name='year',
+ field=models.IntegerField(default=ishtar_common.utils.get_current_year, verbose_name='Ann\xe9e'),
+ ),
+ migrations.AlterField(
+ model_name='historicaltreatmentfile',
+ name='cached_label',
+ field=models.TextField(blank=True, db_index=True, null=True, verbose_name='Nom en cache'),
+ ),
+ migrations.AlterField(
+ model_name='historicaltreatmentfile',
+ name='comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire'),
+ ),
+ migrations.AlterField(
+ model_name='historicaltreatmentfile',
+ name='creation_date',
+ field=models.DateField(blank=True, default=datetime.date.today, null=True, verbose_name='Date de cr\xe9ation'),
+ ),
+ migrations.AlterField(
+ model_name='historicaltreatmentfile',
+ name='end_date',
+ field=models.DateField(blank=True, null=True, verbose_name='Date de cl\xf4ture'),
+ ),
+ migrations.AlterField(
+ model_name='historicaltreatmentfile',
+ name='external_id',
+ field=models.CharField(blank=True, max_length=200, null=True, verbose_name='Identifiant'),
+ ),
+ migrations.AlterField(
+ model_name='historicaltreatmentfile',
+ name='internal_reference',
+ field=models.CharField(blank=True, max_length=200, null=True, verbose_name='R\xe9f\xe9rence interne'),
+ ),
+ migrations.AlterField(
+ model_name='historicaltreatmentfile',
+ name='name',
+ field=models.TextField(blank=True, null=True, verbose_name='Nom'),
+ ),
+ migrations.AlterField(
+ model_name='historicaltreatmentfile',
+ name='reception_date',
+ field=models.DateField(blank=True, null=True, verbose_name='Date de r\xe9ception'),
+ ),
+ migrations.AlterField(
+ model_name='historicaltreatmentfile',
+ name='search_vector',
+ field=django.contrib.postgres.search.SearchVectorField(blank=True, help_text='Auto-rempli \xe0 la sauvegarde', null=True, verbose_name='Vecteur de recherche'),
+ ),
+ migrations.AlterField(
+ model_name='historicaltreatmentfile',
+ name='year',
+ field=models.IntegerField(default=ishtar_common.utils.get_current_year, verbose_name='Ann\xe9e'),
+ ),
+ migrations.AlterField(
+ model_name='integritytype',
+ name='available',
+ field=models.BooleanField(default=True, verbose_name='Disponible'),
+ ),
+ migrations.AlterField(
+ model_name='integritytype',
+ name='comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire'),
+ ),
+ migrations.AlterField(
+ model_name='integritytype',
+ name='label',
+ field=models.TextField(verbose_name='D\xe9nomination'),
+ ),
+ migrations.AlterField(
+ model_name='integritytype',
+ name='txt_idx',
+ field=models.TextField(help_text='Le "slug" est une version standardis\xe9e du nom. Il ne contient que des lettres en minuscule, des nombres et des tirets (-). Chaque "slug" doit \xeatre unique dans la typologie.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), "Ce champ ne doit contenir que des lettres, des nombres, des tirets bas _ et des traits d'union.", 'invalid')], verbose_name='Identifiant textuel'),
+ ),
+ migrations.AlterField(
+ model_name='materialtype',
+ name='available',
+ field=models.BooleanField(default=True, verbose_name='Disponible'),
+ ),
+ migrations.AlterField(
+ model_name='materialtype',
+ name='comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire'),
+ ),
+ migrations.AlterField(
+ model_name='materialtype',
+ name='label',
+ field=models.TextField(verbose_name='D\xe9nomination'),
+ ),
+ migrations.AlterField(
+ model_name='materialtype',
+ name='recommendation',
+ field=models.TextField(blank=True, null=True, verbose_name='Recommandation'),
+ ),
+ migrations.AlterField(
+ model_name='materialtype',
+ name='txt_idx',
+ field=models.TextField(help_text='Le "slug" est une version standardis\xe9e du nom. Il ne contient que des lettres en minuscule, des nombres et des tirets (-). Chaque "slug" doit \xeatre unique dans la typologie.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), "Ce champ ne doit contenir que des lettres, des nombres, des tirets bas _ et des traits d'union.", 'invalid')], verbose_name='Identifiant textuel'),
+ ),
+ migrations.AlterField(
+ model_name='materialtypequalitytype',
+ name='available',
+ field=models.BooleanField(default=True, verbose_name='Disponible'),
+ ),
+ migrations.AlterField(
+ model_name='materialtypequalitytype',
+ name='comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire'),
+ ),
+ migrations.AlterField(
+ model_name='materialtypequalitytype',
+ name='label',
+ field=models.TextField(verbose_name='D\xe9nomination'),
+ ),
+ migrations.AlterField(
+ model_name='materialtypequalitytype',
+ name='order',
+ field=models.IntegerField(default=10, verbose_name='Ordre'),
+ ),
+ migrations.AlterField(
+ model_name='materialtypequalitytype',
+ name='txt_idx',
+ field=models.TextField(help_text='Le "slug" est une version standardis\xe9e du nom. Il ne contient que des lettres en minuscule, des nombres et des tirets (-). Chaque "slug" doit \xeatre unique dans la typologie.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), "Ce champ ne doit contenir que des lettres, des nombres, des tirets bas _ et des traits d'union.", 'invalid')], verbose_name='Identifiant textuel'),
+ ),
+ migrations.AlterField(
+ model_name='objecttype',
+ name='available',
+ field=models.BooleanField(default=True, verbose_name='Disponible'),
+ ),
+ migrations.AlterField(
+ model_name='objecttype',
+ name='comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire'),
+ ),
+ migrations.AlterField(
+ model_name='objecttype',
+ name='label',
+ field=models.TextField(verbose_name='D\xe9nomination'),
+ ),
+ migrations.AlterField(
+ model_name='objecttype',
+ name='txt_idx',
+ field=models.TextField(help_text='Le "slug" est une version standardis\xe9e du nom. Il ne contient que des lettres en minuscule, des nombres et des tirets (-). Chaque "slug" doit \xeatre unique dans la typologie.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), "Ce champ ne doit contenir que des lettres, des nombres, des tirets bas _ et des traits d'union.", 'invalid')], verbose_name='Identifiant textuel'),
+ ),
+ migrations.AlterField(
+ model_name='objecttypequalitytype',
+ name='available',
+ field=models.BooleanField(default=True, verbose_name='Disponible'),
+ ),
+ migrations.AlterField(
+ model_name='objecttypequalitytype',
+ name='comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire'),
+ ),
+ migrations.AlterField(
+ model_name='objecttypequalitytype',
+ name='label',
+ field=models.TextField(verbose_name='D\xe9nomination'),
+ ),
+ migrations.AlterField(
+ model_name='objecttypequalitytype',
+ name='order',
+ field=models.IntegerField(default=10, verbose_name='Ordre'),
+ ),
+ migrations.AlterField(
+ model_name='objecttypequalitytype',
+ name='txt_idx',
+ field=models.TextField(help_text='Le "slug" est une version standardis\xe9e du nom. Il ne contient que des lettres en minuscule, des nombres et des tirets (-). Chaque "slug" doit \xeatre unique dans la typologie.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), "Ce champ ne doit contenir que des lettres, des nombres, des tirets bas _ et des traits d'union.", 'invalid')], verbose_name='Identifiant textuel'),
+ ),
+ migrations.AlterField(
+ model_name='property',
+ name='administrative_act',
+ field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='archaeological_operations.AdministrativeAct', verbose_name='Acte administratif'),
+ ),
+ migrations.AlterField(
+ model_name='property',
+ name='end_date',
+ field=models.DateField(verbose_name='Date de fin'),
+ ),
+ migrations.AlterField(
+ model_name='property',
+ name='find',
+ field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='archaeological_finds.Find', verbose_name='Mobilier'),
+ ),
+ migrations.AlterField(
+ model_name='property',
+ name='history_creator',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to=settings.AUTH_USER_MODEL, verbose_name='Cr\xe9ateur'),
+ ),
+ migrations.AlterField(
+ model_name='property',
+ name='history_modifier',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to=settings.AUTH_USER_MODEL, verbose_name='Dernier \xe9diteur'),
+ ),
+ migrations.AlterField(
+ model_name='property',
+ name='person',
+ field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='properties', to='ishtar_common.Person', verbose_name='Personne'),
+ ),
+ migrations.AlterField(
+ model_name='property',
+ name='search_vector',
+ field=django.contrib.postgres.search.SearchVectorField(blank=True, help_text='Auto-rempli \xe0 la sauvegarde', null=True, verbose_name='Vecteur de recherche'),
+ ),
+ migrations.AlterField(
+ model_name='property',
+ name='start_date',
+ field=models.DateField(verbose_name='Date de d\xe9but'),
+ ),
+ migrations.AlterField(
+ model_name='remarkabilitytype',
+ name='available',
+ field=models.BooleanField(default=True, verbose_name='Disponible'),
+ ),
+ migrations.AlterField(
+ model_name='remarkabilitytype',
+ name='comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire'),
+ ),
+ migrations.AlterField(
+ model_name='remarkabilitytype',
+ name='label',
+ field=models.TextField(verbose_name='D\xe9nomination'),
+ ),
+ migrations.AlterField(
+ model_name='remarkabilitytype',
+ name='txt_idx',
+ field=models.TextField(help_text='Le "slug" est une version standardis\xe9e du nom. Il ne contient que des lettres en minuscule, des nombres et des tirets (-). Chaque "slug" doit \xeatre unique dans la typologie.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), "Ce champ ne doit contenir que des lettres, des nombres, des tirets bas _ et des traits d'union.", 'invalid')], verbose_name='Identifiant textuel'),
+ ),
+ migrations.AlterField(
+ model_name='treatment',
+ name='cached_label',
+ field=models.TextField(blank=True, db_index=True, null=True, verbose_name='Nom en cache'),
+ ),
+ migrations.AlterField(
+ model_name='treatment',
+ name='comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire'),
+ ),
+ migrations.AlterField(
+ model_name='treatment',
+ name='container',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='archaeological_warehouse.Container', verbose_name='Contenant'),
+ ),
+ migrations.AlterField(
+ model_name='treatment',
+ name='end_date',
+ field=models.DateField(blank=True, null=True, verbose_name='Date de cl\xf4ture'),
+ ),
+ migrations.AlterField(
+ model_name='treatment',
+ name='estimated_cost',
+ field=models.FloatField(blank=True, null=True, verbose_name='Co\xfbt estim\xe9'),
+ ),
+ migrations.AlterField(
+ model_name='treatment',
+ name='external_id',
+ field=models.CharField(blank=True, max_length=200, null=True, verbose_name='Identifiant'),
+ ),
+ migrations.AlterField(
+ model_name='treatment',
+ name='file',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='treatments', to='archaeological_finds.TreatmentFile', verbose_name='Demande associ\xe9e'),
+ ),
+ migrations.AlterField(
+ model_name='treatment',
+ name='goal',
+ field=models.TextField(blank=True, null=True, verbose_name='But'),
+ ),
+ migrations.AlterField(
+ model_name='treatment',
+ name='history_creator',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to=settings.AUTH_USER_MODEL, verbose_name='Cr\xe9ateur'),
+ ),
+ migrations.AlterField(
+ model_name='treatment',
+ name='history_modifier',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to=settings.AUTH_USER_MODEL, verbose_name='Dernier \xe9diteur'),
+ ),
+ migrations.AlterField(
+ model_name='treatment',
+ name='insurance_cost',
+ field=models.FloatField(blank=True, null=True, verbose_name="Co\xfbt d'assurance"),
+ ),
+ migrations.AlterField(
+ model_name='treatment',
+ name='label',
+ field=models.CharField(blank=True, max_length=200, null=True, verbose_name='D\xe9nomination'),
+ ),
+ migrations.AlterField(
+ model_name='treatment',
+ name='location',
+ field=models.ForeignKey(blank=True, help_text='Endroit o\xf9 le traitement est r\xe9alis\xe9. Renseignez le lieu de conservation de destination pour un d\xe9placement.', null=True, on_delete=django.db.models.deletion.CASCADE, to='archaeological_warehouse.Warehouse', verbose_name='Localisation'),
+ ),
+ migrations.AlterField(
+ model_name='treatment',
+ name='organization',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='treatments', to='ishtar_common.Organization', verbose_name='Organisation'),
+ ),
+ migrations.AlterField(
+ model_name='treatment',
+ name='other_reference',
+ field=models.CharField(blank=True, max_length=200, null=True, verbose_name='Autre r\xe9f.'),
+ ),
+ migrations.AlterField(
+ model_name='treatment',
+ name='person',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='treatments', to='ishtar_common.Person', verbose_name='Responsable'),
+ ),
+ migrations.AlterField(
+ model_name='treatment',
+ name='quoted_cost',
+ field=models.FloatField(blank=True, null=True, verbose_name='Co\xfbt devis\xe9'),
+ ),
+ migrations.AlterField(
+ model_name='treatment',
+ name='realized_cost',
+ field=models.FloatField(blank=True, null=True, verbose_name='Co\xfbt r\xe9alis\xe9'),
+ ),
+ migrations.AlterField(
+ model_name='treatment',
+ name='search_vector',
+ field=django.contrib.postgres.search.SearchVectorField(blank=True, help_text='Auto-rempli \xe0 la sauvegarde', null=True, verbose_name='Vecteur de recherche'),
+ ),
+ migrations.AlterField(
+ model_name='treatment',
+ name='start_date',
+ field=models.DateField(blank=True, null=True, verbose_name='Date de d\xe9but'),
+ ),
+ migrations.AlterField(
+ model_name='treatment',
+ name='treatment_state',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='archaeological_finds.TreatmentState', verbose_name='\xc9tat'),
+ ),
+ migrations.AlterField(
+ model_name='treatment',
+ name='treatment_types',
+ field=models.ManyToManyField(to='archaeological_finds.TreatmentType', verbose_name='Type de traitement'),
+ ),
+ migrations.AlterField(
+ model_name='treatment',
+ name='year',
+ field=models.IntegerField(default=ishtar_common.utils.get_current_year, verbose_name='Ann\xe9e'),
+ ),
+ migrations.AlterField(
+ model_name='treatmentemergencytype',
+ name='available',
+ field=models.BooleanField(default=True, verbose_name='Disponible'),
+ ),
+ migrations.AlterField(
+ model_name='treatmentemergencytype',
+ name='comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire'),
+ ),
+ migrations.AlterField(
+ model_name='treatmentemergencytype',
+ name='label',
+ field=models.TextField(verbose_name='D\xe9nomination'),
+ ),
+ migrations.AlterField(
+ model_name='treatmentemergencytype',
+ name='txt_idx',
+ field=models.TextField(help_text='Le "slug" est une version standardis\xe9e du nom. Il ne contient que des lettres en minuscule, des nombres et des tirets (-). Chaque "slug" doit \xeatre unique dans la typologie.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), "Ce champ ne doit contenir que des lettres, des nombres, des tirets bas _ et des traits d'union.", 'invalid')], verbose_name='Identifiant textuel'),
+ ),
+ migrations.AlterField(
+ model_name='treatmentfile',
+ name='applicant',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='treatmentfile_applicant', to='ishtar_common.Person', verbose_name='Demandeur'),
+ ),
+ migrations.AlterField(
+ model_name='treatmentfile',
+ name='applicant_organisation',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='treatmentfile_applicant', to='ishtar_common.Organization', verbose_name='Organisation du demandeur'),
+ ),
+ migrations.AlterField(
+ model_name='treatmentfile',
+ name='cached_label',
+ field=models.TextField(blank=True, db_index=True, null=True, verbose_name='Nom en cache'),
+ ),
+ migrations.AlterField(
+ model_name='treatmentfile',
+ name='comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire'),
+ ),
+ migrations.AlterField(
+ model_name='treatmentfile',
+ name='creation_date',
+ field=models.DateField(blank=True, default=datetime.date.today, null=True, verbose_name='Date de cr\xe9ation'),
+ ),
+ migrations.AlterField(
+ model_name='treatmentfile',
+ name='end_date',
+ field=models.DateField(blank=True, null=True, verbose_name='Date de cl\xf4ture'),
+ ),
+ migrations.AlterField(
+ model_name='treatmentfile',
+ name='external_id',
+ field=models.CharField(blank=True, max_length=200, null=True, verbose_name='Identifiant'),
+ ),
+ migrations.AlterField(
+ model_name='treatmentfile',
+ name='history_creator',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to=settings.AUTH_USER_MODEL, verbose_name='Cr\xe9ateur'),
+ ),
+ migrations.AlterField(
+ model_name='treatmentfile',
+ name='history_modifier',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to=settings.AUTH_USER_MODEL, verbose_name='Dernier \xe9diteur'),
+ ),
+ migrations.AlterField(
+ model_name='treatmentfile',
+ name='in_charge',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='treatmentfile_responsability', to='ishtar_common.Person', verbose_name='Dossier suivi par'),
+ ),
+ migrations.AlterField(
+ model_name='treatmentfile',
+ name='internal_reference',
+ field=models.CharField(blank=True, max_length=200, null=True, verbose_name='R\xe9f\xe9rence interne'),
+ ),
+ migrations.AlterField(
+ model_name='treatmentfile',
+ name='name',
+ field=models.TextField(blank=True, null=True, verbose_name='Nom'),
+ ),
+ migrations.AlterField(
+ model_name='treatmentfile',
+ name='reception_date',
+ field=models.DateField(blank=True, null=True, verbose_name='Date de r\xe9ception'),
+ ),
+ migrations.AlterField(
+ model_name='treatmentfile',
+ name='search_vector',
+ field=django.contrib.postgres.search.SearchVectorField(blank=True, help_text='Auto-rempli \xe0 la sauvegarde', null=True, verbose_name='Vecteur de recherche'),
+ ),
+ migrations.AlterField(
+ model_name='treatmentfile',
+ name='type',
+ field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='archaeological_finds.TreatmentFileType', verbose_name='Type de demande de traitement'),
+ ),
+ migrations.AlterField(
+ model_name='treatmentfile',
+ name='year',
+ field=models.IntegerField(default=ishtar_common.utils.get_current_year, verbose_name='Ann\xe9e'),
+ ),
+ migrations.AlterField(
+ model_name='treatmentfiletype',
+ name='available',
+ field=models.BooleanField(default=True, verbose_name='Disponible'),
+ ),
+ migrations.AlterField(
+ model_name='treatmentfiletype',
+ name='comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire'),
+ ),
+ migrations.AlterField(
+ model_name='treatmentfiletype',
+ name='label',
+ field=models.TextField(verbose_name='D\xe9nomination'),
+ ),
+ migrations.AlterField(
+ model_name='treatmentfiletype',
+ name='txt_idx',
+ field=models.TextField(help_text='Le "slug" est une version standardis\xe9e du nom. Il ne contient que des lettres en minuscule, des nombres et des tirets (-). Chaque "slug" doit \xeatre unique dans la typologie.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), "Ce champ ne doit contenir que des lettres, des nombres, des tirets bas _ et des traits d'union.", 'invalid')], verbose_name='Identifiant textuel'),
+ ),
+ migrations.AlterField(
+ model_name='treatmentstate',
+ name='available',
+ field=models.BooleanField(default=True, verbose_name='Disponible'),
+ ),
+ migrations.AlterField(
+ model_name='treatmentstate',
+ name='comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire'),
+ ),
+ migrations.AlterField(
+ model_name='treatmentstate',
+ name='label',
+ field=models.TextField(verbose_name='D\xe9nomination'),
+ ),
+ migrations.AlterField(
+ model_name='treatmentstate',
+ name='txt_idx',
+ field=models.TextField(help_text='Le "slug" est une version standardis\xe9e du nom. Il ne contient que des lettres en minuscule, des nombres et des tirets (-). Chaque "slug" doit \xeatre unique dans la typologie.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), "Ce champ ne doit contenir que des lettres, des nombres, des tirets bas _ et des traits d'union.", 'invalid')], verbose_name='Identifiant textuel'),
+ ),
+ migrations.AlterField(
+ model_name='treatmenttype',
+ name='available',
+ field=models.BooleanField(default=True, verbose_name='Disponible'),
+ ),
+ migrations.AlterField(
+ model_name='treatmenttype',
+ name='comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire'),
+ ),
+ migrations.AlterField(
+ model_name='treatmenttype',
+ name='downstream_is_many',
+ field=models.BooleanField(default=False, help_text="Cochez cela si, pour ce traitement, \xe0 partir d'un seul \xe9l\xe9ment vous en obtenez plusieurs.", verbose_name='Les \xe9l\xe9ments aval sont multiples'),
+ ),
+ migrations.AlterField(
+ model_name='treatmenttype',
+ name='label',
+ field=models.TextField(verbose_name='D\xe9nomination'),
+ ),
+ migrations.AlterField(
+ model_name='treatmenttype',
+ name='order',
+ field=models.IntegerField(default=10, verbose_name='Ordre'),
+ ),
+ migrations.AlterField(
+ model_name='treatmenttype',
+ name='txt_idx',
+ field=models.TextField(help_text='Le "slug" est une version standardis\xe9e du nom. Il ne contient que des lettres en minuscule, des nombres et des tirets (-). Chaque "slug" doit \xeatre unique dans la typologie.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), "Ce champ ne doit contenir que des lettres, des nombres, des tirets bas _ et des traits d'union.", 'invalid')], verbose_name='Identifiant textuel'),
+ ),
+ migrations.AlterField(
+ model_name='treatmenttype',
+ name='upstream_is_many',
+ field=models.BooleanField(default=False, help_text='Cochez cela si, pour ce traitement, \xe0 partir de plusieurs \xe9l\xe9ments vous en obtenez un seul.', verbose_name='Les \xe9l\xe9ments amont sont multiples'),
+ ),
+ migrations.AlterField(
+ model_name='treatmenttype',
+ name='virtual',
+ field=models.BooleanField(verbose_name='Virtuel'),
+ ),
+ ]
diff --git a/archaeological_operations/forms.py b/archaeological_operations/forms.py
index 4942d9f05..994ff4214 100644
--- a/archaeological_operations/forms.py
+++ b/archaeological_operations/forms.py
@@ -479,11 +479,12 @@ class OperationSelect(TableSelect):
'archaeological-operations', 'operation'))
year = forms.IntegerField(label=_("Year"))
operation_code = forms.IntegerField(label=_(u"Numeric reference"))
- if settings.COUNTRY == 'fr':
- code_patriarche = forms.CharField(
+ code_patriarche = forms.CharField(
max_length=500,
widget=OAWidget,
label="Code PATRIARCHE")
+ drassm_code = forms.CharField(
+ label=_(u"Code DRASSM"), required=False, max_length=100)
towns = get_town_field()
parcel = forms.CharField(label=_(u"Parcel"))
if settings.ISHTAR_DPTS:
@@ -577,13 +578,16 @@ class OperationSelect(TableSelect):
def __init__(self, *args, **kwargs):
super(OperationSelect, self).__init__(*args, **kwargs)
- if not get_current_profile().warehouse:
+ profile = get_current_profile()
+ if not profile.warehouse:
self.fields.pop('documentation_deadline_before')
self.fields.pop('documentation_deadline_after')
self.fields.pop('documentation_received')
self.fields.pop('finds_deadline_before')
self.fields.pop('finds_deadline_after')
self.fields.pop('finds_received')
+ if not profile.underwater:
+ self.fields.pop('drassm_code')
if settings.ISHTAR_DPTS:
k = 'towns__numero_insee__startswith'
self.fields[k].choices = [
@@ -749,11 +753,12 @@ class OperationFormGeneral(CustomForm, ManageOldType):
'report_processing': models.ReportState
}
pk = forms.IntegerField(required=False, widget=forms.HiddenInput)
- if settings.COUNTRY == 'fr':
- code_patriarche = forms.CharField(label=u"Code PATRIARCHE",
- max_length=500,
- widget=OAWidget,
- required=False)
+ code_patriarche = forms.CharField(label=u"Code PATRIARCHE",
+ max_length=500,
+ widget=OAWidget,
+ required=False)
+ drassm_code = forms.CharField(
+ label=_(u"Code DRASSM"), required=False, max_length=100)
operation_type = forms.ChoiceField(label=_(u"Operation type"),
choices=[])
common_name = forms.CharField(label=_(u"Generic name"), required=False,
@@ -873,9 +878,11 @@ class OperationFormGeneral(CustomForm, ManageOldType):
if not profile.files:
for key in self.FILE_FIELDS:
self.remove_field(key)
- if not profile.warehouse:
- for key in self.WAREHOUSE_FIELDS:
- self.remove_field(key)
+ if not profile.warehouse:
+ for key in self.WAREHOUSE_FIELDS:
+ self.remove_field(key)
+ if not profile.underwater:
+ self.fields.pop('drassm_code')
def clean(self):
cleaned_data = self.cleaned_data
@@ -1262,6 +1269,11 @@ class SiteSelect(TableSelect):
locality_cadastral = forms.CharField(
label=_(u"Cadastral locality"), max_length=200,
required=False)
+
+ affmar_number = forms.CharField(
+ label=_(u"Numéro AffMar"), required=False, max_length=100)
+ drassm_number = forms.CharField(
+ label=_(u"Numéro DRASSM"), required=False, max_length=100)
shipwreck_name = forms.CharField(
label=_(u"Shipwreck name"), max_length=200,
required=False)
@@ -1288,6 +1300,8 @@ class SiteSelect(TableSelect):
self.fields.pop('shipwreck_code')
self.fields.pop('sinking_date')
self.fields.pop('discovery_area')
+ self.fields.pop('affmar_number')
+ self.fields.pop('drassm_number')
class SiteFormSelection(IshtarForm):
@@ -1378,6 +1392,10 @@ class SiteUnderwaterForm(CustomForm, ManageOldType):
form_admin_name = _(u"Archaeological site - 030 - Underwater")
form_slug = u"archaeological_site-030-underwater"
+ affmar_number = forms.CharField(
+ label=_(u"Numéro AffMar"), required=False, max_length=100)
+ drassm_number = forms.CharField(
+ label=_(u"Numéro DRASSM"), required=False, max_length=100)
shipwreck_name = forms.CharField(
label=_(u"Shipwreck name"), required=False)
shipwreck_code = forms.CharField(
diff --git a/archaeological_operations/migrations/0041_auto_20181203_1442.py b/archaeological_operations/migrations/0041_auto_20181203_1442.py
new file mode 100644
index 000000000..5b6b9f7db
--- /dev/null
+++ b/archaeological_operations/migrations/0041_auto_20181203_1442.py
@@ -0,0 +1,1117 @@
+# -*- coding: utf-8 -*-
+# Generated by Django 1.11.10 on 2018-12-03 14:42
+from __future__ import unicode_literals
+
+import datetime
+from django.conf import settings
+import django.contrib.gis.db.models.fields
+import django.contrib.postgres.search
+import django.core.validators
+from django.db import migrations, models
+import django.db.models.deletion
+import ishtar_common.models
+import re
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('archaeological_operations', '0040_archaeologicalsite_collaborators'),
+ ]
+
+ operations = [
+ migrations.AlterModelOptions(
+ name='acttype',
+ options={'ordering': ('label',), 'verbose_name': "Type d'acte", 'verbose_name_plural': "Types d'acte"},
+ ),
+ migrations.AlterModelOptions(
+ name='administrativeact',
+ options={'ordering': ('year', 'signature_date', 'index', 'act_type'), 'permissions': (('view_administrativeact', 'Can view all Administrative acts'), ('view_own_administrativeact', 'Can view own Administrative act'), ('add_own_administrativeact', 'Can add own Administrative act'), ('change_own_administrativeact', 'Can change own Administrative act'), ('delete_own_administrativeact', 'Can delete own Administrative act')), 'verbose_name': 'Acte administratif', 'verbose_name_plural': 'Actes administratifs'},
+ ),
+ migrations.AlterModelOptions(
+ name='archaeologicalsite',
+ options={'permissions': (('view_archaeologicalsite', 'Can view all Archaeological sites'), ('view_own_archaeologicalsite', 'Can view own Archaeological site'), ('add_own_archaeologicalsite', 'Can add own Archaeological site'), ('change_own_archaeologicalsite', 'Can change own Archaeological site'), ('delete_own_archaeologicalsite', 'Can delete own Archaeological site')), 'verbose_name': 'Entit\xe9 (EA)', 'verbose_name_plural': 'Entit\xe9s arch\xe9ologiques'},
+ ),
+ migrations.AlterModelOptions(
+ name='historicaladministrativeact',
+ options={'get_latest_by': 'history_date', 'ordering': ('-history_date', '-history_id'), 'verbose_name': 'historical Acte administratif'},
+ ),
+ migrations.AlterModelOptions(
+ name='historicalarchaeologicalsite',
+ options={'get_latest_by': 'history_date', 'ordering': ('-history_date', '-history_id'), 'verbose_name': 'historical Entit\xe9 (EA)'},
+ ),
+ migrations.AlterModelOptions(
+ name='historicaloperation',
+ options={'get_latest_by': 'history_date', 'ordering': ('-history_date', '-history_id'), 'verbose_name': 'historical Op\xe9ration'},
+ ),
+ migrations.AlterModelOptions(
+ name='operation',
+ options={'ordering': ('cached_label',), 'permissions': (('view_operation', 'Can view all Operations'), ('view_own_operation', 'Can view own Operation'), ('add_own_operation', 'Can add own Operation'), ('change_own_operation', 'Can change own Operation'), ('delete_own_operation', 'Can delete own Operation'), ('close_operation', 'Can close Operation')), 'verbose_name': 'Op\xe9ration', 'verbose_name_plural': 'Op\xe9rations'},
+ ),
+ migrations.AlterModelOptions(
+ name='operationtypeold',
+ options={'ordering': ['-preventive', 'order', 'label'], 'verbose_name': "Type d'op\xe9ration - ancien", 'verbose_name_plural': "Types d'op\xe9ration - ancien"},
+ ),
+ migrations.AlterModelOptions(
+ name='parcel',
+ options={'ordering': ('year', 'section', 'parcel_number'), 'verbose_name': 'Parcelle', 'verbose_name_plural': 'Parcelles'},
+ ),
+ migrations.AlterModelOptions(
+ name='parcelowner',
+ options={'verbose_name': 'Propri\xe9taire de parcelle', 'verbose_name_plural': 'Propri\xe9taires de parcelle'},
+ ),
+ migrations.AlterModelOptions(
+ name='period',
+ options={'ordering': ('order',), 'verbose_name': 'Type de p\xe9riode', 'verbose_name_plural': 'Types de p\xe9riode'},
+ ),
+ migrations.AlterModelOptions(
+ name='recordqualitytype',
+ options={'ordering': ('order',), 'verbose_name': "Type de qualit\xe9 d'enregistrement", 'verbose_name_plural': "Types de qualit\xe9 d'enregistrement"},
+ ),
+ migrations.AlterModelOptions(
+ name='recordrelations',
+ options={'ordering': ('left_record', 'relation_type'), 'permissions': [('view_operationrelation', 'Can view all Operation relations')], 'verbose_name': 'Relation entre op\xe9rations', 'verbose_name_plural': 'Relations entre op\xe9rations'},
+ ),
+ migrations.AlterModelOptions(
+ name='relationtype',
+ options={'ordering': ('order', 'label'), 'verbose_name': 'Type de relation entre op\xe9rations', 'verbose_name_plural': 'Types de relation entre op\xe9rations'},
+ ),
+ migrations.AlterModelOptions(
+ name='remaintype',
+ options={'ordering': ('label',), 'verbose_name': 'Type de vestige', 'verbose_name_plural': 'Types de vestige'},
+ ),
+ migrations.AlterModelOptions(
+ name='reportstate',
+ options={'ordering': ('order',), 'verbose_name': "Type d'\xe9tat de rapport", 'verbose_name_plural': "Types d'\xe9tat de rapport"},
+ ),
+ migrations.AddField(
+ model_name='archaeologicalsite',
+ name='affmar_number',
+ field=models.CharField(blank=True, max_length=100, null=True, verbose_name='Num\xe9ro AffMar'),
+ ),
+ migrations.AddField(
+ model_name='archaeologicalsite',
+ name='drassm_number',
+ field=models.CharField(blank=True, max_length=100, null=True, verbose_name='Num\xe9ro DRASSM'),
+ ),
+ migrations.AddField(
+ model_name='historicalarchaeologicalsite',
+ name='affmar_number',
+ field=models.CharField(blank=True, max_length=100, null=True, verbose_name='Num\xe9ro AffMar'),
+ ),
+ migrations.AddField(
+ model_name='historicalarchaeologicalsite',
+ name='drassm_number',
+ field=models.CharField(blank=True, max_length=100, null=True, verbose_name='Num\xe9ro DRASSM'),
+ ),
+ migrations.AddField(
+ model_name='historicaloperation',
+ name='drassm_code',
+ field=models.CharField(blank=True, max_length=100, null=True, verbose_name='Code DRASSM'),
+ ),
+ migrations.AddField(
+ model_name='operation',
+ name='drassm_code',
+ field=models.CharField(blank=True, max_length=100, null=True, verbose_name='Code DRASSM'),
+ ),
+ migrations.AlterField(
+ model_name='acttype',
+ name='associated_template',
+ field=models.ManyToManyField(blank=True, related_name='acttypes', to='ishtar_common.DocumentTemplate', verbose_name='Patron associ\xe9'),
+ ),
+ migrations.AlterField(
+ model_name='acttype',
+ name='available',
+ field=models.BooleanField(default=True, verbose_name='Disponible'),
+ ),
+ migrations.AlterField(
+ model_name='acttype',
+ name='comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire'),
+ ),
+ migrations.AlterField(
+ model_name='acttype',
+ name='indexed',
+ field=models.BooleanField(default=False, verbose_name='Index\xe9'),
+ ),
+ migrations.AlterField(
+ model_name='acttype',
+ name='intented_to',
+ field=models.CharField(choices=[(b'F', 'Dossier'), (b'O', 'Op\xe9ration'), (b'TF', 'Demande de traitement'), (b'T', 'Traitement')], max_length=2, verbose_name='Destin\xe9 \xe0'),
+ ),
+ migrations.AlterField(
+ model_name='acttype',
+ name='label',
+ field=models.TextField(verbose_name='D\xe9nomination'),
+ ),
+ migrations.AlterField(
+ model_name='acttype',
+ name='txt_idx',
+ field=models.TextField(help_text='Le "slug" est une version standardis\xe9e du nom. Il ne contient que des lettres en minuscule, des nombres et des tirets (-). Chaque "slug" doit \xeatre unique dans la typologie.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), "Ce champ ne doit contenir que des lettres, des nombres, des tirets bas _ et des traits d'union.", 'invalid')], verbose_name='Identifiant textuel'),
+ ),
+ migrations.AlterField(
+ model_name='administrativeact',
+ name='act_object',
+ field=models.TextField(blank=True, max_length=300, null=True, verbose_name='Objet'),
+ ),
+ migrations.AlterField(
+ model_name='administrativeact',
+ name='act_type',
+ field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='archaeological_operations.ActType', verbose_name="Type d'acte"),
+ ),
+ migrations.AlterField(
+ model_name='administrativeact',
+ name='associated_file',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='administrative_act', to='archaeological_files.File', verbose_name='Dossier'),
+ ),
+ migrations.AlterField(
+ model_name='administrativeact',
+ name='departments_label',
+ field=models.TextField(blank=True, help_text='Valeur en cache des d\xe9partements associ\xe9s', null=True, verbose_name='D\xe9partements'),
+ ),
+ migrations.AlterField(
+ model_name='administrativeact',
+ name='history_creator',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to=settings.AUTH_USER_MODEL, verbose_name='Cr\xe9ateur'),
+ ),
+ migrations.AlterField(
+ model_name='administrativeact',
+ name='history_modifier',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to=settings.AUTH_USER_MODEL, verbose_name='Dernier \xe9diteur'),
+ ),
+ migrations.AlterField(
+ model_name='administrativeact',
+ name='in_charge',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='adminact_operation_in_charge', to='ishtar_common.Person', verbose_name="Responsable d'op\xe9ration"),
+ ),
+ migrations.AlterField(
+ model_name='administrativeact',
+ name='operation',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='administrative_act', to='archaeological_operations.Operation', verbose_name='Op\xe9ration'),
+ ),
+ migrations.AlterField(
+ model_name='administrativeact',
+ name='operator',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='adminact_operator', to='ishtar_common.Organization', verbose_name="Op\xe9rateur d'arch\xe9ologie pr\xe9ventive"),
+ ),
+ migrations.AlterField(
+ model_name='administrativeact',
+ name='scientist',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='adminact_scientist', to='ishtar_common.Person', verbose_name='Responsable scientifique'),
+ ),
+ migrations.AlterField(
+ model_name='administrativeact',
+ name='search_vector',
+ field=django.contrib.postgres.search.SearchVectorField(blank=True, help_text='Auto-rempli \xe0 la sauvegarde', null=True, verbose_name='Vecteur de recherche'),
+ ),
+ migrations.AlterField(
+ model_name='administrativeact',
+ name='signatory',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='signatory', to='ishtar_common.Person', verbose_name='Signataire'),
+ ),
+ migrations.AlterField(
+ model_name='administrativeact',
+ name='signature_date',
+ field=models.DateField(blank=True, null=True, verbose_name='Date de signature'),
+ ),
+ migrations.AlterField(
+ model_name='administrativeact',
+ name='towns_label',
+ field=models.TextField(blank=True, help_text='Valeur en cache des communes associ\xe9es', null=True, verbose_name='Communes'),
+ ),
+ migrations.AlterField(
+ model_name='administrativeact',
+ name='treatment',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='administrative_act', to='archaeological_finds.Treatment', verbose_name='Traitement'),
+ ),
+ migrations.AlterField(
+ model_name='administrativeact',
+ name='treatment_file',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='administrative_act', to='archaeological_finds.TreatmentFile', verbose_name='Demande de traitement'),
+ ),
+ migrations.AlterField(
+ model_name='administrativeact',
+ name='year',
+ field=models.IntegerField(blank=True, null=True, verbose_name='Ann\xe9e'),
+ ),
+ migrations.AlterField(
+ model_name='archaeologicalsite',
+ name='cached_label',
+ field=models.TextField(blank=True, db_index=True, null=True, verbose_name='Nom en cache'),
+ ),
+ migrations.AlterField(
+ model_name='archaeologicalsite',
+ name='collaborators',
+ field=models.ManyToManyField(blank=True, related_name='site_collaborator', to='ishtar_common.Person', verbose_name='Collaborateurs'),
+ ),
+ migrations.AlterField(
+ model_name='archaeologicalsite',
+ name='comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire'),
+ ),
+ migrations.AlterField(
+ model_name='archaeologicalsite',
+ name='discovery_area',
+ field=models.TextField(blank=True, null=True, verbose_name='Zone de d\xe9couverte'),
+ ),
+ migrations.AlterField(
+ model_name='archaeologicalsite',
+ name='history_creator',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to=settings.AUTH_USER_MODEL, verbose_name='Cr\xe9ateur'),
+ ),
+ migrations.AlterField(
+ model_name='archaeologicalsite',
+ name='history_modifier',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to=settings.AUTH_USER_MODEL, verbose_name='Dernier \xe9diteur'),
+ ),
+ migrations.AlterField(
+ model_name='archaeologicalsite',
+ name='locality_cadastral',
+ field=models.TextField(blank=True, null=True, verbose_name='Lieu-dit cadastre'),
+ ),
+ migrations.AlterField(
+ model_name='archaeologicalsite',
+ name='locality_ngi',
+ field=models.TextField(blank=True, null=True, verbose_name='Lieu-dit IGN'),
+ ),
+ migrations.AlterField(
+ model_name='archaeologicalsite',
+ name='multi_polygon',
+ field=django.contrib.gis.db.models.fields.MultiPolygonField(blank=True, null=True, srid=4326, verbose_name='Polygones multi-parties'),
+ ),
+ migrations.AlterField(
+ model_name='archaeologicalsite',
+ name='name',
+ field=models.CharField(blank=True, max_length=200, null=True, verbose_name='Nom'),
+ ),
+ migrations.AlterField(
+ model_name='archaeologicalsite',
+ name='oceanographic_service_localisation',
+ field=models.TextField(blank=True, null=True, verbose_name='Localisation SHOM'),
+ ),
+ migrations.AlterField(
+ model_name='archaeologicalsite',
+ name='periods',
+ field=models.ManyToManyField(blank=True, to='archaeological_operations.Period', verbose_name='P\xe9riodes'),
+ ),
+ migrations.AlterField(
+ model_name='archaeologicalsite',
+ name='reference',
+ field=models.CharField(max_length=200, unique=True, verbose_name='R\xe9f\xe9rence'),
+ ),
+ migrations.AlterField(
+ model_name='archaeologicalsite',
+ name='remains',
+ field=models.ManyToManyField(blank=True, to='archaeological_operations.RemainType', verbose_name='Vestiges'),
+ ),
+ migrations.AlterField(
+ model_name='archaeologicalsite',
+ name='search_vector',
+ field=django.contrib.postgres.search.SearchVectorField(blank=True, help_text='Auto-rempli \xe0 la sauvegarde', null=True, verbose_name='Vecteur de recherche'),
+ ),
+ migrations.AlterField(
+ model_name='archaeologicalsite',
+ name='shipwreck_code',
+ field=models.TextField(blank=True, null=True, verbose_name='Code \xe9pave'),
+ ),
+ migrations.AlterField(
+ model_name='archaeologicalsite',
+ name='shipwreck_name',
+ field=models.TextField(blank=True, null=True, verbose_name="Nom de l'\xe9pave"),
+ ),
+ migrations.AlterField(
+ model_name='archaeologicalsite',
+ name='sinking_date',
+ field=models.DateField(blank=True, null=True, verbose_name='Date de naufrage'),
+ ),
+ migrations.AlterField(
+ model_name='archaeologicalsite',
+ name='top_operation',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='archaeological_operations.Operation', verbose_name='Op\xe9ration chapeau'),
+ ),
+ migrations.AlterField(
+ model_name='archaeologicalsite',
+ name='towns',
+ field=models.ManyToManyField(blank=True, related_name='sites', to='ishtar_common.Town', verbose_name='Communes'),
+ ),
+ migrations.AlterField(
+ model_name='historicaladministrativeact',
+ name='act_object',
+ field=models.TextField(blank=True, max_length=300, null=True, verbose_name='Objet'),
+ ),
+ migrations.AlterField(
+ model_name='historicaladministrativeact',
+ name='departments_label',
+ field=models.TextField(blank=True, help_text='Valeur en cache des d\xe9partements associ\xe9s', null=True, verbose_name='D\xe9partements'),
+ ),
+ migrations.AlterField(
+ model_name='historicaladministrativeact',
+ name='search_vector',
+ field=django.contrib.postgres.search.SearchVectorField(blank=True, help_text='Auto-rempli \xe0 la sauvegarde', null=True, verbose_name='Vecteur de recherche'),
+ ),
+ migrations.AlterField(
+ model_name='historicaladministrativeact',
+ name='signature_date',
+ field=models.DateField(blank=True, null=True, verbose_name='Date de signature'),
+ ),
+ migrations.AlterField(
+ model_name='historicaladministrativeact',
+ name='towns_label',
+ field=models.TextField(blank=True, help_text='Valeur en cache des communes associ\xe9es', null=True, verbose_name='Communes'),
+ ),
+ migrations.AlterField(
+ model_name='historicaladministrativeact',
+ name='year',
+ field=models.IntegerField(blank=True, null=True, verbose_name='Ann\xe9e'),
+ ),
+ migrations.AlterField(
+ model_name='historicalarchaeologicalsite',
+ name='cached_label',
+ field=models.TextField(blank=True, db_index=True, null=True, verbose_name='Nom en cache'),
+ ),
+ migrations.AlterField(
+ model_name='historicalarchaeologicalsite',
+ name='comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire'),
+ ),
+ migrations.AlterField(
+ model_name='historicalarchaeologicalsite',
+ name='discovery_area',
+ field=models.TextField(blank=True, null=True, verbose_name='Zone de d\xe9couverte'),
+ ),
+ migrations.AlterField(
+ model_name='historicalarchaeologicalsite',
+ name='locality_cadastral',
+ field=models.TextField(blank=True, null=True, verbose_name='Lieu-dit cadastre'),
+ ),
+ migrations.AlterField(
+ model_name='historicalarchaeologicalsite',
+ name='locality_ngi',
+ field=models.TextField(blank=True, null=True, verbose_name='Lieu-dit IGN'),
+ ),
+ migrations.AlterField(
+ model_name='historicalarchaeologicalsite',
+ name='multi_polygon',
+ field=django.contrib.gis.db.models.fields.MultiPolygonField(blank=True, null=True, srid=4326, verbose_name='Polygones multi-parties'),
+ ),
+ migrations.AlterField(
+ model_name='historicalarchaeologicalsite',
+ name='name',
+ field=models.CharField(blank=True, max_length=200, null=True, verbose_name='Nom'),
+ ),
+ migrations.AlterField(
+ model_name='historicalarchaeologicalsite',
+ name='oceanographic_service_localisation',
+ field=models.TextField(blank=True, null=True, verbose_name='Localisation SHOM'),
+ ),
+ migrations.AlterField(
+ model_name='historicalarchaeologicalsite',
+ name='reference',
+ field=models.CharField(db_index=True, max_length=200, verbose_name='R\xe9f\xe9rence'),
+ ),
+ migrations.AlterField(
+ model_name='historicalarchaeologicalsite',
+ name='search_vector',
+ field=django.contrib.postgres.search.SearchVectorField(blank=True, help_text='Auto-rempli \xe0 la sauvegarde', null=True, verbose_name='Vecteur de recherche'),
+ ),
+ migrations.AlterField(
+ model_name='historicalarchaeologicalsite',
+ name='shipwreck_code',
+ field=models.TextField(blank=True, null=True, verbose_name='Code \xe9pave'),
+ ),
+ migrations.AlterField(
+ model_name='historicalarchaeologicalsite',
+ name='shipwreck_name',
+ field=models.TextField(blank=True, null=True, verbose_name="Nom de l'\xe9pave"),
+ ),
+ migrations.AlterField(
+ model_name='historicalarchaeologicalsite',
+ name='sinking_date',
+ field=models.DateField(blank=True, null=True, verbose_name='Date de naufrage'),
+ ),
+ migrations.AlterField(
+ model_name='historicaloperation',
+ name='abstract',
+ field=models.TextField(blank=True, null=True, verbose_name='R\xe9sum\xe9'),
+ ),
+ migrations.AlterField(
+ model_name='historicaloperation',
+ name='address',
+ field=models.TextField(blank=True, null=True, verbose_name='Adresse / Lieu-dit'),
+ ),
+ migrations.AlterField(
+ model_name='historicaloperation',
+ name='cached_label',
+ field=models.CharField(blank=True, db_index=True, max_length=500, null=True, verbose_name='Nom en cache'),
+ ),
+ migrations.AlterField(
+ model_name='historicaloperation',
+ name='comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire'),
+ ),
+ migrations.AlterField(
+ model_name='historicaloperation',
+ name='common_name',
+ field=models.TextField(blank=True, null=True, verbose_name='Nom g\xe9n\xe9rique'),
+ ),
+ migrations.AlterField(
+ model_name='historicaloperation',
+ name='cost',
+ field=models.IntegerField(blank=True, null=True, verbose_name='Co\xfbt (euros)'),
+ ),
+ migrations.AlterField(
+ model_name='historicaloperation',
+ name='creation_date',
+ field=models.DateField(default=datetime.date.today, verbose_name='Date de cr\xe9ation'),
+ ),
+ migrations.AlterField(
+ model_name='historicaloperation',
+ name='documentation_deadline',
+ field=models.DateField(blank=True, null=True, verbose_name='Date limite de versement de la documentation'),
+ ),
+ migrations.AlterField(
+ model_name='historicaloperation',
+ name='documentation_received',
+ field=models.NullBooleanField(verbose_name='Documentation re\xe7ue'),
+ ),
+ migrations.AlterField(
+ model_name='historicaloperation',
+ name='effective_man_days',
+ field=models.IntegerField(blank=True, null=True, verbose_name='Jours-hommes effectifs'),
+ ),
+ migrations.AlterField(
+ model_name='historicaloperation',
+ name='end_date',
+ field=models.DateField(blank=True, null=True, verbose_name='Date de cl\xf4ture'),
+ ),
+ migrations.AlterField(
+ model_name='historicaloperation',
+ name='excavation_end_date',
+ field=models.DateField(blank=True, null=True, verbose_name='Date de fin de chantier'),
+ ),
+ migrations.AlterField(
+ model_name='historicaloperation',
+ name='finds_deadline',
+ field=models.DateField(blank=True, null=True, verbose_name='Date limite de versement du mobilier'),
+ ),
+ migrations.AlterField(
+ model_name='historicaloperation',
+ name='finds_received',
+ field=models.NullBooleanField(verbose_name='Mobilier re\xe7u'),
+ ),
+ migrations.AlterField(
+ model_name='historicaloperation',
+ name='geoarchaeological_context_prescription',
+ field=models.NullBooleanField(verbose_name='Prescription sur un contexte g\xe9oarch\xe9ologique'),
+ ),
+ migrations.AlterField(
+ model_name='historicaloperation',
+ name='large_area_prescription',
+ field=models.NullBooleanField(verbose_name='Prescription sur une vaste surface'),
+ ),
+ migrations.AlterField(
+ model_name='historicaloperation',
+ name='multi_polygon',
+ field=django.contrib.gis.db.models.fields.MultiPolygonField(blank=True, null=True, srid=4326, verbose_name='Polygones multi-parties'),
+ ),
+ migrations.AlterField(
+ model_name='historicaloperation',
+ name='name_of_the_protagonist',
+ field=models.TextField(blank=True, null=True, verbose_name='Nom du protagoniste'),
+ ),
+ migrations.AlterField(
+ model_name='historicaloperation',
+ name='official_report_number',
+ field=models.TextField(blank=True, null=True, verbose_name='Num\xe9ro de proc\xe8s-verbal'),
+ ),
+ migrations.AlterField(
+ model_name='historicaloperation',
+ name='old_code',
+ field=models.CharField(blank=True, max_length=200, null=True, verbose_name='Ancien code'),
+ ),
+ migrations.AlterField(
+ model_name='historicaloperation',
+ name='operation_code',
+ field=models.IntegerField(blank=True, null=True, verbose_name='R\xe9f\xe9rence num\xe9rique'),
+ ),
+ migrations.AlterField(
+ model_name='historicaloperation',
+ name='operator_reference',
+ field=models.CharField(blank=True, max_length=20, null=True, verbose_name="R\xe9f\xe9rence de l'op\xe9rateur"),
+ ),
+ migrations.AlterField(
+ model_name='historicaloperation',
+ name='optional_man_days',
+ field=models.IntegerField(blank=True, null=True, verbose_name='Jours-hommes optionnels'),
+ ),
+ migrations.AlterField(
+ model_name='historicaloperation',
+ name='relation_image',
+ field=models.TextField(blank=True, max_length=100, null=True, verbose_name='Image des relations (SVG g\xe9n\xe9r\xe9)'),
+ ),
+ migrations.AlterField(
+ model_name='historicaloperation',
+ name='report_delivery_date',
+ field=models.DateField(blank=True, null=True, verbose_name='Date de livraison du rapport'),
+ ),
+ migrations.AlterField(
+ model_name='historicaloperation',
+ name='scheduled_man_days',
+ field=models.IntegerField(blank=True, null=True, verbose_name='Jours-hommes pr\xe9vus'),
+ ),
+ migrations.AlterField(
+ model_name='historicaloperation',
+ name='scientific_documentation_comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire relatif \xe0 la documentation scientifique'),
+ ),
+ migrations.AlterField(
+ model_name='historicaloperation',
+ name='search_vector',
+ field=django.contrib.postgres.search.SearchVectorField(blank=True, help_text='Auto-rempli \xe0 la sauvegarde', null=True, verbose_name='Vecteur de recherche'),
+ ),
+ migrations.AlterField(
+ model_name='historicaloperation',
+ name='seizure_name',
+ field=models.TextField(blank=True, null=True, verbose_name='Nom de la saisie'),
+ ),
+ migrations.AlterField(
+ model_name='historicaloperation',
+ name='start_date',
+ field=models.DateField(blank=True, null=True, verbose_name='Date de d\xe9but'),
+ ),
+ migrations.AlterField(
+ model_name='historicaloperation',
+ name='virtual_operation',
+ field=models.BooleanField(default=False, help_text="Si coch\xe9, cela signifie que cette op\xe9ration n'a pas \xe9t\xe9 officiellement enregistr\xe9e.", verbose_name='Op\xe9ration virtuelle'),
+ ),
+ migrations.AlterField(
+ model_name='historicaloperation',
+ name='year',
+ field=models.IntegerField(blank=True, null=True, verbose_name='Ann\xe9e'),
+ ),
+ migrations.AlterField(
+ model_name='historicaloperation',
+ name='zoning_prescription',
+ field=models.NullBooleanField(verbose_name='Prescription sur zonage'),
+ ),
+ migrations.AlterField(
+ model_name='operation',
+ name='abstract',
+ field=models.TextField(blank=True, null=True, verbose_name='R\xe9sum\xe9'),
+ ),
+ migrations.AlterField(
+ model_name='operation',
+ name='address',
+ field=models.TextField(blank=True, null=True, verbose_name='Adresse / Lieu-dit'),
+ ),
+ migrations.AlterField(
+ model_name='operation',
+ name='archaeological_sites',
+ field=models.ManyToManyField(blank=True, related_name='operations', to='archaeological_operations.ArchaeologicalSite', verbose_name='Entit\xe9s arch\xe9ologiques'),
+ ),
+ migrations.AlterField(
+ model_name='operation',
+ name='associated_file',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='operations', to='archaeological_files.File', verbose_name='Dossier'),
+ ),
+ migrations.AlterField(
+ model_name='operation',
+ name='cached_label',
+ field=models.CharField(blank=True, db_index=True, max_length=500, null=True, verbose_name='Nom en cache'),
+ ),
+ migrations.AlterField(
+ model_name='operation',
+ name='collaborators',
+ field=models.ManyToManyField(blank=True, related_name='operation_collaborator', to='ishtar_common.Person', verbose_name='Collaborateurs'),
+ ),
+ migrations.AlterField(
+ model_name='operation',
+ name='comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire'),
+ ),
+ migrations.AlterField(
+ model_name='operation',
+ name='common_name',
+ field=models.TextField(blank=True, null=True, verbose_name='Nom g\xe9n\xe9rique'),
+ ),
+ migrations.AlterField(
+ model_name='operation',
+ name='cost',
+ field=models.IntegerField(blank=True, null=True, verbose_name='Co\xfbt (euros)'),
+ ),
+ migrations.AlterField(
+ model_name='operation',
+ name='creation_date',
+ field=models.DateField(default=datetime.date.today, verbose_name='Date de cr\xe9ation'),
+ ),
+ migrations.AlterField(
+ model_name='operation',
+ name='documentation_deadline',
+ field=models.DateField(blank=True, null=True, verbose_name='Date limite de versement de la documentation'),
+ ),
+ migrations.AlterField(
+ model_name='operation',
+ name='documentation_received',
+ field=models.NullBooleanField(verbose_name='Documentation re\xe7ue'),
+ ),
+ migrations.AlterField(
+ model_name='operation',
+ name='effective_man_days',
+ field=models.IntegerField(blank=True, null=True, verbose_name='Jours-hommes effectifs'),
+ ),
+ migrations.AlterField(
+ model_name='operation',
+ name='end_date',
+ field=models.DateField(blank=True, null=True, verbose_name='Date de cl\xf4ture'),
+ ),
+ migrations.AlterField(
+ model_name='operation',
+ name='excavation_end_date',
+ field=models.DateField(blank=True, null=True, verbose_name='Date de fin de chantier'),
+ ),
+ migrations.AlterField(
+ model_name='operation',
+ name='finds_deadline',
+ field=models.DateField(blank=True, null=True, verbose_name='Date limite de versement du mobilier'),
+ ),
+ migrations.AlterField(
+ model_name='operation',
+ name='finds_received',
+ field=models.NullBooleanField(verbose_name='Mobilier re\xe7u'),
+ ),
+ migrations.AlterField(
+ model_name='operation',
+ name='geoarchaeological_context_prescription',
+ field=models.NullBooleanField(verbose_name='Prescription sur un contexte g\xe9oarch\xe9ologique'),
+ ),
+ migrations.AlterField(
+ model_name='operation',
+ name='history_creator',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to=settings.AUTH_USER_MODEL, verbose_name='Cr\xe9ateur'),
+ ),
+ migrations.AlterField(
+ model_name='operation',
+ name='history_modifier',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to=settings.AUTH_USER_MODEL, verbose_name='Dernier \xe9diteur'),
+ ),
+ migrations.AlterField(
+ model_name='operation',
+ name='in_charge',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='operation_responsability', to='ishtar_common.Person', verbose_name='Responsable'),
+ ),
+ migrations.AlterField(
+ model_name='operation',
+ name='large_area_prescription',
+ field=models.NullBooleanField(verbose_name='Prescription sur une vaste surface'),
+ ),
+ migrations.AlterField(
+ model_name='operation',
+ name='multi_polygon',
+ field=django.contrib.gis.db.models.fields.MultiPolygonField(blank=True, null=True, srid=4326, verbose_name='Polygones multi-parties'),
+ ),
+ migrations.AlterField(
+ model_name='operation',
+ name='name_of_the_protagonist',
+ field=models.TextField(blank=True, null=True, verbose_name='Nom du protagoniste'),
+ ),
+ migrations.AlterField(
+ model_name='operation',
+ name='official_report_number',
+ field=models.TextField(blank=True, null=True, verbose_name='Num\xe9ro de proc\xe8s-verbal'),
+ ),
+ migrations.AlterField(
+ model_name='operation',
+ name='old_code',
+ field=models.CharField(blank=True, max_length=200, null=True, verbose_name='Ancien code'),
+ ),
+ migrations.AlterField(
+ model_name='operation',
+ name='operation_code',
+ field=models.IntegerField(blank=True, null=True, verbose_name='R\xe9f\xe9rence num\xe9rique'),
+ ),
+ migrations.AlterField(
+ model_name='operation',
+ name='operation_type',
+ field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='+', to='ishtar_common.OperationType', verbose_name="Type d'op\xe9ration"),
+ ),
+ migrations.AlterField(
+ model_name='operation',
+ name='operator',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='operator', to='ishtar_common.Organization', verbose_name='Op\xe9rateur'),
+ ),
+ migrations.AlterField(
+ model_name='operation',
+ name='operator_reference',
+ field=models.CharField(blank=True, max_length=20, null=True, verbose_name="R\xe9f\xe9rence de l'op\xe9rateur"),
+ ),
+ migrations.AlterField(
+ model_name='operation',
+ name='optional_man_days',
+ field=models.IntegerField(blank=True, null=True, verbose_name='Jours-hommes optionnels'),
+ ),
+ migrations.AlterField(
+ model_name='operation',
+ name='periods',
+ field=models.ManyToManyField(blank=True, to='archaeological_operations.Period', verbose_name='P\xe9riodes'),
+ ),
+ migrations.AlterField(
+ model_name='operation',
+ name='record_quality_type',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='archaeological_operations.RecordQualityType', verbose_name="Qualit\xe9 d'enregistrement"),
+ ),
+ migrations.AlterField(
+ model_name='operation',
+ name='relation_image',
+ field=models.FileField(blank=True, null=True, upload_to=ishtar_common.models.get_image_path, verbose_name='Image des relations (SVG g\xe9n\xe9r\xe9)'),
+ ),
+ migrations.AlterField(
+ model_name='operation',
+ name='remains',
+ field=models.ManyToManyField(blank=True, to='archaeological_operations.RemainType', verbose_name='Vestiges'),
+ ),
+ migrations.AlterField(
+ model_name='operation',
+ name='report_delivery_date',
+ field=models.DateField(blank=True, null=True, verbose_name='Date de livraison du rapport'),
+ ),
+ migrations.AlterField(
+ model_name='operation',
+ name='report_processing',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='archaeological_operations.ReportState', verbose_name='Traitement du rapport'),
+ ),
+ migrations.AlterField(
+ model_name='operation',
+ name='scheduled_man_days',
+ field=models.IntegerField(blank=True, null=True, verbose_name='Jours-hommes pr\xe9vus'),
+ ),
+ migrations.AlterField(
+ model_name='operation',
+ name='scientific_documentation_comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire relatif \xe0 la documentation scientifique'),
+ ),
+ migrations.AlterField(
+ model_name='operation',
+ name='scientist',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='operation_scientist_responsability', to='ishtar_common.Person', verbose_name='Responsable du suivi scientifique'),
+ ),
+ migrations.AlterField(
+ model_name='operation',
+ name='search_vector',
+ field=django.contrib.postgres.search.SearchVectorField(blank=True, help_text='Auto-rempli \xe0 la sauvegarde', null=True, verbose_name='Vecteur de recherche'),
+ ),
+ migrations.AlterField(
+ model_name='operation',
+ name='seizure_name',
+ field=models.TextField(blank=True, null=True, verbose_name='Nom de la saisie'),
+ ),
+ migrations.AlterField(
+ model_name='operation',
+ name='start_date',
+ field=models.DateField(blank=True, null=True, verbose_name='Date de d\xe9but'),
+ ),
+ migrations.AlterField(
+ model_name='operation',
+ name='towns',
+ field=models.ManyToManyField(related_name='operations', to='ishtar_common.Town', verbose_name='Communes'),
+ ),
+ migrations.AlterField(
+ model_name='operation',
+ name='virtual_operation',
+ field=models.BooleanField(default=False, help_text="Si coch\xe9, cela signifie que cette op\xe9ration n'a pas \xe9t\xe9 officiellement enregistr\xe9e.", verbose_name='Op\xe9ration virtuelle'),
+ ),
+ migrations.AlterField(
+ model_name='operation',
+ name='year',
+ field=models.IntegerField(blank=True, null=True, verbose_name='Ann\xe9e'),
+ ),
+ migrations.AlterField(
+ model_name='operation',
+ name='zoning_prescription',
+ field=models.NullBooleanField(verbose_name='Prescription sur zonage'),
+ ),
+ migrations.AlterField(
+ model_name='operationtypeold',
+ name='available',
+ field=models.BooleanField(default=True, verbose_name='Disponible'),
+ ),
+ migrations.AlterField(
+ model_name='operationtypeold',
+ name='comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire'),
+ ),
+ migrations.AlterField(
+ model_name='operationtypeold',
+ name='label',
+ field=models.TextField(verbose_name='D\xe9nomination'),
+ ),
+ migrations.AlterField(
+ model_name='operationtypeold',
+ name='order',
+ field=models.IntegerField(default=1, verbose_name='Ordre'),
+ ),
+ migrations.AlterField(
+ model_name='operationtypeold',
+ name='preventive',
+ field=models.BooleanField(default=True, verbose_name='Est du pr\xe9ventif'),
+ ),
+ migrations.AlterField(
+ model_name='operationtypeold',
+ name='txt_idx',
+ field=models.TextField(help_text='Le "slug" est une version standardis\xe9e du nom. Il ne contient que des lettres en minuscule, des nombres et des tirets (-). Chaque "slug" doit \xeatre unique dans la typologie.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), "Ce champ ne doit contenir que des lettres, des nombres, des tirets bas _ et des traits d'union.", 'invalid')], verbose_name='Identifiant textuel'),
+ ),
+ migrations.AlterField(
+ model_name='parcel',
+ name='address',
+ field=models.TextField(blank=True, null=True, verbose_name='Adresse - Lieu-dit'),
+ ),
+ migrations.AlterField(
+ model_name='parcel',
+ name='associated_file',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='parcels', to='archaeological_files.File', verbose_name='Dossier'),
+ ),
+ migrations.AlterField(
+ model_name='parcel',
+ name='auto_external_id',
+ field=models.BooleanField(default=False, verbose_name="L'identifiant est attribu\xe9 automatiquement"),
+ ),
+ migrations.AlterField(
+ model_name='parcel',
+ name='cached_label',
+ field=models.TextField(blank=True, db_index=True, null=True, verbose_name='Nom en cache'),
+ ),
+ migrations.AlterField(
+ model_name='parcel',
+ name='external_id',
+ field=models.CharField(blank=True, max_length=100, null=True, verbose_name='Identifiant'),
+ ),
+ migrations.AlterField(
+ model_name='parcel',
+ name='history_creator',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to=settings.AUTH_USER_MODEL, verbose_name='Cr\xe9ateur'),
+ ),
+ migrations.AlterField(
+ model_name='parcel',
+ name='history_modifier',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to=settings.AUTH_USER_MODEL, verbose_name='Dernier \xe9diteur'),
+ ),
+ migrations.AlterField(
+ model_name='parcel',
+ name='operation',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='parcels', to='archaeological_operations.Operation', verbose_name='Op\xe9ration'),
+ ),
+ migrations.AlterField(
+ model_name='parcel',
+ name='parcel_number',
+ field=models.CharField(blank=True, max_length=6, null=True, verbose_name='Num\xe9ro de parcelle'),
+ ),
+ migrations.AlterField(
+ model_name='parcel',
+ name='public_domain',
+ field=models.BooleanField(default=False, verbose_name='Domaine public'),
+ ),
+ migrations.AlterField(
+ model_name='parcel',
+ name='search_vector',
+ field=django.contrib.postgres.search.SearchVectorField(blank=True, help_text='Auto-rempli \xe0 la sauvegarde', null=True, verbose_name='Vecteur de recherche'),
+ ),
+ migrations.AlterField(
+ model_name='parcel',
+ name='town',
+ field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='parcels', to='ishtar_common.Town', verbose_name='Commune'),
+ ),
+ migrations.AlterField(
+ model_name='parcel',
+ name='year',
+ field=models.IntegerField(blank=True, null=True, verbose_name='Ann\xe9e'),
+ ),
+ migrations.AlterField(
+ model_name='parcelowner',
+ name='end_date',
+ field=models.DateField(verbose_name='Date de fin'),
+ ),
+ migrations.AlterField(
+ model_name='parcelowner',
+ name='history_creator',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to=settings.AUTH_USER_MODEL, verbose_name='Cr\xe9ateur'),
+ ),
+ migrations.AlterField(
+ model_name='parcelowner',
+ name='history_modifier',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to=settings.AUTH_USER_MODEL, verbose_name='Dernier \xe9diteur'),
+ ),
+ migrations.AlterField(
+ model_name='parcelowner',
+ name='owner',
+ field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='parcel_owner', to='ishtar_common.Person', verbose_name='Propri\xe9taire'),
+ ),
+ migrations.AlterField(
+ model_name='parcelowner',
+ name='parcel',
+ field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='owners', to='archaeological_operations.Parcel', verbose_name='Parcelle'),
+ ),
+ migrations.AlterField(
+ model_name='parcelowner',
+ name='search_vector',
+ field=django.contrib.postgres.search.SearchVectorField(blank=True, help_text='Auto-rempli \xe0 la sauvegarde', null=True, verbose_name='Vecteur de recherche'),
+ ),
+ migrations.AlterField(
+ model_name='parcelowner',
+ name='start_date',
+ field=models.DateField(verbose_name='Date de d\xe9but'),
+ ),
+ migrations.AlterField(
+ model_name='period',
+ name='available',
+ field=models.BooleanField(default=True, verbose_name='Disponible'),
+ ),
+ migrations.AlterField(
+ model_name='period',
+ name='comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire'),
+ ),
+ migrations.AlterField(
+ model_name='period',
+ name='end_date',
+ field=models.IntegerField(blank=True, null=True, verbose_name='Date de fin'),
+ ),
+ migrations.AlterField(
+ model_name='period',
+ name='label',
+ field=models.TextField(verbose_name='D\xe9nomination'),
+ ),
+ migrations.AlterField(
+ model_name='period',
+ name='order',
+ field=models.IntegerField(verbose_name='Ordre'),
+ ),
+ migrations.AlterField(
+ model_name='period',
+ name='parent',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='archaeological_operations.Period', verbose_name='P\xe9riode parente'),
+ ),
+ migrations.AlterField(
+ model_name='period',
+ name='start_date',
+ field=models.IntegerField(blank=True, null=True, verbose_name='Date de d\xe9but'),
+ ),
+ migrations.AlterField(
+ model_name='period',
+ name='txt_idx',
+ field=models.TextField(help_text='Le "slug" est une version standardis\xe9e du nom. Il ne contient que des lettres en minuscule, des nombres et des tirets (-). Chaque "slug" doit \xeatre unique dans la typologie.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), "Ce champ ne doit contenir que des lettres, des nombres, des tirets bas _ et des traits d'union.", 'invalid')], verbose_name='Identifiant textuel'),
+ ),
+ migrations.AlterField(
+ model_name='recordqualitytype',
+ name='available',
+ field=models.BooleanField(default=True, verbose_name='Disponible'),
+ ),
+ migrations.AlterField(
+ model_name='recordqualitytype',
+ name='comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire'),
+ ),
+ migrations.AlterField(
+ model_name='recordqualitytype',
+ name='label',
+ field=models.TextField(verbose_name='D\xe9nomination'),
+ ),
+ migrations.AlterField(
+ model_name='recordqualitytype',
+ name='order',
+ field=models.IntegerField(verbose_name='Ordre'),
+ ),
+ migrations.AlterField(
+ model_name='recordqualitytype',
+ name='txt_idx',
+ field=models.TextField(help_text='Le "slug" est une version standardis\xe9e du nom. Il ne contient que des lettres en minuscule, des nombres et des tirets (-). Chaque "slug" doit \xeatre unique dans la typologie.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), "Ce champ ne doit contenir que des lettres, des nombres, des tirets bas _ et des traits d'union.", 'invalid')], verbose_name='Identifiant textuel'),
+ ),
+ migrations.AlterField(
+ model_name='relationtype',
+ name='available',
+ field=models.BooleanField(default=True, verbose_name='Disponible'),
+ ),
+ migrations.AlterField(
+ model_name='relationtype',
+ name='comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire'),
+ ),
+ migrations.AlterField(
+ model_name='relationtype',
+ name='inverse_relation',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='archaeological_operations.RelationType', verbose_name='Relation inverse'),
+ ),
+ migrations.AlterField(
+ model_name='relationtype',
+ name='label',
+ field=models.TextField(verbose_name='D\xe9nomination'),
+ ),
+ migrations.AlterField(
+ model_name='relationtype',
+ name='logical_relation',
+ field=models.CharField(blank=True, choices=[(b'above', 'Au-dessus'), (b'bellow', 'En dessous'), (b'equal', '\xc9gal')], max_length=10, null=True, verbose_name='Relation logique'),
+ ),
+ migrations.AlterField(
+ model_name='relationtype',
+ name='order',
+ field=models.IntegerField(default=1, verbose_name='Ordre'),
+ ),
+ migrations.AlterField(
+ model_name='relationtype',
+ name='symmetrical',
+ field=models.BooleanField(verbose_name='Sym\xe9trique'),
+ ),
+ migrations.AlterField(
+ model_name='relationtype',
+ name='tiny_label',
+ field=models.CharField(blank=True, max_length=50, null=True, verbose_name='D\xe9nomination courte'),
+ ),
+ migrations.AlterField(
+ model_name='relationtype',
+ name='txt_idx',
+ field=models.TextField(help_text='Le "slug" est une version standardis\xe9e du nom. Il ne contient que des lettres en minuscule, des nombres et des tirets (-). Chaque "slug" doit \xeatre unique dans la typologie.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), "Ce champ ne doit contenir que des lettres, des nombres, des tirets bas _ et des traits d'union.", 'invalid')], verbose_name='Identifiant textuel'),
+ ),
+ migrations.AlterField(
+ model_name='remaintype',
+ name='available',
+ field=models.BooleanField(default=True, verbose_name='Disponible'),
+ ),
+ migrations.AlterField(
+ model_name='remaintype',
+ name='comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire'),
+ ),
+ migrations.AlterField(
+ model_name='remaintype',
+ name='label',
+ field=models.TextField(verbose_name='D\xe9nomination'),
+ ),
+ migrations.AlterField(
+ model_name='remaintype',
+ name='txt_idx',
+ field=models.TextField(help_text='Le "slug" est une version standardis\xe9e du nom. Il ne contient que des lettres en minuscule, des nombres et des tirets (-). Chaque "slug" doit \xeatre unique dans la typologie.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), "Ce champ ne doit contenir que des lettres, des nombres, des tirets bas _ et des traits d'union.", 'invalid')], verbose_name='Identifiant textuel'),
+ ),
+ migrations.AlterField(
+ model_name='reportstate',
+ name='available',
+ field=models.BooleanField(default=True, verbose_name='Disponible'),
+ ),
+ migrations.AlterField(
+ model_name='reportstate',
+ name='comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire'),
+ ),
+ migrations.AlterField(
+ model_name='reportstate',
+ name='label',
+ field=models.TextField(verbose_name='D\xe9nomination'),
+ ),
+ migrations.AlterField(
+ model_name='reportstate',
+ name='order',
+ field=models.IntegerField(verbose_name='Ordre'),
+ ),
+ migrations.AlterField(
+ model_name='reportstate',
+ name='txt_idx',
+ field=models.TextField(help_text='Le "slug" est une version standardis\xe9e du nom. Il ne contient que des lettres en minuscule, des nombres et des tirets (-). Chaque "slug" doit \xeatre unique dans la typologie.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), "Ce champ ne doit contenir que des lettres, des nombres, des tirets bas _ et des traits d'union.", 'invalid')], verbose_name='Identifiant textuel'),
+ ),
+ ]
diff --git a/archaeological_operations/models.py b/archaeological_operations/models.py
index 8d2c4e376..b15dbf580 100644
--- a/archaeological_operations/models.py
+++ b/archaeological_operations/models.py
@@ -120,6 +120,8 @@ class ArchaeologicalSite(BaseHistorizedItem, OwnPerms, ValueGetter,
"reference",
"shipwreck_code",
"shipwreck_name",
+ "drassm_number",
+ "affmar_number",
]
M2M_SEARCH_VECTORS = ["periods__label", "remains__label", "towns__name"]
PARENT_SEARCH_VECTORS = ['operations']
@@ -193,6 +195,14 @@ class ArchaeologicalSite(BaseHistorizedItem, OwnPerms, ValueGetter,
pgettext_lazy("key for text search", u"top-operation"),
'top_operation__cached_label__icontains'
),
+ 'drassm_number': (
+ pgettext_lazy("key for text search", u"numero-drassm"),
+ 'drassm_number__iexact'
+ ),
+ 'affmar_number': (
+ pgettext_lazy("key for text search", u"numero-affmar"),
+ 'affmar_number__iexact'
+ ),
}
for v in ALT_NAMES.values():
for language_code, language_lbl in settings.LANGUAGES:
@@ -244,6 +254,10 @@ class ArchaeologicalSite(BaseHistorizedItem, OwnPerms, ValueGetter,
_(u"Sinking date"), null=True, blank=True)
discovery_area = models.TextField(
_(u"Discovery area"), null=True, blank=True)
+ affmar_number = models.CharField(_(u"Numéro AffMar"), max_length=100,
+ null=True, blank=True)
+ drassm_number = models.CharField(_(u"Numéro DRASSM"), max_length=100,
+ null=True, blank=True)
# gis
point = models.PointField(_(u"Point"), blank=True, null=True)
@@ -542,6 +556,7 @@ class Operation(ClosedItem, BaseHistorizedItem, OwnPerms, ValueGetter,
"scientist__cached_label",
"scientific_documentation_comment",
"seizure_name",
+ "drassm_code",
]
PROPERTY_SEARCH_VECTORS = [
"full_reference", "short_code_patriarche"
@@ -706,6 +721,10 @@ class Operation(ClosedItem, BaseHistorizedItem, OwnPerms, ValueGetter,
pgettext_lazy("key for text search", u"finds-deadline-after"),
'finds_deadline__gte'
),
+ 'drassm_code': (
+ pgettext_lazy("key for text search", u"code-drassm"),
+ 'drassm_code__iexact'
+ ),
}
for v in ALT_NAMES.values():
for language_code, language_lbl in settings.LANGUAGES:
@@ -784,34 +803,35 @@ class Operation(ClosedItem, BaseHistorizedItem, OwnPerms, ValueGetter,
blank=True, null=True)
old_code = models.CharField(_(u"Old code"), max_length=200, null=True,
blank=True)
- if settings.COUNTRY == 'fr':
- code_patriarche = models.TextField(u"Code PATRIARCHE", null=True,
- blank=True, unique=True)
- TABLE_COLS = ['code_patriarche'] + TABLE_COLS
- BASE_SEARCH_VECTORS = ['code_patriarche'] + BASE_SEARCH_VECTORS
- # preventive
- fnap_financing = models.FloatField(u"Financement FNAP (%)",
- blank=True, null=True)
- # preventive
- fnap_cost = models.IntegerField(u"Financement FNAP (€)",
- blank=True, null=True)
- # preventive diag
- zoning_prescription = models.NullBooleanField(
- _(u"Prescription on zoning"), blank=True, null=True)
- # preventive diag
- large_area_prescription = models.NullBooleanField(
- _(u"Prescription on large area"), blank=True, null=True)
- geoarchaeological_context_prescription = models.NullBooleanField(
- _(u"Prescription on geoarchaeological context"), blank=True,
- null=True) # preventive diag
- cira_rapporteur = models.ForeignKey(
- Person, related_name='cira_rapporteur', null=True, blank=True,
- on_delete=models.SET_NULL, verbose_name=u"Rapporteur CIRA")
- negative_result = models.NullBooleanField(
- u"Résultat considéré comme négatif", blank=True, null=True)
- cira_date = models.DateField(u"Date avis CIRA", null=True, blank=True)
- eas_number = models.CharField(u"Numéro de l'EA", max_length=20,
- null=True, blank=True)
+ ## fr
+ code_patriarche = models.TextField(u"Code PATRIARCHE", null=True,
+ blank=True, unique=True)
+ TABLE_COLS = ['code_patriarche'] + TABLE_COLS
+ BASE_SEARCH_VECTORS = ['code_patriarche'] + BASE_SEARCH_VECTORS
+ # preventive
+ fnap_financing = models.FloatField(u"Financement FNAP (%)",
+ blank=True, null=True)
+ # preventive
+ fnap_cost = models.IntegerField(u"Financement FNAP (€)",
+ blank=True, null=True)
+ # preventive diag
+ zoning_prescription = models.NullBooleanField(
+ _(u"Prescription on zoning"), blank=True, null=True)
+ # preventive diag
+ large_area_prescription = models.NullBooleanField(
+ _(u"Prescription on large area"), blank=True, null=True)
+ geoarchaeological_context_prescription = models.NullBooleanField(
+ _(u"Prescription on geoarchaeological context"), blank=True,
+ null=True) # preventive diag
+ cira_rapporteur = models.ForeignKey(
+ Person, related_name='cira_rapporteur', null=True, blank=True,
+ on_delete=models.SET_NULL, verbose_name=u"Rapporteur CIRA")
+ negative_result = models.NullBooleanField(
+ u"Résultat considéré comme négatif", blank=True, null=True)
+ cira_date = models.DateField(u"Date avis CIRA", null=True, blank=True)
+ eas_number = models.CharField(u"Numéro de l'EA", max_length=20,
+ null=True, blank=True)
+ ## end fr
operator_reference = models.CharField(
_(u"Operator reference"), max_length=20, null=True, blank=True)
common_name = models.TextField(_(u"Generic name"), null=True, blank=True)
@@ -846,6 +866,9 @@ class Operation(ClosedItem, BaseHistorizedItem, OwnPerms, ValueGetter,
finds_received = models.NullBooleanField(
_(u"Finds received"), blank=True, null=True)
+ # underwater
+ drassm_code = models.CharField(_(u"Code DRASSM"), max_length=100,
+ null=True, blank=True)
# judiciary
seizure_name = models.TextField(_(u"Seizure name"), blank=True, null=True)
official_report_number = models.TextField(_(u"Official report number"),
diff --git a/archaeological_operations/templates/ishtar/sheet_operation.html b/archaeological_operations/templates/ishtar/sheet_operation.html
index 6d8d475e4..fb938b93f 100644
--- a/archaeological_operations/templates/ishtar/sheet_operation.html
+++ b/archaeological_operations/templates/ishtar/sheet_operation.html
@@ -33,6 +33,7 @@
</div>
<div class="row">
+ {% field_flex_2 "Code DRASSM" item.drassm_code %}
{% field_flex_2 "Old code" item.old_code %}
{% trans "Begining date" as begining_date_label %}
{% field_flex_2 begining_date_label item.start_date|date:"DATE_FORMAT" %}
diff --git a/archaeological_operations/templates/ishtar/sheet_site.html b/archaeological_operations/templates/ishtar/sheet_site.html
index 8f8d018f6..0108d3db6 100644
--- a/archaeological_operations/templates/ishtar/sheet_site.html
+++ b/archaeological_operations/templates/ishtar/sheet_site.html
@@ -49,10 +49,12 @@
</div>
{% endif %}
-{% if item.oceanographic_service_localisation or item.shipwreck_code or item.sinking_date or item.discovery_area or item.shipwreck_name %}
+{% if item.affmar_number or item.drassm_number or item.oceanographic_service_localisation or item.shipwreck_code or item.sinking_date or item.discovery_area or item.shipwreck_name %}
<h3>{% trans "Underwater"%}</h3>
<div class="row">
+ {% field_flex "Numéro AffMar" item.affmar_number %}
+ {% field_flex "Numéro DRASSM" item.drassm_number %}
{% field_flex "Shipwreck name" item.shipwreck_name %}
{% field_flex "Shipwreck code" item.shipwreck_code %}
{% field_flex "Sinking date" item.sinking_date %}
diff --git a/archaeological_warehouse/migrations/0026_auto_20181203_1442.py b/archaeological_warehouse/migrations/0026_auto_20181203_1442.py
new file mode 100644
index 000000000..141ac8d2d
--- /dev/null
+++ b/archaeological_warehouse/migrations/0026_auto_20181203_1442.py
@@ -0,0 +1,374 @@
+# -*- coding: utf-8 -*-
+# Generated by Django 1.11.10 on 2018-12-03 14:42
+from __future__ import unicode_literals
+
+from django.conf import settings
+import django.contrib.postgres.search
+import django.core.validators
+from django.db import migrations, models
+import django.db.models.deletion
+import re
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('archaeological_warehouse', '0025_auto_20181112_1842'),
+ ]
+
+ operations = [
+ migrations.AlterModelOptions(
+ name='container',
+ options={'ordering': ('cached_label',), 'permissions': (('view_container', 'Can view all Containers'), ('view_own_container', 'Can view own Container'), ('add_own_container', 'Can add own Container'), ('change_own_container', 'Can change own Container'), ('delete_own_container', 'Can delete own Container')), 'verbose_name': 'Contenant', 'verbose_name_plural': 'Contenants'},
+ ),
+ migrations.AlterModelOptions(
+ name='containerlocalisation',
+ options={'ordering': ('container', 'division__order'), 'verbose_name': 'Localisation de contenant', 'verbose_name_plural': 'Localisations de contenant'},
+ ),
+ migrations.AlterModelOptions(
+ name='containertype',
+ options={'ordering': ('label',), 'verbose_name': 'Type de contenant', 'verbose_name_plural': 'Types de contenant'},
+ ),
+ migrations.AlterModelOptions(
+ name='warehouse',
+ options={'permissions': (('view_warehouse', 'Can view all Warehouses'), ('view_own_warehouse', 'Can view own Warehouse'), ('add_own_warehouse', 'Can add own Warehouse'), ('change_own_warehouse', 'Can change own Warehouse'), ('delete_own_warehouse', 'Can delete own Warehouse')), 'verbose_name': 'Lieu de conservation', 'verbose_name_plural': 'Lieux de conservation'},
+ ),
+ migrations.AlterModelOptions(
+ name='warehousedivision',
+ options={'verbose_name': 'Type de division de lieu de conservation', 'verbose_name_plural': 'Types de division de lieu de conservation'},
+ ),
+ migrations.AlterModelOptions(
+ name='warehousetype',
+ options={'ordering': ('label',), 'verbose_name': 'Type de lieu de conservation', 'verbose_name_plural': 'Types de lieu de conservation'},
+ ),
+ migrations.AlterField(
+ model_name='collection',
+ name='history_creator',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to=settings.AUTH_USER_MODEL, verbose_name='Cr\xe9ateur'),
+ ),
+ migrations.AlterField(
+ model_name='collection',
+ name='history_modifier',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to=settings.AUTH_USER_MODEL, verbose_name='Dernier \xe9diteur'),
+ ),
+ migrations.AlterField(
+ model_name='collection',
+ name='name',
+ field=models.CharField(blank=True, max_length=200, null=True, verbose_name='Nom'),
+ ),
+ migrations.AlterField(
+ model_name='collection',
+ name='search_vector',
+ field=django.contrib.postgres.search.SearchVectorField(blank=True, help_text='Auto-rempli \xe0 la sauvegarde', null=True, verbose_name='Vecteur de recherche'),
+ ),
+ migrations.AlterField(
+ model_name='collection',
+ name='warehouse',
+ field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='collections', to='archaeological_warehouse.Warehouse', verbose_name='Lieu de conservation'),
+ ),
+ migrations.AlterField(
+ model_name='container',
+ name='auto_external_id',
+ field=models.BooleanField(default=False, verbose_name="L'identifiant est attribu\xe9 automatiquement"),
+ ),
+ migrations.AlterField(
+ model_name='container',
+ name='cached_division',
+ field=models.TextField(blank=True, db_index=True, null=True, verbose_name='Division mise en cache'),
+ ),
+ migrations.AlterField(
+ model_name='container',
+ name='cached_location',
+ field=models.TextField(blank=True, db_index=True, null=True, verbose_name='Localisation - en cache'),
+ ),
+ migrations.AlterField(
+ model_name='container',
+ name='comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire'),
+ ),
+ migrations.AlterField(
+ model_name='container',
+ name='container_type',
+ field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='archaeological_warehouse.ContainerType', verbose_name='Type de contenant'),
+ ),
+ migrations.AlterField(
+ model_name='container',
+ name='external_id',
+ field=models.TextField(blank=True, null=True, verbose_name='Identifiant'),
+ ),
+ migrations.AlterField(
+ model_name='container',
+ name='history_creator',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to=settings.AUTH_USER_MODEL, verbose_name='Cr\xe9ateur'),
+ ),
+ migrations.AlterField(
+ model_name='container',
+ name='history_modifier',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to=settings.AUTH_USER_MODEL, verbose_name='Dernier \xe9diteur'),
+ ),
+ migrations.AlterField(
+ model_name='container',
+ name='location',
+ field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='containers', to='archaeological_warehouse.Warehouse', verbose_name='Localisation (lieu de conservation)'),
+ ),
+ migrations.AlterField(
+ model_name='container',
+ name='old_reference',
+ field=models.TextField(blank=True, null=True, verbose_name='Ancienne r\xe9f\xe9rence'),
+ ),
+ migrations.AlterField(
+ model_name='container',
+ name='reference',
+ field=models.TextField(verbose_name='R\xe9f. du contenant'),
+ ),
+ migrations.AlterField(
+ model_name='container',
+ name='responsible',
+ field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='owned_containers', to='archaeological_warehouse.Warehouse', verbose_name='Lieu de conservation responsable'),
+ ),
+ migrations.AlterField(
+ model_name='container',
+ name='search_vector',
+ field=django.contrib.postgres.search.SearchVectorField(blank=True, help_text='Auto-rempli \xe0 la sauvegarde', null=True, verbose_name='Vecteur de recherche'),
+ ),
+ migrations.AlterField(
+ model_name='containerlocalisation',
+ name='container',
+ field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='division', to='archaeological_warehouse.Container', verbose_name='Contenant'),
+ ),
+ migrations.AlterField(
+ model_name='containerlocalisation',
+ name='reference',
+ field=models.CharField(default=b'', max_length=200, verbose_name='R\xe9f\xe9rence'),
+ ),
+ migrations.AlterField(
+ model_name='containertype',
+ name='available',
+ field=models.BooleanField(default=True, verbose_name='Disponible'),
+ ),
+ migrations.AlterField(
+ model_name='containertype',
+ name='comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire'),
+ ),
+ migrations.AlterField(
+ model_name='containertype',
+ name='height',
+ field=models.IntegerField(blank=True, null=True, verbose_name='Hauteur (mm)'),
+ ),
+ migrations.AlterField(
+ model_name='containertype',
+ name='label',
+ field=models.TextField(verbose_name='D\xe9nomination'),
+ ),
+ migrations.AlterField(
+ model_name='containertype',
+ name='length',
+ field=models.IntegerField(blank=True, null=True, verbose_name='Longueur (mm)'),
+ ),
+ migrations.AlterField(
+ model_name='containertype',
+ name='reference',
+ field=models.CharField(blank=True, max_length=300, null=True, verbose_name='R\xe9f.'),
+ ),
+ migrations.AlterField(
+ model_name='containertype',
+ name='txt_idx',
+ field=models.TextField(help_text='Le "slug" est une version standardis\xe9e du nom. Il ne contient que des lettres en minuscule, des nombres et des tirets (-). Chaque "slug" doit \xeatre unique dans la typologie.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), "Ce champ ne doit contenir que des lettres, des nombres, des tirets bas _ et des traits d'union.", 'invalid')], verbose_name='Identifiant textuel'),
+ ),
+ migrations.AlterField(
+ model_name='containertype',
+ name='width',
+ field=models.IntegerField(blank=True, null=True, verbose_name='Largeur (mm)'),
+ ),
+ migrations.AlterField(
+ model_name='warehouse',
+ name='address',
+ field=models.TextField(blank=True, null=True, verbose_name='Adresse'),
+ ),
+ migrations.AlterField(
+ model_name='warehouse',
+ name='address_complement',
+ field=models.TextField(blank=True, null=True, verbose_name="Compl\xe9ment d'adresse"),
+ ),
+ migrations.AlterField(
+ model_name='warehouse',
+ name='alt_address',
+ field=models.TextField(blank=True, null=True, verbose_name='Autre adresse : adresse'),
+ ),
+ migrations.AlterField(
+ model_name='warehouse',
+ name='alt_address_complement',
+ field=models.TextField(blank=True, null=True, verbose_name="Autre adresse : compl\xe9ment d'adresse"),
+ ),
+ migrations.AlterField(
+ model_name='warehouse',
+ name='alt_address_is_prefered',
+ field=models.BooleanField(default=False, verbose_name="L'adresse alternative est pr\xe9f\xe9r\xe9e"),
+ ),
+ migrations.AlterField(
+ model_name='warehouse',
+ name='alt_country',
+ field=models.CharField(blank=True, max_length=30, null=True, verbose_name='Autre adresse : pays'),
+ ),
+ migrations.AlterField(
+ model_name='warehouse',
+ name='alt_postal_code',
+ field=models.CharField(blank=True, max_length=10, null=True, verbose_name='Autre adresse : code postal'),
+ ),
+ migrations.AlterField(
+ model_name='warehouse',
+ name='alt_town',
+ field=models.CharField(blank=True, max_length=70, null=True, verbose_name='Autre adresse : ville'),
+ ),
+ migrations.AlterField(
+ model_name='warehouse',
+ name='auto_external_id',
+ field=models.BooleanField(default=False, verbose_name="L'identifiant est attribu\xe9 automatiquement"),
+ ),
+ migrations.AlterField(
+ model_name='warehouse',
+ name='comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire'),
+ ),
+ migrations.AlterField(
+ model_name='warehouse',
+ name='country',
+ field=models.CharField(blank=True, max_length=30, null=True, verbose_name='Pays'),
+ ),
+ migrations.AlterField(
+ model_name='warehouse',
+ name='email',
+ field=models.EmailField(blank=True, max_length=300, null=True, verbose_name='Courriel'),
+ ),
+ migrations.AlterField(
+ model_name='warehouse',
+ name='external_id',
+ field=models.TextField(blank=True, null=True, verbose_name='Identifiant'),
+ ),
+ migrations.AlterField(
+ model_name='warehouse',
+ name='history_creator',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to=settings.AUTH_USER_MODEL, verbose_name='Cr\xe9ateur'),
+ ),
+ migrations.AlterField(
+ model_name='warehouse',
+ name='history_modifier',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to=settings.AUTH_USER_MODEL, verbose_name='Dernier \xe9diteur'),
+ ),
+ migrations.AlterField(
+ model_name='warehouse',
+ name='mobile_phone',
+ field=models.CharField(blank=True, max_length=18, null=True, verbose_name='T\xe9l\xe9phone portable'),
+ ),
+ migrations.AlterField(
+ model_name='warehouse',
+ name='name',
+ field=models.CharField(max_length=200, verbose_name='Nom'),
+ ),
+ migrations.AlterField(
+ model_name='warehouse',
+ name='person_in_charge',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='warehouse_in_charge', to='ishtar_common.Person', verbose_name='Dossier suivi par'),
+ ),
+ migrations.AlterField(
+ model_name='warehouse',
+ name='phone',
+ field=models.CharField(blank=True, max_length=18, null=True, verbose_name='T\xe9l\xe9phone'),
+ ),
+ migrations.AlterField(
+ model_name='warehouse',
+ name='phone2',
+ field=models.CharField(blank=True, max_length=18, null=True, verbose_name='Type de t\xe9l\xe9phone 2'),
+ ),
+ migrations.AlterField(
+ model_name='warehouse',
+ name='phone3',
+ field=models.CharField(blank=True, max_length=18, null=True, verbose_name='T\xe9l\xe9phone 3'),
+ ),
+ migrations.AlterField(
+ model_name='warehouse',
+ name='phone_desc',
+ field=models.CharField(blank=True, max_length=300, null=True, verbose_name='Type de t\xe9l\xe9phone'),
+ ),
+ migrations.AlterField(
+ model_name='warehouse',
+ name='phone_desc2',
+ field=models.CharField(blank=True, max_length=300, null=True, verbose_name='Type de t\xe9l\xe9phone 2'),
+ ),
+ migrations.AlterField(
+ model_name='warehouse',
+ name='phone_desc3',
+ field=models.CharField(blank=True, max_length=300, null=True, verbose_name='Type de t\xe9l\xe9phone 3'),
+ ),
+ migrations.AlterField(
+ model_name='warehouse',
+ name='postal_code',
+ field=models.CharField(blank=True, max_length=10, null=True, verbose_name='Code postal'),
+ ),
+ migrations.AlterField(
+ model_name='warehouse',
+ name='raw_phone',
+ field=models.TextField(blank=True, null=True, verbose_name='T\xe9l\xe9phone brut'),
+ ),
+ migrations.AlterField(
+ model_name='warehouse',
+ name='search_vector',
+ field=django.contrib.postgres.search.SearchVectorField(blank=True, help_text='Auto-rempli \xe0 la sauvegarde', null=True, verbose_name='Vecteur de recherche'),
+ ),
+ migrations.AlterField(
+ model_name='warehouse',
+ name='town',
+ field=models.CharField(blank=True, max_length=70, null=True, verbose_name='Commune'),
+ ),
+ migrations.AlterField(
+ model_name='warehouse',
+ name='warehouse_type',
+ field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='archaeological_warehouse.WarehouseType', verbose_name='Type de lieu de conservation'),
+ ),
+ migrations.AlterField(
+ model_name='warehousedivision',
+ name='available',
+ field=models.BooleanField(default=True, verbose_name='Disponible'),
+ ),
+ migrations.AlterField(
+ model_name='warehousedivision',
+ name='comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire'),
+ ),
+ migrations.AlterField(
+ model_name='warehousedivision',
+ name='label',
+ field=models.TextField(verbose_name='D\xe9nomination'),
+ ),
+ migrations.AlterField(
+ model_name='warehousedivision',
+ name='txt_idx',
+ field=models.TextField(help_text='Le "slug" est une version standardis\xe9e du nom. Il ne contient que des lettres en minuscule, des nombres et des tirets (-). Chaque "slug" doit \xeatre unique dans la typologie.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), "Ce champ ne doit contenir que des lettres, des nombres, des tirets bas _ et des traits d'union.", 'invalid')], verbose_name='Identifiant textuel'),
+ ),
+ migrations.AlterField(
+ model_name='warehousedivisionlink',
+ name='order',
+ field=models.IntegerField(default=10, verbose_name='Ordre'),
+ ),
+ migrations.AlterField(
+ model_name='warehousetype',
+ name='available',
+ field=models.BooleanField(default=True, verbose_name='Disponible'),
+ ),
+ migrations.AlterField(
+ model_name='warehousetype',
+ name='comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire'),
+ ),
+ migrations.AlterField(
+ model_name='warehousetype',
+ name='label',
+ field=models.TextField(verbose_name='D\xe9nomination'),
+ ),
+ migrations.AlterField(
+ model_name='warehousetype',
+ name='txt_idx',
+ field=models.TextField(help_text='Le "slug" est une version standardis\xe9e du nom. Il ne contient que des lettres en minuscule, des nombres et des tirets (-). Chaque "slug" doit \xeatre unique dans la typologie.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), "Ce champ ne doit contenir que des lettres, des nombres, des tirets bas _ et des traits d'union.", 'invalid')], verbose_name='Identifiant textuel'),
+ ),
+ ]
diff --git a/ishtar_common/migrations/0078_auto_20181203_1442.py b/ishtar_common/migrations/0078_auto_20181203_1442.py
new file mode 100644
index 000000000..282356a55
--- /dev/null
+++ b/ishtar_common/migrations/0078_auto_20181203_1442.py
@@ -0,0 +1,1832 @@
+# -*- coding: utf-8 -*-
+# Generated by Django 1.11.10 on 2018-12-03 14:42
+from __future__ import unicode_literals
+
+from django.conf import settings
+import django.contrib.gis.db.models.fields
+import django.contrib.postgres.search
+import django.core.validators
+from django.db import migrations, models
+import django.db.models.deletion
+import re
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('ishtar_common', '0077_auto_20181129_1755'),
+ ]
+
+ operations = [
+ migrations.AlterModelOptions(
+ name='administrationscript',
+ options={'ordering': ['name'], 'verbose_name': "Script d'administration", 'verbose_name_plural': "Scripts d'administration"},
+ ),
+ migrations.AlterModelOptions(
+ name='administrationtask',
+ options={'ordering': ['script'], 'verbose_name': "T\xe2che d'administration", 'verbose_name_plural': "T\xe2ches d'administration"},
+ ),
+ migrations.AlterModelOptions(
+ name='area',
+ options={'ordering': ('label',), 'verbose_name': 'Zone', 'verbose_name_plural': 'Zones'},
+ ),
+ migrations.AlterModelOptions(
+ name='author',
+ options={'ordering': ('author_type__order', 'person__name'), 'permissions': (('view_author', 'Can view all Authors'), ('view_own_author', 'Can view own Author'), ('add_own_author', 'Can add own Author'), ('change_own_author', 'Can change own Author'), ('delete_own_author', 'Can delete own Author')), 'verbose_name': 'Auteur', 'verbose_name_plural': 'Auteurs'},
+ ),
+ migrations.AlterModelOptions(
+ name='authortype',
+ options={'ordering': ['order', 'label'], 'verbose_name': "Type d'auteur", 'verbose_name_plural': "Types d'auteur"},
+ ),
+ migrations.AlterModelOptions(
+ name='customform',
+ options={'ordering': ['name', 'form'], 'verbose_name': 'Formulaire personnalis\xe9', 'verbose_name_plural': 'Formulaires personnalis\xe9s'},
+ ),
+ migrations.AlterModelOptions(
+ name='customformjsonfield',
+ options={'verbose_name': 'Formulaire personnalis\xe9 - Champ de donn\xe9e Json', 'verbose_name_plural': 'Formulaire personnalis\xe9 - Champs de donn\xe9e Json'},
+ ),
+ migrations.AlterModelOptions(
+ name='department',
+ options={'ordering': ['number'], 'verbose_name': 'D\xe9partement', 'verbose_name_plural': 'D\xe9partements'},
+ ),
+ migrations.AlterModelOptions(
+ name='documenttemplate',
+ options={'ordering': ['associated_object_name', 'name'], 'verbose_name': 'Patron de document', 'verbose_name_plural': 'Patrons de document'},
+ ),
+ migrations.AlterModelOptions(
+ name='excludedfield',
+ options={'verbose_name': 'Champ exclus', 'verbose_name_plural': 'Champs exclus'},
+ ),
+ migrations.AlterModelOptions(
+ name='format',
+ options={'ordering': ['label'], 'verbose_name': 'Type de format', 'verbose_name_plural': 'Types de format'},
+ ),
+ migrations.AlterModelOptions(
+ name='formatertype',
+ options={'ordering': ('formater_type', 'options'), 'verbose_name': 'Importeur - Type de mise en forme', 'verbose_name_plural': 'Importeur - Types de mise en forme'},
+ ),
+ migrations.AlterModelOptions(
+ name='globalvar',
+ options={'ordering': ['slug'], 'verbose_name': 'Variable globale', 'verbose_name_plural': 'Variables globales'},
+ ),
+ migrations.AlterModelOptions(
+ name='historicalorganization',
+ options={'get_latest_by': 'history_date', 'ordering': ('-history_date', '-history_id'), 'verbose_name': 'historical Organisation'},
+ ),
+ migrations.AlterModelOptions(
+ name='historicalperson',
+ options={'get_latest_by': 'history_date', 'ordering': ('-history_date', '-history_id'), 'verbose_name': 'historical Personne'},
+ ),
+ migrations.AlterModelOptions(
+ name='importercolumn',
+ options={'ordering': ('importer_type', 'col_number'), 'verbose_name': 'Importeur - Colonne', 'verbose_name_plural': 'Importeur - Colonnes'},
+ ),
+ migrations.AlterModelOptions(
+ name='importerdefault',
+ options={'verbose_name': 'Importeur - Par d\xe9faut', 'verbose_name_plural': 'Importeur - Par d\xe9faut'},
+ ),
+ migrations.AlterModelOptions(
+ name='importerdefaultvalues',
+ options={'verbose_name': 'Importeur - Valeur par d\xe9faut', 'verbose_name_plural': 'Importeur - Valeurs par d\xe9faut'},
+ ),
+ migrations.AlterModelOptions(
+ name='importerduplicatefield',
+ options={'ordering': ('column', 'field_name'), 'verbose_name': 'Importeur - Champ dupliqu\xe9', 'verbose_name_plural': 'Importeur - Champs dupliqu\xe9s'},
+ ),
+ migrations.AlterModelOptions(
+ name='importermodel',
+ options={'ordering': ('name',), 'verbose_name': 'Importeur - Mod\xe8le', 'verbose_name_plural': 'Importeur - Mod\xe8les'},
+ ),
+ migrations.AlterModelOptions(
+ name='importertype',
+ options={'ordering': ('name',), 'verbose_name': 'Importeur - Type', 'verbose_name_plural': 'Importeur - Types'},
+ ),
+ migrations.AlterModelOptions(
+ name='importtarget',
+ options={'verbose_name': 'Importeur - Cible', 'verbose_name_plural': 'Importeur - Cibles'},
+ ),
+ migrations.AlterModelOptions(
+ name='ishtarsiteprofile',
+ options={'ordering': ['label'], 'verbose_name': "Profil d'instance Ishtar", 'verbose_name_plural': "Profils d'instance Ishtar"},
+ ),
+ migrations.AlterModelOptions(
+ name='ishtaruser',
+ options={'verbose_name': "Utilisateur d'Ishtar", 'verbose_name_plural': "Utilisateurs d'Ishtar"},
+ ),
+ migrations.AlterModelOptions(
+ name='jsondatafield',
+ options={'ordering': ['order', 'name'], 'verbose_name': 'Donn\xe9e JSON - Champ', 'verbose_name_plural': 'Donn\xe9e JSON - Champs'},
+ ),
+ migrations.AlterModelOptions(
+ name='jsondatasection',
+ options={'ordering': ['order', 'name'], 'verbose_name': 'Donn\xe9es JSON - Menu', 'verbose_name_plural': 'Donn\xe9es JSON - Menus'},
+ ),
+ migrations.AlterModelOptions(
+ name='licensetype',
+ options={'ordering': ('label',), 'verbose_name': 'Type de licence', 'verbose_name_plural': 'Types de licence'},
+ ),
+ migrations.AlterModelOptions(
+ name='operationtype',
+ options={'ordering': ['judiciary', '-preventive', 'order', 'label'], 'verbose_name': "Type d'op\xe9ration", 'verbose_name_plural': "Types d'op\xe9ration"},
+ ),
+ migrations.AlterModelOptions(
+ name='organization',
+ options={'permissions': (('view_organization', 'Can view all Organizations'), ('view_own_organization', 'Can view own Organization'), ('add_own_organization', 'Can add own Organization'), ('change_own_organization', 'Can change own Organization'), ('delete_own_organization', 'Can delete own Organization')), 'verbose_name': 'Organisation', 'verbose_name_plural': 'Organisations'},
+ ),
+ migrations.AlterModelOptions(
+ name='organizationtype',
+ options={'ordering': ('label',), 'verbose_name': "Type d'organisation", 'verbose_name_plural': "Types d'organisation"},
+ ),
+ migrations.AlterModelOptions(
+ name='person',
+ options={'permissions': (('view_person', 'Can view all Persons'), ('view_own_person', 'Can view own Person'), ('add_own_person', 'Can add own Person'), ('change_own_person', 'Can change own Person'), ('delete_own_person', 'Can delete own Person')), 'verbose_name': 'Personne', 'verbose_name_plural': 'Personnes'},
+ ),
+ migrations.AlterModelOptions(
+ name='persontype',
+ options={'ordering': ('label',), 'verbose_name': 'Type de personne', 'verbose_name_plural': 'Types de personne'},
+ ),
+ migrations.AlterModelOptions(
+ name='profiletype',
+ options={'ordering': ('label',), 'verbose_name': 'Type de profil', 'verbose_name_plural': 'Types de profil'},
+ ),
+ migrations.AlterModelOptions(
+ name='regexp',
+ options={'verbose_name': 'Importeur - Expression r\xe9guli\xe8re', 'verbose_name_plural': 'Importeur - Expressions r\xe9guli\xe8res'},
+ ),
+ migrations.AlterModelOptions(
+ name='searchquery',
+ options={'ordering': ['label'], 'verbose_name': 'Requ\xeate de recherche', 'verbose_name_plural': 'Requ\xeates de recherche'},
+ ),
+ migrations.AlterModelOptions(
+ name='sourcetype',
+ options={'ordering': ['label'], 'verbose_name': 'Type de document', 'verbose_name_plural': 'Types de document'},
+ ),
+ migrations.AlterModelOptions(
+ name='spatialreferencesystem',
+ options={'ordering': ('label',), 'verbose_name': 'Syst\xe8me de r\xe9f\xe9rence spatiale', 'verbose_name_plural': 'Syst\xe8mes de r\xe9f\xe9rence spatiale'},
+ ),
+ migrations.AlterModelOptions(
+ name='state',
+ options={'ordering': ['number'], 'verbose_name': '\xc9tat'},
+ ),
+ migrations.AlterModelOptions(
+ name='supporttype',
+ options={'verbose_name': 'Type de support', 'verbose_name_plural': 'Types de support'},
+ ),
+ migrations.AlterModelOptions(
+ name='targetkey',
+ options={'ordering': ('target', 'key'), 'verbose_name': 'Importeur - Cl\xe9 de rapprochement', 'verbose_name_plural': 'Importeur - Cl\xe9s de rapprochement'},
+ ),
+ migrations.AlterModelOptions(
+ name='targetkeygroup',
+ options={'verbose_name': 'Importeur - Groupe de cl\xe9 de rapprochement', 'verbose_name_plural': 'Importeur - Groupes de cl\xe9 de rapprochement'},
+ ),
+ migrations.AlterModelOptions(
+ name='titletype',
+ options={'ordering': ('label',), 'verbose_name': 'Type de titre', 'verbose_name_plural': 'Types de titre'},
+ ),
+ migrations.AlterModelOptions(
+ name='town',
+ options={'ordering': ['numero_insee'], 'verbose_name': 'Commune', 'verbose_name_plural': 'Communes'},
+ ),
+ migrations.AlterModelOptions(
+ name='userprofile',
+ options={'verbose_name': "Profil d'utilisateur", 'verbose_name_plural': "Profils d'utilisateurs"},
+ ),
+ migrations.AlterField(
+ model_name='administrationscript',
+ name='name',
+ field=models.TextField(blank=True, null=True, verbose_name='Nom'),
+ ),
+ migrations.AlterField(
+ model_name='administrationscript',
+ name='path',
+ field=models.CharField(max_length=30, verbose_name='Nom de fichier'),
+ ),
+ migrations.AlterField(
+ model_name='administrationtask',
+ name='result',
+ field=models.TextField(blank=True, null=True, verbose_name='R\xe9sultat'),
+ ),
+ migrations.AlterField(
+ model_name='administrationtask',
+ name='state',
+ field=models.CharField(choices=[(b'S', 'Planifi\xe9'), (b'P', 'En cours'), (b'FE', 'Termin\xe9 avec des erreurs'), (b'F', 'Termin\xe9')], default=b'S', max_length=2, verbose_name='\xc9tat'),
+ ),
+ migrations.AlterField(
+ model_name='area',
+ name='available',
+ field=models.BooleanField(default=True, verbose_name='Disponible'),
+ ),
+ migrations.AlterField(
+ model_name='area',
+ name='comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire'),
+ ),
+ migrations.AlterField(
+ model_name='area',
+ name='label',
+ field=models.TextField(verbose_name='D\xe9nomination'),
+ ),
+ migrations.AlterField(
+ model_name='area',
+ name='parent',
+ field=models.ForeignKey(blank=True, help_text='Seulement quatre niveaux de parents sont g\xe9r\xe9s.', null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='children', to='ishtar_common.Area', verbose_name='Parent'),
+ ),
+ migrations.AlterField(
+ model_name='area',
+ name='reference',
+ field=models.CharField(blank=True, max_length=200, null=True, verbose_name='R\xe9f\xe9rence'),
+ ),
+ migrations.AlterField(
+ model_name='area',
+ name='towns',
+ field=models.ManyToManyField(blank=True, related_name='areas', to='ishtar_common.Town', verbose_name='Communes'),
+ ),
+ migrations.AlterField(
+ model_name='area',
+ name='txt_idx',
+ field=models.TextField(help_text='Le "slug" est une version standardis\xe9e du nom. Il ne contient que des lettres en minuscule, des nombres et des tirets (-). Chaque "slug" doit \xeatre unique dans la typologie.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), "Ce champ ne doit contenir que des lettres, des nombres, des tirets bas _ et des traits d'union.", 'invalid')], verbose_name='Identifiant textuel'),
+ ),
+ migrations.AlterField(
+ model_name='author',
+ name='author_type',
+ field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='ishtar_common.AuthorType', verbose_name="Type d'auteur"),
+ ),
+ migrations.AlterField(
+ model_name='author',
+ name='cached_label',
+ field=models.TextField(blank=True, db_index=True, null=True, verbose_name='Nom en cache'),
+ ),
+ migrations.AlterField(
+ model_name='author',
+ name='person',
+ field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='author', to='ishtar_common.Person', verbose_name='Personne'),
+ ),
+ migrations.AlterField(
+ model_name='author',
+ name='search_vector',
+ field=django.contrib.postgres.search.SearchVectorField(blank=True, help_text='Auto-rempli \xe0 la sauvegarde', null=True, verbose_name='Vecteur de recherche'),
+ ),
+ migrations.AlterField(
+ model_name='authortype',
+ name='available',
+ field=models.BooleanField(default=True, verbose_name='Disponible'),
+ ),
+ migrations.AlterField(
+ model_name='authortype',
+ name='comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire'),
+ ),
+ migrations.AlterField(
+ model_name='authortype',
+ name='label',
+ field=models.TextField(verbose_name='D\xe9nomination'),
+ ),
+ migrations.AlterField(
+ model_name='authortype',
+ name='order',
+ field=models.IntegerField(default=1, verbose_name='Ordre'),
+ ),
+ migrations.AlterField(
+ model_name='authortype',
+ name='txt_idx',
+ field=models.TextField(help_text='Le "slug" est une version standardis\xe9e du nom. Il ne contient que des lettres en minuscule, des nombres et des tirets (-). Chaque "slug" doit \xeatre unique dans la typologie.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), "Ce champ ne doit contenir que des lettres, des nombres, des tirets bas _ et des traits d'union.", 'invalid')], verbose_name='Identifiant textuel'),
+ ),
+ migrations.AlterField(
+ model_name='customform',
+ name='apply_to_all',
+ field=models.BooleanField(default=False, help_text="Activer ce formulaire pour tous les utilisateurs. Si mis \xe0 Vrai, s\xe9lectionner des utilisateurs ou des types d'utilisateurs est inutile.", verbose_name="S'applique \xe0 tous"),
+ ),
+ migrations.AlterField(
+ model_name='customform',
+ name='available',
+ field=models.BooleanField(default=True, verbose_name='Disponible'),
+ ),
+ migrations.AlterField(
+ model_name='customform',
+ name='enabled',
+ field=models.BooleanField(default=True, help_text='D\xe9sactiver avec pr\xe9caution : d\xe9sactiver un formulaire avec des champs obligatoires peut entra\xeener des erreurs dans la base de donn\xe9es.', verbose_name='Activer ce formulaire'),
+ ),
+ migrations.AlterField(
+ model_name='customform',
+ name='form',
+ field=models.CharField(max_length=250, verbose_name='Formulaire'),
+ ),
+ migrations.AlterField(
+ model_name='customform',
+ name='name',
+ field=models.CharField(max_length=250, verbose_name='Nom'),
+ ),
+ migrations.AlterField(
+ model_name='customformjsonfield',
+ name='help_text',
+ field=models.TextField(blank=True, null=True, verbose_name='Aide'),
+ ),
+ migrations.AlterField(
+ model_name='customformjsonfield',
+ name='label',
+ field=models.CharField(blank=True, default=b'', max_length=200, verbose_name='D\xe9nomination'),
+ ),
+ migrations.AlterField(
+ model_name='customformjsonfield',
+ name='order',
+ field=models.IntegerField(default=1, verbose_name='Ordre'),
+ ),
+ migrations.AlterField(
+ model_name='department',
+ name='label',
+ field=models.CharField(max_length=30, verbose_name='D\xe9nomination'),
+ ),
+ migrations.AlterField(
+ model_name='department',
+ name='number',
+ field=models.CharField(max_length=3, unique=True, verbose_name='Nombre'),
+ ),
+ migrations.AlterField(
+ model_name='department',
+ name='state',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='ishtar_common.State', verbose_name='\xc9tat'),
+ ),
+ migrations.AlterField(
+ model_name='document',
+ name='additional_information',
+ field=models.TextField(blank=True, null=True, verbose_name='Information suppl\xe9mentaire'),
+ ),
+ migrations.AlterField(
+ model_name='document',
+ name='associated_links',
+ field=models.TextField(blank=True, null=True, verbose_name='Liens symboliques'),
+ ),
+ migrations.AlterField(
+ model_name='document',
+ name='associated_url',
+ field=models.URLField(blank=True, max_length=1000, null=True, verbose_name='Ressource num\xe9rique (adresse web)'),
+ ),
+ migrations.AlterField(
+ model_name='document',
+ name='authors',
+ field=models.ManyToManyField(related_name='documents', to='ishtar_common.Author', verbose_name='Auteurs'),
+ ),
+ migrations.AlterField(
+ model_name='document',
+ name='authors_raw',
+ field=models.CharField(blank=True, max_length=250, null=True, verbose_name='Auteurs (brut)'),
+ ),
+ migrations.AlterField(
+ model_name='document',
+ name='cache_related_label',
+ field=models.TextField(blank=True, db_index=True, help_text='Valeur en cache - ne pas \xe9diter', null=True, verbose_name='Li\xe9'),
+ ),
+ migrations.AlterField(
+ model_name='document',
+ name='comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire'),
+ ),
+ migrations.AlterField(
+ model_name='document',
+ name='creation_date',
+ field=models.DateField(blank=True, null=True, verbose_name='Date de cr\xe9ation'),
+ ),
+ migrations.AlterField(
+ model_name='document',
+ name='duplicate',
+ field=models.NullBooleanField(verbose_name='Existe en doublon'),
+ ),
+ migrations.AlterField(
+ model_name='document',
+ name='external_id',
+ field=models.TextField(blank=True, null=True, verbose_name='Identifiant'),
+ ),
+ migrations.AlterField(
+ model_name='document',
+ name='internal_reference',
+ field=models.TextField(blank=True, null=True, verbose_name='R\xe9f. interne'),
+ ),
+ migrations.AlterField(
+ model_name='document',
+ name='item_number',
+ field=models.IntegerField(default=1, verbose_name="Nombre d'\xe9l\xe9ments"),
+ ),
+ migrations.AlterField(
+ model_name='document',
+ name='licenses',
+ field=models.ManyToManyField(blank=True, to='ishtar_common.LicenseType', verbose_name='Licence'),
+ ),
+ migrations.AlterField(
+ model_name='document',
+ name='receipt_date',
+ field=models.DateField(blank=True, null=True, verbose_name='Date de r\xe9ception'),
+ ),
+ migrations.AlterField(
+ model_name='document',
+ name='receipt_date_in_documentation',
+ field=models.DateField(blank=True, null=True, verbose_name='Date de r\xe9ception en documentation'),
+ ),
+ migrations.AlterField(
+ model_name='document',
+ name='reference',
+ field=models.TextField(blank=True, null=True, verbose_name='R\xe9f.'),
+ ),
+ migrations.AlterField(
+ model_name='document',
+ name='scale',
+ field=models.CharField(blank=True, max_length=30, null=True, verbose_name='\xc9chelle'),
+ ),
+ migrations.AlterField(
+ model_name='document',
+ name='search_vector',
+ field=django.contrib.postgres.search.SearchVectorField(blank=True, help_text='Auto-rempli \xe0 la sauvegarde', null=True, verbose_name='Vecteur de recherche'),
+ ),
+ migrations.AlterField(
+ model_name='document',
+ name='title',
+ field=models.TextField(blank=True, default=b'', verbose_name='Titre'),
+ ),
+ migrations.AlterField(
+ model_name='documenttemplate',
+ name='associated_object_name',
+ field=models.CharField(choices=[(b'archaeological_operations.models.AdministrativeAct', 'Acte administratif')], max_length=100, verbose_name='Objet associ\xe9'),
+ ),
+ migrations.AlterField(
+ model_name='documenttemplate',
+ name='available',
+ field=models.BooleanField(default=True, verbose_name='Disponible'),
+ ),
+ migrations.AlterField(
+ model_name='documenttemplate',
+ name='name',
+ field=models.CharField(max_length=100, verbose_name='Nom'),
+ ),
+ migrations.AlterField(
+ model_name='documenttemplate',
+ name='slug',
+ field=models.SlugField(blank=True, max_length=100, null=True, unique=True, verbose_name='Identifiant texte'),
+ ),
+ migrations.AlterField(
+ model_name='documenttemplate',
+ name='template',
+ field=models.FileField(upload_to=b'templates/%Y/', verbose_name='Patron'),
+ ),
+ migrations.AlterField(
+ model_name='excludedfield',
+ name='field',
+ field=models.CharField(max_length=250, verbose_name='Champ'),
+ ),
+ migrations.AlterField(
+ model_name='format',
+ name='available',
+ field=models.BooleanField(default=True, verbose_name='Disponible'),
+ ),
+ migrations.AlterField(
+ model_name='format',
+ name='comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire'),
+ ),
+ migrations.AlterField(
+ model_name='format',
+ name='label',
+ field=models.TextField(verbose_name='D\xe9nomination'),
+ ),
+ migrations.AlterField(
+ model_name='format',
+ name='txt_idx',
+ field=models.TextField(help_text='Le "slug" est une version standardis\xe9e du nom. Il ne contient que des lettres en minuscule, des nombres et des tirets (-). Chaque "slug" doit \xeatre unique dans la typologie.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), "Ce champ ne doit contenir que des lettres, des nombres, des tirets bas _ et des traits d'union.", 'invalid')], verbose_name='Identifiant textuel'),
+ ),
+ migrations.AlterField(
+ model_name='formatertype',
+ name='formater_type',
+ field=models.CharField(choices=[(b'IntegerFormater', 'Entier'), (b'FloatFormater', 'Nombre \xe0 virgule'), (b'UnicodeFormater', 'Cha\xeene de caract\xe8res'), (b'DateFormater', 'Date'), (b'TypeFormater', 'Type'), (b'YearFormater', 'Ann\xe9e'), (b'InseeFormater', 'Code INSEE'), (b'StrToBoolean', 'Cha\xeene de caract\xe8res vers bool\xe9en'), (b'FileFormater', 'Fichier'), (b'UnknowType', 'Type inconnu')], max_length=20, verbose_name='Formater type'),
+ ),
+ migrations.AlterField(
+ model_name='formatertype',
+ name='many_split',
+ field=models.CharField(blank=True, max_length=10, null=True, verbose_name='Caract\xe8re(s) de s\xe9paration'),
+ ),
+ migrations.AlterField(
+ model_name='globalvar',
+ name='description',
+ field=models.TextField(blank=True, null=True, verbose_name='Description de la variable'),
+ ),
+ migrations.AlterField(
+ model_name='globalvar',
+ name='slug',
+ field=models.SlugField(unique=True, verbose_name='Nom de la variable'),
+ ),
+ migrations.AlterField(
+ model_name='globalvar',
+ name='value',
+ field=models.TextField(blank=True, null=True, verbose_name='Valeur'),
+ ),
+ migrations.AlterField(
+ model_name='historicalorganization',
+ name='address',
+ field=models.TextField(blank=True, null=True, verbose_name='Adresse'),
+ ),
+ migrations.AlterField(
+ model_name='historicalorganization',
+ name='address_complement',
+ field=models.TextField(blank=True, null=True, verbose_name="Compl\xe9ment d'adresse"),
+ ),
+ migrations.AlterField(
+ model_name='historicalorganization',
+ name='alt_address',
+ field=models.TextField(blank=True, null=True, verbose_name='Autre adresse : adresse'),
+ ),
+ migrations.AlterField(
+ model_name='historicalorganization',
+ name='alt_address_complement',
+ field=models.TextField(blank=True, null=True, verbose_name="Autre adresse : compl\xe9ment d'adresse"),
+ ),
+ migrations.AlterField(
+ model_name='historicalorganization',
+ name='alt_address_is_prefered',
+ field=models.BooleanField(default=False, verbose_name="L'adresse alternative est pr\xe9f\xe9r\xe9e"),
+ ),
+ migrations.AlterField(
+ model_name='historicalorganization',
+ name='alt_country',
+ field=models.CharField(blank=True, max_length=30, null=True, verbose_name='Autre adresse : pays'),
+ ),
+ migrations.AlterField(
+ model_name='historicalorganization',
+ name='alt_postal_code',
+ field=models.CharField(blank=True, max_length=10, null=True, verbose_name='Autre adresse : code postal'),
+ ),
+ migrations.AlterField(
+ model_name='historicalorganization',
+ name='alt_town',
+ field=models.CharField(blank=True, max_length=70, null=True, verbose_name='Autre adresse : ville'),
+ ),
+ migrations.AlterField(
+ model_name='historicalorganization',
+ name='cached_label',
+ field=models.TextField(blank=True, db_index=True, null=True, verbose_name='Nom en cache'),
+ ),
+ migrations.AlterField(
+ model_name='historicalorganization',
+ name='country',
+ field=models.CharField(blank=True, max_length=30, null=True, verbose_name='Pays'),
+ ),
+ migrations.AlterField(
+ model_name='historicalorganization',
+ name='email',
+ field=models.EmailField(blank=True, max_length=300, null=True, verbose_name='Courriel'),
+ ),
+ migrations.AlterField(
+ model_name='historicalorganization',
+ name='merge_key',
+ field=models.TextField(blank=True, null=True, verbose_name='Cl\xe9 de fusion'),
+ ),
+ migrations.AlterField(
+ model_name='historicalorganization',
+ name='mobile_phone',
+ field=models.CharField(blank=True, max_length=18, null=True, verbose_name='T\xe9l\xe9phone portable'),
+ ),
+ migrations.AlterField(
+ model_name='historicalorganization',
+ name='name',
+ field=models.CharField(max_length=500, verbose_name='Nom'),
+ ),
+ migrations.AlterField(
+ model_name='historicalorganization',
+ name='phone',
+ field=models.CharField(blank=True, max_length=18, null=True, verbose_name='T\xe9l\xe9phone'),
+ ),
+ migrations.AlterField(
+ model_name='historicalorganization',
+ name='phone2',
+ field=models.CharField(blank=True, max_length=18, null=True, verbose_name='Type de t\xe9l\xe9phone 2'),
+ ),
+ migrations.AlterField(
+ model_name='historicalorganization',
+ name='phone3',
+ field=models.CharField(blank=True, max_length=18, null=True, verbose_name='T\xe9l\xe9phone 3'),
+ ),
+ migrations.AlterField(
+ model_name='historicalorganization',
+ name='phone_desc',
+ field=models.CharField(blank=True, max_length=300, null=True, verbose_name='Type de t\xe9l\xe9phone'),
+ ),
+ migrations.AlterField(
+ model_name='historicalorganization',
+ name='phone_desc2',
+ field=models.CharField(blank=True, max_length=300, null=True, verbose_name='Type de t\xe9l\xe9phone 2'),
+ ),
+ migrations.AlterField(
+ model_name='historicalorganization',
+ name='phone_desc3',
+ field=models.CharField(blank=True, max_length=300, null=True, verbose_name='Type de t\xe9l\xe9phone 3'),
+ ),
+ migrations.AlterField(
+ model_name='historicalorganization',
+ name='postal_code',
+ field=models.CharField(blank=True, max_length=10, null=True, verbose_name='Code postal'),
+ ),
+ migrations.AlterField(
+ model_name='historicalorganization',
+ name='raw_phone',
+ field=models.TextField(blank=True, null=True, verbose_name='T\xe9l\xe9phone brut'),
+ ),
+ migrations.AlterField(
+ model_name='historicalorganization',
+ name='search_vector',
+ field=django.contrib.postgres.search.SearchVectorField(blank=True, help_text='Auto-rempli \xe0 la sauvegarde', null=True, verbose_name='Vecteur de recherche'),
+ ),
+ migrations.AlterField(
+ model_name='historicalorganization',
+ name='town',
+ field=models.CharField(blank=True, max_length=70, null=True, verbose_name='Commune'),
+ ),
+ migrations.AlterField(
+ model_name='historicalperson',
+ name='address',
+ field=models.TextField(blank=True, null=True, verbose_name='Adresse'),
+ ),
+ migrations.AlterField(
+ model_name='historicalperson',
+ name='address_complement',
+ field=models.TextField(blank=True, null=True, verbose_name="Compl\xe9ment d'adresse"),
+ ),
+ migrations.AlterField(
+ model_name='historicalperson',
+ name='alt_address',
+ field=models.TextField(blank=True, null=True, verbose_name='Autre adresse : adresse'),
+ ),
+ migrations.AlterField(
+ model_name='historicalperson',
+ name='alt_address_complement',
+ field=models.TextField(blank=True, null=True, verbose_name="Autre adresse : compl\xe9ment d'adresse"),
+ ),
+ migrations.AlterField(
+ model_name='historicalperson',
+ name='alt_address_is_prefered',
+ field=models.BooleanField(default=False, verbose_name="L'adresse alternative est pr\xe9f\xe9r\xe9e"),
+ ),
+ migrations.AlterField(
+ model_name='historicalperson',
+ name='alt_country',
+ field=models.CharField(blank=True, max_length=30, null=True, verbose_name='Autre adresse : pays'),
+ ),
+ migrations.AlterField(
+ model_name='historicalperson',
+ name='alt_postal_code',
+ field=models.CharField(blank=True, max_length=10, null=True, verbose_name='Autre adresse : code postal'),
+ ),
+ migrations.AlterField(
+ model_name='historicalperson',
+ name='alt_town',
+ field=models.CharField(blank=True, max_length=70, null=True, verbose_name='Autre adresse : ville'),
+ ),
+ migrations.AlterField(
+ model_name='historicalperson',
+ name='cached_label',
+ field=models.TextField(blank=True, db_index=True, null=True, verbose_name='Nom en cache'),
+ ),
+ migrations.AlterField(
+ model_name='historicalperson',
+ name='comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire'),
+ ),
+ migrations.AlterField(
+ model_name='historicalperson',
+ name='contact_type',
+ field=models.CharField(blank=True, max_length=300, null=True, verbose_name='Type de contact'),
+ ),
+ migrations.AlterField(
+ model_name='historicalperson',
+ name='country',
+ field=models.CharField(blank=True, max_length=30, null=True, verbose_name='Pays'),
+ ),
+ migrations.AlterField(
+ model_name='historicalperson',
+ name='email',
+ field=models.EmailField(blank=True, max_length=300, null=True, verbose_name='Courriel'),
+ ),
+ migrations.AlterField(
+ model_name='historicalperson',
+ name='merge_key',
+ field=models.TextField(blank=True, null=True, verbose_name='Cl\xe9 de fusion'),
+ ),
+ migrations.AlterField(
+ model_name='historicalperson',
+ name='mobile_phone',
+ field=models.CharField(blank=True, max_length=18, null=True, verbose_name='T\xe9l\xe9phone portable'),
+ ),
+ migrations.AlterField(
+ model_name='historicalperson',
+ name='name',
+ field=models.CharField(blank=True, max_length=200, null=True, verbose_name='Nom'),
+ ),
+ migrations.AlterField(
+ model_name='historicalperson',
+ name='old_title',
+ field=models.CharField(blank=True, choices=[(b'Mr', 'M.'), (b'Ms', 'Mlle'), (b'Mr and Miss', 'M. et Mme'), (b'Md', 'Mme'), (b'Dr', 'Dr.')], max_length=100, null=True, verbose_name='Titre'),
+ ),
+ migrations.AlterField(
+ model_name='historicalperson',
+ name='phone',
+ field=models.CharField(blank=True, max_length=18, null=True, verbose_name='T\xe9l\xe9phone'),
+ ),
+ migrations.AlterField(
+ model_name='historicalperson',
+ name='phone2',
+ field=models.CharField(blank=True, max_length=18, null=True, verbose_name='Type de t\xe9l\xe9phone 2'),
+ ),
+ migrations.AlterField(
+ model_name='historicalperson',
+ name='phone3',
+ field=models.CharField(blank=True, max_length=18, null=True, verbose_name='T\xe9l\xe9phone 3'),
+ ),
+ migrations.AlterField(
+ model_name='historicalperson',
+ name='phone_desc',
+ field=models.CharField(blank=True, max_length=300, null=True, verbose_name='Type de t\xe9l\xe9phone'),
+ ),
+ migrations.AlterField(
+ model_name='historicalperson',
+ name='phone_desc2',
+ field=models.CharField(blank=True, max_length=300, null=True, verbose_name='Type de t\xe9l\xe9phone 2'),
+ ),
+ migrations.AlterField(
+ model_name='historicalperson',
+ name='phone_desc3',
+ field=models.CharField(blank=True, max_length=300, null=True, verbose_name='Type de t\xe9l\xe9phone 3'),
+ ),
+ migrations.AlterField(
+ model_name='historicalperson',
+ name='postal_code',
+ field=models.CharField(blank=True, max_length=10, null=True, verbose_name='Code postal'),
+ ),
+ migrations.AlterField(
+ model_name='historicalperson',
+ name='raw_name',
+ field=models.CharField(blank=True, max_length=300, null=True, verbose_name='Nom brut'),
+ ),
+ migrations.AlterField(
+ model_name='historicalperson',
+ name='raw_phone',
+ field=models.TextField(blank=True, null=True, verbose_name='T\xe9l\xe9phone brut'),
+ ),
+ migrations.AlterField(
+ model_name='historicalperson',
+ name='salutation',
+ field=models.CharField(blank=True, max_length=200, null=True, verbose_name="Formule d'appel"),
+ ),
+ migrations.AlterField(
+ model_name='historicalperson',
+ name='search_vector',
+ field=django.contrib.postgres.search.SearchVectorField(blank=True, help_text='Auto-rempli \xe0 la sauvegarde', null=True, verbose_name='Vecteur de recherche'),
+ ),
+ migrations.AlterField(
+ model_name='historicalperson',
+ name='surname',
+ field=models.CharField(blank=True, max_length=50, null=True, verbose_name='Pr\xe9nom'),
+ ),
+ migrations.AlterField(
+ model_name='historicalperson',
+ name='town',
+ field=models.CharField(blank=True, max_length=70, null=True, verbose_name='Commune'),
+ ),
+ migrations.AlterField(
+ model_name='import',
+ name='associated_group',
+ field=models.ForeignKey(blank=True, help_text='Si un groupe est s\xe9lectionn\xe9, les cl\xe9s de rapprochement enregistr\xe9es dans ce groupe sont utilis\xe9es.', null=True, on_delete=django.db.models.deletion.CASCADE, to='ishtar_common.TargetKeyGroup'),
+ ),
+ migrations.AlterField(
+ model_name='import',
+ name='changed_checked',
+ field=models.BooleanField(default=False, verbose_name='Les changements ont \xe9t\xe9 v\xe9rifi\xe9s'),
+ ),
+ migrations.AlterField(
+ model_name='import',
+ name='changed_line_numbers',
+ field=models.TextField(blank=True, null=True, validators=[django.core.validators.RegexValidator(re.compile('^\\d+(?:\\,\\d+)*\\Z'), code='invalid', message='Saisissez uniquement des chiffres s\xe9par\xe9s par des virgules.')], verbose_name='Num\xe9ro des lignes modifi\xe9es'),
+ ),
+ migrations.AlterField(
+ model_name='import',
+ name='conservative_import',
+ field=models.BooleanField(default=False, help_text='Si coch\xe9, ne surchargera pas les valeurs existantes.', verbose_name='Import conservateur'),
+ ),
+ migrations.AlterField(
+ model_name='import',
+ name='creation_date',
+ field=models.DateTimeField(auto_now_add=True, null=True, verbose_name='Date de cr\xe9ation'),
+ ),
+ migrations.AlterField(
+ model_name='import',
+ name='current_line',
+ field=models.IntegerField(blank=True, null=True, verbose_name='Ligne actuelle'),
+ ),
+ migrations.AlterField(
+ model_name='import',
+ name='encoding',
+ field=models.CharField(choices=[(b'windows-1252', b'windows-1252'), (b'ISO-8859-15', b'ISO-8859-15'), (b'utf-8', b'utf-8')], default='utf-8', max_length=15, verbose_name='Codage'),
+ ),
+ migrations.AlterField(
+ model_name='import',
+ name='end_date',
+ field=models.DateTimeField(auto_now_add=True, null=True, verbose_name='Date de fin'),
+ ),
+ migrations.AlterField(
+ model_name='import',
+ name='error_file',
+ field=models.FileField(blank=True, max_length=255, null=True, upload_to=b'upload/imports/%Y/%m/', verbose_name='Fichier erreur'),
+ ),
+ migrations.AlterField(
+ model_name='import',
+ name='imported_file',
+ field=models.FileField(max_length=220, upload_to=b'upload/imports/%Y/%m/', verbose_name='Fichier import\xe9'),
+ ),
+ migrations.AlterField(
+ model_name='import',
+ name='imported_images',
+ field=models.FileField(blank=True, max_length=220, null=True, upload_to=b'upload/imports/%Y/%m/', verbose_name='Images associ\xe9es (fichier zip)'),
+ ),
+ migrations.AlterField(
+ model_name='import',
+ name='imported_line_numbers',
+ field=models.TextField(blank=True, null=True, validators=[django.core.validators.RegexValidator(re.compile('^\\d+(?:\\,\\d+)*\\Z'), code='invalid', message='Saisissez uniquement des chiffres s\xe9par\xe9s par des virgules.')], verbose_name='Num\xe9ros des lignes import\xe9es'),
+ ),
+ migrations.AlterField(
+ model_name='import',
+ name='match_file',
+ field=models.FileField(blank=True, max_length=255, null=True, upload_to=b'upload/imports/%Y/%m/', verbose_name='Fichier de correspondance'),
+ ),
+ migrations.AlterField(
+ model_name='import',
+ name='name',
+ field=models.CharField(max_length=500, null=True, verbose_name='Nom'),
+ ),
+ migrations.AlterField(
+ model_name='import',
+ name='number_of_line',
+ field=models.IntegerField(blank=True, null=True, verbose_name='Nombre de lignes'),
+ ),
+ migrations.AlterField(
+ model_name='import',
+ name='result_file',
+ field=models.FileField(blank=True, max_length=255, null=True, upload_to=b'upload/imports/%Y/%m/', verbose_name='Fichier r\xe9sultant'),
+ ),
+ migrations.AlterField(
+ model_name='import',
+ name='seconds_remaining',
+ field=models.IntegerField(blank=True, editable=False, null=True, verbose_name='Secondes restantes'),
+ ),
+ migrations.AlterField(
+ model_name='import',
+ name='skip_lines',
+ field=models.IntegerField(default=1, help_text="Nombre de ligne d'ent\xeate dans votre fichier (peut \xeatre \xe9gal \xe0 z\xe9ro)", verbose_name="Nombre de lignes d'ent\xeate"),
+ ),
+ migrations.AlterField(
+ model_name='import',
+ name='state',
+ field=models.CharField(choices=[(b'C', 'Cr\xe9\xe9'), (b'AP', 'Analyse en cours'), (b'A', 'Analys\xe9'), (b'HQ', 'V\xe9rification des modifications dans la file'), (b'IQ', "Import en file d'attente"), (b'HP', 'V\xe9rification des modifications en cours'), (b'IP', 'Import en cours'), (b'PI', 'Import\xe9 partiellement'), (b'FE', 'Termin\xe9 avec des erreurs'), (b'F', 'Termin\xe9'), (b'AC', 'Archiv\xe9')], default='C', max_length=2, verbose_name='\xc9tat'),
+ ),
+ migrations.AlterField(
+ model_name='importercolumn',
+ name='col_number',
+ field=models.IntegerField(default=1, verbose_name='Num\xe9ro de colonne'),
+ ),
+ migrations.AlterField(
+ model_name='importercolumn',
+ name='export_field_name',
+ field=models.CharField(blank=True, help_text="Remplir ce champ si le nom du champ est ambigu pour l'export, par exemple dans le cas de champs concat\xe9n\xe9s.", max_length=200, null=True, verbose_name='Nom du champ \xe0 exporter'),
+ ),
+ migrations.AlterField(
+ model_name='importercolumn',
+ name='label',
+ field=models.CharField(blank=True, max_length=200, null=True, verbose_name='D\xe9nomination'),
+ ),
+ migrations.AlterField(
+ model_name='importercolumn',
+ name='required',
+ field=models.BooleanField(default=False, verbose_name='Requis'),
+ ),
+ migrations.AlterField(
+ model_name='importerduplicatefield',
+ name='concat',
+ field=models.BooleanField(default=False, verbose_name="Concat\xe9ner avec l'existant"),
+ ),
+ migrations.AlterField(
+ model_name='importerduplicatefield',
+ name='concat_str',
+ field=models.CharField(blank=True, max_length=5, null=True, verbose_name='Caract\xe8re de concat\xe9nation'),
+ ),
+ migrations.AlterField(
+ model_name='importerduplicatefield',
+ name='field_name',
+ field=models.CharField(blank=True, max_length=200, null=True, verbose_name='Nom du champ'),
+ ),
+ migrations.AlterField(
+ model_name='importerduplicatefield',
+ name='force_new',
+ field=models.BooleanField(default=False, verbose_name='Forcer la cr\xe9ation de nouveaux \xe9l\xe9ments'),
+ ),
+ migrations.AlterField(
+ model_name='importermodel',
+ name='klass',
+ field=models.CharField(max_length=200, unique=True, verbose_name='Nom de la classe'),
+ ),
+ migrations.AlterField(
+ model_name='importermodel',
+ name='name',
+ field=models.CharField(max_length=200, verbose_name='Nom'),
+ ),
+ migrations.AlterField(
+ model_name='importertype',
+ name='associated_models',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='+', to='ishtar_common.ImporterModel', verbose_name='Mod\xe8le associ\xe9'),
+ ),
+ migrations.AlterField(
+ model_name='importertype',
+ name='available',
+ field=models.BooleanField(default=True, verbose_name='Disponible'),
+ ),
+ migrations.AlterField(
+ model_name='importertype',
+ name='created_models',
+ field=models.ManyToManyField(blank=True, help_text='Laissez vide pour aucune restriction', related_name='_importertype_created_models_+', to='ishtar_common.ImporterModel', verbose_name='Mod\xe8les qui peuvent accepter de nouveaux \xe9l\xe9ments'),
+ ),
+ migrations.AlterField(
+ model_name='importertype',
+ name='name',
+ field=models.CharField(max_length=200, verbose_name='Nom'),
+ ),
+ migrations.AlterField(
+ model_name='importertype',
+ name='slug',
+ field=models.SlugField(max_length=100, unique=True, verbose_name='Identifiant texte'),
+ ),
+ migrations.AlterField(
+ model_name='importertype',
+ name='unicity_keys',
+ field=models.CharField(blank=True, max_length=500, null=True, verbose_name="Cl\xe9s d'unicit\xe9 (s\xe9parateur \xab ; \xbb)"),
+ ),
+ migrations.AlterField(
+ model_name='importertype',
+ name='users',
+ field=models.ManyToManyField(blank=True, to='ishtar_common.IshtarUser', verbose_name='Utilisateurs'),
+ ),
+ migrations.AlterField(
+ model_name='importtarget',
+ name='comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire'),
+ ),
+ migrations.AlterField(
+ model_name='importtarget',
+ name='concat',
+ field=models.BooleanField(default=False, verbose_name="Concat\xe9ner avec l'existant"),
+ ),
+ migrations.AlterField(
+ model_name='importtarget',
+ name='concat_str',
+ field=models.CharField(blank=True, max_length=5, null=True, verbose_name='Caract\xe8re de concat\xe9nation'),
+ ),
+ migrations.AlterField(
+ model_name='importtarget',
+ name='force_new',
+ field=models.BooleanField(default=False, verbose_name='Forcer la cr\xe9ation de nouveaux \xe9l\xe9ments'),
+ ),
+ migrations.AlterField(
+ model_name='ishtarsiteprofile',
+ name='active',
+ field=models.BooleanField(default=False, verbose_name='Actuellement utilis\xe9'),
+ ),
+ migrations.AlterField(
+ model_name='ishtarsiteprofile',
+ name='archaeological_site',
+ field=models.BooleanField(default=False, verbose_name='Module Site arch\xe9ologique'),
+ ),
+ migrations.AlterField(
+ model_name='ishtarsiteprofile',
+ name='archaeological_site_label',
+ field=models.CharField(choices=[(b'site', 'Site'), (b'entity', 'Entit\xe9 (EA)')], default=b'site', max_length=200, verbose_name='Type de site arch\xe9ologique'),
+ ),
+ migrations.AlterField(
+ model_name='ishtarsiteprofile',
+ name='base_find_external_id',
+ field=models.TextField(default='{context_record__external_id}-{label}', help_text="Formule pour g\xe9rer les identifiants de mobilier d'origine. \xc0 manipuler avec pr\xe9caution. Une formule incorrecte peut rendre l'application inutilisable et l'import de donn\xe9es externes peut alors \xeatre destructif.", verbose_name="Identifiant de mobilier d'origine"),
+ ),
+ migrations.AlterField(
+ model_name='ishtarsiteprofile',
+ name='container_external_id',
+ field=models.TextField(default='{responsible__external_id}-{index}', help_text="Formule pour g\xe9rer les identifiants de contenant. \xc0 manipuler avec pr\xe9caution. Une formule incorrecte peut rendre l'application inutilisable et l'import de donn\xe9es externes peut alors \xeatre destructif.", verbose_name='ID du contenant'),
+ ),
+ migrations.AlterField(
+ model_name='ishtarsiteprofile',
+ name='context_record',
+ field=models.BooleanField(default=False, verbose_name="Module Unit\xe9s d'Enregistrement"),
+ ),
+ migrations.AlterField(
+ model_name='ishtarsiteprofile',
+ name='context_record_external_id',
+ field=models.TextField(default='{parcel__external_id}-{label}', help_text="Formule pour g\xe9rer les identifiants d'unit\xe9s d'enregistrement. \xc0 manipuler avec pr\xe9caution. Une formule incorrecte peut rendre l'application inutilisable et l'import de donn\xe9es externes peut alors \xeatre destructif.", verbose_name="Identifiant d'unit\xe9 d'enregistrement"),
+ ),
+ migrations.AlterField(
+ model_name='ishtarsiteprofile',
+ name='currency',
+ field=models.CharField(choices=[('\u20ac', 'Euro'), ('$', 'Dollar US')], default='\u20ac', max_length=5, verbose_name='Devise'),
+ ),
+ migrations.AlterField(
+ model_name='ishtarsiteprofile',
+ name='experimental_feature',
+ field=models.BooleanField(default=False, verbose_name='Activer les fonctionnalit\xe9s exp\xe9rimentales'),
+ ),
+ migrations.AlterField(
+ model_name='ishtarsiteprofile',
+ name='file_external_id',
+ field=models.TextField(default='{year}-{numeric_reference}', help_text="Formule pour g\xe9rer les identifiants de dossiers. \xc0 manipuler avec pr\xe9caution. Une formule incorrecte peut rendre l'application inutilisable et l'import de donn\xe9es externes peut alors \xeatre destructif.", verbose_name='Identifiant de fichier'),
+ ),
+ migrations.AlterField(
+ model_name='ishtarsiteprofile',
+ name='files',
+ field=models.BooleanField(default=False, verbose_name='Module Dossiers'),
+ ),
+ migrations.AlterField(
+ model_name='ishtarsiteprofile',
+ name='find',
+ field=models.BooleanField(default=False, help_text="N\xe9cessite le module Unit\xe9s d'Enregistrement", verbose_name='Module Mobilier'),
+ ),
+ migrations.AlterField(
+ model_name='ishtarsiteprofile',
+ name='find_external_id',
+ field=models.TextField(default='{get_first_base_find__context_record__external_id}-{label}', help_text="Formule pour g\xe9rer les identifiants de mobilier. \xc0 manipuler avec pr\xe9caution. Une formule incorrecte peut rendre l'application inutilisable et l'import de donn\xe9es externes peut alors \xeatre destructif.", verbose_name='Identifiant de mobilier'),
+ ),
+ migrations.AlterField(
+ model_name='ishtarsiteprofile',
+ name='find_index',
+ field=models.CharField(choices=[('O', 'Op\xe9rations'), ('CR', "Unit\xe9s d'Enregistrement")], default=b'O', help_text="Pour \xe9viter des index non pertinents, ne changer ce param\xe8tre que s'il n'y a pas encore de mobilier dans cette base de donn\xe9es", max_length=2, verbose_name='Index mobilier bas\xe9 sur'),
+ ),
+ migrations.AlterField(
+ model_name='ishtarsiteprofile',
+ name='homepage',
+ field=models.TextField(blank=True, help_text="Page d'accueil d'Ishtar. Si elle n'est pas d\xe9finie, une page d'accueil par d\xe9faut appara\xeet. Utiliser la syntaxe Markdown. {random_image} peut \xeatre utilis\xe9 pour afficher une image au hasard.", null=True, verbose_name="Page d'accueil"),
+ ),
+ migrations.AlterField(
+ model_name='ishtarsiteprofile',
+ name='label',
+ field=models.TextField(verbose_name='Nom'),
+ ),
+ migrations.AlterField(
+ model_name='ishtarsiteprofile',
+ name='mapping',
+ field=models.BooleanField(default=False, verbose_name='Module cartographique'),
+ ),
+ migrations.AlterField(
+ model_name='ishtarsiteprofile',
+ name='parcel_external_id',
+ field=models.TextField(default='{associated_file__external_id}{operation__code_patriarche}-{town__numero_insee}-{section}{parcel_number}', help_text="Formule pour g\xe9rer les identifiants de parcelles. \xc0 manipuler avec pr\xe9caution. Une formule incorrecte peut rendre l'application inutilisable et l'import de donn\xe9es externes peut alors \xeatre destructif.", verbose_name='Identifiant de parcelle'),
+ ),
+ migrations.AlterField(
+ model_name='ishtarsiteprofile',
+ name='parcel_mandatory',
+ field=models.BooleanField(default=True, verbose_name="Parcelles cadastrales obligatoires pour les Unit\xe9s d'Enregistrement"),
+ ),
+ migrations.AlterField(
+ model_name='ishtarsiteprofile',
+ name='person_raw_name',
+ field=models.TextField(default='{name|upper} {surname}', help_text="Formule pour g\xe9rer le nom brut des personnes. \xc0 manipuler avec pr\xe9caution. Une formule incorrecte peut rendre l'application inutilisable et l'import de donn\xe9es externes peut alors \xeatre destructif.", verbose_name='Nom brut pour une personne'),
+ ),
+ migrations.AlterField(
+ model_name='ishtarsiteprofile',
+ name='preservation',
+ field=models.BooleanField(default=False, verbose_name='Module de conservation'),
+ ),
+ migrations.AlterField(
+ model_name='ishtarsiteprofile',
+ name='slug',
+ field=models.SlugField(unique=True, verbose_name='Identifiant texte'),
+ ),
+ migrations.AlterField(
+ model_name='ishtarsiteprofile',
+ name='underwater',
+ field=models.BooleanField(default=False, verbose_name='Module sous-marin / subaquatique'),
+ ),
+ migrations.AlterField(
+ model_name='ishtarsiteprofile',
+ name='warehouse',
+ field=models.BooleanField(default=False, help_text='N\xe9cessite le module mobilier', verbose_name='Module Lieu de conservation'),
+ ),
+ migrations.AlterField(
+ model_name='ishtarsiteprofile',
+ name='warehouse_external_id',
+ field=models.TextField(default='{name|slug}', help_text="Formule pour g\xe9rer les identifiants de lieu de conservation. \xc0 manipuler avec pr\xe9caution. Une formule incorrecte peut rendre l'application inutilisable et l'import de donn\xe9es externes peut alors \xeatre destructif.", verbose_name='Identifiant du lieu de conservation'),
+ ),
+ migrations.AlterField(
+ model_name='ishtaruser',
+ name='advanced_shortcut_menu',
+ field=models.BooleanField(default=False, verbose_name='Menu de raccourci (avanc\xe9)'),
+ ),
+ migrations.AlterField(
+ model_name='ishtaruser',
+ name='person',
+ field=models.OneToOneField(on_delete=django.db.models.deletion.CASCADE, related_name='ishtaruser', to='ishtar_common.Person', verbose_name='Personne'),
+ ),
+ migrations.AlterField(
+ model_name='ishtaruser',
+ name='search_vector',
+ field=django.contrib.postgres.search.SearchVectorField(blank=True, help_text='Auto-rempli \xe0 la sauvegarde', null=True, verbose_name='Vecteur de recherche'),
+ ),
+ migrations.AlterField(
+ model_name='itemkey',
+ name='importer',
+ field=models.ForeignKey(blank=True, help_text='Cl\xe9 sp\xe9cifique \xe0 un import', null=True, on_delete=django.db.models.deletion.CASCADE, to='ishtar_common.Import'),
+ ),
+ migrations.AlterField(
+ model_name='itemkey',
+ name='key',
+ field=models.TextField(verbose_name='Cl\xe9'),
+ ),
+ migrations.AlterField(
+ model_name='jsondatafield',
+ name='display',
+ field=models.BooleanField(default=True, verbose_name='Afficher'),
+ ),
+ migrations.AlterField(
+ model_name='jsondatafield',
+ name='key',
+ field=models.CharField(help_text="Valeur de la cl\xe9 dans le format JSON. Pour les cl\xe9s hi\xe9rarchiques utiliser \xab __ \xbb. Par exemple pour la cl\xe9 'ma_sousclef' avec des donn\xe9es telles que {'ma_clef': {'ma_sousclef': 'valeur'}}, sa valeur sera atteinte avec : ma_clef__ma_sousclef.", max_length=200, verbose_name='Cl\xe9'),
+ ),
+ migrations.AlterField(
+ model_name='jsondatafield',
+ name='name',
+ field=models.CharField(max_length=200, verbose_name='Nom'),
+ ),
+ migrations.AlterField(
+ model_name='jsondatafield',
+ name='order',
+ field=models.IntegerField(default=10, verbose_name='Ordre'),
+ ),
+ migrations.AlterField(
+ model_name='jsondatafield',
+ name='search_index',
+ field=models.BooleanField(default=False, verbose_name='Utiliser dans les index de recherche'),
+ ),
+ migrations.AlterField(
+ model_name='jsondatafield',
+ name='value_type',
+ field=models.CharField(choices=[(b'T', 'Texte'), (b'LT', 'Texte long'), (b'I', 'Entier'), (b'B', 'Boolean'), (b'F', 'Nombre \xe0 virgule'), (b'D', 'Date'), (b'C', 'Choix')], default=b'T', max_length=10, verbose_name='Type'),
+ ),
+ migrations.AlterField(
+ model_name='jsondatasection',
+ name='name',
+ field=models.CharField(max_length=200, verbose_name='Nom'),
+ ),
+ migrations.AlterField(
+ model_name='jsondatasection',
+ name='order',
+ field=models.IntegerField(default=10, verbose_name='Ordre'),
+ ),
+ migrations.AlterField(
+ model_name='licensetype',
+ name='available',
+ field=models.BooleanField(default=True, verbose_name='Disponible'),
+ ),
+ migrations.AlterField(
+ model_name='licensetype',
+ name='comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire'),
+ ),
+ migrations.AlterField(
+ model_name='licensetype',
+ name='label',
+ field=models.TextField(verbose_name='D\xe9nomination'),
+ ),
+ migrations.AlterField(
+ model_name='licensetype',
+ name='txt_idx',
+ field=models.TextField(help_text='Le "slug" est une version standardis\xe9e du nom. Il ne contient que des lettres en minuscule, des nombres et des tirets (-). Chaque "slug" doit \xeatre unique dans la typologie.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), "Ce champ ne doit contenir que des lettres, des nombres, des tirets bas _ et des traits d'union.", 'invalid')], verbose_name='Identifiant textuel'),
+ ),
+ migrations.AlterField(
+ model_name='operationtype',
+ name='available',
+ field=models.BooleanField(default=True, verbose_name='Disponible'),
+ ),
+ migrations.AlterField(
+ model_name='operationtype',
+ name='comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire'),
+ ),
+ migrations.AlterField(
+ model_name='operationtype',
+ name='judiciary',
+ field=models.BooleanField(default=False, verbose_name='Est judiciaire'),
+ ),
+ migrations.AlterField(
+ model_name='operationtype',
+ name='label',
+ field=models.TextField(verbose_name='D\xe9nomination'),
+ ),
+ migrations.AlterField(
+ model_name='operationtype',
+ name='order',
+ field=models.IntegerField(default=1, verbose_name='Ordre'),
+ ),
+ migrations.AlterField(
+ model_name='operationtype',
+ name='preventive',
+ field=models.BooleanField(default=True, verbose_name='Est du pr\xe9ventif'),
+ ),
+ migrations.AlterField(
+ model_name='operationtype',
+ name='txt_idx',
+ field=models.TextField(help_text='Le "slug" est une version standardis\xe9e du nom. Il ne contient que des lettres en minuscule, des nombres et des tirets (-). Chaque "slug" doit \xeatre unique dans la typologie.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), "Ce champ ne doit contenir que des lettres, des nombres, des tirets bas _ et des traits d'union.", 'invalid')], verbose_name='Identifiant textuel'),
+ ),
+ migrations.AlterField(
+ model_name='organization',
+ name='address',
+ field=models.TextField(blank=True, null=True, verbose_name='Adresse'),
+ ),
+ migrations.AlterField(
+ model_name='organization',
+ name='address_complement',
+ field=models.TextField(blank=True, null=True, verbose_name="Compl\xe9ment d'adresse"),
+ ),
+ migrations.AlterField(
+ model_name='organization',
+ name='alt_address',
+ field=models.TextField(blank=True, null=True, verbose_name='Autre adresse : adresse'),
+ ),
+ migrations.AlterField(
+ model_name='organization',
+ name='alt_address_complement',
+ field=models.TextField(blank=True, null=True, verbose_name="Autre adresse : compl\xe9ment d'adresse"),
+ ),
+ migrations.AlterField(
+ model_name='organization',
+ name='alt_address_is_prefered',
+ field=models.BooleanField(default=False, verbose_name="L'adresse alternative est pr\xe9f\xe9r\xe9e"),
+ ),
+ migrations.AlterField(
+ model_name='organization',
+ name='alt_country',
+ field=models.CharField(blank=True, max_length=30, null=True, verbose_name='Autre adresse : pays'),
+ ),
+ migrations.AlterField(
+ model_name='organization',
+ name='alt_postal_code',
+ field=models.CharField(blank=True, max_length=10, null=True, verbose_name='Autre adresse : code postal'),
+ ),
+ migrations.AlterField(
+ model_name='organization',
+ name='alt_town',
+ field=models.CharField(blank=True, max_length=70, null=True, verbose_name='Autre adresse : ville'),
+ ),
+ migrations.AlterField(
+ model_name='organization',
+ name='cached_label',
+ field=models.TextField(blank=True, db_index=True, null=True, verbose_name='Nom en cache'),
+ ),
+ migrations.AlterField(
+ model_name='organization',
+ name='country',
+ field=models.CharField(blank=True, max_length=30, null=True, verbose_name='Pays'),
+ ),
+ migrations.AlterField(
+ model_name='organization',
+ name='email',
+ field=models.EmailField(blank=True, max_length=300, null=True, verbose_name='Courriel'),
+ ),
+ migrations.AlterField(
+ model_name='organization',
+ name='history_creator',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to=settings.AUTH_USER_MODEL, verbose_name='Cr\xe9ateur'),
+ ),
+ migrations.AlterField(
+ model_name='organization',
+ name='history_modifier',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to=settings.AUTH_USER_MODEL, verbose_name='Dernier \xe9diteur'),
+ ),
+ migrations.AlterField(
+ model_name='organization',
+ name='merge_key',
+ field=models.TextField(blank=True, null=True, verbose_name='Cl\xe9 de fusion'),
+ ),
+ migrations.AlterField(
+ model_name='organization',
+ name='mobile_phone',
+ field=models.CharField(blank=True, max_length=18, null=True, verbose_name='T\xe9l\xe9phone portable'),
+ ),
+ migrations.AlterField(
+ model_name='organization',
+ name='name',
+ field=models.CharField(max_length=500, verbose_name='Nom'),
+ ),
+ migrations.AlterField(
+ model_name='organization',
+ name='phone',
+ field=models.CharField(blank=True, max_length=18, null=True, verbose_name='T\xe9l\xe9phone'),
+ ),
+ migrations.AlterField(
+ model_name='organization',
+ name='phone2',
+ field=models.CharField(blank=True, max_length=18, null=True, verbose_name='Type de t\xe9l\xe9phone 2'),
+ ),
+ migrations.AlterField(
+ model_name='organization',
+ name='phone3',
+ field=models.CharField(blank=True, max_length=18, null=True, verbose_name='T\xe9l\xe9phone 3'),
+ ),
+ migrations.AlterField(
+ model_name='organization',
+ name='phone_desc',
+ field=models.CharField(blank=True, max_length=300, null=True, verbose_name='Type de t\xe9l\xe9phone'),
+ ),
+ migrations.AlterField(
+ model_name='organization',
+ name='phone_desc2',
+ field=models.CharField(blank=True, max_length=300, null=True, verbose_name='Type de t\xe9l\xe9phone 2'),
+ ),
+ migrations.AlterField(
+ model_name='organization',
+ name='phone_desc3',
+ field=models.CharField(blank=True, max_length=300, null=True, verbose_name='Type de t\xe9l\xe9phone 3'),
+ ),
+ migrations.AlterField(
+ model_name='organization',
+ name='postal_code',
+ field=models.CharField(blank=True, max_length=10, null=True, verbose_name='Code postal'),
+ ),
+ migrations.AlterField(
+ model_name='organization',
+ name='raw_phone',
+ field=models.TextField(blank=True, null=True, verbose_name='T\xe9l\xe9phone brut'),
+ ),
+ migrations.AlterField(
+ model_name='organization',
+ name='search_vector',
+ field=django.contrib.postgres.search.SearchVectorField(blank=True, help_text='Auto-rempli \xe0 la sauvegarde', null=True, verbose_name='Vecteur de recherche'),
+ ),
+ migrations.AlterField(
+ model_name='organization',
+ name='town',
+ field=models.CharField(blank=True, max_length=70, null=True, verbose_name='Commune'),
+ ),
+ migrations.AlterField(
+ model_name='organizationtype',
+ name='available',
+ field=models.BooleanField(default=True, verbose_name='Disponible'),
+ ),
+ migrations.AlterField(
+ model_name='organizationtype',
+ name='comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire'),
+ ),
+ migrations.AlterField(
+ model_name='organizationtype',
+ name='label',
+ field=models.TextField(verbose_name='D\xe9nomination'),
+ ),
+ migrations.AlterField(
+ model_name='organizationtype',
+ name='txt_idx',
+ field=models.TextField(help_text='Le "slug" est une version standardis\xe9e du nom. Il ne contient que des lettres en minuscule, des nombres et des tirets (-). Chaque "slug" doit \xeatre unique dans la typologie.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), "Ce champ ne doit contenir que des lettres, des nombres, des tirets bas _ et des traits d'union.", 'invalid')], verbose_name='Identifiant textuel'),
+ ),
+ migrations.AlterField(
+ model_name='person',
+ name='address',
+ field=models.TextField(blank=True, null=True, verbose_name='Adresse'),
+ ),
+ migrations.AlterField(
+ model_name='person',
+ name='address_complement',
+ field=models.TextField(blank=True, null=True, verbose_name="Compl\xe9ment d'adresse"),
+ ),
+ migrations.AlterField(
+ model_name='person',
+ name='alt_address',
+ field=models.TextField(blank=True, null=True, verbose_name='Autre adresse : adresse'),
+ ),
+ migrations.AlterField(
+ model_name='person',
+ name='alt_address_complement',
+ field=models.TextField(blank=True, null=True, verbose_name="Autre adresse : compl\xe9ment d'adresse"),
+ ),
+ migrations.AlterField(
+ model_name='person',
+ name='alt_address_is_prefered',
+ field=models.BooleanField(default=False, verbose_name="L'adresse alternative est pr\xe9f\xe9r\xe9e"),
+ ),
+ migrations.AlterField(
+ model_name='person',
+ name='alt_country',
+ field=models.CharField(blank=True, max_length=30, null=True, verbose_name='Autre adresse : pays'),
+ ),
+ migrations.AlterField(
+ model_name='person',
+ name='alt_postal_code',
+ field=models.CharField(blank=True, max_length=10, null=True, verbose_name='Autre adresse : code postal'),
+ ),
+ migrations.AlterField(
+ model_name='person',
+ name='alt_town',
+ field=models.CharField(blank=True, max_length=70, null=True, verbose_name='Autre adresse : ville'),
+ ),
+ migrations.AlterField(
+ model_name='person',
+ name='attached_to',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='members', to='ishtar_common.Organization', verbose_name='Est rattach\xe9 \xe0'),
+ ),
+ migrations.AlterField(
+ model_name='person',
+ name='cached_label',
+ field=models.TextField(blank=True, db_index=True, null=True, verbose_name='Nom en cache'),
+ ),
+ migrations.AlterField(
+ model_name='person',
+ name='comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire'),
+ ),
+ migrations.AlterField(
+ model_name='person',
+ name='contact_type',
+ field=models.CharField(blank=True, max_length=300, null=True, verbose_name='Type de contact'),
+ ),
+ migrations.AlterField(
+ model_name='person',
+ name='country',
+ field=models.CharField(blank=True, max_length=30, null=True, verbose_name='Pays'),
+ ),
+ migrations.AlterField(
+ model_name='person',
+ name='email',
+ field=models.EmailField(blank=True, max_length=300, null=True, verbose_name='Courriel'),
+ ),
+ migrations.AlterField(
+ model_name='person',
+ name='history_creator',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to=settings.AUTH_USER_MODEL, verbose_name='Cr\xe9ateur'),
+ ),
+ migrations.AlterField(
+ model_name='person',
+ name='history_modifier',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to=settings.AUTH_USER_MODEL, verbose_name='Dernier \xe9diteur'),
+ ),
+ migrations.AlterField(
+ model_name='person',
+ name='merge_key',
+ field=models.TextField(blank=True, null=True, verbose_name='Cl\xe9 de fusion'),
+ ),
+ migrations.AlterField(
+ model_name='person',
+ name='mobile_phone',
+ field=models.CharField(blank=True, max_length=18, null=True, verbose_name='T\xe9l\xe9phone portable'),
+ ),
+ migrations.AlterField(
+ model_name='person',
+ name='name',
+ field=models.CharField(blank=True, max_length=200, null=True, verbose_name='Nom'),
+ ),
+ migrations.AlterField(
+ model_name='person',
+ name='old_title',
+ field=models.CharField(blank=True, choices=[(b'Mr', 'M.'), (b'Ms', 'Mlle'), (b'Mr and Miss', 'M. et Mme'), (b'Md', 'Mme'), (b'Dr', 'Dr.')], max_length=100, null=True, verbose_name='Titre'),
+ ),
+ migrations.AlterField(
+ model_name='person',
+ name='phone',
+ field=models.CharField(blank=True, max_length=18, null=True, verbose_name='T\xe9l\xe9phone'),
+ ),
+ migrations.AlterField(
+ model_name='person',
+ name='phone2',
+ field=models.CharField(blank=True, max_length=18, null=True, verbose_name='Type de t\xe9l\xe9phone 2'),
+ ),
+ migrations.AlterField(
+ model_name='person',
+ name='phone3',
+ field=models.CharField(blank=True, max_length=18, null=True, verbose_name='T\xe9l\xe9phone 3'),
+ ),
+ migrations.AlterField(
+ model_name='person',
+ name='phone_desc',
+ field=models.CharField(blank=True, max_length=300, null=True, verbose_name='Type de t\xe9l\xe9phone'),
+ ),
+ migrations.AlterField(
+ model_name='person',
+ name='phone_desc2',
+ field=models.CharField(blank=True, max_length=300, null=True, verbose_name='Type de t\xe9l\xe9phone 2'),
+ ),
+ migrations.AlterField(
+ model_name='person',
+ name='phone_desc3',
+ field=models.CharField(blank=True, max_length=300, null=True, verbose_name='Type de t\xe9l\xe9phone 3'),
+ ),
+ migrations.AlterField(
+ model_name='person',
+ name='postal_code',
+ field=models.CharField(blank=True, max_length=10, null=True, verbose_name='Code postal'),
+ ),
+ migrations.AlterField(
+ model_name='person',
+ name='raw_name',
+ field=models.CharField(blank=True, max_length=300, null=True, verbose_name='Nom brut'),
+ ),
+ migrations.AlterField(
+ model_name='person',
+ name='raw_phone',
+ field=models.TextField(blank=True, null=True, verbose_name='T\xe9l\xe9phone brut'),
+ ),
+ migrations.AlterField(
+ model_name='person',
+ name='salutation',
+ field=models.CharField(blank=True, max_length=200, null=True, verbose_name="Formule d'appel"),
+ ),
+ migrations.AlterField(
+ model_name='person',
+ name='search_vector',
+ field=django.contrib.postgres.search.SearchVectorField(blank=True, help_text='Auto-rempli \xe0 la sauvegarde', null=True, verbose_name='Vecteur de recherche'),
+ ),
+ migrations.AlterField(
+ model_name='person',
+ name='surname',
+ field=models.CharField(blank=True, max_length=50, null=True, verbose_name='Pr\xe9nom'),
+ ),
+ migrations.AlterField(
+ model_name='person',
+ name='title',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='ishtar_common.TitleType', verbose_name='Titre'),
+ ),
+ migrations.AlterField(
+ model_name='person',
+ name='town',
+ field=models.CharField(blank=True, max_length=70, null=True, verbose_name='Commune'),
+ ),
+ migrations.AlterField(
+ model_name='persontype',
+ name='available',
+ field=models.BooleanField(default=True, verbose_name='Disponible'),
+ ),
+ migrations.AlterField(
+ model_name='persontype',
+ name='comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire'),
+ ),
+ migrations.AlterField(
+ model_name='persontype',
+ name='label',
+ field=models.TextField(verbose_name='D\xe9nomination'),
+ ),
+ migrations.AlterField(
+ model_name='persontype',
+ name='txt_idx',
+ field=models.TextField(help_text='Le "slug" est une version standardis\xe9e du nom. Il ne contient que des lettres en minuscule, des nombres et des tirets (-). Chaque "slug" doit \xeatre unique dans la typologie.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), "Ce champ ne doit contenir que des lettres, des nombres, des tirets bas _ et des traits d'union.", 'invalid')], verbose_name='Identifiant textuel'),
+ ),
+ migrations.AlterField(
+ model_name='profiletype',
+ name='available',
+ field=models.BooleanField(default=True, verbose_name='Disponible'),
+ ),
+ migrations.AlterField(
+ model_name='profiletype',
+ name='comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire'),
+ ),
+ migrations.AlterField(
+ model_name='profiletype',
+ name='groups',
+ field=models.ManyToManyField(blank=True, to='auth.Group', verbose_name='Groupes'),
+ ),
+ migrations.AlterField(
+ model_name='profiletype',
+ name='label',
+ field=models.TextField(verbose_name='D\xe9nomination'),
+ ),
+ migrations.AlterField(
+ model_name='profiletype',
+ name='txt_idx',
+ field=models.TextField(help_text='Le "slug" est une version standardis\xe9e du nom. Il ne contient que des lettres en minuscule, des nombres et des tirets (-). Chaque "slug" doit \xeatre unique dans la typologie.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), "Ce champ ne doit contenir que des lettres, des nombres, des tirets bas _ et des traits d'union.", 'invalid')], verbose_name='Identifiant textuel'),
+ ),
+ migrations.AlterField(
+ model_name='regexp',
+ name='name',
+ field=models.CharField(max_length=100, unique=True, verbose_name='Nom'),
+ ),
+ migrations.AlterField(
+ model_name='regexp',
+ name='regexp',
+ field=models.CharField(max_length=500, verbose_name='Expression r\xe9guli\xe8re'),
+ ),
+ migrations.AlterField(
+ model_name='searchquery',
+ name='content_type',
+ field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='contenttypes.ContentType', verbose_name='Type de contenu'),
+ ),
+ migrations.AlterField(
+ model_name='searchquery',
+ name='is_alert',
+ field=models.BooleanField(default=False, verbose_name='Est une alerte'),
+ ),
+ migrations.AlterField(
+ model_name='searchquery',
+ name='label',
+ field=models.TextField(blank=True, verbose_name='D\xe9nomination'),
+ ),
+ migrations.AlterField(
+ model_name='searchquery',
+ name='profile',
+ field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='ishtar_common.UserProfile', verbose_name='Profil'),
+ ),
+ migrations.AlterField(
+ model_name='searchquery',
+ name='query',
+ field=models.TextField(blank=True, verbose_name='Requ\xeate'),
+ ),
+ migrations.AlterField(
+ model_name='sourcetype',
+ name='available',
+ field=models.BooleanField(default=True, verbose_name='Disponible'),
+ ),
+ migrations.AlterField(
+ model_name='sourcetype',
+ name='comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire'),
+ ),
+ migrations.AlterField(
+ model_name='sourcetype',
+ name='label',
+ field=models.TextField(verbose_name='D\xe9nomination'),
+ ),
+ migrations.AlterField(
+ model_name='sourcetype',
+ name='txt_idx',
+ field=models.TextField(help_text='Le "slug" est une version standardis\xe9e du nom. Il ne contient que des lettres en minuscule, des nombres et des tirets (-). Chaque "slug" doit \xeatre unique dans la typologie.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), "Ce champ ne doit contenir que des lettres, des nombres, des tirets bas _ et des traits d'union.", 'invalid')], verbose_name='Identifiant textuel'),
+ ),
+ migrations.AlterField(
+ model_name='spatialreferencesystem',
+ name='auth_name',
+ field=models.CharField(default='EPSG', max_length=256, verbose_name='Registre'),
+ ),
+ migrations.AlterField(
+ model_name='spatialreferencesystem',
+ name='available',
+ field=models.BooleanField(default=True, verbose_name='Disponible'),
+ ),
+ migrations.AlterField(
+ model_name='spatialreferencesystem',
+ name='comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire'),
+ ),
+ migrations.AlterField(
+ model_name='spatialreferencesystem',
+ name='label',
+ field=models.TextField(verbose_name='D\xe9nomination'),
+ ),
+ migrations.AlterField(
+ model_name='spatialreferencesystem',
+ name='order',
+ field=models.IntegerField(default=10, verbose_name='Ordre'),
+ ),
+ migrations.AlterField(
+ model_name='spatialreferencesystem',
+ name='srid',
+ field=models.IntegerField(verbose_name='SRID'),
+ ),
+ migrations.AlterField(
+ model_name='spatialreferencesystem',
+ name='txt_idx',
+ field=models.TextField(help_text='Le "slug" est une version standardis\xe9e du nom. Il ne contient que des lettres en minuscule, des nombres et des tirets (-). Chaque "slug" doit \xeatre unique dans la typologie.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), "Ce champ ne doit contenir que des lettres, des nombres, des tirets bas _ et des traits d'union.", 'invalid')], verbose_name='Identifiant textuel'),
+ ),
+ migrations.AlterField(
+ model_name='state',
+ name='label',
+ field=models.CharField(max_length=30, verbose_name='D\xe9nomination'),
+ ),
+ migrations.AlterField(
+ model_name='state',
+ name='number',
+ field=models.CharField(max_length=3, unique=True, verbose_name='Nombre'),
+ ),
+ migrations.AlterField(
+ model_name='supporttype',
+ name='available',
+ field=models.BooleanField(default=True, verbose_name='Disponible'),
+ ),
+ migrations.AlterField(
+ model_name='supporttype',
+ name='comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire'),
+ ),
+ migrations.AlterField(
+ model_name='supporttype',
+ name='label',
+ field=models.TextField(verbose_name='D\xe9nomination'),
+ ),
+ migrations.AlterField(
+ model_name='supporttype',
+ name='txt_idx',
+ field=models.TextField(help_text='Le "slug" est une version standardis\xe9e du nom. Il ne contient que des lettres en minuscule, des nombres et des tirets (-). Chaque "slug" doit \xeatre unique dans la typologie.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), "Ce champ ne doit contenir que des lettres, des nombres, des tirets bas _ et des traits d'union.", 'invalid')], verbose_name='Identifiant textuel'),
+ ),
+ migrations.AlterField(
+ model_name='targetkey',
+ name='is_set',
+ field=models.BooleanField(default=False, verbose_name='Est d\xe9fini'),
+ ),
+ migrations.AlterField(
+ model_name='targetkey',
+ name='key',
+ field=models.TextField(verbose_name='Cl\xe9'),
+ ),
+ migrations.AlterField(
+ model_name='targetkey',
+ name='value',
+ field=models.TextField(blank=True, null=True, verbose_name='Valeur'),
+ ),
+ migrations.AlterField(
+ model_name='targetkeygroup',
+ name='all_user_can_modify',
+ field=models.BooleanField(default=False, verbose_name='Tous les utilisateurs peuvent le modifier'),
+ ),
+ migrations.AlterField(
+ model_name='targetkeygroup',
+ name='all_user_can_use',
+ field=models.BooleanField(default=False, verbose_name="Tous les utilisateurs peuvent l'utiliser"),
+ ),
+ migrations.AlterField(
+ model_name='targetkeygroup',
+ name='available',
+ field=models.BooleanField(default=True, verbose_name='Disponible'),
+ ),
+ migrations.AlterField(
+ model_name='targetkeygroup',
+ name='name',
+ field=models.TextField(unique=True, verbose_name='Nom'),
+ ),
+ migrations.AlterField(
+ model_name='titletype',
+ name='available',
+ field=models.BooleanField(default=True, verbose_name='Disponible'),
+ ),
+ migrations.AlterField(
+ model_name='titletype',
+ name='comment',
+ field=models.TextField(blank=True, null=True, verbose_name='Commentaire'),
+ ),
+ migrations.AlterField(
+ model_name='titletype',
+ name='label',
+ field=models.TextField(verbose_name='D\xe9nomination'),
+ ),
+ migrations.AlterField(
+ model_name='titletype',
+ name='txt_idx',
+ field=models.TextField(help_text='Le "slug" est une version standardis\xe9e du nom. Il ne contient que des lettres en minuscule, des nombres et des tirets (-). Chaque "slug" doit \xeatre unique dans la typologie.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), "Ce champ ne doit contenir que des lettres, des nombres, des tirets bas _ et des traits d'union.", 'invalid')], verbose_name='Identifiant textuel'),
+ ),
+ migrations.AlterField(
+ model_name='town',
+ name='cached_label',
+ field=models.CharField(blank=True, db_index=True, max_length=500, null=True, verbose_name='Nom en cache'),
+ ),
+ migrations.AlterField(
+ model_name='town',
+ name='children',
+ field=models.ManyToManyField(blank=True, related_name='parents', to='ishtar_common.Town', verbose_name='Communes enfants'),
+ ),
+ migrations.AlterField(
+ model_name='town',
+ name='departement',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='ishtar_common.Department', verbose_name='D\xe9partement'),
+ ),
+ migrations.AlterField(
+ model_name='town',
+ name='limit',
+ field=django.contrib.gis.db.models.fields.MultiPolygonField(blank=True, null=True, srid=4326, verbose_name='Limite'),
+ ),
+ migrations.AlterField(
+ model_name='town',
+ name='name',
+ field=models.CharField(max_length=100, verbose_name='Nom'),
+ ),
+ migrations.AlterField(
+ model_name='town',
+ name='year',
+ field=models.IntegerField(blank=True, help_text='Remplir ce champ est n\xe9cessaire pour distinguer les anciennes communes des nouvelles communes.', null=True, verbose_name='Ann\xe9e de cr\xe9ation'),
+ ),
+ migrations.AlterField(
+ model_name='userprofile',
+ name='areas',
+ field=models.ManyToManyField(blank=True, related_name='profiles', to='ishtar_common.Area', verbose_name='Zones'),
+ ),
+ migrations.AlterField(
+ model_name='userprofile',
+ name='current',
+ field=models.BooleanField(default=False, verbose_name='Profil actuel'),
+ ),
+ migrations.AlterField(
+ model_name='userprofile',
+ name='name',
+ field=models.CharField(blank=True, default='', max_length=100, verbose_name='Nom'),
+ ),
+ migrations.AlterField(
+ model_name='userprofile',
+ name='person',
+ field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='profiles', to='ishtar_common.Person', verbose_name='Personne'),
+ ),
+ migrations.AlterField(
+ model_name='userprofile',
+ name='profile_type',
+ field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='ishtar_common.ProfileType', verbose_name='Type de profil'),
+ ),
+ ]