summaryrefslogtreecommitdiff
path: root/ishtar_common
diff options
context:
space:
mode:
Diffstat (limited to 'ishtar_common')
-rw-r--r--ishtar_common/fixtures/initial_importtypes-fr.json3531
-rw-r--r--ishtar_common/forms.py4
-rw-r--r--ishtar_common/forms_common.py4
-rw-r--r--ishtar_common/ishtar_menu.py6
-rw-r--r--ishtar_common/locale/django.pot666
-rw-r--r--ishtar_common/migrations/0011_generate_title.py1
-rw-r--r--ishtar_common/migrations/0015_remove_ishtar_local_prefix.py1
-rw-r--r--ishtar_common/models.py37
-rw-r--r--ishtar_common/static/js/ishtar.js12
-rw-r--r--ishtar_common/static/media/style.css13
-rw-r--r--ishtar_common/templates/base.html4
-rw-r--r--ishtar_common/templates/ishtar/blocks/window_nav.html2
-rw-r--r--ishtar_common/templates/ishtar/manage_basket.html5
-rw-r--r--ishtar_common/templates/ishtar/sheet_organization.html4
-rw-r--r--ishtar_common/templates/ishtar/sheet_person.html6
-rw-r--r--ishtar_common/templates/ishtar/wizard/confirm_wizard.html4
-rw-r--r--ishtar_common/templates/ishtar/wizard/default_wizard.html9
-rw-r--r--ishtar_common/templates/ishtar/wizard/wizard_person_deletion.html2
-rw-r--r--ishtar_common/templates/sheet_ope.html2
-rw-r--r--ishtar_common/templatetags/window_tables.py24
-rw-r--r--ishtar_common/tests.py87
-rw-r--r--ishtar_common/utils.py13
-rw-r--r--ishtar_common/views.py88
-rw-r--r--ishtar_common/widgets.py52
-rw-r--r--ishtar_common/wizards.py86
25 files changed, 3532 insertions, 1131 deletions
diff --git a/ishtar_common/fixtures/initial_importtypes-fr.json b/ishtar_common/fixtures/initial_importtypes-fr.json
index 98703c8c9..0592ca60f 100644
--- a/ishtar_common/fixtures/initial_importtypes-fr.json
+++ b/ishtar_common/fixtures/initial_importtypes-fr.json
@@ -6,7 +6,8 @@
"description": "Import depuis la base filemaker du SRA PdL",
"is_template": true,
"unicity_keys": "code_patriarche",
- "users": [],
+ "users": [
+ ],
"slug": "operatio",
"associated_models": "archaeological_operations.models.Operation",
"name": "OPERATIO - Op\u00e9rations"
@@ -19,7 +20,8 @@
"description": "Test d'import depuis le DBF simplifi\u00e9 de patrairche",
"is_template": true,
"unicity_keys": null,
- "users": [],
+ "users": [
+ ],
"slug": null,
"associated_models": "archaeological_operations.models.Operation",
"name": "OPE PATRIARCHE DBF simplifi\u00e9 (TEST)"
@@ -32,7 +34,8 @@
"description": "Import simple d'UE (pas de relations)",
"is_template": true,
"unicity_keys": null,
- "users": [],
+ "users": [
+ ],
"slug": null,
"associated_models": "archaeological_context_records.models.ContextRecord",
"name": "SISPEO_UE"
@@ -169,6 +172,32 @@
}
},
{
+ "pk": 18,
+ "model": "ishtar_common.importertype",
+ "fields": {
+ "description": "Unit\u00e9s d'enregisttrement",
+ "is_template": true,
+ "unicity_keys": "external_id",
+ "users": [],
+ "slug": "ishtar_context_record",
+ "associated_models": "archaeological_context_records.models.ContextRecord",
+ "name": "ISHTAR-UE"
+ }
+ },
+ {
+ "pk": 19,
+ "model": "ishtar_common.importertype",
+ "fields": {
+ "description": "Parcelles de terrain",
+ "is_template": true,
+ "unicity_keys": "external_id",
+ "users": [],
+ "slug": "ishtar_parcels",
+ "associated_models": "archaeological_operations.models.Parcel",
+ "name": "ISHTAR-PARCELLES"
+ }
+ },
+ {
"pk": 17,
"model": "ishtar_common.importertype",
"fields": {
@@ -178,7 +207,20 @@
"users": [],
"slug": "ishtar_operations",
"associated_models": "archaeological_operations.models.Operation",
- "name": "ISHTAR-Operations"
+ "name": "ISHTAR-OP\u00c9RATIONS"
+ }
+ },
+ {
+ "pk": 20,
+ "model": "ishtar_common.importertype",
+ "fields": {
+ "description": "Mobilier",
+ "is_template": true,
+ "unicity_keys": "external_id",
+ "users": [],
+ "slug": "ishtar_finds",
+ "associated_models": "archaeological_finds.models.BaseFind",
+ "name": "ISHTAR-MOBILIER"
}
},
{
@@ -391,10 +433,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 1,
- "required": true,
- "importer_type": 1,
"description": "Code patriarche",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": true,
+ "label": null,
+ "importer_type": 1
}
},
{
@@ -402,10 +445,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 3,
- "required": true,
- "importer_type": 1,
"description": null,
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": true,
+ "label": null,
+ "importer_type": 1
}
},
{
@@ -413,10 +457,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 4,
- "required": true,
- "importer_type": 1,
"description": null,
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": true,
+ "label": null,
+ "importer_type": 1
}
},
{
@@ -424,10 +469,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 5,
- "required": true,
- "importer_type": 1,
"description": null,
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": true,
+ "label": null,
+ "importer_type": 1
}
},
{
@@ -435,10 +481,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 6,
- "required": true,
- "importer_type": 1,
"description": "Nom du responsable de l'op\u00e9ration. Nom et Pr\u00e9nom sont group\u00e9 et donc mis dans le NOM seul dans l'annuaire.",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": true,
+ "label": null,
+ "importer_type": 1
}
},
{
@@ -446,10 +493,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 7,
- "required": true,
- "importer_type": 1,
"description": "Date de d\u00e9but de l'op\u00e9ration avec le format ANN\u00c9E/MOIS/JOUR",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": true,
+ "label": null,
+ "importer_type": 1
}
},
{
@@ -457,10 +505,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 8,
- "required": true,
- "importer_type": 1,
"description": "Date de fin de l'op\u00e9ration avec le format ANN\u00c9E/MOIS/JOUR",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": true,
+ "label": null,
+ "importer_type": 1
}
},
{
@@ -468,10 +517,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 9,
- "required": false,
- "importer_type": 1,
"description": null,
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 1
}
},
{
@@ -479,10 +529,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 1,
- "required": true,
- "importer_type": 2,
"description": "Code patriarche de l'op\u00e9ration associ\u00e9e",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": true,
+ "label": null,
+ "importer_type": 2
}
},
{
@@ -490,10 +541,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 2,
- "required": true,
- "importer_type": 2,
"description": "Commune (via num\u00e9ro INSEE)",
- "regexp_pre_filter": 2
+ "regexp_pre_filter": 2,
+ "required": true,
+ "label": null,
+ "importer_type": 2
}
},
{
@@ -501,10 +553,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 3,
- "required": true,
- "importer_type": 2,
"description": "Identifiant externe",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": true,
+ "label": null,
+ "importer_type": 2
}
},
{
@@ -512,10 +565,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 4,
- "required": false,
- "importer_type": 2,
"description": "Num\u00e9ro",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 2
}
},
{
@@ -523,10 +577,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 5,
- "required": false,
- "importer_type": 2,
"description": "Section",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 2
}
},
{
@@ -534,10 +589,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 6,
- "required": false,
- "importer_type": 2,
"description": "Ann\u00e9e",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 2
}
},
{
@@ -545,10 +601,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 9,
- "required": false,
- "importer_type": 2,
"description": "Lieu dit / adresse",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 2
}
},
{
@@ -556,10 +613,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 1,
- "required": true,
- "importer_type": 3,
"description": "Code patriarche de l'op\u00e9ration associ\u00e9e",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": true,
+ "label": null,
+ "importer_type": 3
}
},
{
@@ -567,10 +625,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 2,
- "required": true,
- "importer_type": 3,
"description": null,
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": true,
+ "label": null,
+ "importer_type": 3
}
},
{
@@ -578,10 +637,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 3,
- "required": true,
- "importer_type": 3,
"description": null,
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": true,
+ "label": null,
+ "importer_type": 3
}
},
{
@@ -589,10 +649,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 4,
- "required": false,
- "importer_type": 3,
"description": null,
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 3
}
},
{
@@ -600,10 +661,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 5,
- "required": false,
- "importer_type": 3,
"description": null,
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 3
}
},
{
@@ -611,10 +673,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 6,
- "required": false,
- "importer_type": 3,
"description": null,
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 3
}
},
{
@@ -622,10 +685,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 7,
- "required": false,
- "importer_type": 3,
"description": null,
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 3
}
},
{
@@ -633,10 +697,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 8,
- "required": false,
- "importer_type": 3,
"description": null,
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 3
}
},
{
@@ -644,10 +709,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 9,
- "required": false,
- "importer_type": 3,
"description": null,
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 3
}
},
{
@@ -655,10 +721,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 12,
- "required": false,
- "importer_type": 3,
"description": null,
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 3
}
},
{
@@ -666,10 +733,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 13,
- "required": false,
- "importer_type": 3,
"description": null,
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 3
}
},
{
@@ -677,10 +745,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 16,
- "required": false,
- "importer_type": 3,
"description": null,
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 3
}
},
{
@@ -688,10 +757,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 1,
- "required": true,
- "importer_type": 4,
"description": "Code patriarche de l'op\u00e9ration associ\u00e9e",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": true,
+ "label": null,
+ "importer_type": 4
}
},
{
@@ -699,10 +769,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 2,
- "required": true,
- "importer_type": 4,
"description": "Commune (via num\u00e9ro INSEE)",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": true,
+ "label": null,
+ "importer_type": 4
}
},
{
@@ -710,10 +781,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 3,
- "required": true,
- "importer_type": 4,
"description": "Parcelle (identifiant externe)",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": true,
+ "label": null,
+ "importer_type": 4
}
},
{
@@ -721,10 +793,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 4,
- "required": true,
- "importer_type": 4,
"description": "Label / Identifiant externe ",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": true,
+ "label": null,
+ "importer_type": 4
}
},
{
@@ -732,10 +805,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 5,
- "required": false,
- "importer_type": 4,
"description": "Type",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 4
}
},
{
@@ -743,10 +817,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 6,
- "required": false,
- "importer_type": 4,
"description": "Description",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 4
}
},
{
@@ -754,10 +829,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 7,
- "required": false,
- "importer_type": 4,
"description": "Identification",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 4
}
},
{
@@ -765,10 +841,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 8,
- "required": false,
- "importer_type": 4,
"description": "Date d'ouverture",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 4
}
},
{
@@ -776,10 +853,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 9,
- "required": false,
- "importer_type": 4,
"description": "Date de fermeture",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 4
}
},
{
@@ -787,10 +865,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 11,
- "required": false,
- "importer_type": 4,
"description": "Commentaire",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 4
}
},
{
@@ -798,10 +877,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 12,
- "required": false,
- "importer_type": 4,
"description": "Nature",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 4
}
},
{
@@ -809,10 +889,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 13,
- "required": false,
- "importer_type": 4,
"description": "Chronologie (plusieurs possibles s\u00e9par\u00e9es par &)",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 4
}
},
{
@@ -820,10 +901,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 1,
- "required": true,
- "importer_type": 5,
"description": "Code patriarche de l'op\u00e9ration associ\u00e9e",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": true,
+ "label": null,
+ "importer_type": 5
}
},
{
@@ -831,10 +913,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 2,
- "required": true,
- "importer_type": 5,
"description": "Commune (via num\u00e9ro INSEE)",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": true,
+ "label": null,
+ "importer_type": 5
}
},
{
@@ -842,10 +925,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 3,
- "required": true,
- "importer_type": 5,
"description": "Identifiant parcelle",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": true,
+ "label": null,
+ "importer_type": 5
}
},
{
@@ -853,10 +937,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 4,
- "required": true,
- "importer_type": 5,
"description": "Identifiant UE",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": true,
+ "label": null,
+ "importer_type": 5
}
},
{
@@ -864,10 +949,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 5,
- "required": true,
- "importer_type": 5,
"description": "Identifiant externe",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": true,
+ "label": null,
+ "importer_type": 5
}
},
{
@@ -875,10 +961,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 9,
- "required": false,
- "importer_type": 5,
"description": "Sous classe de mat\u00e9riaux",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 5
}
},
{
@@ -886,10 +973,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 12,
- "required": false,
- "importer_type": 5,
"description": "Ref. du contenant / label temporaire utilis\u00e9 pour le mobilier = label libre = Label pour l'instant",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 5
}
},
{
@@ -897,10 +985,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 13,
- "required": false,
- "importer_type": 5,
"description": "Nombre d'\u00e9l\u00e9ments",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 5
}
},
{
@@ -908,10 +997,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 14,
- "required": false,
- "importer_type": 5,
"description": "Poids",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 5
}
},
{
@@ -919,10 +1009,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 15,
- "required": false,
- "importer_type": 5,
"description": "Unit\u00e9 de poids",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 5
}
},
{
@@ -930,10 +1021,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 16,
- "required": false,
- "importer_type": 5,
"description": "Date de d\u00e9couverte",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 5
}
},
{
@@ -941,10 +1033,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 17,
- "required": false,
- "importer_type": 5,
"description": "\u00c9tat de conservation",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 5
}
},
{
@@ -952,10 +1045,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 18,
- "required": false,
- "importer_type": 5,
"description": "Mesure de conservation",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 5
}
},
{
@@ -963,10 +1057,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 19,
- "required": false,
- "importer_type": 5,
"description": "Commentaire",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 5
}
},
{
@@ -974,10 +1069,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 20,
- "required": false,
- "importer_type": 5,
"description": "Datations s\u00e9par\u00e9es par des \"&\"",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 5
}
},
{
@@ -985,10 +1081,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 21,
- "required": false,
- "importer_type": 5,
"description": "Localisation topographique",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 5
}
},
{
@@ -996,10 +1093,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 22,
- "required": false,
- "importer_type": 5,
"description": "Int\u00e9r\u00eat sp\u00e9cifique",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 5
}
},
{
@@ -1007,10 +1105,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 23,
- "required": false,
- "importer_type": 5,
"description": "Description",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 5
}
},
{
@@ -1018,10 +1117,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 1,
- "required": true,
- "importer_type": 6,
"description": "Type d'op\u00e9ration patriarche (ex: EV, AET, OPD, etc.)",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": true,
+ "label": null,
+ "importer_type": 6
}
},
{
@@ -1029,10 +1129,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 2,
- "required": false,
- "importer_type": 6,
"description": "Intitul\u00e9 de l'op\u00e9ration dans Patriarche",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 6
}
},
{
@@ -1040,10 +1141,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 3,
- "required": false,
- "importer_type": 6,
"description": "Nom du responsable de l'op\u00e9ration",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 6
}
},
{
@@ -1051,10 +1153,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 4,
- "required": false,
- "importer_type": 6,
"description": "Pr\u00e9nom du responsable de l'op\u00e9ration",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 6
}
},
{
@@ -1062,10 +1165,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 5,
- "required": false,
- "importer_type": 6,
"description": "Chronologie dans PATRIARCHE, h\u00e9las une seule chronologie est enregistr\u00e9e",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 6
}
},
{
@@ -1073,10 +1177,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 8,
- "required": false,
- "importer_type": 6,
"description": "Date du d\u00e9but de l'op\u00e9ration au format jour/mois/ann\u00e9e",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 6
}
},
{
@@ -1084,10 +1189,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 9,
- "required": false,
- "importer_type": 6,
"description": "Date du fin de l'op\u00e9ration au format jour/mois/ann\u00e9e",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 6
}
},
{
@@ -1095,10 +1201,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 10,
- "required": false,
- "importer_type": 6,
"description": "Identification de l'op\u00e9ration, import\u00e9 en tant que commentaire",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 6
}
},
{
@@ -1106,10 +1213,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 11,
- "required": true,
- "importer_type": 6,
"description": "CODE Patriarche de l'op\u00e9ration, AVEC le code REGION",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": true,
+ "label": null,
+ "importer_type": 6
}
},
{
@@ -1117,10 +1225,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 12,
- "required": false,
- "importer_type": 6,
"description": "Surface en m2",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 6
}
},
{
@@ -1128,10 +1237,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 1,
- "required": true,
- "importer_type": 7,
"description": "Code OA avec le num\u00e9ro de r\u00e9gion (ex: 18 pour les PdL)",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": true,
+ "label": null,
+ "importer_type": 7
}
},
{
@@ -1139,10 +1249,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 2,
- "required": true,
- "importer_type": 7,
"description": "Code de l'UE (peut \u00eatre la concat\u00e9nation de fait + US ou autre)",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": true,
+ "label": null,
+ "importer_type": 7
}
},
{
@@ -1150,10 +1261,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 3,
- "required": true,
- "importer_type": 7,
"description": "Parcelle (peut \u00eatre li\u00e9 \u00e0 une parcelle virtuelle, ex: XXX 0)",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": true,
+ "label": null,
+ "importer_type": 7
}
},
{
@@ -1161,10 +1273,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 4,
- "required": false,
- "importer_type": 7,
"description": "Commentaire",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 7
}
},
{
@@ -1172,10 +1285,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 5,
- "required": false,
- "importer_type": 7,
"description": "Type d'UE : identification",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 7
}
},
{
@@ -1183,10 +1297,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 6,
- "required": false,
- "importer_type": 7,
"description": "Description de l'UE consid\u00e9r\u00e9e",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 7
}
},
{
@@ -1194,10 +1309,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 7,
- "required": false,
- "importer_type": 7,
"description": "Datation (p\u00e9riode) pour l'UE s\u00e9par\u00e9es par un &",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 7
}
},
{
@@ -1205,10 +1321,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 1,
- "required": true,
- "importer_type": 8,
"description": "Code patriarche de l'op\u00e9ration associ\u00e9e",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": true,
+ "label": null,
+ "importer_type": 8
}
},
{
@@ -1216,10 +1333,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 2,
- "required": true,
- "importer_type": 8,
"description": "Code Document de SISPEO, soit l'identifiant complet (ancien du mobilier), ex: M.CE.0091_XXX.XX_0030",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": true,
+ "label": null,
+ "importer_type": 8
}
},
{
@@ -1227,10 +1345,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 3,
- "required": true,
- "importer_type": 8,
"description": "UE - a passer en majuscule dans l'export csv de SISPEO / bien v\u00e9rifier qu'il n'y a pas de doublons dans l'import des UE pr\u00e9c\u00e9dent",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": true,
+ "label": null,
+ "importer_type": 8
}
},
{
@@ -1238,10 +1357,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 4,
- "required": false,
- "importer_type": 8,
"description": "Type de manti\u00e8re de mobilier, s\u00e9par\u00e9s par des \"&\"",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 8
}
},
{
@@ -1249,10 +1369,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 5,
- "required": false,
- "importer_type": 8,
"description": "\u00c9tat de conservation / lien avec une liste",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 8
}
},
{
@@ -1260,10 +1381,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 6,
- "required": false,
- "importer_type": 8,
"description": "Commentaire",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 8
}
},
{
@@ -1271,10 +1393,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 7,
- "required": false,
- "importer_type": 8,
"description": "Identifiant pr\u00e9c\u00e9dent / label libre",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 8
}
},
{
@@ -1282,10 +1405,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 8,
- "required": false,
- "importer_type": 8,
"description": "Contient des objets complets ou non (pb il peut aussi y en avoir des incomplets m\u00e9lang\u00e9s \u00e0 des complets non isol\u00e9s...)\r\nA Am\u00e9liorer",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 8
}
},
{
@@ -1293,10 +1417,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 9,
- "required": false,
- "importer_type": 8,
"description": "Datations s\u00e9par\u00e9es par des \"&\"",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 8
}
},
{
@@ -1304,10 +1429,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 10,
- "required": false,
- "importer_type": 8,
"description": "Description de l'objet ou du lot d'objet",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 8
}
},
{
@@ -1315,10 +1441,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 11,
- "required": false,
- "importer_type": 8,
"description": "Nombre d'objets",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 8
}
},
{
@@ -1326,10 +1453,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 12,
- "required": false,
- "importer_type": 8,
"description": "Poids (en g)",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 8
}
},
{
@@ -1337,10 +1465,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 13,
- "required": false,
- "importer_type": 8,
"description": "Longueur en cm",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 8
}
},
{
@@ -1348,10 +1477,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 14,
- "required": false,
- "importer_type": 8,
"description": "Largeur en cm",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 8
}
},
{
@@ -1359,10 +1489,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 15,
- "required": false,
- "importer_type": 8,
"description": "Hauteur en cm",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 8
}
},
{
@@ -1370,10 +1501,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 16,
- "required": false,
- "importer_type": 8,
"description": "Diam\u00e8tre en cm",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 8
}
},
{
@@ -1381,10 +1513,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 18,
- "required": false,
- "importer_type": 8,
"description": "Datation pr\u00e9cise, champs txt libre",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 8
}
},
{
@@ -1392,10 +1525,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 19,
- "required": false,
- "importer_type": 8,
"description": "Types d'objets se r\u00e9f\u00e9ren\u00e7ant par rapport \u00e0 un th\u00e9saurus",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 8
}
},
{
@@ -1403,10 +1537,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 20,
- "required": false,
- "importer_type": 8,
"description": "Isolation ou lot d'objets",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 8
}
},
{
@@ -1414,10 +1549,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 1,
- "required": true,
- "importer_type": 9,
"description": "Code patriarche de l'op\u00e9ration associ\u00e9e",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": true,
+ "label": null,
+ "importer_type": 9
}
},
{
@@ -1425,10 +1561,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 2,
- "required": true,
- "importer_type": 9,
"description": "Commune (via num\u00e9ro INSEE)",
- "regexp_pre_filter": 2
+ "regexp_pre_filter": 2,
+ "required": true,
+ "label": null,
+ "importer_type": 9
}
},
{
@@ -1436,10 +1573,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 4,
- "required": true,
- "importer_type": 9,
"description": "Section de la parcelle",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": true,
+ "label": null,
+ "importer_type": 9
}
},
{
@@ -1447,10 +1585,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 5,
- "required": true,
- "importer_type": 9,
"description": "Num\u00e9ro de la parcelle (ex: 125)",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": true,
+ "label": null,
+ "importer_type": 9
}
},
{
@@ -1458,10 +1597,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 1,
- "required": true,
- "importer_type": 10,
"description": "Numero OA reference",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": true,
+ "label": null,
+ "importer_type": 10
}
},
{
@@ -1469,10 +1609,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 2,
- "required": true,
- "importer_type": 10,
"description": "Ref\u00e9rence pr\u00e9c\u00e9dente de l'objet (base ou inventaire pr\u00e9c\u00e9dent, fouille, sp\u00e9cialiste, etc;)",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": true,
+ "label": null,
+ "importer_type": 10
}
},
{
@@ -1480,10 +1621,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 3,
- "required": true,
- "importer_type": 10,
"description": "UE li\u00e9e au mobilier",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": true,
+ "label": null,
+ "importer_type": 10
}
},
{
@@ -1491,10 +1633,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 4,
- "required": true,
- "importer_type": 10,
"description": "Mati\u00e8res s\u00e9par\u00e9es par des \"&\"",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": true,
+ "label": null,
+ "importer_type": 10
}
},
{
@@ -1502,10 +1645,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 5,
- "required": false,
- "importer_type": 10,
"description": "Etat de conservation",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 10
}
},
{
@@ -1513,10 +1657,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 6,
- "required": false,
- "importer_type": 10,
"description": "Commentaires",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 10
}
},
{
@@ -1524,10 +1669,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 7,
- "required": false,
- "importer_type": 10,
"description": "Label libre",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 10
}
},
{
@@ -1535,10 +1681,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 2,
- "required": false,
- "importer_type": 14,
"description": null,
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 14
}
},
{
@@ -1546,10 +1693,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 3,
- "required": false,
- "importer_type": 14,
"description": null,
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 14
}
},
{
@@ -1557,10 +1705,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 5,
- "required": false,
- "importer_type": 14,
"description": null,
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 14
}
},
{
@@ -1568,10 +1717,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 9,
- "required": false,
- "importer_type": 14,
"description": null,
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 14
}
},
{
@@ -1579,10 +1729,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 10,
- "required": false,
- "importer_type": 14,
"description": null,
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 14
}
},
{
@@ -1590,10 +1741,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 12,
- "required": false,
- "importer_type": 14,
"description": null,
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 14
}
},
{
@@ -1601,10 +1753,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 13,
- "required": false,
- "importer_type": 14,
"description": null,
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 14
}
},
{
@@ -1612,10 +1765,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 14,
- "required": false,
- "importer_type": 14,
"description": null,
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 14
}
},
{
@@ -1623,10 +1777,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 16,
- "required": false,
- "importer_type": 14,
"description": null,
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 14
}
},
{
@@ -1634,10 +1789,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 18,
- "required": false,
- "importer_type": 14,
"description": null,
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 14
}
},
{
@@ -1645,10 +1801,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 19,
- "required": false,
- "importer_type": 14,
"description": null,
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 14
}
},
{
@@ -1656,10 +1813,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 20,
- "required": false,
- "importer_type": 14,
"description": null,
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 14
}
},
{
@@ -1667,10 +1825,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 35,
- "required": false,
- "importer_type": 14,
"description": null,
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 14
}
},
{
@@ -1678,10 +1837,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 37,
- "required": false,
- "importer_type": 14,
"description": null,
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 14
}
},
{
@@ -1689,10 +1849,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 38,
- "required": false,
- "importer_type": 14,
"description": null,
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 14
}
},
{
@@ -1700,10 +1861,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 41,
- "required": false,
- "importer_type": 14,
"description": null,
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 14
}
},
{
@@ -1711,10 +1873,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 42,
- "required": false,
- "importer_type": 14,
"description": null,
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 14
}
},
{
@@ -1722,10 +1885,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 47,
- "required": false,
- "importer_type": 14,
"description": null,
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 14
}
},
{
@@ -1733,10 +1897,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 49,
- "required": false,
- "importer_type": 14,
"description": null,
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 14
}
},
{
@@ -1744,10 +1909,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 50,
- "required": false,
- "importer_type": 14,
"description": null,
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 14
}
},
{
@@ -1755,10 +1921,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 53,
- "required": false,
- "importer_type": 14,
"description": null,
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 14
}
},
{
@@ -1766,10 +1933,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 54,
- "required": false,
- "importer_type": 14,
"description": null,
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 14
}
},
{
@@ -1777,10 +1945,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 55,
- "required": false,
- "importer_type": 14,
"description": null,
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 14
}
},
{
@@ -1788,10 +1957,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 57,
- "required": false,
- "importer_type": 14,
"description": null,
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 14
}
},
{
@@ -1799,10 +1969,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 58,
- "required": false,
- "importer_type": 14,
"description": null,
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 14
}
},
{
@@ -1810,10 +1981,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 72,
- "required": false,
- "importer_type": 14,
"description": null,
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 14
}
},
{
@@ -1821,10 +1993,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 75,
- "required": false,
- "importer_type": 14,
"description": null,
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 14
}
},
{
@@ -1832,10 +2005,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 76,
- "required": false,
- "importer_type": 14,
"description": null,
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 14
}
},
{
@@ -1843,10 +2017,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 77,
- "required": false,
- "importer_type": 14,
"description": null,
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 14
}
},
{
@@ -1854,10 +2029,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 85,
- "required": false,
- "importer_type": 14,
"description": null,
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 14
}
},
{
@@ -1865,10 +2041,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 87,
- "required": false,
- "importer_type": 14,
"description": null,
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 14
}
},
{
@@ -1876,10 +2053,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 88,
- "required": false,
- "importer_type": 14,
"description": null,
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 14
}
},
{
@@ -1887,10 +2065,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 89,
- "required": false,
- "importer_type": 14,
"description": null,
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 14
}
},
{
@@ -1898,10 +2077,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 1,
- "required": true,
- "importer_type": 15,
"description": "Code Patriarche",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": true,
+ "label": null,
+ "importer_type": 15
}
},
{
@@ -1909,10 +2089,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 3,
- "required": false,
- "importer_type": 15,
"description": "Type d'op\u00e9ration",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 15
}
},
{
@@ -1920,10 +2101,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 4,
- "required": false,
- "importer_type": 15,
"description": "Nom de l'op\u00e9ration",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 15
}
},
{
@@ -1931,10 +2113,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 5,
- "required": false,
- "importer_type": 15,
"description": "Nom de l'op\u00e9rateur",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 15
}
},
{
@@ -1942,10 +2125,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 6,
- "required": false,
- "importer_type": 15,
"description": "Nom du responsable de l'op\u00e9ration.",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 15
}
},
{
@@ -1953,10 +2137,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 7,
- "required": false,
- "importer_type": 15,
"description": "Pr\u00e9nom du responsable de l'op\u00e9ration.",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 15
}
},
{
@@ -1964,10 +2149,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 8,
- "required": false,
- "importer_type": 15,
"description": "Date de d\u00e9but de l'op\u00e9ration avec le format ANN\u00c9E/MOIS/JOUR",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 15
}
},
{
@@ -1975,10 +2161,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 9,
- "required": false,
- "importer_type": 15,
"description": "Date de fin de l'op\u00e9ration avec le format ANN\u00c9E/MOIS/JOUR",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 15
}
},
{
@@ -1986,10 +2173,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 10,
- "required": false,
- "importer_type": 15,
"description": "P\u00e9riodes chronologiques",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 15
}
},
{
@@ -1997,10 +2185,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 11,
- "required": false,
- "importer_type": 15,
"description": "Ann\u00e9e de r\u00e9f\u00e9rence administrative",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 15
}
},
{
@@ -2008,10 +2197,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 12,
- "required": false,
- "importer_type": 15,
"description": "Num\u00e9ro de r\u00e9f\u00e9rence administrative de l'op\u00e9ration",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 15
}
},
{
@@ -2019,10 +2209,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 13,
- "required": false,
- "importer_type": 15,
"description": "Ancienne ref type DRACAR",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 15
}
},
{
@@ -2030,10 +2221,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 14,
- "required": false,
- "importer_type": 15,
"description": "Commentaires",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 15
}
},
{
@@ -2041,10 +2233,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 15,
- "required": false,
- "importer_type": 15,
"description": "Date de rendu du rapport (du premier si il y en a plusieurs)",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 15
}
},
{
@@ -2052,10 +2245,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 16,
- "required": false,
- "importer_type": 15,
"description": "\u00c9tat de traitement des rapports",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 15
}
},
{
@@ -2063,10 +2257,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 1,
- "required": false,
- "importer_type": 16,
"description": "Adresse du domicile",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 16
}
},
{
@@ -2074,10 +2269,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 2,
- "required": false,
- "importer_type": 16,
"description": "Courriel",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 16
}
},
{
@@ -2085,10 +2281,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 3,
- "required": false,
- "importer_type": 16,
"description": "Adresse",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 16
}
},
{
@@ -2096,10 +2293,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 4,
- "required": false,
- "importer_type": 16,
"description": "Commentaire : #AFEAF",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 16
}
},
{
@@ -2107,10 +2305,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 7,
- "required": false,
- "importer_type": 16,
"description": "Commentaire : #BSR_CONTRI",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 16
}
},
{
@@ -2118,10 +2317,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 10,
- "required": false,
- "importer_type": 16,
"description": "Code postal domicie",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 16
}
},
{
@@ -2129,10 +2329,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 11,
- "required": false,
- "importer_type": 16,
"description": "Code postal",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 16
}
},
{
@@ -2140,10 +2341,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 17,
- "required": false,
- "importer_type": 16,
"description": "Quelle est l'adresse pr\u00e9f\u00e9r\u00e9e ? (pro/domicile)",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 16
}
},
{
@@ -2151,10 +2353,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 19,
- "required": false,
- "importer_type": 16,
"description": "Type de contact",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 16
}
},
{
@@ -2162,10 +2365,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 28,
- "required": false,
- "importer_type": 16,
"description": "Nom",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 16
}
},
{
@@ -2173,10 +2377,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 29,
- "required": false,
- "importer_type": 16,
"description": "Nom de la structure associ\u00e9e",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 16
}
},
{
@@ -2184,10 +2389,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 31,
- "required": false,
- "importer_type": 16,
"description": "Commentaire",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 16
}
},
{
@@ -2195,10 +2401,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 32,
- "required": false,
- "importer_type": 16,
"description": "T\u00e9l\u00e9phone champs brut",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 16
}
},
{
@@ -2206,10 +2413,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 33,
- "required": false,
- "importer_type": 16,
"description": "Pays du domicile",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 16
}
},
{
@@ -2217,10 +2425,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 34,
- "required": false,
- "importer_type": 16,
"description": "Pays",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 16
}
},
{
@@ -2228,10 +2437,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 36,
- "required": false,
- "importer_type": 16,
"description": "Pr\u00e9nom",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 16
}
},
{
@@ -2239,10 +2449,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 37,
- "required": false,
- "importer_type": 16,
"description": "Titre",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 16
}
},
{
@@ -2250,10 +2461,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 41,
- "required": false,
- "importer_type": 16,
"description": "Type de t\u00e9l\u00e9phone (\u00e0 retraiter)",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 16
}
},
{
@@ -2261,10 +2473,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 42,
- "required": false,
- "importer_type": 16,
"description": "Ville du domicile",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 16
}
},
{
@@ -2272,10 +2485,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 43,
- "required": false,
- "importer_type": 16,
"description": "Ville",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 16
}
},
{
@@ -2283,10 +2497,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 1,
+ "description": "Code PATRIARCHE\r\n ou\r\n code num\u00e9rique (entier) UNIQUE pour une op\u00e9ration",
+ "regexp_pre_filter": null,
"required": true,
- "importer_type": 17,
- "description": "Code patriarche ou code num\u00e9rique (entier) unique pour une op\u00e9ration",
- "regexp_pre_filter": null
+ "label": "CODE OPERATION",
+ "importer_type": 17
}
},
{
@@ -2294,10 +2509,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 2,
- "required": true,
- "importer_type": 17,
"description": "Nom usuel de l'op\u00e9ration",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": true,
+ "label": "Nom",
+ "importer_type": 17
}
},
{
@@ -2305,10 +2521,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 3,
- "required": true,
- "importer_type": 17,
"description": "Ann\u00e9e de r\u00e9f\u00e9rence (peut \u00eatre celle o\u00f9 le projet d'op\u00e9ration a \u00e9t\u00e9 cr\u00e9\u00e9 ou bien celle de la r\u00e9alisation selon votre usage) ",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": true,
+ "label": "Ann\u00e9e",
+ "importer_type": 17
}
},
{
@@ -2316,10 +2533,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 4,
- "required": false,
- "importer_type": 17,
"description": "Index (num\u00e9ro par ann\u00e9e), le couple ann\u00e9e + index doit \u00eatre unique",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 17
}
},
{
@@ -2327,10 +2545,23 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 5,
- "required": true,
- "importer_type": 17,
"description": "Type d'op\u00e9ration (parmi une liste)",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": true,
+ "label": null,
+ "importer_type": 17
+ }
+ },
+ {
+ "pk": 335,
+ "model": "ishtar_common.importercolumn",
+ "fields": {
+ "col_number": 6,
+ "description": "Ancien code unique de l'op\u00e9ration, peut \u00eatre la r\u00e9f\u00e9rence unique d'une op\u00e9ration pass\u00e9e comme un code DRACAR par exemple, 200 carac. max.",
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": "Ancien code",
+ "importer_type": 17
}
},
{
@@ -2338,10 +2569,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 7,
+ "description": "R\u00e9f\u00e9rence du dossier administratif associ\u00e9 \u00e0 l'op\u00e9ration sous la forme ANNEE-INDEX. Exemple : \"2002-4\".",
+ "regexp_pre_filter": null,
"required": false,
- "importer_type": 17,
- "description": "R\u00e9f\u00e9rence du dossier administratif associ\u00e9 \u00e0 l'op\u00e9ration sous la forme ANNEE-INDEX par exemple : \"2002-4\"",
- "regexp_pre_filter": null
+ "label": "",
+ "importer_type": 17
}
},
{
@@ -2349,10 +2581,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 8,
- "required": false,
- "importer_type": 17,
"description": "Identifiants des sites (entit\u00e9s arch\u00e9ologiques) concern\u00e9es par l'op\u00e9ration, s\u00e9par\u00e9es par \u00ab\u00a0&\u00a0\u00bb. \r\nExemple : \"44 125 0028 & 44 125 0029\"",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": "",
+ "importer_type": 17
}
},
{
@@ -2360,10 +2593,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 9,
- "required": false,
- "importer_type": 17,
"description": "Types de vestiges (s\u00e9par\u00e9s par un \u00ab\u00a0&\u00a0\u00bb)\r\nExemple : \"four & fosses & villa\"",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 17
}
},
{
@@ -2371,10 +2605,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 10,
+ "description": "P\u00e9riodes concern\u00e9es (s\u00e9par\u00e9es par un \u00ab\u00a0&\u00a0\u00bb). \r\nExemple : \"Gallo-romain & Fer & Med\".",
+ "regexp_pre_filter": null,
"required": false,
- "importer_type": 17,
- "description": "P\u00e9riodes concern\u00e9es (s\u00e9par\u00e9es par un \u00ab\u00a0&\u00a0\u00bb)\r\nExemple : \"Gallo-romain & Fer & Med\"",
- "regexp_pre_filter": null
+ "label": "",
+ "importer_type": 17
}
},
{
@@ -2382,10 +2617,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 11,
- "required": false,
- "importer_type": 17,
"description": "Titre (M., Mme), du responsable d'op\u00e9ration (RO)",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 17
}
},
{
@@ -2393,10 +2629,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 12,
- "required": false,
- "importer_type": 17,
"description": "Pr\u00e9nom du Responsable scientifique (responsable d'op\u00e9ration)",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 17
}
},
{
@@ -2404,10 +2641,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 13,
- "required": false,
- "importer_type": 17,
"description": "Nom du Responsable scientifique (responsable d'op\u00e9ration)",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 17
}
},
{
@@ -2415,10 +2653,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 14,
+ "description": "Rattachement du Responsable scientifique (responsable d'op\u00e9ration)\r\nExemple : \"INRAP\" ou plus pr\u00e9cis \"INRAP Direction interr\u00e9gionale Grand Ouest\" selon votre degr\u00e9 de pr\u00e9cision dans la gestion des rattachements et des organisations.",
+ "regexp_pre_filter": null,
"required": false,
- "importer_type": 17,
- "description": "Rattachement du Responsable scientifique (responsable d'op\u00e9ration)\r\nExemple : \"INRAP\" ou plus pr\u00e9cis \"INRAP Direction interr\u00e9gionale Grand Ouest\" selon votre degr\u00e9 de pr\u00e9cision dans la gestion des rattachements et des organisation.",
- "regexp_pre_filter": null
+ "label": null,
+ "importer_type": 17
}
},
{
@@ -2426,10 +2665,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 15,
+ "description": "Nom de l'op\u00e9rateur (organisation). Peut \u00eatre diff\u00e9rent de l'organisation de rattachement du responsable d'op\u00e9ration.",
+ "regexp_pre_filter": null,
"required": false,
- "importer_type": 17,
- "description": "Nom de l'op\u00e9rateur (organisation)",
- "regexp_pre_filter": null
+ "label": null,
+ "importer_type": 17
}
},
{
@@ -2437,10 +2677,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 16,
- "required": false,
- "importer_type": 17,
"description": "R\u00e9f\u00e9rence de l'op\u00e9rateur (code ou autre r\u00e9f\u00e9rence interne de l'op\u00e9rateur)",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 17
}
},
{
@@ -2448,10 +2689,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 17,
- "required": false,
- "importer_type": 17,
"description": "Titre (M., Mme), du responsable du suivi scientifique",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 17
}
},
{
@@ -2459,10 +2701,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 18,
- "required": false,
- "importer_type": 17,
"description": "Pr\u00e9nom du responsable du suivi scientifique (ex\u00a0: resp. SRA ou pilote de l'op\u00e9ration, mais non responsable de celle-ci)",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 17
}
},
{
@@ -2470,10 +2713,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 19,
- "required": false,
- "importer_type": 17,
"description": "Nom du responsable du suivi scientifique (ex : resp. SRA ou pilote de l'op\u00e9ration, mais non responsable de celle-ci)",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 17
}
},
{
@@ -2481,10 +2725,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 20,
- "required": false,
- "importer_type": 17,
"description": "Rattachement du resp. du suivi scientifique",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 17
}
},
{
@@ -2492,10 +2737,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 21,
- "required": false,
- "importer_type": 17,
"description": "Surface couverte par l'op\u00e9ration (m2)",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 17
}
},
{
@@ -2503,10 +2749,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 22,
- "required": false,
- "importer_type": 17,
"description": "Date de d\u00e9but de l'op\u00e9ration (d\u00e9but du terrain d'ordinaire mais vous pouvez utiliser autre chose)",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 17
}
},
{
@@ -2514,10 +2761,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 23,
- "required": false,
- "importer_type": 17,
"description": "Date de fin de l'op\u00e9ration (fin du terrain d'ordinaire mais vous pouvez utiliser autre chose)",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 17
}
},
{
@@ -2525,10 +2773,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 24,
- "required": false,
- "importer_type": 17,
"description": "Date de cl\u00f4ture (peut-\u00eatre la date de rendu de la documentation, la fin de la recherche associ\u00e9e ou autre) d\u2019ordinaire cela repr\u00e9sente la date \u00e0 partir de laquelle la documentation issue de l'op\u00e9ration n'est plus du ressort du responsable d'op\u00e9ration, mais vous pouvez utiliser autre chose.",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 17
}
},
{
@@ -2536,10 +2785,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 25,
- "required": false,
- "importer_type": 17,
"description": "Date d'avis (ex\u00a0: avis de CIRA ou autre selon votre usage)",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 17
}
},
{
@@ -2547,10 +2797,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 26,
- "required": false,
- "importer_type": 17,
"description": "R\u00e9sultats consid\u00e9r\u00e9s comme n\u00e9gatif (d\u2019ordinaire utilis\u00e9 pour les diagnostics n\u00e9gatifs)",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 17
}
},
{
@@ -2558,10 +2809,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 27,
- "required": false,
- "importer_type": 17,
"description": "Pr\u00e9nom du rapporteur (CIRA ou autre selon votre usage de la notion d'avis)",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 17
}
},
{
@@ -2569,10 +2821,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 28,
- "required": false,
- "importer_type": 17,
"description": "Nom du rapporteur (CIRA ou autre selon votre usage de la notion d'avis)",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 17
}
},
{
@@ -2580,10 +2833,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 29,
- "required": false,
- "importer_type": 17,
"description": "Rattachement rapporteur (organisation)",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 17
}
},
{
@@ -2591,10 +2845,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 30,
- "required": false,
- "importer_type": 17,
"description": "Date limite pr\u00e9vue pour le rendu de la documentation scientifique",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 17
}
},
{
@@ -2602,10 +2857,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 31,
- "required": false,
- "importer_type": 17,
"description": "Documentation re\u00e7ue",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 17
}
},
{
@@ -2613,10 +2869,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 32,
- "required": false,
- "importer_type": 17,
"description": "Date limite pr\u00e9vue pour le rendu du mobilier",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 17
}
},
{
@@ -2624,10 +2881,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 33,
+ "description": "Mobilier re\u00e7u ou livr\u00e9 selon vos usages et proc\u00e9dures",
+ "regexp_pre_filter": null,
"required": false,
- "importer_type": 17,
- "description": "Mobilier re\u00e7u (ou livr\u00e9)",
- "regexp_pre_filter": null
+ "label": null,
+ "importer_type": 17
}
},
{
@@ -2635,10 +2893,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 34,
- "required": false,
- "importer_type": 17,
"description": "Commentaire g\u00e9n\u00e9ral",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 17
}
},
{
@@ -2646,10 +2905,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 35,
- "required": false,
- "importer_type": 17,
"description": "Date de livraison du rapport",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 17
}
},
{
@@ -2657,10 +2917,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 36,
- "required": false,
- "importer_type": 17,
"description": "\u00c9tat de traitement du rapport",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 17
}
},
{
@@ -2668,10 +2929,11 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 37,
- "required": false,
- "importer_type": 17,
"description": "Commentaire sur la documentation scientifique (y compris mobilier)",
- "regexp_pre_filter": null
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 17
}
},
{
@@ -2679,34 +2941,765 @@
"model": "ishtar_common.importercolumn",
"fields": {
"col_number": 38,
+ "description": "Nom du fichier image (jpg ou png), exemple \"IMG_5023.jpg\"\r\nLes fichiers images doivent \u00eatre joints \u00e0 l'import dans un fichier ZIP",
+ "regexp_pre_filter": null,
"required": false,
- "importer_type": 17,
- "description": "Image (nom du fichier)",
- "regexp_pre_filter": null
+ "label": null,
+ "importer_type": 17
}
},
{
- "pk": 46,
- "model": "ishtar_common.importtarget",
+ "pk": 302,
+ "model": "ishtar_common.importercolumn",
"fields": {
- "comment": null,
- "target": "find__conservatory_state",
- "column": 45,
- "formater_type": 22,
- "concat_str": null,
- "regexp_filter": null,
- "concat": false,
- "force_new": false
+ "col_number": 1,
+ "description": "Code PATRIARCHE ou code UNIQUE de l'op\u00e9ration associ\u00e9e",
+ "regexp_pre_filter": null,
+ "required": true,
+ "label": "CODE OPERATION",
+ "importer_type": 18
}
},
{
- "pk": 47,
+ "pk": 311,
+ "model": "ishtar_common.importercolumn",
+ "fields": {
+ "col_number": 2,
+ "description": "Commune (via num\u00e9ro INSEE)",
+ "regexp_pre_filter": null,
+ "required": true,
+ "label": "INSEE",
+ "importer_type": 18
+ }
+ },
+ {
+ "pk": 312,
+ "model": "ishtar_common.importercolumn",
+ "fields": {
+ "col_number": 3,
+ "description": "Parcelle (identifiant externe), soit la section plus la parcelle sans espaces, par exemple \"ZA253\"",
+ "regexp_pre_filter": null,
+ "required": true,
+ "label": "Parcelle",
+ "importer_type": 18
+ }
+ },
+ {
+ "pk": 313,
+ "model": "ishtar_common.importercolumn",
+ "fields": {
+ "col_number": 4,
+ "description": "Ann\u00e9e de la r\u00e9f\u00e9rence cadastrale (exemple : \"1980\")",
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": "Ann\u00e9e cadastre",
+ "importer_type": 18
+ }
+ },
+ {
+ "pk": 314,
+ "model": "ishtar_common.importercolumn",
+ "fields": {
+ "col_number": 5,
+ "description": "Label / Identifiant (externe) de l'UE, ex: \"US 145\", \"Tranch\u00e9e 145\", \"145\", \"St 17\" etc.\r\nDoit \u00eatre unique pour une parcelle donn\u00e9e",
+ "regexp_pre_filter": null,
+ "required": true,
+ "label": "Label UE",
+ "importer_type": 18
+ }
+ },
+ {
+ "pk": 315,
+ "model": "ishtar_common.importercolumn",
+ "fields": {
+ "col_number": 6,
+ "description": "Type d'UE, exemple : \"US\", \"Couche\", \"Tranch\u00e9e\", \"zone\", \"Secteur\", \"Log\", \"Carr\u00e9\", etc.",
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": "Type",
+ "importer_type": 18
+ }
+ },
+ {
+ "pk": 316,
+ "model": "ishtar_common.importercolumn",
+ "fields": {
+ "col_number": 7,
+ "description": "Description (texte, 1000 carac. max.)",
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": "Description",
+ "importer_type": 18
+ }
+ },
+ {
+ "pk": 317,
+ "model": "ishtar_common.importercolumn",
+ "fields": {
+ "col_number": 8,
+ "description": "Commentaire g\u00e9n\u00e9ral (1000 carac. max.)",
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 18
+ }
+ },
+ {
+ "pk": 318,
+ "model": "ishtar_common.importercolumn",
+ "fields": {
+ "col_number": 9,
+ "description": "Taille ou longueur (en m\u00e8tre), exemple \"1.2\", \"12\"",
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 18
+ }
+ },
+ {
+ "pk": 319,
+ "model": "ishtar_common.importercolumn",
+ "fields": {
+ "col_number": 10,
+ "description": "Largeur (en m\u00e8tre), exemple \"1.2\", \"12\"",
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 18
+ }
+ },
+ {
+ "pk": 320,
+ "model": "ishtar_common.importercolumn",
+ "fields": {
+ "col_number": 11,
+ "description": "\u00c9paisseur (en m\u00e8tre), exemple \"0.2\", \"2\"",
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 18
+ }
+ },
+ {
+ "pk": 321,
+ "model": "ishtar_common.importercolumn",
+ "fields": {
+ "col_number": 12,
+ "description": "Profondeur (en m\u00e8tre), exemple \"0.2\", \"2\"",
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 18
+ }
+ },
+ {
+ "pk": 322,
+ "model": "ishtar_common.importercolumn",
+ "fields": {
+ "col_number": 13,
+ "description": "Lieu, description textuelle de la localisation exemple : \"Au pied de l'arbre du P\u00e8re Jahouen\", \"En limite nord de la parcelle\", etc.",
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 18
+ }
+ },
+ {
+ "pk": 323,
+ "model": "ishtar_common.importercolumn",
+ "fields": {
+ "col_number": 14,
+ "description": "Contient ou non du mobilier (oui/non)",
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 18
+ }
+ },
+ {
+ "pk": 324,
+ "model": "ishtar_common.importercolumn",
+ "fields": {
+ "col_number": 15,
+ "description": "Nom du fichier image (jpg ou png), exemple \"IMG_5023.jpg\".\r\nLes fichiers images doivent \u00eatre joints \u00e0 l'import dans un fichier ZIP",
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 18
+ }
+ },
+ {
+ "pk": 325,
+ "model": "ishtar_common.importercolumn",
+ "fields": {
+ "col_number": 16,
+ "description": "Chronologies associ\u00e9es (plusieurs possibles s\u00e9par\u00e9es par &), exemple : \"Gallo-romain & M\u00e9di\u00e9val\", \"GR&MED\", \"M\u00e9solithique final & M\u00e9so moyen & Epipal\", etc.",
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 18
+ }
+ },
+ {
+ "pk": 326,
+ "model": "ishtar_common.importercolumn",
+ "fields": {
+ "col_number": 17,
+ "description": "Commentaire sur les datations (texte 1000 carac. max.), exemple : \"IIe - IIIe s.\", \"fin XVe ou plus tard\", etc.",
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 18
+ }
+ },
+ {
+ "pk": 327,
+ "model": "ishtar_common.importercolumn",
+ "fields": {
+ "col_number": 18,
+ "description": "Description du remplissage, 1000 carac. max. exemple \"Limons argileux brun riche en charbons\"",
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 18
+ }
+ },
+ {
+ "pk": 328,
+ "model": "ishtar_common.importercolumn",
+ "fields": {
+ "col_number": 19,
+ "description": "Interpr\u00e9tation, texte 1000 carac. max., exemple \"Mur de cl\u00f4ture\", \"Sol couvert d'une mosa\u00efque, \"Pal\u00e9osol du d\u00e9but de l'Holoc\u00e8ne\", \"Four de r\u00e9duction de minerai de fer\", \"TP\", etc.",
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": "Interpr\u00e9tation",
+ "importer_type": 18
+ }
+ },
+ {
+ "pk": 329,
+ "model": "ishtar_common.importercolumn",
+ "fields": {
+ "col_number": 20,
+ "description": "Activit\u00e9, r\u00e9f\u00e9rence \u00e0 des types, par exemple : \"Naturelle\", \"Construction\", etc.",
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": "Type d'activit\u00e9",
+ "importer_type": 18
+ }
+ },
+ {
+ "pk": 330,
+ "model": "ishtar_common.importercolumn",
+ "fields": {
+ "col_number": 21,
+ "description": "Identification (type), par exemple \"Niveau d'occupation\", \"Mur\", \"Colluvions\", \"Chablis\", etc.",
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": "Identification (type)",
+ "importer_type": 18
+ }
+ },
+ {
+ "pk": 331,
+ "model": "ishtar_common.importercolumn",
+ "fields": {
+ "col_number": 22,
+ "description": "Terminus ante quem, limite temporelle avant laquelle l'UE s'est form\u00e9e, ici sous la forme de valeurs enti\u00e8res, exemple : \"322\", \"-45\", etc.",
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": "TAQ",
+ "importer_type": 18
+ }
+ },
+ {
+ "pk": 332,
+ "model": "ishtar_common.importercolumn",
+ "fields": {
+ "col_number": 23,
+ "description": "Terminus post quem, limite temporelle apr\u00e8s laquelle l'UE s'est form\u00e9e, ici sous la forme de valeurs enti\u00e8res, exemple : \"322\", \"-45\", etc.",
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": "TPQ",
+ "importer_type": 18
+ }
+ },
+ {
+ "pk": 333,
+ "model": "ishtar_common.importercolumn",
+ "fields": {
+ "col_number": 24,
+ "description": "Terminus ante quem estim\u00e9e, limite temporelle avant laquelle l'UE s'est form\u00e9e, ici sous la forme de valeurs enti\u00e8res, exemple : \"322\", \"-45\", etc.",
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": "TAQ estim\u00e9e",
+ "importer_type": 18
+ }
+ },
+ {
+ "pk": 334,
+ "model": "ishtar_common.importercolumn",
+ "fields": {
+ "col_number": 25,
+ "description": "Terminus post quem estim\u00e9e, limite temporelle avant laquelle l'UE s'est form\u00e9e, ici sous la forme de valeurs enti\u00e8res, exemple : \"322\", \"-45\", etc.",
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": "TPQ estim\u00e9e",
+ "importer_type": 18
+ }
+ },
+ {
+ "pk": 303,
+ "model": "ishtar_common.importercolumn",
+ "fields": {
+ "col_number": 1,
+ "description": "Code PATRIARCHE\r\n ou\r\n code num\u00e9rique (entier) UNIQUE pour une op\u00e9ration",
+ "regexp_pre_filter": null,
+ "required": true,
+ "label": "CODE OPERATION",
+ "importer_type": 19
+ }
+ },
+ {
+ "pk": 304,
+ "model": "ishtar_common.importercolumn",
+ "fields": {
+ "col_number": 2,
+ "description": "Commune (via num\u00e9ro INSEE)",
+ "regexp_pre_filter": 2,
+ "required": true,
+ "label": null,
+ "importer_type": 19
+ }
+ },
+ {
+ "pk": 305,
+ "model": "ishtar_common.importercolumn",
+ "fields": {
+ "col_number": 3,
+ "description": "Identifiant externe",
+ "regexp_pre_filter": null,
+ "required": true,
+ "label": null,
+ "importer_type": 19
+ }
+ },
+ {
+ "pk": 306,
+ "model": "ishtar_common.importercolumn",
+ "fields": {
+ "col_number": 4,
+ "description": "Section (ex : \"ZA\"), maximum 4 caract\u00e8res",
+ "regexp_pre_filter": null,
+ "required": true,
+ "label": null,
+ "importer_type": 19
+ }
+ },
+ {
+ "pk": 307,
+ "model": "ishtar_common.importercolumn",
+ "fields": {
+ "col_number": 5,
+ "description": "Num\u00e9ro de la parcelle (ex: \"253\"), mais peut accueillir une r\u00e9f\u00e9rence sous la forme de caract\u00e8res (maximum 6)",
+ "regexp_pre_filter": null,
+ "required": true,
+ "label": null,
+ "importer_type": 19
+ }
+ },
+ {
+ "pk": 308,
+ "model": "ishtar_common.importercolumn",
+ "fields": {
+ "col_number": 6,
+ "description": "Ann\u00e9e de la r\u00e9f\u00e9rence cadastrale (exemple : \"1980\")",
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 19
+ }
+ },
+ {
+ "pk": 309,
+ "model": "ishtar_common.importercolumn",
+ "fields": {
+ "col_number": 7,
+ "description": "Lieu dit ou adresse associ\u00e9s \u00e0 la parcelle",
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 19
+ }
+ },
+ {
+ "pk": 310,
+ "model": "ishtar_common.importercolumn",
+ "fields": {
+ "col_number": 8,
+ "description": "Parcelle dans le domaine public ou non (binaire, oui/non)",
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": null,
+ "importer_type": 19
+ }
+ },
+ {
+ "pk": 336,
+ "model": "ishtar_common.importercolumn",
+ "fields": {
+ "col_number": 1,
+ "description": "Code PATRIARCHE ou code num\u00e9rique (entier) UNIQUE pour une op\u00e9ration.",
+ "regexp_pre_filter": null,
+ "required": true,
+ "label": "CODE OPERATION",
+ "importer_type": 20
+ }
+ },
+ {
+ "pk": 337,
+ "model": "ishtar_common.importercolumn",
+ "fields": {
+ "col_number": 2,
+ "description": "Commune (via num\u00e9ro INSEE).",
+ "regexp_pre_filter": null,
+ "required": true,
+ "label": "INSEE",
+ "importer_type": 20
+ }
+ },
+ {
+ "pk": 338,
+ "model": "ishtar_common.importercolumn",
+ "fields": {
+ "col_number": 3,
+ "description": "Parcelle (identifiant externe), soit la section plus la parcelle sans espaces. Exemple : \"ZA253\".",
+ "regexp_pre_filter": null,
+ "required": true,
+ "label": "Parcelle",
+ "importer_type": 20
+ }
+ },
+ {
+ "pk": 339,
+ "model": "ishtar_common.importercolumn",
+ "fields": {
+ "col_number": 4,
+ "description": "Label / Identifiant (externe) de l'UE. Exemple : \"US 145\", \"Tranch\u00e9e 145\", \"145\", \"St 17\", etc. Doit \u00eatre unique pour une parcelle donn\u00e9e.",
+ "regexp_pre_filter": null,
+ "required": true,
+ "label": "Label UE",
+ "importer_type": 20
+ }
+ },
+ {
+ "pk": 340,
+ "model": "ishtar_common.importercolumn",
+ "fields": {
+ "col_number": 5,
+ "description": "Identifiant libre pour le mobilier. Exemple : \"12\", \"Lot 24\", \"Sac vert\", etc.\r\nDoit \u00eatre unique \u00e0 l'\u00e9chelle de l'UE associ\u00e9e.",
+ "regexp_pre_filter": null,
+ "required": true,
+ "label": "Label mobilier",
+ "importer_type": 20
+ }
+ },
+ {
+ "pk": 341,
+ "model": "ishtar_common.importercolumn",
+ "fields": {
+ "col_number": 6,
+ "description": "Identifiant pr\u00e9c\u00e9dent, li\u00e9 \u00e0 une base de donn\u00e9e ou un autre mode d'enregistrement. Exemple : \"400.01.05\", \"Beau biface\", \"inv. 4523\", \"Iso.4220\", etc.",
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": "Identifiant pr\u00e9c\u00e9dent",
+ "importer_type": 20
+ }
+ },
+ {
+ "pk": 343,
+ "model": "ishtar_common.importercolumn",
+ "fields": {
+ "col_number": 7,
+ "description": "R\u00e9f\u00e9rence du point topo, d'ordinaire un entier mais peut \u00eatre autre chose. Champ texte, max. 120 caract\u00e8res. Exemple : \"7220\", \"pt. 72\", etc.\r\n\r\nNON LI\u00c9 POUR L'INSTANT.",
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": "Ref. point topo",
+ "importer_type": 20
+ }
+ },
+ {
+ "pk": 342,
+ "model": "ishtar_common.importercolumn",
+ "fields": {
+ "col_number": 8,
+ "description": "Description du mobilier, objet ou lot. Champ texte, max. 1000 caract\u00e8res. Exemple : \"Fibule aviforme \u00e0 roustade bipolaire\".",
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": "Description",
+ "importer_type": 20
+ }
+ },
+ {
+ "pk": 344,
+ "model": "ishtar_common.importercolumn",
+ "fields": {
+ "col_number": 9,
+ "description": "D\u00e9finit si on enregistre ici un objet seul (parfois appel\u00e9 Isolation) ou un lot d'objets. Exemple : \"lot\", \"objet\", \"Iso\", \"vrac\", etc.\r\nEst ici traduit en binaire : \"objet\" ou \"lot\".",
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": "Lot ou objet",
+ "importer_type": 20
+ }
+ },
+ {
+ "pk": 345,
+ "model": "ishtar_common.importercolumn",
+ "fields": {
+ "col_number": 10,
+ "description": "D\u00e9finit si un objet est complet ou non. Exemple : \"complet\", \"est complet\", \"incomplet\".\r\nEst ici traduit en binaire : \"complet\" ou \"incomplet\". ",
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": "Compl\u00e9tude",
+ "importer_type": 20
+ }
+ },
+ {
+ "pk": 346,
+ "model": "ishtar_common.importercolumn",
+ "fields": {
+ "col_number": 11,
+ "description": "Type(s) de mat\u00e9riau(x) s\u00e9par\u00e9s par des \"&\". Exemple : \"m\u00e9tal & os\", \"LT\", \"Min\u00e9ral\", \"Granito\u00efde & Basalte & Ardoise\".",
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": "Materiaux(x)",
+ "importer_type": 20
+ }
+ },
+ {
+ "pk": 347,
+ "model": "ishtar_common.importercolumn",
+ "fields": {
+ "col_number": 12,
+ "description": "\u00c9tat de conservation. Exemple : \"Instable\", \"Stable\", \"Inconnu\", etc.",
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": "\u00c9tat de conservation",
+ "importer_type": 20
+ }
+ },
+ {
+ "pk": 348,
+ "model": "ishtar_common.importercolumn",
+ "fields": {
+ "col_number": 13,
+ "description": "Commentaire relatif \u00e0 la conservation. Champ texte, max. 1000 caract\u00e8res. Exemple : \"Devrait \u00eatre conserv\u00e9 dans une chambre climatis\u00e9e\", \"Ne sera plus qu'une poudre, si on ne s'en occupe pas sous peu\", \" \u00e0 jeter\", etc.",
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": "Commentaire conservation",
+ "importer_type": 20
+ }
+ },
+ {
+ "pk": 349,
+ "model": "ishtar_common.importercolumn",
+ "fields": {
+ "col_number": 14,
+ "description": "Type(s) d'objet(s), s\u00e9par\u00e9s par des \"&\". Exemple : \"tesson & charbon\", \"os & m\u00e9tal\", \"faune\", \"fibule & bague\", \"lame & lamelle\", \"\u00e9clat & nucl\u00e9us\", etc.",
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": "Type(s) d'objet(s)",
+ "importer_type": 20
+ }
+ },
+ {
+ "pk": 350,
+ "model": "ishtar_common.importercolumn",
+ "fields": {
+ "col_number": 15,
+ "description": "Type(s) d'actions de conservation \u00e0 mener, s\u00e9par\u00e9s par des \"&\". Exemple : \"\u00c0 restaurer\", \"reconditionnement\", \"\u00c0 reconditionner & \u00c0 stabiliser\"",
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": "Type(s) d'actions de conservation \u00e0 mener",
+ "importer_type": 20
+ }
+ },
+ {
+ "pk": 351,
+ "model": "ishtar_common.importercolumn",
+ "fields": {
+ "col_number": 16,
+ "description": "Type(s) d'int\u00e9r\u00eat scientifique ou d'int\u00e9grit\u00e9, s\u00e9par\u00e9s par des \"&\". Exemple : \"Arch\u00e9ologiquement complet\", \"absent\", \"perdu\", etc.\r\nPeut \u00e9galement qualifier (selon votre usage) des qualit\u00e9s de fragmentation : \"proximal\", \"distal\", etc.",
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": "Type(s) d'int\u00e9grit\u00e9(s) et/ou int\u00e9r\u00eat(s)",
+ "importer_type": 20
+ }
+ },
+ {
+ "pk": 352,
+ "model": "ishtar_common.importercolumn",
+ "fields": {
+ "col_number": 17,
+ "description": "Type(s) de remarquabilit\u00e9(s), s\u00e9par\u00e9s par des \"&\". Exemple : \"Mus\u00e9e\", \"Publication\", \"Tessonier & Publication\", etc.",
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": "Type(s) de remarqualibit\u00e9(s)",
+ "importer_type": 20
+ }
+ },
+ {
+ "pk": 353,
+ "model": "ishtar_common.importercolumn",
+ "fields": {
+ "col_number": 18,
+ "description": "Longueur en cm (nombre d\u00e9cimal).",
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": "Longueur (cm)",
+ "importer_type": 20
+ }
+ },
+ {
+ "pk": 354,
+ "model": "ishtar_common.importercolumn",
+ "fields": {
+ "col_number": 19,
+ "description": "Largeur en cm (nombre d\u00e9cimal).",
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": "Largeur (cm)",
+ "importer_type": 20
+ }
+ },
+ {
+ "pk": 355,
+ "model": "ishtar_common.importercolumn",
+ "fields": {
+ "col_number": 20,
+ "description": "Hauteur en cm (nombre d\u00e9cimal).",
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": "Hauteur (cm)",
+ "importer_type": 20
+ }
+ },
+ {
+ "pk": 356,
+ "model": "ishtar_common.importercolumn",
+ "fields": {
+ "col_number": 21,
+ "description": "Diam\u00e8tre en cm (nombre d\u00e9cimal).",
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": "Diam\u00e8tre (cm)",
+ "importer_type": 20
+ }
+ },
+ {
+ "pk": 357,
+ "model": "ishtar_common.importercolumn",
+ "fields": {
+ "col_number": 22,
+ "description": "Commentaire permettant de donner des pr\u00e9cisions (ou d'importer des donn\u00e9es mixtes). Champ texte, max. 1000 caract\u00e8res. Exemple : \"18 x 12 x 5\", \"col de 43 mm\", etc.",
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": "Commentaire / Pr\u00e9cisions sur les dimensions ",
+ "importer_type": 20
+ }
+ },
+ {
+ "pk": 358,
+ "model": "ishtar_common.importercolumn",
+ "fields": {
+ "col_number": 23,
+ "description": "Nombre d'objet(s) li\u00e9(s) \u00e0 cet enregistrement (entier). Exemple : \"12\".\r\nAttention, ce champ n'est pas contraint par l'information de type OBJET/LOT (colonne n\u00b09).",
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": "Nombre",
+ "importer_type": 20
+ }
+ },
+ {
+ "pk": 359,
+ "model": "ishtar_common.importercolumn",
+ "fields": {
+ "col_number": 24,
+ "description": "Marquage visible sur le mobilier. Champ texte, max. 1000 caract\u00e8res. Exemple : \"id1234 la Roche aux F\u00e9es\", \"MTX-45\", etc.\r\nCeci reproduit d'ordinaire un marquage r\u00e9alis\u00e9 par un arch\u00e9ologue. Il ne s'agit pas ici de reproduire une \u00e9pigraphie ou tout autre inscription arch\u00e9ologique (graffito, d\u00e9dicaces, defixio, etc.) , mais vous pouvez l'utiliser pour cela si vous n'avez pas \u00e0 utiliser de marquage arch\u00e9ologique.",
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": "Marque",
+ "importer_type": 20
+ }
+ },
+ {
+ "pk": 360,
+ "model": "ishtar_common.importercolumn",
+ "fields": {
+ "col_number": 25,
+ "description": "Commentaire g\u00e9n\u00e9ral libre. Champ texte, max. 2000 caract\u00e8res. Exemple : \"habillage en nid d'abeille, poli g\u00e9n\u00e9ralis\u00e9, encoche emmanchement lat\u00e9ral ouvert sur la face sup\u00e9rieure\", \"1 bord + bec tubulaire\", \"fibule de Langton Down\", etc.",
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": "Commentaire g\u00e9n\u00e9ral",
+ "importer_type": 20
+ }
+ },
+ {
+ "pk": 361,
+ "model": "ishtar_common.importercolumn",
+ "fields": {
+ "col_number": 26,
+ "description": "Commentaire g\u00e9n\u00e9ral sur les datations, si besoin. Champ texte, max. 1000 caract\u00e8res. Exemple : \"plut\u00f4t fin IIe s. ou d\u00e9but IIIe s.\", \"Datation \u00e0 pr\u00e9ciser avant publication\", \" Datation rapide faite par M. Dupont\", etc.",
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": "Commentaire g\u00e9n\u00e9ral sur les datations",
+ "importer_type": 20
+ }
+ },
+ {
+ "pk": 362,
+ "model": "ishtar_common.importercolumn",
+ "fields": {
+ "col_number": 27,
+ "description": "Valeur estim\u00e9e (\u20ac), sous la forme d'un nombre d\u00e9cimal. Exemple : \"4500\", \"0.2\", etc.\r\nUtile essentiellement pour les probl\u00e8mes de partage, vente, assurance etc.",
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": "Valeur estim\u00e9e",
+ "importer_type": 20
+ }
+ },
+ {
+ "pk": 363,
+ "model": "ishtar_common.importercolumn",
+ "fields": {
+ "col_number": 28,
+ "description": "Nom exact du fichier image, sous la forme XXXXX.jpg.\r\nAttention au respect strict des caract\u00e8res et majuscules lors d'un import de ce type, \".JPG\" ou \"*.jpg\", etc.\r\nExemple : \"P1030831.JPG\", \"IMG_6485.JPG\", \"fibule.jpg\", etc.\r\nLors de l'import il faut ajouter ces images sous la forme d'un fichier zip (joint au csv import\u00e9) pour que les images soient automatiquement int\u00e9gr\u00e9es.\r\n",
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": "Image",
+ "importer_type": 20
+ }
+ },
+ {
+ "pk": 364,
+ "model": "ishtar_common.importercolumn",
+ "fields": {
+ "col_number": 29,
+ "description": "Chronologies associ\u00e9es (plusieurs possibles s\u00e9par\u00e9es par &). Exemple : \"Gallo-romain & M\u00e9di\u00e9val\", \"GR&MED\", \"M\u00e9solithique final & M\u00e9so moyen & Epipal\", etc.",
+ "regexp_pre_filter": null,
+ "required": false,
+ "label": "P\u00e9riodes",
+ "importer_type": 20
+ }
+ },
+ {
+ "pk": 46,
"model": "ishtar_common.importtarget",
"fields": {
"comment": null,
- "target": "find__preservation_to_considers",
- "column": 46,
- "formater_type": 23,
+ "target": "find__conservatory_state",
+ "column": 45,
+ "formater_type": 22,
"concat_str": null,
"regexp_filter": null,
"concat": false,
@@ -3610,6 +4603,370 @@
}
},
{
+ "pk": 47,
+ "model": "ishtar_common.importtarget",
+ "fields": {
+ "comment": "",
+ "target": "find__preservation_to_considers",
+ "column": 46,
+ "formater_type": 23,
+ "concat_str": "",
+ "regexp_filter": null,
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
+ "pk": 325,
+ "model": "ishtar_common.importtarget",
+ "fields": {
+ "comment": "",
+ "target": "image",
+ "column": 301,
+ "formater_type": 27,
+ "concat_str": "",
+ "regexp_filter": null,
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
+ "pk": 328,
+ "model": "ishtar_common.importtarget",
+ "fields": {
+ "comment": "",
+ "target": "town__numero_insee",
+ "column": 304,
+ "formater_type": 11,
+ "concat_str": "",
+ "regexp_filter": null,
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
+ "pk": 331,
+ "model": "ishtar_common.importtarget",
+ "fields": {
+ "comment": "",
+ "target": "parcel_number",
+ "column": 307,
+ "formater_type": 8,
+ "concat_str": "",
+ "regexp_filter": null,
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
+ "pk": 334,
+ "model": "ishtar_common.importtarget",
+ "fields": {
+ "comment": "",
+ "target": "public_domain",
+ "column": 310,
+ "formater_type": 19,
+ "concat_str": "",
+ "regexp_filter": null,
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
+ "pk": 335,
+ "model": "ishtar_common.importtarget",
+ "fields": {
+ "comment": "",
+ "target": "parcel__external_id",
+ "column": 311,
+ "formater_type": 28,
+ "concat_str": "",
+ "regexp_filter": null,
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
+ "pk": 338,
+ "model": "ishtar_common.importtarget",
+ "fields": {
+ "comment": "",
+ "target": "remains",
+ "column": 272,
+ "formater_type": 41,
+ "concat_str": "",
+ "regexp_filter": null,
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
+ "pk": 341,
+ "model": "ishtar_common.importtarget",
+ "fields": {
+ "comment": "",
+ "target": "description",
+ "column": 316,
+ "formater_type": 16,
+ "concat_str": "",
+ "regexp_filter": null,
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
+ "pk": 344,
+ "model": "ishtar_common.importtarget",
+ "fields": {
+ "comment": "",
+ "target": "width",
+ "column": 319,
+ "formater_type": 21,
+ "concat_str": "",
+ "regexp_filter": null,
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
+ "pk": 347,
+ "model": "ishtar_common.importtarget",
+ "fields": {
+ "comment": "",
+ "target": "location",
+ "column": 322,
+ "formater_type": 16,
+ "concat_str": "",
+ "regexp_filter": null,
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
+ "pk": 349,
+ "model": "ishtar_common.importtarget",
+ "fields": {
+ "comment": "",
+ "target": "image",
+ "column": 324,
+ "formater_type": 27,
+ "concat_str": "",
+ "regexp_filter": null,
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
+ "pk": 350,
+ "model": "ishtar_common.importtarget",
+ "fields": {
+ "comment": "",
+ "target": "datings__period",
+ "column": 325,
+ "formater_type": 6,
+ "concat_str": "",
+ "regexp_filter": null,
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
+ "pk": 353,
+ "model": "ishtar_common.importtarget",
+ "fields": {
+ "comment": "",
+ "target": "interpretation",
+ "column": 328,
+ "formater_type": 16,
+ "concat_str": "",
+ "regexp_filter": null,
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
+ "pk": 356,
+ "model": "ishtar_common.importtarget",
+ "fields": {
+ "comment": "",
+ "target": "taq",
+ "column": 331,
+ "formater_type": 1,
+ "concat_str": "",
+ "regexp_filter": null,
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
+ "pk": 359,
+ "model": "ishtar_common.importtarget",
+ "fields": {
+ "comment": "",
+ "target": "tpq_estimated",
+ "column": 334,
+ "formater_type": 1,
+ "concat_str": "",
+ "regexp_filter": null,
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
+ "pk": 362,
+ "model": "ishtar_common.importtarget",
+ "fields": {
+ "comment": "",
+ "target": "context_record__external_id",
+ "column": 337,
+ "formater_type": 28,
+ "concat_str": "",
+ "regexp_filter": null,
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
+ "pk": 365,
+ "model": "ishtar_common.importtarget",
+ "fields": {
+ "comment": "",
+ "target": "label",
+ "column": 340,
+ "formater_type": 3,
+ "concat_str": "",
+ "regexp_filter": null,
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
+ "pk": 368,
+ "model": "ishtar_common.importtarget",
+ "fields": {
+ "comment": "",
+ "target": "is_isolated",
+ "column": 344,
+ "formater_type": 19,
+ "concat_str": "",
+ "regexp_filter": null,
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
+ "pk": 371,
+ "model": "ishtar_common.importtarget",
+ "fields": {
+ "comment": "",
+ "target": "find__conservatory_state",
+ "column": 347,
+ "formater_type": 22,
+ "concat_str": "",
+ "regexp_filter": null,
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
+ "pk": 374,
+ "model": "ishtar_common.importtarget",
+ "fields": {
+ "comment": "",
+ "target": "find__preservation_to_considers",
+ "column": 350,
+ "formater_type": 23,
+ "concat_str": "",
+ "regexp_filter": null,
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
+ "pk": 377,
+ "model": "ishtar_common.importtarget",
+ "fields": {
+ "comment": "",
+ "target": "find__length",
+ "column": 353,
+ "formater_type": 21,
+ "concat_str": "",
+ "regexp_filter": null,
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
+ "pk": 379,
+ "model": "ishtar_common.importtarget",
+ "fields": {
+ "comment": "",
+ "target": "find__height",
+ "column": 355,
+ "formater_type": 21,
+ "concat_str": "",
+ "regexp_filter": null,
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
+ "pk": 382,
+ "model": "ishtar_common.importtarget",
+ "fields": {
+ "comment": "",
+ "target": "find__find_number",
+ "column": 358,
+ "formater_type": 1,
+ "concat_str": "",
+ "regexp_filter": null,
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
+ "pk": 384,
+ "model": "ishtar_common.importtarget",
+ "fields": {
+ "comment": "",
+ "target": "find__comment",
+ "column": 360,
+ "formater_type": 33,
+ "concat_str": "",
+ "regexp_filter": null,
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
+ "pk": 385,
+ "model": "ishtar_common.importtarget",
+ "fields": {
+ "comment": "",
+ "target": "find__dating_comment",
+ "column": 361,
+ "formater_type": 16,
+ "concat_str": "",
+ "regexp_filter": null,
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
+ "pk": 388,
+ "model": "ishtar_common.importtarget",
+ "fields": {
+ "comment": "",
+ "target": "find__datings__period",
+ "column": 364,
+ "formater_type": 6,
+ "concat_str": "",
+ "regexp_filter": null,
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
"pk": 38,
"model": "ishtar_common.importtarget",
"fields": {
@@ -3680,20 +5037,6 @@
}
},
{
- "pk": 297,
- "model": "ishtar_common.importtarget",
- "fields": {
- "comment": "",
- "target": "archaeological_sites__reference",
- "column": 271,
- "formater_type": 40,
- "concat_str": "",
- "regexp_filter": null,
- "concat": false,
- "force_new": false
- }
- },
- {
"pk": 303,
"model": "ishtar_common.importtarget",
"fields": {
@@ -3806,6 +5149,314 @@
}
},
{
+ "pk": 326,
+ "model": "ishtar_common.importtarget",
+ "fields": {
+ "comment": "",
+ "target": "operation__code_patriarche",
+ "column": 302,
+ "formater_type": 1,
+ "concat_str": "",
+ "regexp_filter": null,
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
+ "pk": 329,
+ "model": "ishtar_common.importtarget",
+ "fields": {
+ "comment": "",
+ "target": "external_id",
+ "column": 305,
+ "formater_type": 11,
+ "concat_str": "",
+ "regexp_filter": null,
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
+ "pk": 332,
+ "model": "ishtar_common.importtarget",
+ "fields": {
+ "comment": "",
+ "target": "year",
+ "column": 308,
+ "formater_type": 14,
+ "concat_str": "",
+ "regexp_filter": null,
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
+ "pk": 336,
+ "model": "ishtar_common.importtarget",
+ "fields": {
+ "comment": "",
+ "target": "parcel__external_id",
+ "column": 312,
+ "formater_type": 11,
+ "concat_str": "",
+ "regexp_filter": null,
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
+ "pk": 339,
+ "model": "ishtar_common.importtarget",
+ "fields": {
+ "comment": "",
+ "target": "label",
+ "column": 314,
+ "formater_type": 3,
+ "concat_str": "",
+ "regexp_filter": null,
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
+ "pk": 342,
+ "model": "ishtar_common.importtarget",
+ "fields": {
+ "comment": "",
+ "target": "comment",
+ "column": 317,
+ "formater_type": 16,
+ "concat_str": "",
+ "regexp_filter": null,
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
+ "pk": 345,
+ "model": "ishtar_common.importtarget",
+ "fields": {
+ "comment": "",
+ "target": "thickness",
+ "column": 320,
+ "formater_type": 21,
+ "concat_str": "",
+ "regexp_filter": null,
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
+ "pk": 348,
+ "model": "ishtar_common.importtarget",
+ "fields": {
+ "comment": "",
+ "target": "has_furniture",
+ "column": 323,
+ "formater_type": 19,
+ "concat_str": "",
+ "regexp_filter": null,
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
+ "pk": 351,
+ "model": "ishtar_common.importtarget",
+ "fields": {
+ "comment": "",
+ "target": "datings_comment",
+ "column": 326,
+ "formater_type": 16,
+ "concat_str": "",
+ "regexp_filter": null,
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
+ "pk": 354,
+ "model": "ishtar_common.importtarget",
+ "fields": {
+ "comment": "",
+ "target": "activity",
+ "column": 329,
+ "formater_type": 42,
+ "concat_str": "",
+ "regexp_filter": null,
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
+ "pk": 357,
+ "model": "ishtar_common.importtarget",
+ "fields": {
+ "comment": "",
+ "target": "tpq",
+ "column": 332,
+ "formater_type": 1,
+ "concat_str": "",
+ "regexp_filter": null,
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
+ "pk": 360,
+ "model": "ishtar_common.importtarget",
+ "fields": {
+ "comment": "",
+ "target": "old_code",
+ "column": 335,
+ "formater_type": 30,
+ "concat_str": "",
+ "regexp_filter": null,
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
+ "pk": 363,
+ "model": "ishtar_common.importtarget",
+ "fields": {
+ "comment": "",
+ "target": "context_record__external_id",
+ "column": 338,
+ "formater_type": 35,
+ "concat_str": "",
+ "regexp_filter": null,
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
+ "pk": 366,
+ "model": "ishtar_common.importtarget",
+ "fields": {
+ "comment": "",
+ "target": "find__previous_id",
+ "column": 341,
+ "formater_type": 3,
+ "concat_str": "",
+ "regexp_filter": null,
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
+ "pk": 372,
+ "model": "ishtar_common.importtarget",
+ "fields": {
+ "comment": "",
+ "target": "find__conservatory_comment",
+ "column": 348,
+ "formater_type": 16,
+ "concat_str": "",
+ "regexp_filter": null,
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
+ "pk": 369,
+ "model": "ishtar_common.importtarget",
+ "fields": {
+ "comment": "",
+ "target": "find__is_complete",
+ "column": 345,
+ "formater_type": 19,
+ "concat_str": "",
+ "regexp_filter": null,
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
+ "pk": 378,
+ "model": "ishtar_common.importtarget",
+ "fields": {
+ "comment": "",
+ "target": "find__width",
+ "column": 354,
+ "formater_type": 21,
+ "concat_str": "",
+ "regexp_filter": null,
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
+ "pk": 375,
+ "model": "ishtar_common.importtarget",
+ "fields": {
+ "comment": "",
+ "target": "find__integrities",
+ "column": 351,
+ "formater_type": 43,
+ "concat_str": "",
+ "regexp_filter": null,
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
+ "pk": 380,
+ "model": "ishtar_common.importtarget",
+ "fields": {
+ "comment": "",
+ "target": "find__diameter",
+ "column": 356,
+ "formater_type": 21,
+ "concat_str": "",
+ "regexp_filter": null,
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
+ "pk": 383,
+ "model": "ishtar_common.importtarget",
+ "fields": {
+ "comment": "",
+ "target": "find__mark",
+ "column": 359,
+ "formater_type": 16,
+ "concat_str": "",
+ "regexp_filter": null,
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
+ "pk": 386,
+ "model": "ishtar_common.importtarget",
+ "fields": {
+ "comment": "",
+ "target": "find__estimated_value",
+ "column": 362,
+ "formater_type": 21,
+ "concat_str": "",
+ "regexp_filter": null,
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
+ "pk": 297,
+ "model": "ishtar_common.importtarget",
+ "fields": {
+ "comment": "",
+ "target": "archaeological_sites__reference",
+ "column": 271,
+ "formater_type": 45,
+ "concat_str": "",
+ "regexp_filter": null,
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
"pk": 61,
"model": "ishtar_common.importtarget",
"fields": {
@@ -5500,13 +7151,153 @@
}
},
{
+ "pk": 295,
+ "model": "ishtar_common.importtarget",
+ "fields": {
+ "comment": "",
+ "target": "associated_file__external_id",
+ "column": 270,
+ "formater_type": 35,
+ "concat_str": "",
+ "regexp_filter": null,
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
+ "pk": 298,
+ "model": "ishtar_common.importtarget",
+ "fields": {
+ "comment": "",
+ "target": "scientist__title",
+ "column": 274,
+ "formater_type": 11,
+ "concat_str": "",
+ "regexp_filter": null,
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
+ "pk": 304,
+ "model": "ishtar_common.importtarget",
+ "fields": {
+ "comment": "",
+ "target": "in_charge__title",
+ "column": 280,
+ "formater_type": 11,
+ "concat_str": "",
+ "regexp_filter": null,
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
+ "pk": 310,
+ "model": "ishtar_common.importtarget",
+ "fields": {
+ "comment": "",
+ "target": "excavation_end_date",
+ "column": 286,
+ "formater_type": 25,
+ "concat_str": "",
+ "regexp_filter": null,
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
+ "pk": 313,
+ "model": "ishtar_common.importtarget",
+ "fields": {
+ "comment": "",
+ "target": "negative_result",
+ "column": 289,
+ "formater_type": 19,
+ "concat_str": "",
+ "regexp_filter": null,
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
+ "pk": 319,
+ "model": "ishtar_common.importtarget",
+ "fields": {
+ "comment": "",
+ "target": "finds_deadline",
+ "column": 295,
+ "formater_type": 25,
+ "concat_str": "",
+ "regexp_filter": null,
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
+ "pk": 322,
+ "model": "ishtar_common.importtarget",
+ "fields": {
+ "comment": "",
+ "target": "report_delivery_date",
+ "column": 298,
+ "formater_type": 25,
+ "concat_str": "",
+ "regexp_filter": null,
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
+ "pk": 327,
+ "model": "ishtar_common.importtarget",
+ "fields": {
+ "comment": "",
+ "target": "code_patriarche",
+ "column": 303,
+ "formater_type": 1,
+ "concat_str": "",
+ "regexp_filter": null,
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
+ "pk": 330,
+ "model": "ishtar_common.importtarget",
+ "fields": {
+ "comment": "",
+ "target": "section",
+ "column": 306,
+ "formater_type": 7,
+ "concat_str": "",
+ "regexp_filter": null,
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
+ "pk": 333,
+ "model": "ishtar_common.importtarget",
+ "fields": {
+ "comment": "",
+ "target": "address",
+ "column": 309,
+ "formater_type": 10,
+ "concat_str": "",
+ "regexp_filter": null,
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
"pk": 292,
"model": "ishtar_common.importtarget",
"fields": {
"comment": "",
"target": "year",
"column": 267,
- "formater_type": 1,
+ "formater_type": 14,
"concat_str": "",
"regexp_filter": null,
"concat": false,
@@ -5514,13 +7305,13 @@
}
},
{
- "pk": 295,
+ "pk": 337,
"model": "ishtar_common.importtarget",
"fields": {
"comment": "",
- "target": "associated_file__external_id",
- "column": 270,
- "formater_type": 35,
+ "target": "parcel__year",
+ "column": 313,
+ "formater_type": 14,
"concat_str": "",
"regexp_filter": null,
"concat": false,
@@ -5528,13 +7319,41 @@
}
},
{
- "pk": 298,
+ "pk": 340,
"model": "ishtar_common.importtarget",
"fields": {
"comment": "",
- "target": "scientist__title",
- "column": 274,
- "formater_type": 11,
+ "target": "unit",
+ "column": 315,
+ "formater_type": 18,
+ "concat_str": "",
+ "regexp_filter": null,
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
+ "pk": 343,
+ "model": "ishtar_common.importtarget",
+ "fields": {
+ "comment": "",
+ "target": "length",
+ "column": 318,
+ "formater_type": 21,
+ "concat_str": "",
+ "regexp_filter": null,
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
+ "pk": 346,
+ "model": "ishtar_common.importtarget",
+ "fields": {
+ "comment": "",
+ "target": "depth",
+ "column": 321,
+ "formater_type": 21,
"concat_str": "",
"regexp_filter": null,
"concat": false,
@@ -5546,7 +7365,7 @@
"model": "ishtar_common.importtarget",
"fields": {
"comment": "",
- "target": "scientist__organization__name",
+ "target": "scientist__attached_to__name",
"column": 277,
"formater_type": 30,
"concat_str": "",
@@ -5556,13 +7375,13 @@
}
},
{
- "pk": 304,
+ "pk": 307,
"model": "ishtar_common.importtarget",
"fields": {
"comment": "",
- "target": "in_charge__title",
- "column": 280,
- "formater_type": 11,
+ "target": "in_charge__attached_to__name",
+ "column": 283,
+ "formater_type": 3,
"concat_str": "",
"regexp_filter": null,
"concat": false,
@@ -5570,12 +7389,12 @@
}
},
{
- "pk": 307,
+ "pk": 316,
"model": "ishtar_common.importtarget",
"fields": {
"comment": "",
- "target": "in_charge__organization__name",
- "column": 283,
+ "target": "cira_rapporteur__attached_to__name",
+ "column": 292,
"formater_type": 3,
"concat_str": "",
"regexp_filter": null,
@@ -5584,13 +7403,13 @@
}
},
{
- "pk": 310,
+ "pk": 352,
"model": "ishtar_common.importtarget",
"fields": {
"comment": "",
- "target": "excavation_end_date",
- "column": 286,
- "formater_type": 25,
+ "target": "filling",
+ "column": 327,
+ "formater_type": 16,
"concat_str": "",
"regexp_filter": null,
"concat": false,
@@ -5598,13 +7417,13 @@
}
},
{
- "pk": 313,
+ "pk": 355,
"model": "ishtar_common.importtarget",
"fields": {
"comment": "",
- "target": "negative_result",
- "column": 289,
- "formater_type": 19,
+ "target": "identification",
+ "column": 330,
+ "formater_type": 24,
"concat_str": "",
"regexp_filter": null,
"concat": false,
@@ -5612,12 +7431,40 @@
}
},
{
- "pk": 316,
+ "pk": 358,
"model": "ishtar_common.importtarget",
"fields": {
"comment": "",
- "target": "cira_rapporteur__organization__name",
- "column": 292,
+ "target": "taq_estimated",
+ "column": 333,
+ "formater_type": 1,
+ "concat_str": "",
+ "regexp_filter": null,
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
+ "pk": 361,
+ "model": "ishtar_common.importtarget",
+ "fields": {
+ "comment": "",
+ "target": "context_record__external_id",
+ "column": 336,
+ "formater_type": 11,
+ "concat_str": "",
+ "regexp_filter": null,
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
+ "pk": 364,
+ "model": "ishtar_common.importtarget",
+ "fields": {
+ "comment": "",
+ "target": "context_record__external_id",
+ "column": 339,
"formater_type": 3,
"concat_str": "",
"regexp_filter": null,
@@ -5626,13 +7473,13 @@
}
},
{
- "pk": 319,
+ "pk": 367,
"model": "ishtar_common.importtarget",
"fields": {
"comment": "",
- "target": "finds_deadline",
- "column": 295,
- "formater_type": 25,
+ "target": "find__description",
+ "column": 342,
+ "formater_type": 16,
"concat_str": "",
"regexp_filter": null,
"concat": false,
@@ -5640,13 +7487,69 @@
}
},
{
- "pk": 322,
+ "pk": 370,
"model": "ishtar_common.importtarget",
"fields": {
"comment": "",
- "target": "report_delivery_date",
- "column": 298,
- "formater_type": 25,
+ "target": "find__material_types",
+ "column": 346,
+ "formater_type": 20,
+ "concat_str": "",
+ "regexp_filter": null,
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
+ "pk": 373,
+ "model": "ishtar_common.importtarget",
+ "fields": {
+ "comment": "",
+ "target": "find__object_types",
+ "column": 349,
+ "formater_type": 26,
+ "concat_str": "",
+ "regexp_filter": null,
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
+ "pk": 376,
+ "model": "ishtar_common.importtarget",
+ "fields": {
+ "comment": "",
+ "target": "find__remarkabilities",
+ "column": 352,
+ "formater_type": 44,
+ "concat_str": "",
+ "regexp_filter": null,
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
+ "pk": 381,
+ "model": "ishtar_common.importtarget",
+ "fields": {
+ "comment": "",
+ "target": "find__dimensions_comment",
+ "column": 357,
+ "formater_type": 16,
+ "concat_str": "",
+ "regexp_filter": null,
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
+ "pk": 387,
+ "model": "ishtar_common.importtarget",
+ "fields": {
+ "comment": "",
+ "target": "find__image",
+ "column": 363,
+ "formater_type": 27,
"concat_str": "",
"regexp_filter": null,
"concat": false,
@@ -5708,6 +7611,15 @@
}
},
{
+ "pk": 42,
+ "model": "ishtar_common.formatertype",
+ "fields": {
+ "formater_type": "TypeFormater",
+ "many_split": "",
+ "options": "archaeological_context_records.models.ActivityType"
+ }
+ },
+ {
"pk": 24,
"model": "ishtar_common.formatertype",
"fields": {
@@ -5753,6 +7665,15 @@
}
},
{
+ "pk": 43,
+ "model": "ishtar_common.formatertype",
+ "fields": {
+ "formater_type": "TypeFormater",
+ "many_split": "&",
+ "options": "archaeological_finds.models.IntegrityType"
+ }
+ },
+ {
"pk": 20,
"model": "ishtar_common.formatertype",
"fields": {
@@ -5780,12 +7701,12 @@
}
},
{
- "pk": 40,
+ "pk": 44,
"model": "ishtar_common.formatertype",
"fields": {
"formater_type": "TypeFormater",
"many_split": "&",
- "options": "archaeological_operations.models.archaeological_sites"
+ "options": "archaeological_finds.models.RemarkabilityType"
}
},
{
@@ -5807,6 +7728,15 @@
}
},
{
+ "pk": 41,
+ "model": "ishtar_common.formatertype",
+ "fields": {
+ "formater_type": "TypeFormater",
+ "many_split": "&",
+ "options": "archaeological_operations.models.RemainType"
+ }
+ },
+ {
"pk": 37,
"model": "ishtar_common.formatertype",
"fields": {
@@ -5888,6 +7818,15 @@
}
},
{
+ "pk": 45,
+ "model": "ishtar_common.formatertype",
+ "fields": {
+ "formater_type": "UnicodeFormater",
+ "many_split": "",
+ "options": "20"
+ }
+ },
+ {
"pk": 30,
"model": "ishtar_common.formatertype",
"fields": {
@@ -6311,5 +8250,203 @@
"concat": false,
"force_new": false
}
+ },
+ {
+ "pk": 34,
+ "model": "ishtar_common.importerduplicatefield",
+ "fields": {
+ "column": 303,
+ "concat_str": "",
+ "field_name": "external_id",
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
+ "pk": 33,
+ "model": "ishtar_common.importerduplicatefield",
+ "fields": {
+ "column": 304,
+ "concat_str": "-",
+ "field_name": "external_id",
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
+ "pk": 31,
+ "model": "ishtar_common.importerduplicatefield",
+ "fields": {
+ "column": 302,
+ "concat_str": "-",
+ "field_name": "parcel__external_id",
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
+ "pk": 32,
+ "model": "ishtar_common.importerduplicatefield",
+ "fields": {
+ "column": 302,
+ "concat_str": "-",
+ "field_name": "external_id",
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
+ "pk": 35,
+ "model": "ishtar_common.importerduplicatefield",
+ "fields": {
+ "column": 311,
+ "concat_str": "-",
+ "field_name": "external_id",
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
+ "pk": 36,
+ "model": "ishtar_common.importerduplicatefield",
+ "fields": {
+ "column": 312,
+ "concat_str": "-",
+ "field_name": "external_id",
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
+ "pk": 37,
+ "model": "ishtar_common.importerduplicatefield",
+ "fields": {
+ "column": 314,
+ "concat_str": "-",
+ "field_name": "external_id",
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
+ "pk": 38,
+ "model": "ishtar_common.importerduplicatefield",
+ "fields": {
+ "column": 336,
+ "concat_str": "-",
+ "field_name": "external_id",
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
+ "pk": 39,
+ "model": "ishtar_common.importerduplicatefield",
+ "fields": {
+ "column": 336,
+ "concat_str": "-",
+ "field_name": "find__external_id",
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
+ "pk": 40,
+ "model": "ishtar_common.importerduplicatefield",
+ "fields": {
+ "column": 337,
+ "concat_str": "-",
+ "field_name": "external_id",
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
+ "pk": 41,
+ "model": "ishtar_common.importerduplicatefield",
+ "fields": {
+ "column": 337,
+ "concat_str": "-",
+ "field_name": "find__external_id",
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
+ "pk": 42,
+ "model": "ishtar_common.importerduplicatefield",
+ "fields": {
+ "column": 338,
+ "concat_str": "-",
+ "field_name": "external_id",
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
+ "pk": 43,
+ "model": "ishtar_common.importerduplicatefield",
+ "fields": {
+ "column": 338,
+ "concat_str": "-",
+ "field_name": "find__external_id",
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
+ "pk": 44,
+ "model": "ishtar_common.importerduplicatefield",
+ "fields": {
+ "column": 339,
+ "concat_str": "-",
+ "field_name": "external_id",
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
+ "pk": 45,
+ "model": "ishtar_common.importerduplicatefield",
+ "fields": {
+ "column": 339,
+ "concat_str": "-",
+ "field_name": "find__external_id",
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
+ "pk": 46,
+ "model": "ishtar_common.importerduplicatefield",
+ "fields": {
+ "column": 340,
+ "concat_str": "",
+ "field_name": "find__label",
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
+ "pk": 47,
+ "model": "ishtar_common.importerduplicatefield",
+ "fields": {
+ "column": 340,
+ "concat_str": "-",
+ "field_name": "external_id",
+ "concat": false,
+ "force_new": false
+ }
+ },
+ {
+ "pk": 48,
+ "model": "ishtar_common.importerduplicatefield",
+ "fields": {
+ "column": 340,
+ "concat_str": "-",
+ "field_name": "find__external_id",
+ "concat": false,
+ "force_new": false
+ }
}
]
diff --git a/ishtar_common/forms.py b/ishtar_common/forms.py
index 043b03f61..42d74f9ef 100644
--- a/ishtar_common/forms.py
+++ b/ishtar_common/forms.py
@@ -33,6 +33,7 @@ from django.utils.translation import ugettext_lazy as _
import models
import widgets
+from wizards import MultiValueDict
# from formwizard.forms import NamedUrlSessionFormWizard
@@ -224,7 +225,6 @@ class ManageOldType(object):
if prefix not in k:
continue
new_k = k[len(prefix) + 1:]
- items = []
if hasattr(kwargs['data'], 'getlist'):
items = kwargs['data'].getlist(k)
else:
@@ -238,7 +238,6 @@ class ManageOldType(object):
if 'initial' in kwargs and kwargs['initial']:
for k in kwargs['initial']:
if k not in self.init_data or not self.init_data[k]:
- items = []
if hasattr(kwargs['initial'], 'getlist'):
items = kwargs['initial'].getlist(k)
else:
@@ -249,6 +248,7 @@ class ManageOldType(object):
if k not in self.init_data:
self.init_data[k] = []
self.init_data[k].append(val)
+ self.init_data = MultiValueDict(self.init_data)
super(ManageOldType, self).__init__(*args, **kwargs)
diff --git a/ishtar_common/forms_common.py b/ishtar_common/forms_common.py
index c15999721..7ab09f9f7 100644
--- a/ishtar_common/forms_common.py
+++ b/ishtar_common/forms_common.py
@@ -40,7 +40,7 @@ from forms import FinalForm, FormSet, reverse_lazy, name_validator, \
def get_town_field(label=_(u"Town"), required=True):
help_text = _(
- u"<p>Type name, department code and/or postal code of the "
+ u"<p>Type name, department code of the "
u"town you would like to select. The search is insensitive to case."
u"</p>\n<p>Only the first twenty results are displayed but specifying "
u"the department code is generally sufficient to get the appropriate "
@@ -241,7 +241,7 @@ class ManualMerge(object):
except ValueError:
pass
if len(values) < 2:
- raise forms.ValidationError(_(u"At leat two items have to be "
+ raise forms.ValidationError(_(u"At least two items have to be "
u"selected."))
self.cleaned_data['to_merge'] = values
return values
diff --git a/ishtar_common/ishtar_menu.py b/ishtar_common/ishtar_menu.py
index 1f30bec0f..5ed8cad37 100644
--- a/ishtar_common/ishtar_menu.py
+++ b/ishtar_common/ishtar_menu.py
@@ -30,7 +30,7 @@ MENU_SECTIONS = [
childs=[
SectionItem(
'account', _(u"Account"),
- childs=[MenuItem('account_management', _(u"Add/modify"),
+ childs=[MenuItem('account_management', _(u"Addition/modification"),
model=models.IshtarUser,
access_controls=['add_ishtaruser', ]),
MenuItem('account_deletion', _(u"Deletion"),
@@ -67,7 +67,7 @@ MENU_SECTIONS = [
model=models.Person,
access_controls=['merge_person']),
MenuItem(
- 'person_deletion', _(u"Delete"),
+ 'person_deletion', _(u"Deletion"),
model=models.Person,
access_controls=['change_person', 'change_own_person']),
]),
@@ -98,7 +98,7 @@ MENU_SECTIONS = [
model=models.Organization,
access_controls=['merge_organization']),
MenuItem(
- 'organization_deletion', _(u"Delete"),
+ 'organization_deletion', _(u"Deletion"),
model=models.Organization,
access_controls=['change_organization',
'change_own_organization']),
diff --git a/ishtar_common/locale/django.pot b/ishtar_common/locale/django.pot
index 5110bca31..2a60902e5 100644
--- a/ishtar_common/locale/django.pot
+++ b/ishtar_common/locale/django.pot
@@ -5,6 +5,7 @@
# Étienne Loks <etienne.loks@iggdrasil.net>, 2015. #zanata
# Valérie-Emma Leroux <emma@iggdrasil.net>, 2016. #zanata
# Étienne Loks <etienne.loks@iggdrasil.net>, 2016. #zanata
+# Valérie-Emma Leroux <emma@iggdrasil.net>, 2017. #zanata
msgid ""
msgstr ""
@@ -127,40 +128,40 @@ msgstr ""
msgid "\"%(value)s\" not in %(values)s"
msgstr ""
-#: forms.py:55
+#: forms.py:73
msgid "Enter a valid name consisting of letters, spaces and hyphens."
msgstr ""
-#: forms.py:71 forms_common.py:618
+#: forms.py:89 forms_common.py:618
msgid "Confirm"
msgstr ""
-#: forms.py:76
+#: forms.py:94
msgid "Are you sure you want to delete?"
msgstr ""
-#: forms.py:85
+#: forms.py:103
msgid "There are identical items."
msgstr ""
-#: forms.py:123 forms.py:124
+#: forms.py:141 forms.py:142
msgid "Closing date"
msgstr ""
-#: forms.py:137
+#: forms.py:155
msgid "You should select an item."
msgstr ""
-#: forms.py:138
+#: forms.py:156
msgid "Add a new item"
msgstr ""
-#: forms.py:245 models.py:1310
+#: forms.py:262 models.py:1367
msgid "Template"
msgstr ""
#: forms_common.py:41 forms_common.py:59 forms_common.py:182
-#: forms_common.py:406 models.py:1376 models.py:2758
+#: forms_common.py:406 models.py:1433 models.py:2825
#: templates/blocks/JQueryAdvancedTown.html:19
#: templates/ishtar/sheet_organization.html:13
msgid "Town"
@@ -168,16 +169,16 @@ msgstr ""
#: forms_common.py:43
msgid ""
-"<p>Type name, department code and/or postal code of the town you would like "
-"to select. The search is insensitive to case.</p>\n"
+"<p>Type name, department code of the town you would like to select. The "
+"search is insensitive to case.</p>\n"
"<p>Only the first twenty results are displayed but specifying the department "
"code is generally sufficient to get the appropriate result.</p>\n"
"<p class='example'>For instance type \"saint denis 93\" for getting the "
"french town Saint-Denis in the Seine-Saint-Denis department.</p>"
msgstr ""
-#: forms_common.py:68 forms_common.py:855 ishtar_menu.py:47 models.py:1546
-#: models.py:2384 models.py:2566 models.py:2628
+#: forms_common.py:68 forms_common.py:855 ishtar_menu.py:47 models.py:1606
+#: models.py:2452 models.py:2634 models.py:2695
#: templates/ishtar/sheet_person.html:4
msgid "Person"
msgstr ""
@@ -189,63 +190,63 @@ msgid ""
msgstr ""
#: forms_common.py:170 forms_common.py:327 forms_common.py:451
-#: ishtar_menu.py:75 models.py:1547 models.py:2273
+#: ishtar_menu.py:75 models.py:1607 models.py:2338
#: templates/ishtar/sheet_organization.html:4
msgid "Organization"
msgstr ""
#: forms_common.py:173 forms_common.py:210 forms_common.py:322
-#: forms_common.py:376 forms_common.py:446 models.py:977 models.py:1309
-#: models.py:1592 models.py:1810 models.py:2267 models.py:2370 models.py:2744
+#: forms_common.py:376 forms_common.py:446 models.py:1034 models.py:1366
+#: models.py:1652 models.py:1871 models.py:2332 models.py:2438 models.py:2811
#: templates/ishtar/sheet_organization.html:8
#: templates/ishtar/sheet_organization.html:21
msgid "Name"
msgstr ""
-#: forms_common.py:174 models.py:1531 models.py:1941
+#: forms_common.py:174 models.py:1588 models.py:2002
msgid "Organization type"
msgstr ""
-#: forms_common.py:176 forms_common.py:400 models.py:1371
+#: forms_common.py:176 forms_common.py:400 models.py:1428
#: templates/ishtar/sheet_organization.html:10
msgid "Address"
msgstr ""
-#: forms_common.py:178 forms_common.py:403 models.py:1372
+#: forms_common.py:178 forms_common.py:403 models.py:1429
#: templates/ishtar/sheet_organization.html:11
msgid "Address complement"
msgstr ""
-#: forms_common.py:180 forms_common.py:404 models.py:1374
+#: forms_common.py:180 forms_common.py:404 models.py:1431
#: templates/ishtar/sheet_organization.html:12
msgid "Postal code"
msgstr ""
-#: forms_common.py:183 forms_common.py:407 models.py:1377
+#: forms_common.py:183 forms_common.py:407 models.py:1434
msgid "Country"
msgstr ""
#: forms_common.py:185 forms_common.py:324 forms_common.py:380
-#: forms_common.py:448 forms_common.py:572 models.py:1404
+#: forms_common.py:448 forms_common.py:572 models.py:1461
msgid "Email"
msgstr ""
-#: forms_common.py:186 forms_common.py:383 models.py:1389
+#: forms_common.py:186 forms_common.py:383 models.py:1446
#: templates/ishtar/sheet_organization.html:14
#: templates/ishtar/sheet_person.html:19
#: templates/ishtar/wizard/wizard_person.html:17
msgid "Phone"
msgstr ""
-#: forms_common.py:187 forms_common.py:392 models.py:1401
+#: forms_common.py:187 forms_common.py:392 models.py:1458
#: templates/ishtar/sheet_organization.html:15
#: templates/ishtar/sheet_person.html:37
#: templates/ishtar/wizard/wizard_person.html:35
msgid "Mobile phone"
msgstr ""
-#: forms_common.py:211 forms_common.py:325 forms_common.py:449 models.py:1969
-#: models.py:2269 models.py:2679 templates/sheet_ope.html:85
+#: forms_common.py:211 forms_common.py:325 forms_common.py:449 models.py:2032
+#: models.py:2334 models.py:2746 templates/sheet_ope.html:85
#: templates/sheet_ope.html.py:105 templates/sheet_ope.html:126
#: templates/ishtar/import_list.html:13
#: templates/ishtar/sheet_organization.html:23
@@ -253,12 +254,12 @@ msgstr ""
msgid "Type"
msgstr ""
-#: forms_common.py:220 views.py:139
+#: forms_common.py:220 views.py:142
msgid "Organization search"
msgstr ""
#: forms_common.py:244
-msgid "At leat two items have to be selected."
+msgid "At least two items have to be selected."
msgstr ""
#: forms_common.py:262
@@ -269,12 +270,12 @@ msgstr ""
msgid "Organization to merge"
msgstr ""
-#: forms_common.py:323 forms_common.py:374 forms_common.py:447 models.py:2368
+#: forms_common.py:323 forms_common.py:374 forms_common.py:447 models.py:2436
#: templates/ishtar/sheet_organization.html:22
msgid "Surname"
msgstr ""
-#: forms_common.py:339 forms_common.py:434 views.py:104
+#: forms_common.py:339 forms_common.py:434 views.py:107
msgid "Person search"
msgstr ""
@@ -287,25 +288,25 @@ msgstr ""
msgid "Identity"
msgstr ""
-#: forms_common.py:371 forms_common.py:773 forms_common.py:822 models.py:1942
-#: models.py:2362 models.py:2364 models.py:2676 templates/sheet_ope.html:104
+#: forms_common.py:371 forms_common.py:773 forms_common.py:822 models.py:2003
+#: models.py:2430 models.py:2432 models.py:2743 templates/sheet_ope.html:104
#: templates/ishtar/blocks/window_tables/documents.html:7
msgid "Title"
msgstr ""
-#: forms_common.py:372 models.py:2366
+#: forms_common.py:372 models.py:2434
msgid "Salutation"
msgstr ""
-#: forms_common.py:378 models.py:2372
+#: forms_common.py:378 models.py:2440
msgid "Raw name"
msgstr ""
-#: forms_common.py:381 models.py:1390
+#: forms_common.py:381 models.py:1447
msgid "Phone description"
msgstr ""
-#: forms_common.py:384 models.py:1392 models.py:1394
+#: forms_common.py:384 models.py:1449 models.py:1451
msgid "Phone description 2"
msgstr ""
@@ -313,11 +314,11 @@ msgstr ""
msgid "Phone 2"
msgstr ""
-#: forms_common.py:388 models.py:1398
+#: forms_common.py:388 models.py:1455
msgid "Phone description 3"
msgstr ""
-#: forms_common.py:390 models.py:1396
+#: forms_common.py:390 models.py:1453
msgid "Phone 3"
msgstr ""
@@ -325,23 +326,23 @@ msgstr ""
msgid "Current organization"
msgstr ""
-#: forms_common.py:409 models.py:1379
+#: forms_common.py:409 models.py:1436
msgid "Other address: address"
msgstr ""
-#: forms_common.py:412 models.py:1382
+#: forms_common.py:412 models.py:1439
msgid "Other address: address complement"
msgstr ""
-#: forms_common.py:414 models.py:1383
+#: forms_common.py:414 models.py:1440
msgid "Other address: postal code"
msgstr ""
-#: forms_common.py:416 models.py:1385
+#: forms_common.py:416 models.py:1442
msgid "Other address: town"
msgstr ""
-#: forms_common.py:418 models.py:1387
+#: forms_common.py:418 models.py:1444
msgid "Other address: country"
msgstr ""
@@ -357,7 +358,7 @@ msgstr ""
msgid "Account search"
msgstr ""
-#: forms_common.py:510 forms_common.py:550 forms_common.py:554 models.py:2321
+#: forms_common.py:510 forms_common.py:550 forms_common.py:554 models.py:2386
msgid "Person type"
msgstr ""
@@ -365,7 +366,7 @@ msgstr ""
msgid "Account"
msgstr ""
-#: forms_common.py:575 wizards.py:1192
+#: forms_common.py:575 wizards.py:1256
msgid "New password"
msgstr ""
@@ -389,7 +390,7 @@ msgstr ""
msgid "Send the new password by email?"
msgstr ""
-#: forms_common.py:628 forms_common.py:641 models.py:2759
+#: forms_common.py:628 forms_common.py:641 models.py:2826
msgid "Towns"
msgstr ""
@@ -405,7 +406,7 @@ msgstr ""
msgid "Documentation informations"
msgstr ""
-#: forms_common.py:775 forms_common.py:823 models.py:1943 models.py:2653
+#: forms_common.py:775 forms_common.py:823 models.py:2004 models.py:2720
msgid "Source type"
msgstr ""
@@ -417,37 +418,37 @@ msgstr ""
msgid "Internal reference"
msgstr ""
-#: forms_common.py:783 models.py:2690
+#: forms_common.py:783 models.py:2757
msgid "Numerical ressource (web address)"
msgstr ""
-#: forms_common.py:784 models.py:2692
+#: forms_common.py:784 models.py:2759
msgid "Receipt date"
msgstr ""
-#: forms_common.py:786 models.py:2096 models.py:2694
+#: forms_common.py:786 models.py:2161 models.py:2761
msgid "Creation date"
msgstr ""
-#: forms_common.py:789 models.py:2697
+#: forms_common.py:789 models.py:2764
msgid "Receipt date in documentation"
msgstr ""
-#: forms_common.py:791 forms_common.py:827 models.py:317 models.py:577
-#: models.py:1837 models.py:2376 models.py:2704
+#: forms_common.py:791 forms_common.py:827 models.py:323 models.py:634
+#: models.py:1898 models.py:2444 models.py:2771
msgid "Comment"
msgstr ""
-#: forms_common.py:793 forms_common.py:826 models.py:979 models.py:1596
-#: models.py:1769 models.py:1811 models.py:2703 templates/sheet_ope.html:128
+#: forms_common.py:793 forms_common.py:826 models.py:1036 models.py:1656
+#: models.py:1830 models.py:1872 models.py:2770 templates/sheet_ope.html:128
msgid "Description"
msgstr ""
-#: forms_common.py:796 models.py:2705
+#: forms_common.py:796 models.py:2772
msgid "Additional information"
msgstr ""
-#: forms_common.py:798 forms_common.py:830 models.py:2707
+#: forms_common.py:798 forms_common.py:830 models.py:2774
msgid "Has a duplicate"
msgstr ""
@@ -462,7 +463,7 @@ msgid ""
"p>"
msgstr ""
-#: forms_common.py:819 forms_common.py:848 forms_common.py:882 models.py:2633
+#: forms_common.py:819 forms_common.py:848 forms_common.py:882 models.py:2700
#: templates/ishtar/wizard/wizard_person_deletion.html:124
msgid "Author"
msgstr ""
@@ -475,7 +476,7 @@ msgstr ""
msgid "Would you like to delete this documentation?"
msgstr ""
-#: forms_common.py:856 models.py:1944 models.py:2621 models.py:2630
+#: forms_common.py:856 models.py:2005 models.py:2688 models.py:2697
msgid "Author type"
msgstr ""
@@ -487,7 +488,7 @@ msgstr ""
msgid "There are identical authors."
msgstr ""
-#: forms_common.py:893 models.py:2634 models.py:2686
+#: forms_common.py:893 models.py:2701 models.py:2753
#: templates/sheet_ope.html:106
#: templates/ishtar/blocks/window_tables/documents.html:9
msgid "Authors"
@@ -498,14 +499,14 @@ msgid "Administration"
msgstr ""
#: ishtar_menu.py:33
-msgid "Add/modify"
+msgid "Addition/modification"
msgstr ""
-#: ishtar_menu.py:36
+#: ishtar_menu.py:36 ishtar_menu.py:70 ishtar_menu.py:101
msgid "Deletion"
msgstr ""
-#: ishtar_menu.py:39 models.py:1105 views.py:1484
+#: ishtar_menu.py:39 models.py:1162 views.py:1530
msgid "Global variables"
msgstr ""
@@ -533,20 +534,15 @@ msgstr ""
msgid "Manual merge"
msgstr ""
-#: ishtar_menu.py:70 ishtar_menu.py:101 models.py:2133 widgets.py:110
-#: templates/ishtar/form_delete.html:11
-msgid "Delete"
-msgstr ""
-
-#: ishtar_menu.py:109 models.py:2107
+#: ishtar_menu.py:109 models.py:2172
msgid "Imports"
msgstr ""
-#: ishtar_menu.py:112 views.py:1492
+#: ishtar_menu.py:112 views.py:1538
msgid "New import"
msgstr ""
-#: ishtar_menu.py:116 views.py:1506
+#: ishtar_menu.py:116 views.py:1552
msgid "Current imports"
msgstr ""
@@ -554,212 +550,212 @@ msgstr ""
msgid "Old imports"
msgstr ""
-#: models.py:178
+#: models.py:183
msgid "Not a valid item."
msgstr ""
-#: models.py:191
+#: models.py:196
msgid "A selected item is not a valid item."
msgstr ""
-#: models.py:202
+#: models.py:207
msgid "This item already exists."
msgstr ""
-#: models.py:313 models.py:576 models.py:1344 models.py:1356
+#: models.py:319 models.py:633 models.py:1401 models.py:1413 models.py:1827
msgid "Label"
msgstr ""
-#: models.py:315
+#: models.py:321
msgid "Textual ID"
msgstr ""
-#: models.py:318 models.py:579 models.py:1313
+#: models.py:324 models.py:636 models.py:1370
msgid "Available"
msgstr ""
-#: models.py:598 models.py:1883
+#: models.py:655 models.py:1944
msgid "Key"
msgstr ""
-#: models.py:604
+#: models.py:661
msgid "Specific key to an import"
msgstr ""
-#: models.py:696
+#: models.py:753
msgid "Last editor"
msgstr ""
-#: models.py:699
+#: models.py:756
msgid "Creator"
msgstr ""
-#: models.py:841 models.py:2770
+#: models.py:898 models.py:2837
msgid "Order"
msgstr ""
-#: models.py:842
+#: models.py:899
msgid "Symmetrical"
msgstr ""
-#: models.py:843
+#: models.py:900
msgid "Tiny label"
msgstr ""
-#: models.py:857
+#: models.py:914
msgid "Cannot have symmetrical and an inverse_relation"
msgstr ""
-#: models.py:971
+#: models.py:1028
msgid "Euro"
msgstr ""
-#: models.py:972
+#: models.py:1029
msgid "US dollar"
msgstr ""
-#: models.py:978 models.py:1594
+#: models.py:1035 models.py:1654
msgid "Slug"
msgstr ""
-#: models.py:980
+#: models.py:1037
msgid "Files module"
msgstr ""
-#: models.py:981
+#: models.py:1038
msgid "Context records module"
msgstr ""
-#: models.py:983
+#: models.py:1040
msgid "Finds module"
msgstr ""
-#: models.py:984
+#: models.py:1041
msgid "Need context records module"
msgstr ""
-#: models.py:986
+#: models.py:1043
msgid "Warehouses module"
msgstr ""
-#: models.py:987
+#: models.py:1044
msgid "Need finds module"
msgstr ""
-#: models.py:989
+#: models.py:1046
msgid "Home page"
msgstr ""
-#: models.py:990
+#: models.py:1047
#, python-brace-format
msgid ""
"Homepage of Ishtar - if not defined a default homepage will appear. Use the "
"markdown syntax. {random_image} can be used to display a random image."
msgstr ""
-#: models.py:994
+#: models.py:1051
msgid "File external id"
msgstr ""
-#: models.py:996
+#: models.py:1053
msgid ""
"Formula to manage file external ID. Change this with care. With incorrect "
"formula, the application might be unusable and import of external data can "
"be destructive."
msgstr ""
-#: models.py:1001
+#: models.py:1058
msgid "Parcel external id"
msgstr ""
-#: models.py:1004
+#: models.py:1061
msgid ""
"Formula to manage parcel external ID. Change this with care. With incorrect "
"formula, the application might be unusable and import of external data can "
"be destructive."
msgstr ""
-#: models.py:1009
+#: models.py:1066
msgid "Context record external id"
msgstr ""
-#: models.py:1011
+#: models.py:1068
msgid ""
"Formula to manage context record external ID. Change this with care. With "
"incorrect formula, the application might be unusable and import of external "
"data can be destructive."
msgstr ""
-#: models.py:1016
+#: models.py:1073
msgid "Base find external id"
msgstr ""
-#: models.py:1018
+#: models.py:1075
msgid ""
"Formula to manage base find external ID. Change this with care. With "
"incorrect formula, the application might be unusable and import of external "
"data can be destructive."
msgstr ""
-#: models.py:1023
+#: models.py:1080
msgid "Find external id"
msgstr ""
-#: models.py:1025
+#: models.py:1082
msgid ""
"Formula to manage find external ID. Change this with care. With incorrect "
"formula, the application might be unusable and import of external data can "
"be destructive."
msgstr ""
-#: models.py:1030
+#: models.py:1087
msgid "Raw name for person"
msgstr ""
-#: models.py:1032
+#: models.py:1089
msgid ""
"Formula to manage person raw_name. Change this with care. With incorrect "
"formula, the application might be unusable and import of external data can "
"be destructive."
msgstr ""
-#: models.py:1036
+#: models.py:1093
msgid "Current active"
msgstr ""
-#: models.py:1037
+#: models.py:1094
msgid "Currency"
msgstr ""
-#: models.py:1041
+#: models.py:1098
msgid "Ishtar site profile"
msgstr ""
-#: models.py:1042
+#: models.py:1099
msgid "Ishtar site profiles"
msgstr ""
-#: models.py:1098
+#: models.py:1155
msgid "Variable name"
msgstr ""
-#: models.py:1099
+#: models.py:1156
msgid "Description of the variable"
msgstr ""
-#: models.py:1101 models.py:1884
+#: models.py:1158 models.py:1945
msgid "Value"
msgstr ""
-#: models.py:1104
+#: models.py:1161
msgid "Global variable"
msgstr ""
-#: models.py:1214 models.py:1244
+#: models.py:1271 models.py:1301
msgid "Total"
msgstr ""
-#: models.py:1221 models.py:1345 models.py:1357
+#: models.py:1278 models.py:1402 models.py:1414
#: templates/ishtar/sheet_person.html:22
#: templates/ishtar/dashboards/dashboard_main_detail.html:141
#: templates/ishtar/dashboards/dashboard_main_detail_users.html:26
@@ -767,718 +763,742 @@ msgstr ""
msgid "Number"
msgstr ""
-#: models.py:1308
+#: models.py:1365
msgid "Administrative Act"
msgstr ""
-#: models.py:1312
+#: models.py:1369
msgid "Associated object"
msgstr ""
-#: models.py:1316
+#: models.py:1373
msgid "Document template"
msgstr ""
-#: models.py:1317
+#: models.py:1374
msgid "Document templates"
msgstr ""
-#: models.py:1348 models.py:1358 models.py:2091
+#: models.py:1405 models.py:1415 models.py:2156
msgid "State"
msgstr ""
-#: models.py:1362 templates/blocks/JQueryAdvancedTown.html:12
+#: models.py:1419 templates/blocks/JQueryAdvancedTown.html:12
msgid "Department"
msgstr ""
-#: models.py:1363
+#: models.py:1420
msgid "Departments"
msgstr ""
-#: models.py:1400
+#: models.py:1457
msgid "Raw phone"
msgstr ""
-#: models.py:1406
+#: models.py:1463
msgid "Alternative address is prefered"
msgstr ""
-#: models.py:1445
+#: models.py:1502
msgid "Tel: "
msgstr ""
-#: models.py:1449
+#: models.py:1506
msgid "Mobile: "
msgstr ""
-#: models.py:1453
+#: models.py:1510
msgid "Email: "
msgstr ""
-#: models.py:1458
+#: models.py:1515
msgid "Merge key"
msgstr ""
-#: models.py:1532
+#: models.py:1589
msgid "Organization types"
msgstr ""
-#: models.py:1548 views.py:234
+#: models.py:1608 views.py:237
msgid "Operation"
msgstr ""
-#: models.py:1550
+#: models.py:1610
msgid "Archaeological site"
msgstr ""
-#: models.py:1551
+#: models.py:1611
msgid "Parcels"
msgstr ""
-#: models.py:1553
+#: models.py:1613
msgid "Operation source"
msgstr ""
-#: models.py:1556 views.py:1299 views.py:1350
+#: models.py:1616 views.py:1346 views.py:1396
msgid "Archaeological files"
msgstr ""
-#: models.py:1558 views.py:1302 views.py:1358
+#: models.py:1618 views.py:1349 views.py:1404
msgid "Context records"
msgstr ""
-#: models.py:1560
+#: models.py:1620
msgid "Context record relations"
msgstr ""
-#: models.py:1562 views.py:1304 views.py:1361
-msgid "Finds"
+#: models.py:1622
+msgid "Base finds"
msgstr ""
-#: models.py:1598 templates/ishtar/dashboards/dashboard_main.html:25
+#: models.py:1658 templates/ishtar/dashboards/dashboard_main.html:25
msgid "Users"
msgstr ""
-#: models.py:1600
+#: models.py:1660
msgid "Associated model"
msgstr ""
-#: models.py:1603
+#: models.py:1663
msgid "Is template"
msgstr ""
-#: models.py:1604
+#: models.py:1664
msgid "Unicity keys (separator \";\")"
msgstr ""
-#: models.py:1608
+#: models.py:1668
msgid "Importer - Type"
msgstr ""
-#: models.py:1609
+#: models.py:1669
msgid "Importer - Types"
msgstr ""
-#: models.py:1699
+#: models.py:1759
msgid "Importer - Default"
msgstr ""
-#: models.py:1700
+#: models.py:1760
msgid "Importer - Defaults"
msgstr ""
-#: models.py:1735
+#: models.py:1795
msgid "Importer - Default value"
msgstr ""
-#: models.py:1736
+#: models.py:1796
msgid "Importer - Default values"
msgstr ""
-#: models.py:1768
+#: models.py:1829
msgid "Column number"
msgstr ""
-#: models.py:1771
+#: models.py:1832
msgid "Required"
msgstr ""
-#: models.py:1774
+#: models.py:1835
msgid "Importer - Column"
msgstr ""
-#: models.py:1775
+#: models.py:1836
msgid "Importer - Columns"
msgstr ""
-#: models.py:1795
+#: models.py:1856
msgid "Field name"
msgstr ""
-#: models.py:1797 models.py:1831
+#: models.py:1858 models.py:1892
msgid "Force creation of new items"
msgstr ""
-#: models.py:1799 models.py:1833
+#: models.py:1860 models.py:1894
msgid "Concatenate with existing"
msgstr ""
-#: models.py:1801 models.py:1835
+#: models.py:1862 models.py:1896
msgid "Concatenate character"
msgstr ""
-#: models.py:1805
+#: models.py:1866
msgid "Importer - Duplicate field"
msgstr ""
-#: models.py:1806
+#: models.py:1867
msgid "Importer - Duplicate fields"
msgstr ""
-#: models.py:1813
+#: models.py:1874
msgid "Regular expression"
msgstr ""
-#: models.py:1816
+#: models.py:1877
msgid "Importer - Regular expression"
msgstr ""
-#: models.py:1817
+#: models.py:1878
msgid "Importer - Regular expressions"
msgstr ""
-#: models.py:1840
+#: models.py:1901
msgid "Importer - Target"
msgstr ""
-#: models.py:1841
+#: models.py:1902
msgid "Importer - Targets"
msgstr ""
-#: models.py:1865 views.py:518
+#: models.py:1926 views.py:536
msgid "True"
msgstr ""
-#: models.py:1866 views.py:520
+#: models.py:1927 views.py:538
msgid "False"
msgstr ""
-#: models.py:1885
+#: models.py:1946
msgid "Is set"
msgstr ""
-#: models.py:1892
+#: models.py:1953
msgid "Importer - Target key"
msgstr ""
-#: models.py:1893
+#: models.py:1954
msgid "Importer - Targets keys"
msgstr ""
-#: models.py:1945 models.py:2669 models.py:2682
+#: models.py:2006 models.py:2736 models.py:2749
msgid "Format"
msgstr ""
-#: models.py:1946 models.py:2774
+#: models.py:2007 models.py:2841
msgid "Operation type"
msgstr ""
-#: models.py:1947
+#: models.py:2008
msgid "Period"
msgstr ""
-#: models.py:1948
+#: models.py:2009
msgid "Report state"
msgstr ""
-#: models.py:1949
+#: models.py:2010
+msgid "Remain type"
+msgstr ""
+
+#: models.py:2011
msgid "Unit"
msgstr ""
-#: models.py:1950
+#: models.py:2012
+msgid "Activity type"
+msgstr ""
+
+#: models.py:2013
msgid "Material"
msgstr ""
-#: models.py:1952
+#: models.py:2015
msgid "Conservatory state"
msgstr ""
-#: models.py:1953
+#: models.py:2016
msgid "Preservation type"
msgstr ""
-#: models.py:1954
+#: models.py:2017
msgid "Object type"
msgstr ""
-#: models.py:1956
+#: models.py:2019
msgid "Identification type"
msgstr ""
-#: models.py:1958
+#: models.py:2021
msgid "Context record relation type"
msgstr ""
-#: models.py:1959 models.py:2661
+#: models.py:2022 models.py:2728
msgid "Support type"
msgstr ""
-#: models.py:1965
+#: models.py:2028
msgid "Integer"
msgstr ""
-#: models.py:1966
+#: models.py:2029
msgid "Float"
msgstr ""
-#: models.py:1967
+#: models.py:2030
msgid "String"
msgstr ""
-#: models.py:1968 templates/sheet_ope.html:86
+#: models.py:2031 templates/sheet_ope.html:86
msgid "Date"
msgstr ""
-#: models.py:1970 templates/sheet_ope.html:61 templates/sheet_ope.html.py:83
+#: models.py:2033 templates/sheet_ope.html:61 templates/sheet_ope.html.py:83
#: templates/ishtar/dashboards/dashboard_main_detail.html:126
msgid "Year"
msgstr ""
-#: models.py:1971
+#: models.py:2034
msgid "String to boolean"
msgstr ""
-#: models.py:1972
+#: models.py:2035
msgctxt "filesystem"
msgid "File"
msgstr ""
-#: models.py:1973
+#: models.py:2036
msgid "Unknow type"
msgstr ""
-#: models.py:1989
+#: models.py:2052
msgid "4 digit year. e.g.: \"2015\""
msgstr ""
-#: models.py:1990
+#: models.py:2053
msgid "4 digit year/month/day. e.g.: \"2015/02/04\""
msgstr ""
-#: models.py:1991
+#: models.py:2054
msgid "Day/month/4 digit year. e.g.: \"04/02/2015\""
msgstr ""
-#: models.py:2001
+#: models.py:2064
msgid "Options"
msgstr ""
-#: models.py:2003
+#: models.py:2066
msgid "Split character(s)"
msgstr ""
-#: models.py:2007
+#: models.py:2070
msgid "Importer - Formater type"
msgstr ""
-#: models.py:2008
+#: models.py:2071
msgid "Importer - Formater types"
msgstr ""
-#: models.py:2055 templates/ishtar/dashboards/dashboard_main_detail.html:63
+#: models.py:2120 templates/ishtar/dashboards/dashboard_main_detail.html:63
msgid "Created"
msgstr ""
-#: models.py:2056
+#: models.py:2121
msgid "Analyse in progress"
msgstr ""
-#: models.py:2057
+#: models.py:2122
msgid "Analysed"
msgstr ""
-#: models.py:2058
+#: models.py:2123
msgid "Import pending"
msgstr ""
-#: models.py:2059
+#: models.py:2124
msgid "Import in progress"
msgstr ""
-#: models.py:2060
+#: models.py:2125
msgid "Finished with errors"
msgstr ""
-#: models.py:2061
+#: models.py:2126
msgid "Finished"
msgstr ""
-#: models.py:2062
+#: models.py:2127
msgid "Archived"
msgstr ""
-#: models.py:2074
+#: models.py:2139
msgid "Imported file"
msgstr ""
-#: models.py:2077
+#: models.py:2142
msgid "Associated images (zip file)"
msgstr ""
-#: models.py:2079
+#: models.py:2144
msgid "Encoding"
msgstr ""
-#: models.py:2081
+#: models.py:2146
msgid "Skip lines"
msgstr ""
-#: models.py:2082 templates/ishtar/import_list.html:47
+#: models.py:2147 templates/ishtar/import_list.html:47
msgid "Error file"
msgstr ""
-#: models.py:2085
+#: models.py:2150
msgid "Result file"
msgstr ""
-#: models.py:2088 templates/ishtar/import_list.html:53
+#: models.py:2153 templates/ishtar/import_list.html:53
msgid "Match file"
msgstr ""
-#: models.py:2094
+#: models.py:2159
msgid "Conservative import"
msgstr ""
-#: models.py:2099
+#: models.py:2164
msgid "End date"
msgstr ""
-#: models.py:2101
+#: models.py:2166
msgid "Remaining seconds"
msgstr ""
-#: models.py:2106
+#: models.py:2171
msgid "Import"
msgstr ""
-#: models.py:2123
+#: models.py:2188
msgid "Analyse"
msgstr ""
-#: models.py:2125 models.py:2128
+#: models.py:2190 models.py:2193
msgid "Re-analyse"
msgstr ""
-#: models.py:2126
+#: models.py:2191
msgid "Launch import"
msgstr ""
-#: models.py:2129
+#: models.py:2194
msgid "Re-import"
msgstr ""
-#: models.py:2130
+#: models.py:2195
msgid "Archive"
msgstr ""
-#: models.py:2132
+#: models.py:2197
msgid "Unarchive"
msgstr ""
-#: models.py:2274
+#: models.py:2198 widgets.py:129 templates/ishtar/form_delete.html:11
+msgid "Delete"
+msgstr ""
+
+#: models.py:2339
msgid "Organizations"
msgstr ""
-#: models.py:2276
+#: models.py:2341
msgid "Can view all Organizations"
msgstr ""
-#: models.py:2277
+#: models.py:2342
msgid "Can view own Organization"
msgstr ""
-#: models.py:2278
+#: models.py:2343
msgid "Can add own Organization"
msgstr ""
-#: models.py:2280
+#: models.py:2345
msgid "Can change own Organization"
msgstr ""
-#: models.py:2282
+#: models.py:2347
msgid "Can delete own Organization"
msgstr ""
-#: models.py:2317
+#: models.py:2382
msgid "Groups"
msgstr ""
-#: models.py:2322
+#: models.py:2387
msgid "Person types"
msgstr ""
-#: models.py:2330
+#: models.py:2398
msgid "Title type"
msgstr ""
-#: models.py:2331
+#: models.py:2399
msgid "Title types"
msgstr ""
-#: models.py:2340
+#: models.py:2408
msgid "Mr"
msgstr ""
-#: models.py:2341
+#: models.py:2409
msgid "Miss"
msgstr ""
-#: models.py:2342
+#: models.py:2410
msgid "Mr and Mrs"
msgstr ""
-#: models.py:2343
+#: models.py:2411
msgid "Mrs"
msgstr ""
-#: models.py:2344
+#: models.py:2412
msgid "Doctor"
msgstr ""
-#: models.py:2374
+#: models.py:2442
msgid "Contact type"
msgstr ""
-#: models.py:2377 models.py:2441
+#: models.py:2445 models.py:2509
msgid "Types"
msgstr ""
-#: models.py:2380
+#: models.py:2448
msgid "Is attached to"
msgstr ""
-#: models.py:2385
+#: models.py:2453
msgid "Persons"
msgstr ""
-#: models.py:2387
+#: models.py:2455
msgid "Can view all Persons"
msgstr ""
-#: models.py:2388
+#: models.py:2456
msgid "Can view own Person"
msgstr ""
-#: models.py:2389
+#: models.py:2457
msgid "Can add own Person"
msgstr ""
-#: models.py:2390
+#: models.py:2458
msgid "Can change own Person"
msgstr ""
-#: models.py:2391
+#: models.py:2459
msgid "Can delete own Person"
msgstr ""
-#: models.py:2569
+#: models.py:2637
msgid "Advanced shortcut menu"
msgstr ""
-#: models.py:2572
+#: models.py:2640
msgid "Ishtar user"
msgstr ""
-#: models.py:2573
+#: models.py:2641
msgid "Ishtar users"
msgstr ""
-#: models.py:2616
+#: models.py:2683
msgid "To modify the password use the form in Auth > User"
msgstr ""
-#: models.py:2622
+#: models.py:2689
msgid "Author types"
msgstr ""
-#: models.py:2654
+#: models.py:2721
msgid "Source types"
msgstr ""
-#: models.py:2662
+#: models.py:2729
msgid "Support types"
msgstr ""
-#: models.py:2670
+#: models.py:2737
msgid "Formats"
msgstr ""
-#: models.py:2677
+#: models.py:2744
msgid "External ID"
msgstr ""
-#: models.py:2680
+#: models.py:2747
msgid "Support"
msgstr ""
-#: models.py:2684
+#: models.py:2751
msgid "Scale"
msgstr ""
-#: models.py:2698
+#: models.py:2765
msgid "Item number"
msgstr ""
-#: models.py:2699
+#: models.py:2766
msgid "Ref."
msgstr ""
-#: models.py:2702
+#: models.py:2769
msgid "Internal ref."
msgstr ""
-#: models.py:2745
+#: models.py:2812
msgid "Surface (m2)"
msgstr ""
-#: models.py:2746 templates/sheet_ope.html:46 templates/sheet_ope.html.py:107
+#: models.py:2813 templates/sheet_ope.html:46 templates/sheet_ope.html.py:107
msgid "Localisation"
msgstr ""
-#: models.py:2771
+#: models.py:2838
msgid "Is preventive"
msgstr ""
-#: models.py:2775
+#: models.py:2842
msgid "Operation types"
msgstr ""
-#: models.py:2804
+#: models.py:2871
msgid "Preventive"
msgstr ""
-#: models.py:2805
+#: models.py:2872
msgid "Research"
msgstr ""
-#: utils.py:74
+#: utils.py:81
msgid " (...)"
msgstr ""
-#: utils.py:107
+#: utils.py:114
msgid "Load another random image?"
msgstr ""
-#: views.py:111
+#: views.py:114
msgid "New person"
msgstr ""
-#: views.py:119
+#: views.py:122
msgid "Person modification"
msgstr ""
-#: views.py:134
+#: views.py:137
msgid "Person deletion"
msgstr ""
-#: views.py:145
+#: views.py:148
msgid "New organization"
msgstr ""
-#: views.py:152
+#: views.py:155
msgid "Organization modification"
msgstr ""
-#: views.py:168
+#: views.py:171
msgid "Organization deletion"
msgstr ""
-#: views.py:175
+#: views.py:178
msgid "Account management"
msgstr ""
-#: views.py:181
+#: views.py:184
msgid "Account deletion"
msgstr ""
-#: views.py:233
+#: views.py:236
msgid "Archaeological file"
msgstr ""
-#: views.py:236
+#: views.py:239
msgid "Context record"
msgstr ""
-#: views.py:238
+#: views.py:241
msgid "Find"
msgstr ""
-#: views.py:1238 views.py:1281
+#: views.py:243
+msgid "Treatment request"
+msgstr ""
+
+#: views.py:244
+msgid "Treatment"
+msgstr ""
+
+#: views.py:1285 views.py:1328
msgid "Operation not permitted."
msgstr ""
-#: views.py:1240
+#: views.py:1287
#, python-format
msgid "New %s"
msgstr ""
-#: views.py:1300 views.py:1354
+#: views.py:1347 views.py:1400
msgid "Operations"
msgstr ""
-#: views.py:1553 templates/ishtar/import_list.html:43
+#: views.py:1351 views.py:1407
+msgid "Finds"
+msgstr ""
+
+#: views.py:1599 templates/ishtar/import_list.html:43
msgid "Link unmatched items"
msgstr ""
-#: views.py:1568
+#: views.py:1614
msgid "Delete import"
msgstr ""
-#: views.py:1607
+#: views.py:1653
msgid "Merge persons"
msgstr ""
-#: views.py:1631
+#: views.py:1677
msgid "Select the main person"
msgstr ""
-#: views.py:1640
+#: views.py:1686
msgid "Merge organization"
msgstr ""
-#: views.py:1650
+#: views.py:1696
msgid "Select the main organization"
msgstr ""
-#: views.py:1690 views.py:1706
+#: views.py:1736 views.py:1752
msgid "Corporation manager"
msgstr ""
-#: widgets.py:239 widgets.py:347 widgets.py:463
+#: widgets.py:258 widgets.py:365 widgets.py:480
msgid "Search..."
msgstr ""
-#: widgets.py:623 templatetags/window_tables.py:79
+#: widgets.py:670 templatetags/window_tables.py:91
msgid "No results"
msgstr ""
-#: widgets.py:624 templatetags/window_tables.py:80
+#: widgets.py:671 templatetags/window_tables.py:92
msgid "Loading..."
msgstr ""
-#: widgets.py:625
+#: widgets.py:672
msgid "Remove"
msgstr ""
-#: wizards.py:323 templates/ishtar/import_delete.html:20
+#: wizards.py:342 templates/ishtar/import_delete.html:20
msgid "Yes"
msgstr ""
-#: wizards.py:325
+#: wizards.py:344
msgid "No"
msgstr ""
-#: wizards.py:1249
+#: wizards.py:1313
#, python-format
msgid "[%(app_name)s] Account creation/modification"
msgstr ""
@@ -1518,11 +1538,11 @@ msgid "The %(app_name)s team"
msgstr ""
#: templates/base.html:41
-msgid "Searches in the shortcut menu deals with all items."
+msgid "Searches in the shortcut menu deal with all items."
msgstr ""
#: templates/base.html:42
-msgid "Searches in the shortcut menu deals with only your items."
+msgid "Searches in the shortcut menu deal with only your items."
msgstr ""
#: templates/base.html:49
@@ -1686,7 +1706,7 @@ msgid "Operator's reference code:"
msgstr ""
#: templates/sheet_ope.html:36
-msgid "Town planning service:"
+msgid "Planning service:"
msgstr ""
#: templates/sheet_ope.html:37
@@ -1846,7 +1866,7 @@ msgid "where the magic happens."
msgstr ""
#: templates/window.html:40 templates/blocks/JQueryJqGrid.html:28
-#: templates/ishtar/manage_basket.html:9
+#: templates/ishtar/manage_basket.html:12
msgid "Add"
msgstr ""
@@ -1926,7 +1946,7 @@ msgstr ""
#: templates/ishtar/import_list.html:58 templates/ishtar/merge.html:31
#: templates/ishtar/simple_form.html:7
#: templates/ishtar/wizard/confirm_wizard.html:42
-#: templates/ishtar/wizard/default_wizard.html:30
+#: templates/ishtar/wizard/default_wizard.html:31
#: templates/ishtar/wizard/search.html:13
#: templates/ishtar/wizard/validation_bar.html:4
msgid "Validate"
@@ -1973,11 +1993,11 @@ msgstr ""
msgid "Control file"
msgstr ""
-#: templates/ishtar/manage_basket.html:7
-msgid "Checking \"Select all\" only select the current page."
+#: templates/ishtar/manage_basket.html:9
+msgid "Checking \"Select all\" only selects the current page."
msgstr ""
-#: templates/ishtar/manage_basket.html:10
+#: templates/ishtar/manage_basket.html:13
msgid "Basket content"
msgstr ""
@@ -2070,11 +2090,11 @@ msgid "No person in this organization"
msgstr ""
#: templates/ishtar/sheet_organization.html:38
-msgid "General contractor organization of archaelogical files"
+msgid "General contractor organization of archaeological files"
msgstr ""
#: templates/ishtar/sheet_organization.html:43
-msgid "Town planning service of archaelogical files"
+msgid "Planning service of archaeological files"
msgstr ""
#: templates/ishtar/sheet_person.html:21
@@ -2105,15 +2125,18 @@ msgid "Associated operations as responsible"
msgstr ""
#: templates/ishtar/sheet_person.html:80
-msgid "In charge of archaelogical files"
+#: templates/ishtar/wizard/wizard_person_deletion.html:6
+msgid "In charge of archaeological files"
msgstr ""
#: templates/ishtar/sheet_person.html:85
-msgid "General contractor of archaelogical files"
+#: templates/ishtar/wizard/wizard_person_deletion.html:14
+msgid "General contractor of archaeological files"
msgstr ""
#: templates/ishtar/sheet_person.html:90
-msgid "Responsible for town planning service of archaelogical files"
+#: templates/ishtar/wizard/wizard_person_deletion.html:22
+msgid "Responsible for planning service of archaeological files"
msgstr ""
#: templates/ishtar/sheet_person.html:96
@@ -2185,8 +2208,8 @@ msgstr ""
#: templates/ishtar/blocks/window_nav.html:17
msgid ""
-"Are you sure to restore to this version? All changement made since this "
-"version will be lost."
+"Are you sure to restore to this version? All changes made since this version "
+"will be lost."
msgstr ""
#: templates/ishtar/blocks/window_nav.html:22
@@ -2316,7 +2339,7 @@ msgstr ""
msgid "Would you like to save them?"
msgstr ""
-#: templates/ishtar/wizard/default_wizard.html:36
+#: templates/ishtar/wizard/default_wizard.html:37
#: templates/ishtar/wizard/parcels_wizard.html:24
#: templates/ishtar/wizard/relations_wizard.html:23
#: templates/ishtar/wizard/search.html:20
@@ -2324,9 +2347,10 @@ msgstr ""
msgid "Add/Modify"
msgstr ""
-#: templates/ishtar/wizard/default_wizard.html:58
+#: templates/ishtar/wizard/default_wizard.html:59
msgid ""
-"The form has changed if you don't validate it all your changes will be lost."
+"The form has changed. If you don't validate it, all your changes will be "
+"lost."
msgstr ""
#: templates/ishtar/wizard/parcels_wizard.html:12
@@ -2385,18 +2409,6 @@ msgstr ""
msgid "Adminact: operator of archaeological operations"
msgstr ""
-#: templates/ishtar/wizard/wizard_person_deletion.html:6
-msgid "In charge of archaeological files"
-msgstr ""
-
-#: templates/ishtar/wizard/wizard_person_deletion.html:14
-msgid "General contractor of archaeological files"
-msgstr ""
-
-#: templates/ishtar/wizard/wizard_person_deletion.html:22
-msgid "Responsible town planning service of archaeological files"
-msgstr ""
-
#: templates/ishtar/wizard/wizard_person_deletion.html:30
msgid "Scientist in charge of archaeological files"
msgstr ""
diff --git a/ishtar_common/migrations/0011_generate_title.py b/ishtar_common/migrations/0011_generate_title.py
index 3fcb82ee5..d30850cab 100644
--- a/ishtar_common/migrations/0011_generate_title.py
+++ b/ishtar_common/migrations/0011_generate_title.py
@@ -15,6 +15,7 @@ TYPE = (
class Migration(SchemaMigration):
+ no_dry_run = True
def forwards(self, orm):
keys = {}
diff --git a/ishtar_common/migrations/0015_remove_ishtar_local_prefix.py b/ishtar_common/migrations/0015_remove_ishtar_local_prefix.py
index 67624b039..38532daee 100644
--- a/ishtar_common/migrations/0015_remove_ishtar_local_prefix.py
+++ b/ishtar_common/migrations/0015_remove_ishtar_local_prefix.py
@@ -6,6 +6,7 @@ from django.db import models
class Migration(SchemaMigration):
+ no_dry_run = True
def forwards(self, orm):
if not db.dry_run:
diff --git a/ishtar_common/models.py b/ishtar_common/models.py
index 72a3432f8..ccb817adc 100644
--- a/ishtar_common/models.py
+++ b/ishtar_common/models.py
@@ -25,6 +25,7 @@ import copy
import datetime
from PIL import Image
from importlib import import_module
+import logging
import os
import re
import shutil
@@ -65,6 +66,9 @@ from ishtar_common.data_importer import Importer, ImportFormater, \
TypeFormater, YearFormater, StrToBoolean, FileFormater
+logger = logging.getLogger(__name__)
+
+
def post_save_user(sender, **kwargs):
user = kwargs['instance']
try:
@@ -95,6 +99,7 @@ class Imported(models.Model):
class ValueGetter(object):
_prefix = ""
GET_VALUES_EXTRA = []
+ EXTRA_FULL_FIELDS_LABELS = {}
def get_values(self, prefix=''):
if not prefix:
@@ -249,9 +254,10 @@ class OwnPerms:
query = cls.get_query_owns(user)
if not query and not replace_query:
return cls.objects.filter(pk__isnull=True)
- q = cls.objects.filter(query)
+ if query:
+ q = cls.objects.filter(query)
if replace_query:
- q = cls.objects.filter(**replace_query)
+ q = cls.objects.filter(replace_query)
if limit:
items += list(q.order_by('-pk')[:limit])
else:
@@ -408,10 +414,12 @@ class GeneralType(Cached, models.Model):
new_vals = []
if not initial:
return []
+ if type(initial) not in (list, tuple):
+ initial = [initial]
for value in initial:
try:
pk = int(value)
- except ValueError:
+ except (ValueError, TypeError):
continue
if pk in type_pks:
continue
@@ -442,6 +450,7 @@ class GeneralType(Cached, models.Model):
keys = ['__get_types']
keys += [u"{}".format(ex) for ex in exclude] + [
empty_first and 'empty_first' or ''] + [u"{}".format(default)]
+ keys += [u'{}-{}'.format(unicode(k), dct[k]) for k in dct]
cache_key, value = get_cache(cls, keys)
if value and not force:
return value
@@ -480,7 +489,10 @@ class GeneralType(Cached, models.Model):
pass
items = cls.objects.filter(**dct)
if default and default != "None":
- exclude.append(default.txt_idx)
+ if hasattr(default, 'txt_idx'):
+ exclude.append(default.txt_idx)
+ else:
+ exclude.append(default)
if exclude:
items = items.exclude(txt_idx__in=exclude)
for item in items.order_by(*cls._meta.ordering).all():
@@ -659,7 +671,7 @@ class ImageModel(models.Model):
null=True, max_length=255)
IMAGE_MAX_SIZE = settings.IMAGE_MAX_SIZE
THUMB_MAX_SIZE = settings.THUMB_MAX_SIZE
- IMAGE_PREFIX = '/'
+ IMAGE_PREFIX = ''
class Meta:
abstract = True
@@ -1487,15 +1499,15 @@ class Address(BaseHistorizedItem):
if self.phone:
if lbl:
lbl += u"\n"
- lbl += u"{}{}".format(unicode(_("Tel: ")), self.phone)
+ lbl += u"{} {}".format(unicode(_("Tel: ")), self.phone)
if self.mobile_phone:
if lbl:
lbl += u"\n"
- lbl += u"{}{}".format(unicode(_("Mobile: ")), self.mobile_phone)
+ lbl += u"{} {}".format(unicode(_("Mobile: ")), self.mobile_phone)
if self.email:
if lbl:
lbl += u"\n"
- lbl += u"{}{}".format(unicode(_("Email: ")), self.email)
+ lbl += u"{} {}".format(unicode(_("Email: ")), self.email)
return lbl
@@ -1607,7 +1619,7 @@ def get_importer_models():
('archaeological_context_records.models.RecordRelations',
_(u"Context record relations"))] + MODELS
MODELS = [('archaeological_finds.models.BaseFind',
- _(u"Finds")), ] + MODELS
+ _(u"Base finds")), ] + MODELS
return MODELS
@@ -1995,7 +2007,9 @@ TARGET_MODELS = [
('archaeological_operations.models.OperationType', _(u"Operation type")),
('archaeological_operations.models.Period', _(u"Period")),
('archaeological_operations.models.ReportState', _(u"Report state")),
+ ('archaeological_operations.models.RemainType', _(u"Remain type")),
('archaeological_context_records.models.Unit', _(u"Unit")),
+ ('archaeological_context_records.models.ActivityType', _(u"Activity type")),
('archaeological_finds.models.MaterialType', _(u"Material")),
('archaeological_finds.models.ConservatoryState',
_(u"Conservatory state")),
@@ -2077,7 +2091,9 @@ class FormaterType(models.Model):
kwargs['many_split'] = self.many_split
if self.formater_type == 'TypeFormater':
if self.options not in TARGET_MODELS_KEYS:
- print('%s not in TARGET_MODELS_KEYS' % self.options)
+ logger.warning(
+ "**WARN FormaterType.get_formater_type**: {} "
+ "is not in TARGET_MODELS_KEYS".format(self.options))
return
model = None
if self.options in dir():
@@ -2630,7 +2646,6 @@ class IshtarUser(User):
surname = user.first_name or default
name = user.last_name or default
email = user.email
- person_type = None
if user.is_superuser:
ADMINISTRATOR, created = PersonType.objects.get_or_create(
txt_idx='administrator')
diff --git a/ishtar_common/static/js/ishtar.js b/ishtar_common/static/js/ishtar.js
index 8abf23289..b5f4f1a79 100644
--- a/ishtar_common/static/js/ishtar.js
+++ b/ishtar_common/static/js/ishtar.js
@@ -102,6 +102,18 @@ function init_shortcut_fields(){
load_shortcut_menu
);
});
+ $("#current_treatment").change(function(){
+ $.post('/' + url_path + 'update-current-item/',
+ {item:'treatment', value:$("#current_treatment").val()},
+ load_shortcut_menu
+ );
+ });
+ $("#current_treatmentfile").change(function(){
+ $.post('/' + url_path + 'update-current-item/',
+ {item:'treatmentfile', value:$("#current_treatmentfile").val()},
+ load_shortcut_menu
+ );
+ });
}
function init_advanced_shortcut_fields(){
diff --git a/ishtar_common/static/media/style.css b/ishtar_common/static/media/style.css
index 00fed380d..b1939eaf0 100644
--- a/ishtar_common/static/media/style.css
+++ b/ishtar_common/static/media/style.css
@@ -60,6 +60,10 @@ a.add-button,
color:#000;
}
+#context_menu .blue {
+ color:#00a8ff;
+}
+
.chosen-container,
#context_menu .green,
#context_menu .red,
@@ -272,7 +276,9 @@ button.ui-widget-header:hover {
.chosen-container-single .chosen-single{
background: none;
background-color: #fff;
- border-radius:4px;
+ border-radius: 0;
+ box-shadow: none;
+ border: 1px solid #fff;
}
textarea,
@@ -847,6 +853,11 @@ ul.form .help_text{
.autocomplete{
width:350px;
+ font-size: 13px;
+}
+
+#current_items .autocomplete{
+ width:400px;
}
.delete td{
diff --git a/ishtar_common/templates/base.html b/ishtar_common/templates/base.html
index 7101ed7de..dcd3043ca 100644
--- a/ishtar_common/templates/base.html
+++ b/ishtar_common/templates/base.html
@@ -38,8 +38,8 @@
var get_find_url = '{% url "get-find-shortcut" %}';
var activate_all_search_url = '{% url "activate-all-search" %}';
var activate_own_search_url = '{% url "activate-own-search" %}';
- var activate_all_search_msg = "{% trans 'Searches in the shortcut menu deals with all items.' %}";
- var activate_own_search_msg = "{% trans 'Searches in the shortcut menu deals with only your items.' %}";
+ var activate_all_search_msg = "{% trans 'Searches in the shortcut menu deal with all items.' %}";
+ var activate_own_search_msg = "{% trans 'Searches in the shortcut menu deal with only your items.' %}";
</script>
</head>
<body{% if current_theme%} id='{{current_theme}}'{%endif%}>
diff --git a/ishtar_common/templates/ishtar/blocks/window_nav.html b/ishtar_common/templates/ishtar/blocks/window_nav.html
index 4ce316217..3c52063f4 100644
--- a/ishtar_common/templates/ishtar/blocks/window_nav.html
+++ b/ishtar_common/templates/ishtar/blocks/window_nav.html
@@ -14,7 +14,7 @@
<span class='history-nav'> </span>
{% endif %}
{% if next %}
- <a class='history-nav' title="{% trans 'Restore this version' %}" href="#" onclick='if(confirm("{%trans 'Are you sure to restore to this version? All changement made since this version will be lost.' %}")){load_url("{% url revert_url item.pk item.history_date|date:"c"%}");closeAllWindows();load_window("{% url show_url item.pk None %}");}'>
+ <a class='history-nav' title="{% trans 'Restore this version' %}" href="#" onclick='if(confirm("{%trans 'Are you sure to restore to this version? All changes made since this version will be lost.' %}")){load_url("{% url revert_url item.pk item.history_date|date:"c"%}");closeAllWindows();load_window("{% url show_url item.pk None %}");}'>
<span class="fa-stack fa-lg">
<i class="fa fa-circle fa-stack-2x"></i>
<i class="fa fa-history fa-stack-1x fa-inverse"></i>
diff --git a/ishtar_common/templates/ishtar/manage_basket.html b/ishtar_common/templates/ishtar/manage_basket.html
index 64793c46d..de17f3ad7 100644
--- a/ishtar_common/templates/ishtar/manage_basket.html
+++ b/ishtar_common/templates/ishtar/manage_basket.html
@@ -4,7 +4,10 @@
<h2>{{page_name}}{% trans ":"%} {{basket}}</h2>
<form enctype="multipart/form-data" action="." method="post">{% csrf_token %}
<div class='form'>
-<p class='alert'><i class="fa fa-exclamation-triangle" aria-hidden="true"></i> {% trans 'Checking "Select all" only select the current page.' %}</p>
+<p class='alert'>
+ <i class="fa fa-exclamation-triangle" aria-hidden="true"></i>
+ {% trans 'Checking "Select all" only selects the current page.' %}
+</p>
{{form}}
<button id='add_to' onclick='return false'>{% trans "Add" %}</button>
<h3>{% trans "Basket content" %}</h3>
diff --git a/ishtar_common/templates/ishtar/sheet_organization.html b/ishtar_common/templates/ishtar/sheet_organization.html
index 8a47c35f5..1f4bd77b7 100644
--- a/ishtar_common/templates/ishtar/sheet_organization.html
+++ b/ishtar_common/templates/ishtar/sheet_organization.html
@@ -35,12 +35,12 @@
{% endfor %}
</table>
-{% trans "General contractor organization of archaelogical files" as af %}
+{% trans "General contractor organization of archaeological files" as af %}
{% if item.general_contractor_files.count %}
{% dynamic_table_document af 'files' 'corporation_general_contractor' item.pk '' output %}
{% endif %}
-{% trans "Town planning service of archaelogical files" as af %}
+{% trans "Planning service of archaeological files" as af %}
{% if item.planning_service_files.count %}
{% dynamic_table_document af 'files' 'planning_service' item.pk '' output %}
{% endif %}
diff --git a/ishtar_common/templates/ishtar/sheet_person.html b/ishtar_common/templates/ishtar/sheet_person.html
index c84c56996..bcf39c363 100644
--- a/ishtar_common/templates/ishtar/sheet_person.html
+++ b/ishtar_common/templates/ishtar/sheet_person.html
@@ -77,17 +77,17 @@
{% dynamic_table_document ao 'operations' 'in_charge' item.pk '' output %}
{% endif %}
-{% trans "In charge of archaelogical files" as af %}
+{% trans "In charge of archaeological files" as af %}
{% if item.file_responsability.count %}
{% dynamic_table_document af 'files' 'in_charge' item.pk '' output %}
{% endif %}
-{% trans "General contractor of archaelogical files" as af %}
+{% trans "General contractor of archaeological files" as af %}
{% if item.general_contractor_files.count %}
{% dynamic_table_document af 'files' 'general_contractor' item.pk '' output %}
{% endif %}
-{% trans "Responsible for town planning service of archaelogical files" as af %}
+{% trans "Responsible for planning service of archaeological files" as af %}
{% if item.responsible_town_planning_service_files.count %}
{% dynamic_table_document af 'files' 'responsible_town_planning_service' item.pk '' output %}
{% endif %}
diff --git a/ishtar_common/templates/ishtar/wizard/confirm_wizard.html b/ishtar_common/templates/ishtar/wizard/confirm_wizard.html
index 9007c867c..1fbaadcd1 100644
--- a/ishtar_common/templates/ishtar/wizard/confirm_wizard.html
+++ b/ishtar_common/templates/ishtar/wizard/confirm_wizard.html
@@ -6,9 +6,9 @@
<form action="." method="post">{% csrf_token %}
<ul id='form_path'>
{% for step in previous_steps %}
- <li><button name="form_prev_step" value="{{forloop.counter0}}">{{step.form_label}}</button></li>
+ <li><button name="form_prev_step" value="{{forloop.counter0}}">{{step}}</button></li>
{% endfor %}
- <li class='current'><a href='#'>{{current_step.form_label}}</a></li>
+ <li class='current'><a href='#'>{{current_step_label}}</a></li>
</ul>
</form>
<form action="." method="post">{% csrf_token %}
diff --git a/ishtar_common/templates/ishtar/wizard/default_wizard.html b/ishtar_common/templates/ishtar/wizard/default_wizard.html
index 6491b7a0f..fad1895bd 100644
--- a/ishtar_common/templates/ishtar/wizard/default_wizard.html
+++ b/ishtar_common/templates/ishtar/wizard/default_wizard.html
@@ -10,11 +10,11 @@
<form action="." method="post">{% csrf_token %}
<ul id='form_path'>
{% for step in previous_steps %}
- <li><button class='change_step' name="form_prev_step" value="{{forloop.counter0}}">{{step.form_label}}</button></li>
+ <li><button class='change_step' name="form_prev_step" value="{{forloop.counter0}}">{{step}}</button></li>
{% endfor %}
- <li class='current'><a href='#'>{{current_step.form_label}}</a></li>
+ <li class='current'><a href='#'>{{current_step_label}}</a></li>
{% for step in next_steps %}
- <li><button class='change_step' name="form_prev_step" value="{{forloop.counter|add:previous_step_counter}}">{{step.form_label}}</button></li>
+ <li><button class='change_step' name="form_prev_step" value="{{forloop.counter|add:previous_step_counter}}">{{step}}</button></li>
{% endfor %}
</ul>
</form>
@@ -24,6 +24,7 @@
<div class='form'>
{{ wizard.form.media }}
{{ wizard.management_form }}
+{% block form_head %}{% endblock %}
{% block form_detail %}
{% if wizard.form.forms %}
{{ wizard.form.management_form }}
@@ -55,7 +56,7 @@ $(document).ready(function(){
$('form :input').change(function(){form_changed=true;});
$('.change_step').click(function(){
if(!form_changed ||
- confirm("{% trans "The form has changed if you don't validate it all your changes will be lost." %}")){
+ confirm("{% trans "The form has changed. If you don't validate it, all your changes will be lost." %}")){
return true;
}
return false;
diff --git a/ishtar_common/templates/ishtar/wizard/wizard_person_deletion.html b/ishtar_common/templates/ishtar/wizard/wizard_person_deletion.html
index 03b941c60..86286fad0 100644
--- a/ishtar_common/templates/ishtar/wizard/wizard_person_deletion.html
+++ b/ishtar_common/templates/ishtar/wizard/wizard_person_deletion.html
@@ -19,7 +19,7 @@
{% endif %}
{% if current_object.responsible_town_planning_service.count %}
-<h3>{% trans "Responsible town planning service of archaeological files" %}</h3>
+<h3>{% trans "Responsible for planning service of archaeological files" %}</h3>
<ul class='list'>
{% for file in current_object.responsible_town_planning_service.all %}
<li>{{file}} <a class='display_details_inline' href="#" onclick='load_window("{%url show-file file.pk ''%}")'><i class="fa fa-info-circle" aria-hidden="true"></i></a></li>{% endfor %}
diff --git a/ishtar_common/templates/sheet_ope.html b/ishtar_common/templates/sheet_ope.html
index 28390af45..1e18e8b7e 100644
--- a/ishtar_common/templates/sheet_ope.html
+++ b/ishtar_common/templates/sheet_ope.html
@@ -33,7 +33,7 @@
<p><label>{%trans "Related file:"%}</label> <span class='value'><a href='{% url show-file item.related_file.pk ''%}'>{{ item.related_file }}</a></span></p><!-- Displayed as Year/index/Commune/Common_name This should be a link to the file sheet of the related file -->
{% if item.related_file.is_preventive %}
{% if item.operator_reference_code %}<p><label>{%trans "Operator's reference code:"%}</label> <span class='value'>{{ item.operator_reference_code }}</span></p>{% endif %}
-{% if item.related_file.town_planning_service %}<p><label>{%trans "Town planning service:"%}</label> <span class='value'>{{ item.related_file.town_planning_service }}</span></p>{% endif %}
+{% if item.related_file.town_planning_service %}<p><label>{%trans "Planning service:"%}</label> <span class='value'>{{ item.related_file.town_planning_service }}</span></p>{% endif %}
{% if item.related_file.permit_type %}<p><label>{%trans "Permit type:"%}</label> <span class='value'>{{ item.related_file.permit_type }}</span></p>{% endif %}
{% if item.related_file.permit_reference %}<p><label>{%trans "Permit reference:"%}</label> <span class='value'>{{ item.related_file.permit_reference }}</span></p>{% endif %}
{% if item.related_file.general_contractor.attached_to %}<p><label>{%trans "General contractor organisation:"%}</label> <span class='value'>{{ item.related_file.general_contractor.attached_to }}</span></p>{% endif %} <!-- Contractor's organisation displayed as concat of Name/Adress/postal_code/city -->
diff --git a/ishtar_common/templatetags/window_tables.py b/ishtar_common/templatetags/window_tables.py
index acb3d4a0a..05592557a 100644
--- a/ishtar_common/templatetags/window_tables.py
+++ b/ishtar_common/templatetags/window_tables.py
@@ -15,9 +15,11 @@ from ishtar_common.widgets import JQueryJqGrid
from archaeological_files.models import File
from archaeological_operations.models import OperationSource, Operation
from archaeological_context_records.models import ContextRecord, \
- ContextRecordSource, RecordRelations as CRRecordRelations
+ ContextRecordSource, RecordRelationView, \
+ RecordRelations as CRRecordRelations
from archaeological_finds.models import Find, FindSource, \
- FindUpstreamTreatments, FindDownstreamTreatments
+ FindUpstreamTreatments, FindDownstreamTreatments, FindTreatments
+from archaeological_warehouse.models import Container
register = template.Library()
@@ -40,27 +42,37 @@ ASSOCIATED_MODELS['context_records_docs'] = (
ContextRecordSource,
'get-contextrecordsource', 'get-contextrecordsource-full')
ASSOCIATED_MODELS['context_records_relations'] = (
- CRRecordRelations, 'get-contextrecordrelation', '')
+ RecordRelationView, 'get-contextrecordrelation', '')
+ASSOCIATED_MODELS['context_records_relations_detail'] = (
+ CRRecordRelations, 'get-contextrecordrelationdetail', '')
ASSOCIATED_MODELS['finds'] = (Find, 'get-find', 'get-find-full')
ASSOCIATED_MODELS['finds_for_ope'] = (
Find, 'get-find-for-ope', 'get-find-full')
+ASSOCIATED_MODELS['finds_for_treatment'] = (
+ Find, 'get-find-for-treatment', 'get-find-full')
ASSOCIATED_MODELS['finds_docs'] = (
FindSource, 'get-findsource', 'get-findsource-full')
ASSOCIATED_MODELS['finds_upstreamtreatments'] = (
FindUpstreamTreatments, 'get-upstreamtreatment', '')
ASSOCIATED_MODELS['finds_downstreamtreatments'] = (
FindDownstreamTreatments, 'get-downstreamtreatment', '')
+ASSOCIATED_MODELS['treatments'] = (
+ FindTreatments, 'get-treatment', '')
+ASSOCIATED_MODELS['containers'] = (
+ Container, 'get-container', '')
@register.simple_tag(takes_context=True)
def dynamic_table_document(
context, caption, associated_model, key, value,
- table_cols='TABLE_COLS', output='html', large=False):
+ table_cols='TABLE_COLS', output='html', large=False,
+ col_prefix=''):
if not table_cols:
table_cols = 'TABLE_COLS'
model, url, url_full = ASSOCIATED_MODELS[associated_model]
- grid = JQueryJqGrid(None, None, model, table_cols=table_cols)
+ grid = JQueryJqGrid(None, None, model, table_cols=table_cols,
+ col_prefix=col_prefix)
source = unicode(reverse_lazy(url))
source_full = unicode(reverse_lazy(url_full)) if url_full else ''
source_attrs = mark_safe('?submited=1&{}={}'.format(key, value))
@@ -69,7 +81,7 @@ def dynamic_table_document(
t = get_template('ishtar/blocks/window_tables/dynamic_documents.html')
context = template.Context({
'caption': caption,
- 'name': slugify(caption) + '{}'.format(int(time.time())),
+ 'name': '{}{}{}'.format(slugify(caption), key, int(time.time())),
'source': source + source_attrs,
'source_full': source_full,
'simple_source': source,
diff --git a/ishtar_common/tests.py b/ishtar_common/tests.py
index 0c4bbda08..6db425cab 100644
--- a/ishtar_common/tests.py
+++ b/ishtar_common/tests.py
@@ -29,6 +29,7 @@ from django.core.urlresolvers import reverse
from django.template.defaultfilters import slugify
from django.test import TestCase
from django.test.client import Client
+from django.test.simple import DjangoTestSuiteRunner
from ishtar_common import models
@@ -75,6 +76,55 @@ def create_user():
return username, password, user
+class WizardTestFormData(object):
+ """
+ Test set to simulate wizard steps
+ """
+ def __init__(self, name, form_datas, ignored=[], extra_tests=[]):
+ """
+ :param name: explicit name of the test
+ :param form_datas: dict with data for each step - dict key are wizard
+ step name
+ :param ignored: steps to be ignored in wizard processing
+ :param extra_tests: list of extra tests. Theses tests must be functions
+ accepting two parameters: the current test object and the final step
+ response
+ """
+ self.form_datas = form_datas
+ self.ignored = ignored[:]
+ self.extra_tests = extra_tests
+
+ def tests(self, test_object, final_step_response):
+ """
+ Specific tests for theses datas. Raise Exception if not OK.
+ """
+ for test in self.extra_tests:
+ test(test_object, final_step_response)
+
+
+class ManagedModelTestRunner(DjangoTestSuiteRunner):
+ """
+ Test runner that automatically makes all unmanaged models in your Django
+ project managed for the duration of the test run, so that one doesn't need
+ to execute the SQL manually to create them.
+ """
+ def setup_test_environment(self, *args, **kwargs):
+ from django.db.models.loading import get_models
+ self.unmanaged_models = [m for m in get_models()
+ if not m._meta.managed]
+ for m in self.unmanaged_models:
+ m._meta.managed = True
+ super(ManagedModelTestRunner, self).setup_test_environment(*args,
+ **kwargs)
+
+ def teardown_test_environment(self, *args, **kwargs):
+ super(ManagedModelTestRunner, self).teardown_test_environment(*args,
+ **kwargs)
+ # reset unmanaged models
+ for m in self.unmanaged_models:
+ m._meta.managed = False
+
+
class WizardTest(object):
url_name = None
wizard_name = ''
@@ -92,10 +142,29 @@ class WizardTest(object):
def post_wizard(self):
pass
+ def pass_test(self):
+ return False
+
+ def check_response(self, response, current_step):
+ if "errorlist" in response.content:
+ soup = Soup(response.content)
+ errorlist = soup.findAll(
+ "ul", {"class": "errorlist"})
+ errors = []
+ for li in errorlist:
+ lbl = li.findParent().findParent().findChild().text
+ errors.append(u"{} - {}".format(lbl, li.text))
+ raise ValidationError(u"Errors: {} on {}.".format(
+ u" ".join(errors), current_step))
+
def test_wizard(self):
+ if self.pass_test():
+ return
url = reverse(self.url_name)
self.pre_wizard()
- for form_data, ignored in self.form_datas:
+ for test_form_data in self.form_datas:
+ form_data = test_form_data.form_datas
+ ignored = test_form_data.ignored
for idx, step in enumerate(self.steps):
current_step, current_form = step
if current_step in ignored:
@@ -116,28 +185,22 @@ class WizardTest(object):
next_form = self.steps[idx + 1][0]
break
next_idx = next_idx + 1
-
if next_form:
try:
response = self.client.post(url, data)
except ValidationError as e:
+ # on ManagementForm data is missing or has been tampered
+ # error verify the wizard_name or step name
raise ValidationError(u"Errors: {} on {}.".format(
u" - ".join(e.messages), current_step))
- if "errorlist" in response.content:
- soup = Soup(response.content)
- errorlist = soup.findAll(
- "ul", {"class": "errorlist"})
- errors = []
- for li in errorlist:
- lbl = li.findParent().findParent().findChild().text
- errors.append(u"{} - {}".format(lbl, li.text))
- raise ValidationError(u"Errors: {} on {}.".format(
- u" ".join(errors), current_step))
+ self.check_response(response, current_step)
self.assertRedirects(
response,
'/{}/{}'.format(self.url_name, next_form))
else:
response = self.client.post(url, data, follow=True)
+ self.check_response(response, current_step)
+ test_form_data.tests(self, response)
self.post_wizard()
diff --git a/ishtar_common/utils.py b/ishtar_common/utils.py
index 44112bca3..9b3c85694 100644
--- a/ishtar_common/utils.py
+++ b/ishtar_common/utils.py
@@ -60,11 +60,18 @@ def cached_label_changed(sender, **kwargs):
and instance._cached_label_checked:
return
instance._cached_label_checked = True
- lbl = instance._generate_cached_label()
- if lbl != instance.cached_label:
+ cached_labels = ['cached_label']
+ if hasattr(sender, 'CACHED_LABELS'):
+ cached_labels = sender.CACHED_LABELS
+ changed = False
+ for cached_label in cached_labels:
+ lbl = getattr(instance, '_generate_' + cached_label)()
+ if lbl != getattr(instance, cached_label):
+ setattr(instance, cached_label, lbl)
+ changed = True
+ if changed:
if hasattr(instance, '_cascade_change') and instance._cascade_change:
instance.skip_history_when_saving = True
- instance.cached_label = lbl
instance.save()
if hasattr(instance, '_get_associated_cached_labels'):
for item in instance._get_associated_cached_labels():
diff --git a/ishtar_common/views.py b/ishtar_common/views.py
index cd34a2019..d827ae065 100644
--- a/ishtar_common/views.py
+++ b/ishtar_common/views.py
@@ -58,7 +58,7 @@ from menus import menu
from archaeological_files.models import File
from archaeological_operations.models import Operation
from archaeological_context_records.models import ContextRecord
-from archaeological_finds.models import Find
+from archaeological_finds.models import Find, Treatment, TreatmentFile
from archaeological_operations.forms import DashboardForm as DashboardFormOpe
from archaeological_files.forms import DashboardForm as DashboardFormFile
@@ -239,6 +239,9 @@ def shortcut_menu(request):
CURRENT_ITEMS.append((_(u"Context record"), ContextRecord))
if profile.find:
CURRENT_ITEMS.append((_(u"Find"), Find))
+ if profile.warehouse:
+ CURRENT_ITEMS.append((_(u"Treatment request"), TreatmentFile))
+ CURRENT_ITEMS.append((_(u"Treatment"), Treatment))
if hasattr(request.user, 'ishtaruser') and \
request.user.ishtaruser.advanced_shortcut_menu:
dct = {'current_menu': [], 'menu': [],
@@ -261,7 +264,7 @@ def shortcut_menu(request):
'ishtar/blocks/advanced_shortcut_menu.html',
dct, context_instance=RequestContext(request))
dct = {'current_menu': []}
- current_selected_item = None
+ current_selected_item = {}
for lbl, model in CURRENT_ITEMS:
new_selected_item = None
model_name = model.SLUG
@@ -291,7 +294,8 @@ def shortcut_menu(request):
pass
if items:
dct['current_menu'].append((lbl, model_name, cls, items))
- current_selected_item = new_selected_item
+ if new_selected_item:
+ current_selected_item[model_name] = new_selected_item
return render_to_response('ishtar/blocks/shortcut_menu.html', dct,
context_instance=RequestContext(request))
@@ -301,7 +305,9 @@ def get_current_items(request):
for key, model in (('file', File),
('operation', Operation),
('contextrecord', ContextRecord),
- ('find', Find)):
+ ('find', Find),
+ ('treatmentfile', TreatmentFile),
+ ('treatment', Treatment)):
currents[key] = None
if key in request.session and request.session[key]:
try:
@@ -312,6 +318,16 @@ def get_current_items(request):
def unpin(request, item_type):
+ if item_type not in ('find', 'contextrecord', 'operation', 'file',
+ 'treatment', 'treatmentfile'):
+ logger.warning("unpin unknow type: {}".format(item_type))
+ return HttpResponse('nok')
+ request.session['treatment'] = ''
+ if item_type == 'treatment':
+ return HttpResponse('ok')
+ request.session['treatmentfile'] = ''
+ if item_type == 'treatmentfile':
+ return HttpResponse('ok')
request.session['find'] = ''
if item_type == 'find':
return HttpResponse('ok')
@@ -322,7 +338,8 @@ def unpin(request, item_type):
if item_type == 'operation':
return HttpResponse('ok')
request.session['file'] = ''
- return HttpResponse('ok')
+ if item_type == 'file':
+ return HttpResponse('ok')
def update_current_item(request, item_type=None, pk=None):
@@ -462,9 +479,8 @@ def autocomplete_town(request):
for q in q.split(' '):
extra = Q(name__icontains=q)
if settings.COUNTRY == 'fr':
- extra = (extra | Q(numero_insee__istartswith=q) |
- Q(departement__label__istartswith=q))
- query = query & extra
+ extra |= Q(numero_insee__istartswith=q)
+ query &= extra
limit = 20
towns = models.Town.objects.filter(query)[:limit]
data = json.dumps([{'id': town.pk, 'value': unicode(town)}
@@ -528,7 +544,7 @@ HIERARCHIC_FIELDS = ['periods', 'period', 'unit', 'material_types',
def get_item(model, func_name, default_name, extra_request_keys=[],
- base_request={}, bool_fields=[], reversed_bool_fields=[],
+ base_request=None, bool_fields=[], reversed_bool_fields=[],
dated_fields=[], associated_models=[], relative_session_names=[],
specific_perms=[], own_table_cols=None, relation_types_prefix={}):
"""
@@ -577,10 +593,12 @@ def get_item(model, func_name, default_name, extra_request_keys=[],
my_extra_request_keys = copy(model.EXTRA_REQUEST_KEYS)
else:
my_extra_request_keys = copy(extra_request_keys)
- if not base_request and hasattr(model, 'BASE_REQUEST'):
+ if base_request is None and hasattr(model, 'BASE_REQUEST'):
my_base_request = copy(model.BASE_REQUEST)
- else:
+ elif base_request is not None:
my_base_request = copy(base_request)
+ else:
+ my_base_request = {}
if not bool_fields and hasattr(model, 'BOOL_FIELDS'):
my_bool_fields = model.BOOL_FIELDS[:]
else:
@@ -677,7 +695,7 @@ def get_item(model, func_name, default_name, extra_request_keys=[],
request.session[default_name].split('-')[-1]}
else:
dct = {"pk": request.session[default_name]}
- elif dct == base_request:
+ elif dct == (base_request or {}):
# a parent item may be selected in the default menu
for name, key in my_relative_session_names:
if name in request.session and request.session[name]:
@@ -750,7 +768,7 @@ def get_item(model, func_name, default_name, extra_request_keys=[],
alt_dct = dct.copy()
alt_dct.pop(k)
alt_dct.update(or_req)
- query = query | Q(**alt_dct)
+ query |= Q(**alt_dct)
for rtype_prefix in relation_types:
vals = list(relation_types[rtype_prefix])
@@ -775,8 +793,8 @@ def get_item(model, func_name, default_name, extra_request_keys=[],
if not dct:
# fake condition to trick Django (1.4): without it only the
# alt_dct is managed
- query = query & Q(pk__isnull=False)
- query = query | Q(**alt_dct)
+ query &= Q(pk__isnull=False)
+ query |= Q(**alt_dct)
for k, or_req in or_reqs:
altor_dct = alt_dct.copy()
altor_dct.pop(k)
@@ -787,7 +805,7 @@ def get_item(model, func_name, default_name, extra_request_keys=[],
altor_dct[
rtype_prefix + 'right_relations__right_record__' + j] =\
val
- query = query | Q(**altor_dct)
+ query |= Q(**altor_dct)
if own:
query = query & model.get_query_owns(request.user)
@@ -809,7 +827,7 @@ def get_item(model, func_name, default_name, extra_request_keys=[],
and request.session[model_name]
if current:
dct = {upper_key: current}
- query = query & Q(**dct)
+ query &= Q(**dct)
items = model.objects.filter(query).distinct()
# print(items.query)
@@ -910,6 +928,14 @@ def get_item(model, func_name, default_name, extra_request_keys=[],
keys = [keys]
my_vals = []
for k in keys:
+ if hasattr(model, 'EXTRA_REQUEST_KEYS') \
+ and k in model.EXTRA_REQUEST_KEYS:
+ k = model.EXTRA_REQUEST_KEYS[k]
+ if type(k) in (list, tuple):
+ k = k[0]
+ for filtr in ('__icontains', '__contains'):
+ if k.endswith(filtr):
+ k = k[:len(k) - len(filtr)]
vals = [item]
# foreign key may be divided by "." or "__"
splitted_k = []
@@ -929,10 +955,14 @@ def get_item(model, func_name, default_name, extra_request_keys=[],
v = v()
new_vals.append(v)
elif val:
- val = getattr(val, ky)
- if callable(val):
- val = val()
- new_vals.append(val)
+ try:
+ val = getattr(val, ky)
+ if callable(val):
+ val = val()
+ new_vals.append(val)
+ except AttributeError:
+ # must be a query key such as "contains"
+ pass
vals = new_vals
# manage last related objects
if vals and hasattr(vals[0], 'all'):
@@ -981,8 +1011,8 @@ def get_item(model, func_name, default_name, extra_request_keys=[],
lnk = link_template % reverse('show-' + default_name,
args=[data[0], ''])
except NoReverseMatch:
- print(
- '"show-' + default_name + "\" args ("
+ logger.warning(
+ '**WARN "show-' + default_name + '" args ('
+ unicode(data[0]) + ") url not available")
lnk = ''
res = {'id': data[0], 'link': lnk}
@@ -995,9 +1025,9 @@ def get_item(model, func_name, default_name, extra_request_keys=[],
# foreign key may be divided by "." or "__"
for tc in table_col:
if '.' in tc:
- tab_cols.append(tc.split('.')[-1])
+ tab_cols += tc.split('.')
elif '__' in tc:
- tab_cols.append(tc.split('__')[-1])
+ tab_cols += tc.split('__')
else:
tab_cols.append(tc)
k = "__".join(tab_cols)
@@ -1027,6 +1057,8 @@ def get_item(model, func_name, default_name, extra_request_keys=[],
writer = csv.writer(response, **CSV_OPTIONS)
col_names = []
for field_name in table_cols:
+ if type(field_name) in (list, tuple):
+ field_name = " ; ".join(field_name)
if hasattr(model, 'EXTRA_FULL_FIELDS_LABELS') and\
field_name in model.EXTRA_FULL_FIELDS_LABELS:
field = model.EXTRA_FULL_FIELDS_LABELS[field_name]
@@ -1037,6 +1069,11 @@ def get_item(model, func_name, default_name, extra_request_keys=[],
field = model._meta.get_field(field_name)
except:
col_names.append(u"".encode(ENCODING))
+ logger.warning(
+ "**WARN get_item - csv export**: no col name for "
+ "{}\nadd explicit label to "
+ "EXTRA_FULL_FIELDS_LABELS attribute of "
+ "{}".format(field_name, model))
continue
col_names.append(
unicode(field.verbose_name).encode(ENCODING))
@@ -1111,7 +1148,6 @@ def show_item(model, name, extra_dct=None):
context_instance = RequestContext(request)
context_instance.update(dct)
context_instance['output'] = 'html'
- filename = ""
if hasattr(item, 'history_object'):
filename = item.history_object.associated_filename
else:
diff --git a/ishtar_common/widgets.py b/ishtar_common/widgets.py
index 1183836bc..ddbfa91bf 100644
--- a/ishtar_common/widgets.py
+++ b/ishtar_common/widgets.py
@@ -19,12 +19,15 @@
# See the file COPYING for details.
+import logging
+
from django import forms
from django.conf import settings
-from django.core.urlresolvers import reverse
+from django.core.urlresolvers import reverse, NoReverseMatch
from django.db.models import fields
from django.forms import ClearableFileInput
-from django.forms.widgets import flatatt
+from django.forms.widgets import flatatt, \
+ CheckboxSelectMultiple as CheckboxSelectMultipleBase
from django.template import Context, loader
from django.template.defaultfilters import slugify
from django.utils.encoding import smart_unicode
@@ -36,6 +39,8 @@ from django.utils.translation import ugettext_lazy as _
from ishtar_common import models
+logger = logging.getLogger(__name__)
+
reverse_lazy = lazy(reverse, unicode)
@@ -56,6 +61,20 @@ class Select2Multiple(forms.SelectMultiple):
return super(Select2Multiple, self).render(name, value, attrs,
choices)
+class CheckboxSelectMultiple(CheckboxSelectMultipleBase):
+ """
+ Fix initialization bug.
+ Should be corrected on recent Django version.
+ TODO: test and remove (test case: treatment type not keep on modif)
+ """
+ def render(self, name, value, attrs=None, choices=()):
+ if type(value) in (str, unicode):
+ value = value.split(',')
+ if type(value) not in (list, tuple):
+ value = [value]
+ return super(CheckboxSelectMultiple, self).render(name, value, attrs,
+ choices)
+
class MultipleAutocompleteField(forms.MultipleChoiceField):
def __init__(self, *args, **kwargs):
@@ -322,7 +341,6 @@ class JQueryTown(forms.TextInput):
@classmethod
def encode_source(cls, source):
- encoded_src = ''
if isinstance(source, list):
encoded_src = JSONEncoder().encode(source)
elif isinstance(source, str) \
@@ -515,7 +533,8 @@ class JQueryJqGrid(forms.RadioSelect):
def __init__(self, source, form, associated_model, attrs={},
table_cols='TABLE_COLS', multiple=False, multiple_cols=[2],
new=False, new_message="", source_full=None,
- multiple_select=False, sortname="__default__"):
+ multiple_select=False, sortname="__default__",
+ col_prefix=''):
"""
JQueryJqGrid widget init.
@@ -531,6 +550,7 @@ class JQueryJqGrid(forms.RadioSelect):
:param source_full: url to get full listing
:param multiple_select:
:param sortname: column name (model attribute) to use to sort
+ :param col_prefix: prefix to remove to col_names
"""
super(JQueryJqGrid, self).__init__(attrs=attrs)
self.source = source
@@ -546,13 +566,15 @@ class JQueryJqGrid(forms.RadioSelect):
self.new, self.new_message = new, new_message
self.source_full = source_full
self.sortname = sortname
+ self.col_prefix = col_prefix
+ if self.col_prefix and not self.col_prefix.endswith('__'):
+ self.col_prefix += "__"
def get_cols(self, python=False):
jq_col_names, extra_cols = [], []
col_labels = {}
- if hasattr(self.associated_model, self.table_cols + '_LBL'):
- col_labels = getattr(self.associated_model,
- self.table_cols + '_LBL')
+ if hasattr(self.associated_model, 'COL_LABELS'):
+ col_labels = self.associated_model.COL_LABELS
for col_names in getattr(self.associated_model, self.table_cols):
field_verbose_names = []
field_verbose_name, field_name = "", ""
@@ -563,24 +585,26 @@ class JQueryJqGrid(forms.RadioSelect):
keys = col_name.split('__')
if '.' in col_name:
keys = col_name.split('.')
- f_name = ''
for key in keys:
if hasattr(field, 'rel') and field.rel:
field = field.rel.to
try:
field = field._meta.get_field(key)
field_verbose_name = field.verbose_name
- f_name = field.name
except (fields.FieldDoesNotExist, AttributeError):
if hasattr(field, key + '_lbl'):
- f_name = key
field_verbose_name = getattr(field, key + '_lbl')
else:
continue
if field_name:
field_name += "__"
- field_name += f_name
+ if col_name.startswith(self.col_prefix):
+ field_name += col_name[len(self.col_prefix):]
+ else:
+ field_name += col_name
field_verbose_names.append(unicode(field_verbose_name))
+ if not field_name:
+ field_name = "__".join(col_names)
if field_name in col_labels:
jq_col_names.append(unicode(col_labels[field_name]))
elif col_names and col_names[0] in col_labels:
@@ -618,7 +642,11 @@ class JQueryJqGrid(forms.RadioSelect):
col_idx = col_idx and ", ".join(col_idx) or ""
dct['encoding'] = settings.ENCODING or 'utf-8'
- dct['source'] = unicode(self.source)
+ try:
+ dct['source'] = unicode(self.source)
+ except NoReverseMatch:
+ logger.warning('Cannot resolve source for {} widget'.format(
+ self.form))
if unicode(self.source_full) and unicode(self.source_full) != 'None':
dct['source_full'] = unicode(self.source_full)
diff --git a/ishtar_common/wizards.py b/ishtar_common/wizards.py
index c065459f6..4f0295421 100644
--- a/ishtar_common/wizards.py
+++ b/ishtar_common/wizards.py
@@ -18,6 +18,7 @@
# See the file COPYING for details.
import datetime
+import logging
# from functools import wraps
from django.conf import settings
@@ -38,6 +39,8 @@ from django.utils.datastructures import MultiValueDict as BaseMultiValueDict
from django.utils.translation import ugettext_lazy as _
import models
+logger = logging.getLogger(__name__)
+
class MultiValueDict(BaseMultiValueDict):
def get(self, *args, **kwargs):
@@ -124,8 +127,12 @@ class Wizard(NamedUrlWizardView):
wizard_templates = {}
filter_owns = {}
current_obj_slug = ''
+ current_object_key = 'pk'
+ ignore_init_steps = []
file_storage = default_storage
+ saved_args = {} # argument to pass on object save
+
'''
# buggy and unecessary...
def __init__(self, *args, **kwargs):
@@ -165,6 +172,13 @@ class Wizard(NamedUrlWizardView):
return super(Wizard, self).dispatch(request, *args, **kwargs)
+ def get_form_kwargs(self, step=None):
+ kwargs = super(Wizard, self).get_form_kwargs(step)
+ if hasattr(self.form_list[step], 'need_user_for_initialization') and\
+ self.form_list[step].need_user_for_initialization:
+ kwargs['user'] = self.request.user
+ return kwargs
+
def get_prefix(self, *args, **kwargs):
"""As the class name can interfere when reused prefix with the url_name
"""
@@ -188,13 +202,17 @@ class Wizard(NamedUrlWizardView):
templates = [self.wizard_confirm] + templates
return templates
+ def get_ignore_init_steps(self):
+ return ['{}-{}'.format(step, self.url_name) for step in
+ self.ignore_init_steps]
+
def get_context_data(self, form, **kwargs):
"""Add previous, next and current steps to manage the wizard path"""
context = super(Wizard, self).get_context_data(form)
self.request.session['CURRENT_ACTION'] = self.get_wizard_name()
step = self.steps.first
current_step = self.steps.current
- dct = {'current_step': self.form_list[current_step],
+ dct = {'current_step_label': self.form_list[current_step].form_label,
'wizard_label': self.label,
'current_object': self.get_current_object(),
'is_search': current_step.startswith('selec-')
@@ -209,7 +227,7 @@ class Wizard(NamedUrlWizardView):
or (previous_steps and
previous_steps[-1] == self.form_list[step]):
break
- previous_steps.append(self.form_list[step])
+ previous_steps.append(self.form_list[step].form_label)
previous_step_counter += 1
if previous_step_counter >= len(self.steps):
break
@@ -242,7 +260,8 @@ class Wizard(NamedUrlWizardView):
for key in v:
form_key = next_step + prefix + key
prefixed_values[form_key] = v[key]
- if not prefixed_values:
+ if not prefixed_values and \
+ next_step not in self.get_ignore_init_steps():
# simulate a non empty data for form that might be
# valid when empty
prefixed_values['__non_empty_data'] = ''
@@ -250,7 +269,7 @@ class Wizard(NamedUrlWizardView):
if step == next_step:
current_step_passed = True
elif current_step_passed:
- next_steps.append(self.form_list[next_step])
+ next_steps.append(self.form_list[next_step].form_label)
next_step = self.get_next_step(next_step)
context.update({'next_steps': next_steps})
# not last step: validation
@@ -469,6 +488,8 @@ class Wizard(NamedUrlWizardView):
for k in dct:
if k.startswith('pk'):
continue
+ if k not in obj.__class__._meta.get_all_field_names():
+ continue
# False set to None for images and files
if not k.endswith('_id') and (
isinstance(obj.__class__._meta.get_field(k), FileField) or
@@ -483,9 +504,12 @@ class Wizard(NamedUrlWizardView):
elif type(dct[k]) not in (list, tuple):
dct[k] = [dct[k]]
setattr(obj, k, dct[k])
+ if hasattr(obj, 'pre_save'):
+ obj.pre_save()
try:
obj.full_clean()
- except ValidationError:
+ except ValidationError as e:
+ logger.warning(unicode(e))
return self.render(form_list[-1])
for dependant_item in other_objs:
c_item = getattr(obj, dependant_item)
@@ -543,12 +567,25 @@ class Wizard(NamedUrlWizardView):
dct[dependant_item] = c_item
if 'pk' in dct:
dct.pop('pk')
+ # remove non relevant fields
+ all_field_names = self.get_saved_model()._meta.get_all_field_names()
+ for k in dct.copy():
+ if (k.endswith('_id') and k[:-3] not in all_field_names) and \
+ k not in all_field_names:
+ dct.pop(k)
+ saved_args = self.saved_args.copy()
+ for k in saved_args:
+ if k in dct:
+ saved_args[k] = dct.pop(k)
obj = self.get_saved_model()(**dct)
+ if hasattr(obj, 'pre_save'):
+ obj.pre_save()
try:
obj.full_clean()
- except ValidationError:
+ except ValidationError as e:
+ logger.warning(unicode(e))
return self.render(form_list[-1])
- obj.save()
+ obj.save(**saved_args)
for k in adds:
getattr(obj, k).add(adds[k])
# necessary to manage interaction between models like
@@ -561,6 +598,12 @@ class Wizard(NamedUrlWizardView):
old_m2ms = {}
for model in whole_associated_models:
related_model = getattr(obj, model + 's')
+ # manage through
+ if hasattr(related_model, 'through') and related_model.through:
+ related_set_name = str(
+ related_model.through.__name__ + '_set').lower()
+ if hasattr(obj, related_set_name):
+ related_model = getattr(obj, related_set_name)
# clear real m2m
if hasattr(related_model, 'clear'):
old_m2ms[model] = []
@@ -587,6 +630,9 @@ class Wizard(NamedUrlWizardView):
if value not in m2m_items[key]:
if type(value) == dict:
model = related_model.model
+ if hasattr(related_model, 'through') and \
+ related_model.through:
+ model = related_model.through
# not m2m -> foreign key
if not hasattr(related_model, 'clear'):
assert hasattr(model, 'MAIN_ATTR'), \
@@ -611,8 +657,13 @@ class Wizard(NamedUrlWizardView):
else:
if issubclass(model, models.BaseHistorizedItem):
value['history_modifier'] = self.request.user
- value = model.objects.create(**value)
- value.save()
+ if hasattr(model, 'RELATIVE_MODELS') and \
+ self.get_saved_model() in \
+ model.RELATIVE_MODELS:
+ value[model.RELATIVE_MODELS[
+ self.get_saved_model()]] = obj
+ value, created = model.objects.get_or_create(**value)
+ value.save() # force post_save
# check that an item is not add multiple times (forged forms)
if value not in related_model.all() and\
hasattr(related_model, 'add'):
@@ -626,6 +677,7 @@ class Wizard(NamedUrlWizardView):
self.request.session[self.current_obj_slug] = unicode(obj.pk)
self.request.session[self.get_object_name(obj)] = unicode(obj.pk)
dct = {'item': obj}
+ self.current_object = obj
# force evaluation of lazy urls
wizard_done_window = unicode(self.wizard_done_window)
if wizard_done_window:
@@ -877,7 +929,7 @@ class Wizard(NamedUrlWizardView):
current_obj = None
main_form_key = 'selec-' + self.url_name
try:
- idx = self.session_get_value(main_form_key, 'pk')
+ idx = self.session_get_value(main_form_key, self.current_object_key)
idx = int(idx)
current_obj = self.model.objects.get(pk=idx)
except(TypeError, ValueError, ObjectDoesNotExist):
@@ -980,8 +1032,18 @@ class Wizard(NamedUrlWizardView):
if not hasattr(obj, key):
return initial
keys = c_form.form.base_fields.keys()
- query = getattr(obj, key)
- if not obj._meta.ordering:
+ related = getattr(obj, key)
+ # manage through
+ through = False
+ if hasattr(related, 'through') and related.through:
+ related_set_name = str(
+ related.through.__name__ + '_set').lower()
+ if hasattr(obj, related_set_name):
+ through = True
+ related = getattr(obj, related_set_name)
+
+ query = related
+ if not through and not obj._meta.ordering:
query = query.order_by('pk')
for child_obj in query.all():
if not keys: