diff options
Diffstat (limited to 'ishtar_common')
-rw-r--r-- | ishtar_common/__init__.py | 2 | ||||
-rw-r--r-- | ishtar_common/admin.py | 10 | ||||
-rw-r--r-- | ishtar_common/backend.py | 8 | ||||
-rw-r--r-- | ishtar_common/context_processors.py | 3 | ||||
-rw-r--r-- | ishtar_common/data_importer.py | 10 | ||||
-rw-r--r-- | ishtar_common/fixtures/initial_data-fr.json | 2909 | ||||
-rw-r--r-- | ishtar_common/fixtures/initial_importtypes-fr.json | 13278 | ||||
-rw-r--r-- | ishtar_common/fixtures/initial_spatialrefsystem-fr.json | 1068 | ||||
-rw-r--r-- | ishtar_common/forms.py | 4 | ||||
-rw-r--r-- | ishtar_common/forms_common.py | 4 | ||||
-rw-r--r-- | ishtar_common/management/commands/ishtar_migrate_odts.py | 91 | ||||
-rw-r--r-- | ishtar_common/menus.py | 3 | ||||
-rw-r--r-- | ishtar_common/migrations/0001_initial.py | 1238 | ||||
-rw-r--r-- | ishtar_common/migrations/0002_change_ishtaruser_management.py | 25 | ||||
-rw-r--r-- | ishtar_common/migrations/0003_auto_20170421_1613.py | 20 | ||||
-rw-r--r-- | ishtar_common/migrations/0077_auto__add_administrationscript__add_administrationtask.py | 530 | ||||
-rw-r--r-- | ishtar_common/model_merging.py | 22 | ||||
-rw-r--r-- | ishtar_common/models.py | 260 | ||||
-rw-r--r-- | ishtar_common/old_migrations/0001_initial.py | 408 | ||||
-rw-r--r-- | ishtar_common/old_migrations/0002_auto__chg_field_person_surname.py (renamed from ishtar_common/migrations/0002_auto__chg_field_person_surname.py) | 0 | ||||
-rw-r--r-- | ishtar_common/old_migrations/0003_auto__del_field_person_person_type.py (renamed from ishtar_common/migrations/0003_auto__del_field_person_person_type.py) | 0 | ||||
-rw-r--r-- | ishtar_common/old_migrations/0004_auto.py (renamed from ishtar_common/migrations/0004_auto.py) | 0 | ||||
-rw-r--r-- | ishtar_common/old_migrations/0005_auto__add_documenttemplate.py (renamed from ishtar_common/migrations/0005_auto__add_documenttemplate.py) | 0 | ||||
-rw-r--r-- | ishtar_common/old_migrations/0006_auto__chg_field_organization_name__chg_field_historicalorganization_na.py (renamed from ishtar_common/migrations/0006_auto__chg_field_organization_name__chg_field_historicalorganization_na.py) | 0 | ||||
-rw-r--r-- | ishtar_common/old_migrations/0007_auto__add_field_organization_history_creator__add_field_historicalorga.py (renamed from ishtar_common/migrations/0007_auto__add_field_organization_history_creator__add_field_historicalorga.py) | 0 | ||||
-rw-r--r-- | ishtar_common/old_migrations/0008_init_history_creator.py (renamed from ishtar_common/migrations/0008_init_history_creator.py) | 0 | ||||
-rw-r--r-- | ishtar_common/old_migrations/0009_auto__add_field_organization_email__add_field_historicalorganization_e.py (renamed from ishtar_common/migrations/0009_auto__add_field_organization_email__add_field_historicalorganization_e.py) | 0 | ||||
-rw-r--r-- | ishtar_common/old_migrations/0010_auto__del_wizardstep__del_wizard__add_globalvar__chg_field_person_atta.py (renamed from ishtar_common/migrations/0010_auto__del_wizardstep__del_wizard__add_globalvar__chg_field_person_atta.py) | 0 | ||||
-rw-r--r-- | ishtar_common/old_migrations/0011_auto__chg_field_person_surname__chg_field_person_name.py (renamed from ishtar_common/migrations/0011_auto__chg_field_person_surname__chg_field_person_name.py) | 0 | ||||
-rw-r--r-- | ishtar_common/old_migrations/0012_auto__add_field_person_raw_name__chg_field_person_name.py (renamed from ishtar_common/migrations/0012_auto__add_field_person_raw_name__chg_field_person_name.py) | 0 | ||||
-rw-r--r-- | ishtar_common/old_migrations/0013_auto__add_field_organization_merge_key__add_field_historicalorganizati.py (renamed from ishtar_common/migrations/0013_auto__add_field_organization_merge_key__add_field_historicalorganizati.py) | 0 | ||||
-rw-r--r-- | ishtar_common/old_migrations/0014_auto__chg_field_organization_history_creator__chg_field_organization_h.py (renamed from ishtar_common/migrations/0014_auto__chg_field_organization_history_creator__chg_field_organization_h.py) | 0 | ||||
-rw-r--r-- | ishtar_common/old_migrations/0015_auto__chg_field_organization_town__chg_field_historicalorganization_to.py (renamed from ishtar_common/migrations/0015_auto__chg_field_organization_town__chg_field_historicalorganization_to.py) | 0 | ||||
-rw-r--r-- | ishtar_common/old_migrations/0016_auto__add_import.py (renamed from ishtar_common/migrations/0016_auto__add_import.py) | 0 | ||||
-rw-r--r-- | ishtar_common/old_migrations/0017_auto__add_supporttype__add_format.py (renamed from ishtar_common/migrations/0017_auto__add_supporttype__add_format.py) | 0 | ||||
-rw-r--r-- | ishtar_common/old_migrations/0018_auto__add_itemkey.py (renamed from ishtar_common/migrations/0018_auto__add_itemkey.py) | 0 | ||||
-rw-r--r-- | ishtar_common/old_migrations/0019_auto__add_field_itemkey_importer.py (renamed from ishtar_common/migrations/0019_auto__add_field_itemkey_importer.py) | 0 | ||||
-rw-r--r-- | ishtar_common/old_migrations/0020_auto__chg_field_person_title.py (renamed from ishtar_common/migrations/0020_auto__chg_field_person_title.py) | 0 | ||||
-rw-r--r-- | ishtar_common/old_migrations/0021_auto__add_importerdefault__add_importertype__add_importtarget__add_for.py (renamed from ishtar_common/migrations/0021_auto__add_importerdefault__add_importertype__add_importtarget__add_for.py) | 0 | ||||
-rw-r--r-- | ishtar_common/old_migrations/0022_auto__add_field_import_importer_type.py (renamed from ishtar_common/migrations/0022_auto__add_field_import_importer_type.py) | 0 | ||||
-rw-r--r-- | ishtar_common/old_migrations/0023_auto__add_importerdefaultvalues__del_field_importerdefault_value.py (renamed from ishtar_common/migrations/0023_auto__add_importerdefaultvalues__del_field_importerdefault_value.py) | 0 | ||||
-rw-r--r-- | ishtar_common/old_migrations/0024_auto__add_importerduplicatefield__chg_field_importerdefault_target__ad.py (renamed from ishtar_common/migrations/0024_auto__add_importerduplicatefield__chg_field_importerdefault_target__ad.py) | 0 | ||||
-rw-r--r-- | ishtar_common/old_migrations/0025_auto__add_unique_formatertype_formater_type_many_split_options.py (renamed from ishtar_common/migrations/0025_auto__add_unique_formatertype_formater_type_many_split_options.py) | 0 | ||||
-rw-r--r-- | ishtar_common/old_migrations/0026_auto__add_targetkey__add_unique_targetkey_target_value__add_field_impo.py (renamed from ishtar_common/migrations/0026_auto__add_targetkey__add_unique_targetkey_target_value__add_field_impo.py) | 0 | ||||
-rw-r--r-- | ishtar_common/old_migrations/0027_auto__chg_field_targetkey_target.py (renamed from ishtar_common/migrations/0027_auto__chg_field_targetkey_target.py) | 0 | ||||
-rw-r--r-- | ishtar_common/old_migrations/0028_auto__chg_field_targetkey_key__chg_field_targetkey_value.py (renamed from ishtar_common/migrations/0028_auto__chg_field_targetkey_key__chg_field_targetkey_value.py) | 0 | ||||
-rw-r--r-- | ishtar_common/old_migrations/0029_auto.py (renamed from ishtar_common/migrations/0029_auto.py) | 0 | ||||
-rw-r--r-- | ishtar_common/old_migrations/0030_auto__add_state__chg_field_sourcetype_txt_idx__chg_field_authortype_tx.py (renamed from ishtar_common/migrations/0030_auto__add_state__chg_field_sourcetype_txt_idx__chg_field_authortype_tx.py) | 0 | ||||
-rw-r--r-- | ishtar_common/old_migrations/0031_auto__del_unique_targetkey_target_value__add_unique_targetkey_target_k.py (renamed from ishtar_common/migrations/0031_auto__del_unique_targetkey_target_value__add_unique_targetkey_target_k.py) | 0 | ||||
-rw-r--r-- | ishtar_common/old_migrations/0033_auto__add_field_targetkey_associated_import__add_field_targetkey_assoc.py (renamed from ishtar_common/migrations/0033_auto__add_field_targetkey_associated_import__add_field_targetkey_assoc.py) | 0 | ||||
-rw-r--r-- | ishtar_common/old_migrations/0034_auto__add_field_import_encoding.py (renamed from ishtar_common/migrations/0034_auto__add_field_import_encoding.py) | 0 | ||||
-rw-r--r-- | ishtar_common/old_migrations/0035_auto__add_field_importtarget_force_new__add_field_importerduplicatefie.py (renamed from ishtar_common/migrations/0035_auto__add_field_importtarget_force_new__add_field_importerduplicatefie.py) | 0 | ||||
-rw-r--r-- | ishtar_common/old_migrations/0036_auto__add_field_import_imported_images.py (renamed from ishtar_common/migrations/0036_auto__add_field_import_imported_images.py) | 0 | ||||
-rw-r--r-- | ishtar_common/old_migrations/0037_auto__add_field_importertype_slug.py (renamed from ishtar_common/migrations/0037_auto__add_field_importertype_slug.py) | 0 | ||||
-rw-r--r-- | ishtar_common/old_migrations/0038_auto__add_field_importtarget_comment.py (renamed from ishtar_common/migrations/0038_auto__add_field_importtarget_comment.py) | 0 | ||||
-rw-r--r-- | ishtar_common/old_migrations/0039_auto__add_field_import_match_file.py (renamed from ishtar_common/migrations/0039_auto__add_field_import_match_file.py) | 0 | ||||
-rw-r--r-- | ishtar_common/old_migrations/0040_auto__chg_field_person_title.py (renamed from ishtar_common/migrations/0040_auto__chg_field_person_title.py) | 0 | ||||
-rw-r--r-- | ishtar_common/old_migrations/0041_auto__add_field_importertype_unicity_keys__add_field_importtarget_conc.py (renamed from ishtar_common/migrations/0041_auto__add_field_importertype_unicity_keys__add_field_importtarget_conc.py) | 0 | ||||
-rw-r--r-- | ishtar_common/old_migrations/0042_auto__add_field_importtarget_concat_str__add_unique_importercolumn_col.py (renamed from ishtar_common/migrations/0042_auto__add_field_importtarget_concat_str__add_unique_importercolumn_col.py) | 0 | ||||
-rw-r--r-- | ishtar_common/old_migrations/0043_auto__add_field_importerduplicatefield_concat__add_field_importerdupli.py (renamed from ishtar_common/migrations/0043_auto__add_field_importerduplicatefield_concat__add_field_importerdupli.py) | 0 | ||||
-rw-r--r-- | ishtar_common/old_migrations/0044_auto__add_operationtype.py (renamed from ishtar_common/migrations/0044_auto__add_operationtype.py) | 0 | ||||
-rw-r--r-- | ishtar_common/old_migrations/0045_auto__chg_field_person_merge_key__chg_field_historicalorganization_mer.py (renamed from ishtar_common/migrations/0045_auto__chg_field_person_merge_key__chg_field_historicalorganization_mer.py) | 0 | ||||
-rw-r--r-- | ishtar_common/old_migrations/0046_auto__add_field_person_exclude_from_merge__add_field_historicalorganiz.py (renamed from ishtar_common/migrations/0046_auto__add_field_person_exclude_from_merge__add_field_historicalorganiz.py) | 0 | ||||
-rw-r--r-- | ishtar_common/old_migrations/0047_auto__chg_field_person_exclude_from_merge__chg_field_historicalorganiz.py (renamed from ishtar_common/migrations/0047_auto__chg_field_person_exclude_from_merge__chg_field_historicalorganiz.py) | 0 | ||||
-rw-r--r-- | ishtar_common/old_migrations/0048_auto__add_ishtarsiteprofile.py (renamed from ishtar_common/migrations/0048_auto__add_ishtarsiteprofile.py) | 0 | ||||
-rw-r--r-- | ishtar_common/old_migrations/0049_auto__add_field_person_alt_address__add_field_person_alt_address_compl.py (renamed from ishtar_common/migrations/0049_auto__add_field_person_alt_address__add_field_person_alt_address_compl.py) | 0 | ||||
-rw-r--r-- | ishtar_common/old_migrations/0050_auto__chg_field_person_phone_desc3__chg_field_person_phone_desc2__chg_.py (renamed from ishtar_common/migrations/0050_auto__chg_field_person_phone_desc3__chg_field_person_phone_desc2__chg_.py) | 0 | ||||
-rw-r--r-- | ishtar_common/old_migrations/0051_auto__add_field_ishtarsiteprofile_homepage.py (renamed from ishtar_common/migrations/0051_auto__add_field_ishtarsiteprofile_homepage.py) | 0 | ||||
-rw-r--r-- | ishtar_common/old_migrations/0052_auto__add_field_ishtarsiteprofile_file_external_id__add_field_ishtarsi.py (renamed from ishtar_common/migrations/0052_auto__add_field_ishtarsiteprofile_file_external_id__add_field_ishtarsi.py) | 0 | ||||
-rw-r--r-- | ishtar_common/old_migrations/0053_auto__add_field_ishtarsiteprofile_currency.py (renamed from ishtar_common/migrations/0053_auto__add_field_ishtarsiteprofile_currency.py) | 0 | ||||
-rw-r--r-- | ishtar_common/old_migrations/0054_auto__add_field_ishtarsiteprofile_person_raw_name.py (renamed from ishtar_common/migrations/0054_auto__add_field_ishtarsiteprofile_person_raw_name.py) | 0 | ||||
-rw-r--r-- | ishtar_common/old_migrations/0055_auto.py (renamed from ishtar_common/migrations/0055_auto.py) | 0 | ||||
-rw-r--r-- | ishtar_common/old_migrations/0056_auto__add_titletype__add_field_person_pretitle.py (renamed from ishtar_common/migrations/0056_auto__add_titletype__add_field_person_pretitle.py) | 0 | ||||
-rw-r--r-- | ishtar_common/old_migrations/0057_rename_pretitle_old_title.py (renamed from ishtar_common/migrations/0057_rename_pretitle_old_title.py) | 0 | ||||
-rw-r--r-- | ishtar_common/old_migrations/0058_generate_title.py (renamed from ishtar_common/migrations/0058_generate_title.py) | 0 | ||||
-rw-r--r-- | ishtar_common/old_migrations/0059_rename_exc_from_merge_to_archived.py (renamed from ishtar_common/migrations/0059_rename_exc_from_merge_to_archived.py) | 0 | ||||
-rw-r--r-- | ishtar_common/old_migrations/0060_auto__add_historicalperson.py (renamed from ishtar_common/migrations/0060_auto__add_historicalperson.py) | 0 | ||||
-rw-r--r-- | ishtar_common/old_migrations/0061_auto__add_field_historicalperson_salutation__add_field_person_salutati.py (renamed from ishtar_common/migrations/0061_auto__add_field_historicalperson_salutation__add_field_person_salutati.py) | 0 | ||||
-rw-r--r-- | ishtar_common/old_migrations/0062_remove_ishtar_local_prefix.py (renamed from ishtar_common/migrations/0062_remove_ishtar_local_prefix.py) | 0 | ||||
-rw-r--r-- | ishtar_common/old_migrations/0063_auto__add_field_ishtaruser_advanced_shortcut_menu.py (renamed from ishtar_common/migrations/0063_auto__add_field_ishtaruser_advanced_shortcut_menu.py) | 0 | ||||
-rw-r--r-- | ishtar_common/old_migrations/0064_auto__add_field_importercolumn_label.py (renamed from ishtar_common/migrations/0064_auto__add_field_importercolumn_label.py) | 0 | ||||
-rw-r--r-- | ishtar_common/old_migrations/0065_auto__add_spatialreferencesystem__add_field_ishtarsiteprofile_mapping.py (renamed from ishtar_common/migrations/0065_auto__add_spatialreferencesystem__add_field_ishtarsiteprofile_mapping.py) | 0 | ||||
-rw-r--r-- | ishtar_common/old_migrations/0066_auto__add_field_ishtarsiteprofile_base_color__add_field_ishtarsiteprof.py (renamed from ishtar_common/migrations/0066_auto__add_field_ishtarsiteprofile_base_color__add_field_ishtarsiteprof.py) | 0 | ||||
-rw-r--r-- | ishtar_common/old_migrations/0067_auto__add_field_ishtarsiteprofile_container_external_id__add_field_ish.py (renamed from ishtar_common/migrations/0067_auto__add_field_ishtarsiteprofile_container_external_id__add_field_ish.py) | 0 | ||||
-rw-r--r-- | ishtar_common/old_migrations/0068_auto__add_field_spatialreferencesystem_auth_name.py (renamed from ishtar_common/migrations/0068_auto__add_field_spatialreferencesystem_auth_name.py) | 0 | ||||
-rw-r--r-- | ishtar_common/old_migrations/0069_auto__chg_field_import_error_file__chg_field_import_match_file__chg_fi.py (renamed from ishtar_common/migrations/0069_auto__chg_field_import_error_file__chg_field_import_match_file__chg_fi.py) | 0 | ||||
-rw-r--r-- | ishtar_common/old_migrations/0070_auto__add_importermodel__add_field_importertype_new_associated_models.py (renamed from ishtar_common/migrations/0070_auto__add_importermodel__add_field_importertype_new_associated_models.py) | 0 | ||||
-rw-r--r-- | ishtar_common/old_migrations/0071_migrate_importermodels.py (renamed from ishtar_common/migrations/0071_migrate_importermodels.py) | 0 | ||||
-rw-r--r-- | ishtar_common/old_migrations/0072_auto__del_field_importertype_new_associated_models__chg_field_importer.py (renamed from ishtar_common/migrations/0072_auto__del_field_importertype_new_associated_models__chg_field_importer.py) | 0 | ||||
-rw-r--r-- | ishtar_common/old_migrations/0073_auto__add_field_importercolumn_export_field_name.py (renamed from ishtar_common/migrations/0073_auto__add_field_importercolumn_export_field_name.py) | 0 | ||||
-rw-r--r-- | ishtar_common/old_migrations/0074_auto__add_field_import_name.py (renamed from ishtar_common/migrations/0074_auto__add_field_import_name.py) | 0 | ||||
-rw-r--r-- | ishtar_common/old_migrations/0075_auto__add_field_authortype_order.py (renamed from ishtar_common/migrations/0075_auto__add_field_authortype_order.py) | 0 | ||||
-rw-r--r-- | ishtar_common/old_migrations/0076_auto__add_field_ishtarsiteprofile_find_index.py (renamed from ishtar_common/migrations/0076_auto__add_field_ishtarsiteprofile_find_index.py) | 0 | ||||
-rw-r--r-- | ishtar_common/old_migrations/__init__.py | 0 | ||||
-rw-r--r-- | ishtar_common/ooo_replace.py | 218 | ||||
-rw-r--r-- | ishtar_common/ooo_translation.py | 38 | ||||
-rw-r--r-- | ishtar_common/templates/base.html | 2 | ||||
-rw-r--r-- | ishtar_common/templates/blocks/JQueryAdvancedTown.html | 2 | ||||
-rw-r--r-- | ishtar_common/templates/ishtar/blocks/advanced_shortcut_menu.html | 1 | ||||
-rw-r--r-- | ishtar_common/templates/ishtar/blocks/shortcut_menu.html | 1 | ||||
-rw-r--r-- | ishtar_common/templates/ishtar/blocks/window_nav.html | 1 | ||||
-rw-r--r-- | ishtar_common/templates/ishtar/dashboards/dashboard_main.html | 1 | ||||
-rw-r--r-- | ishtar_common/templates/ishtar/dashboards/dashboard_main_detail.html | 1 | ||||
-rw-r--r-- | ishtar_common/templates/ishtar/import_delete.html | 1 | ||||
-rw-r--r-- | ishtar_common/templates/ishtar/import_list.html | 1 | ||||
-rw-r--r-- | ishtar_common/templates/ishtar/manage_basket.html | 1 | ||||
-rw-r--r-- | ishtar_common/templates/ishtar/merge.html | 1 | ||||
-rw-r--r-- | ishtar_common/templates/ishtar/merge_organization.html | 1 | ||||
-rw-r--r-- | ishtar_common/templates/ishtar/merge_person.html | 1 | ||||
-rw-r--r-- | ishtar_common/templates/ishtar/organization_form.html | 2 | ||||
-rw-r--r-- | ishtar_common/templates/ishtar/organization_person_form.html | 2 | ||||
-rw-r--r-- | ishtar_common/templates/ishtar/person_form.html | 2 | ||||
-rw-r--r-- | ishtar_common/templates/ishtar/sheet_organization.html | 2 | ||||
-rw-r--r-- | ishtar_common/templates/ishtar/sheet_source.html | 4 | ||||
-rw-r--r-- | ishtar_common/templates/ishtar/wizard/default_wizard.html | 1 | ||||
-rw-r--r-- | ishtar_common/templates/ishtar/wizard/validation_bar.html | 1 | ||||
-rw-r--r-- | ishtar_common/templates/registration/activation_complete.html | 1 | ||||
-rw-r--r-- | ishtar_common/templates/registration/login.html | 4 | ||||
-rw-r--r-- | ishtar_common/templates/welcome.html | 1 | ||||
-rw-r--r-- | ishtar_common/templatetags/link_to_window.py | 10 | ||||
-rw-r--r-- | ishtar_common/templatetags/window_field.py | 6 | ||||
-rw-r--r-- | ishtar_common/tests.py | 171 | ||||
-rw-r--r-- | ishtar_common/tests/old.odt | bin | 0 -> 9048 bytes | |||
-rw-r--r-- | ishtar_common/urls.py | 8 | ||||
-rw-r--r-- | ishtar_common/utils.py | 19 | ||||
-rw-r--r-- | ishtar_common/views.py | 127 | ||||
-rw-r--r-- | ishtar_common/widgets.py | 2 | ||||
-rw-r--r-- | ishtar_common/wizards.py | 73 |
128 files changed, 10752 insertions, 9848 deletions
diff --git a/ishtar_common/__init__.py b/ishtar_common/__init__.py index 5d2eadd7d..2b432d908 100644 --- a/ishtar_common/__init__.py +++ b/ishtar_common/__init__.py @@ -2,7 +2,7 @@ # -*- coding: utf-8 -*- # Copyright (C) 2014-2015 Étienne Loks <etienne.loks_AT_peacefrogsDOTnet> -from django.utils.translation import ugettext as _ +from django.utils.translation import ugettext_lazy as _ # overload of translation of registration module _(u"username") diff --git a/ishtar_common/admin.py b/ishtar_common/admin.py index adf006502..9f8265033 100644 --- a/ishtar_common/admin.py +++ b/ishtar_common/admin.py @@ -97,7 +97,7 @@ def export_as_csv_action(description=_(u"Export selected as CSV file"), excludeset = set(exclude) field_names = field_names - excludeset - response = HttpResponse(mimetype='text/csv') + response = HttpResponse(content_type='text/csv') response['Content-Disposition'] = 'attachment; filename=%s.csv' % \ unicode(opts).replace('.', '_') @@ -300,12 +300,6 @@ class SpatialReferenceSystemAdmin(GeneralTypeAdmin): admin.site.register(models.SpatialReferenceSystem, SpatialReferenceSystemAdmin) -class IshtarUserAdmin(admin.ModelAdmin): - readonly_fields = ('password',) - -admin.site.register(models.IshtarUser, IshtarUserAdmin) - - class ItemKeyAdmin(admin.ModelAdmin): list_display = ('content_type', 'key', 'content_object', 'importer') search_fields = ('key', ) @@ -338,7 +332,7 @@ class AdministrationTaskAdmin(admin.ModelAdmin): admin.site.register(models.AdministrationTask, AdministrationTaskAdmin) -basic_models = [models.DocumentTemplate] +basic_models = [models.DocumentTemplate, models.IshtarUser] if settings.COUNTRY == 'fr': basic_models += [models.Arrondissement, models.Canton] diff --git a/ishtar_common/backend.py b/ishtar_common/backend.py index f48e6ddec..261e4dc6f 100644 --- a/ishtar_common/backend.py +++ b/ishtar_common/backend.py @@ -1,6 +1,6 @@ #!/usr/bin/env python # -*- coding: utf-8 -*- -# Copyright (C) 2010-2013 Étienne Loks <etienne.loks_AT_peacefrogsDOTnet> +# Copyright (C) 2010-2017 Étienne Loks <etienne.loks_AT_peacefrogsDOTnet> # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU Affero General Public License as @@ -23,7 +23,7 @@ Permission backend to manage "own" objects from django.contrib.auth.backends import ModelBackend from django.core.exceptions import ObjectDoesNotExist -from django.db.models.loading import cache +from django.apps import apps import models @@ -55,8 +55,8 @@ class ObjectPermBackend(ModelBackend): if obj is None: model_name = perm.split('_')[-1].lower() model = None - for app in cache.get_apps(): - for modl in cache.get_models(app): + for app in apps.get_apps(): + for modl in apps.get_models(app): if modl.__name__.lower() == model_name: model = modl if not model: diff --git a/ishtar_common/context_processors.py b/ishtar_common/context_processors.py index 5050d667e..1c3babb8f 100644 --- a/ishtar_common/context_processors.py +++ b/ishtar_common/context_processors.py @@ -50,8 +50,7 @@ def get_base_context(request): menu.init() if menu.selected_idx is not None: dct['current_theme'] = "theme-%d" % (menu.selected_idx + 1) - request.session['MENU'] = menu - dct['MENU'] = request.session['MENU'] + dct['MENU'] = menu dct['JQUERY_URL'] = settings.JQUERY_URL dct['JQUERY_UI_URL'] = settings.JQUERY_UI_URL dct['COUNTRY'] = settings.COUNTRY diff --git a/ishtar_common/data_importer.py b/ishtar_common/data_importer.py index 3bb65fc21..4ac90f074 100644 --- a/ishtar_common/data_importer.py +++ b/ishtar_common/data_importer.py @@ -1,6 +1,6 @@ #!/usr/bin/env python # -*- coding: utf-8 -*- -# Copyright (C) 2013-2015 Étienne Loks <etienne.loks_AT_peacefrogsDOTnet> +# Copyright (C) 2013-2017 Étienne Loks <etienne.loks_AT_peacefrogsDOTnet> # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU Affero General Public License as @@ -342,7 +342,7 @@ class StrChoiceFormater(Formater, ChoiceChecker): if hasattr(value, 'pk'): value = value.pk q['value'] = value - with transaction.commit_on_success(): + with transaction.atomic(): try: t, created = TargetKey.objects.get_or_create(**q) except IntegrityError: @@ -404,7 +404,7 @@ class StrChoiceFormater(Formater, ChoiceChecker): target.is_set = True target.save() else: - with transaction.commit_on_success(): + with transaction.atomic(): q['value'] = self.equiv_dict[value] q['is_set'] = True try: @@ -418,7 +418,7 @@ class StrChoiceFormater(Formater, ChoiceChecker): 'associated_import': import_instance} if TargetKey.objects.filter(**q).count(): continue - with transaction.commit_on_success(): + with transaction.atomic(): try: TargetKey.objects.create(**q) except IntegrityError: @@ -811,7 +811,7 @@ class Importer(object): self.output = output if not self.history_modifier: if self.import_instance: - self.history_modifier = self.import_instance.user + self.history_modifier = self.import_instance.user.user_ptr else: # import made by the CLI: get the first admin self.history_modifier = User.objects.filter( diff --git a/ishtar_common/fixtures/initial_data-fr.json b/ishtar_common/fixtures/initial_data-fr.json index b4447559e..52f89e0cc 100644 --- a/ishtar_common/fixtures/initial_data-fr.json +++ b/ishtar_common/fixtures/initial_data-fr.json @@ -1,1181 +1,1730 @@ [ - { - "pk": 3, - "model": "ishtar_common.authortype", - "fields": { - "comment": "Cette personne est l'auteur principal de la source. Les autres auteurs sont des collaborateurs.", - "available": true, - "txt_idx": "main_author", - "order": 1, - "label": "Auteur principal" - } - }, - { - "pk": 2, - "model": "ishtar_common.authortype", - "fields": { - "comment": "Il y a plusieurs auteurs pour une m\u00eame source. Au m\u00eame niveau de responsabilit\u00e9.", - "available": true, - "txt_idx": "co_author", - "order": 1, - "label": "Co-auteur " - } - }, - { - "pk": 4, - "model": "ishtar_common.authortype", - "fields": { - "comment": "Cet auteur n'est pas l'auteur principal de la source mais un collaborateur. Il n'est pas auteur au m\u00eame niveau que l'auteur principal.", - "available": true, - "txt_idx": "associate_author", - "order": 1, - "label": "Collaborateur" - } - }, - { - "pk": 7, - "model": "ishtar_common.persontype", - "fields": { - "comment": "Un acc\u00e8s limit\u00e9 - uniquement en lecture - \u00e0 la totalit\u00e9 de la base, apr\u00e8s enregistrement.", - "available": true, - "txt_idx": "reader_access", - "groups": [ - 1, - 66, - 4, - 5, - 6, - 33, - 8, - 73, - 7, - 2, - 79, - 72, - 85, - 25, - 93, - 30 - ], - "label": "Acc\u00e8s en lecture" - } - }, - { - "pk": 1, - "model": "ishtar_common.persontype", - "fields": { - "comment": "", - "available": true, - "txt_idx": "administrator", - "groups": [ - 1, - 2, - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 11, - 12, - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41, - 42, - 43, - 44, - 45, - 46, - 47, - 48, - 49, - 50, - 51, - 52, - 53, - 54, - 55, - 56, - 57, - 58, - 59, - 60, - 61, - 62, - 63, - 64, - 65, - 66, - 67, - 68, - 69, - 70, - 71, - 72, - 73, - 74, - 75, - 76, - 77, - 78, - 79, - 80, - 81, - 82, - 83, - 84, - 85, - 86, - 87, - 88, - 89, - 90, - 93, - 94, - 95, - 96, - 97, - 98 - ], - "label": "Administrateur" - } - }, - { - "pk": 6, - "model": "ishtar_common.persontype", - "fields": { - "comment": "Responsable de l'am\u00e9nagement (pr\u00e9ventif).", - "available": true, - "txt_idx": "general_contractor", - "groups": [], - "label": "Am\u00e9nageur" - } - }, - { - "pk": 8, - "model": "ishtar_common.persontype", - "fields": { - "comment": "", - "available": true, - "txt_idx": "responsible_planning_service", - "groups": [], - "label": "Chef de service instructeur" - } - }, - { - "pk": 9, - "model": "ishtar_common.persontype", - "fields": { - "comment": "Peut intervenir sur les donn\u00e9es d'une op\u00e9ration sans en \u00eatre responsable.", - "available": true, - "txt_idx": "collaborator", - "groups": [ - 51, - 70, - 71, - 72, - 41, - 74, - 77, - 46, - 47, - 48, - 40, - 82, - 83, - 84, - 78, - 54, - 58, - 59, - 60, - 42, - 63 - ], - "label": "Collaborateur scientifique" - } - }, - { - "pk": 10, - "model": "ishtar_common.persontype", - "fields": { - "comment": "Personne demandant une action sur le mobilier (traitements).", - "available": true, - "txt_idx": "applicant", - "groups": [], - "label": "Demandeur" - } - }, - { - "pk": 5, - "model": "ishtar_common.persontype", - "fields": { - "comment": "Peut g\u00e9rer du mobilier qu'il n'a pas cr\u00e9\u00e9.\r\n\r\n", - "available": true, - "txt_idx": "warehouse_manager", - "groups": [ - 1, - 2, - 4, - 5, - 6, - 7, - 8, - 11, - 12, - 15, - 16, - 19, - 20, - 25, - 30, - 33, - 64, - 65, - 66, - 70, - 71, - 72, - 73, - 79, - 80, - 81, - 85, - 86, - 87, - 93, - 94, - 95 - ], - "label": "Gestionnaire de d\u00e9p\u00f4t" - } - }, - { - "pk": 3, - "model": "ishtar_common.persontype", - "fields": { - "comment": "", - "available": true, - "txt_idx": "sra_agent", - "groups": [ - 1, - 2, - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 13, - 14, - 15, - 16, - 17, - 18, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 66, - 70, - 71, - 72, - 73, - 75, - 76, - 79, - 80, - 81, - 85, - 93 - ], - "label": "Responsable de suivi scientifique" - } - }, - { - "pk": 2, - "model": "ishtar_common.persontype", - "fields": { - "comment": "Responsable d'op\u00e9ration arch\u00e9ologique.", - "available": true, - "txt_idx": "head_scientist", - "groups": [ - 1, - 40, - 41, - 42, - 46, - 47, - 48, - 50, - 54, - 58, - 59, - 60, - 63, - 70, - 71, - 72, - 74, - 77, - 78, - 82, - 83, - 84 - ], - "label": "Responsable scientifique" - } - }, - { - "pk": 4, - "model": "ishtar_common.persontype", - "fields": { - "comment": "Peut utiliser toutes les fonctionnalit\u00e9s du module Administratif.", - "available": true, - "txt_idx": "secretarial_dept", - "groups": [ - 1, - 2, - 4, - 6, - 8, - 9, - 10, - 13, - 14, - 17, - 18, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 70, - 71, - 72, - 73, - 79 - ], - "label": "Secr\u00e9tariat" - } - }, - { - "pk": 5, - "model": "ishtar_common.organizationtype", - "fields": { - "comment": "Pour des entreprises, collectivit\u00e9s territoriales ou autres organisations.", - "available": true, - "txt_idx": "general_contractor", - "label": "Am\u00e9nageur" - } - }, - { - "pk": 7, - "model": "ishtar_common.organizationtype", - "fields": { - "comment": "Cette organisation et ses membres travaillent b\u00e9n\u00e9volement.", - "available": true, - "txt_idx": "volunteer", - "label": "Association de b\u00e9n\u00e9voles" - } - }, - { - "pk": 6, - "model": "ishtar_common.organizationtype", - "fields": { - "comment": "Laboratoire de recherche public (CNRS). Peut \u00eatre une UMR et donc int\u00e9grer des chercheurs de l'universit\u00e9. ", - "available": true, - "txt_idx": "research_laboratory", - "label": "Laboratoire de recherche" - } - }, - { - "pk": 4, - "model": "ishtar_common.organizationtype", - "fields": { - "comment": "Laboratoire ayant sous sa responsabilit\u00e9 du mobilier arch\u00e9ologique de mani\u00e8re temporaire. C'est un type de d\u00e9p\u00f4t. C'est un lieu de traitement.", - "available": true, - "txt_idx": "restoration_laboratory", - "label": "Laboratoire de restauration" - } - }, - { - "pk": 9, - "model": "ishtar_common.organizationtype", - "fields": { - "comment": "", - "available": true, - "txt_idx": "museum", - "label": "Mus\u00e9e" - } - }, - { - "pk": 10, - "model": "ishtar_common.organizationtype", - "fields": { - "comment": "", - "available": true, - "txt_idx": "undefined", - "label": "Non pr\u00e9cis\u00e9" - } - }, - { - "pk": 2, - "model": "ishtar_common.organizationtype", - "fields": { - "comment": "Selon le d\u00e9cret n\u00b0 2004-490 qui d\u00e9nomme \u00ab Op\u00e9rateurs \u00bb les personnes qui r\u00e9alisent les op\u00e9rations arch\u00e9ologiques.", - "available": true, - "txt_idx": "operator", - "label": "Op\u00e9rateur d'arch\u00e9ologie pr\u00e9ventive" - } - }, - { - "pk": 8, - "model": "ishtar_common.organizationtype", - "fields": { - "comment": "Les services qui d\u00e9livrent les autorisations requises pour les diff\u00e9rents projets (DDE, services\r\nurbanisme des collectivit\u00e9s, pr\u00e9fectures, Drire, etc.).", - "available": true, - "txt_idx": "planning_service", - "label": "Service instructeur" - } - }, - { - "pk": 1, - "model": "ishtar_common.organizationtype", - "fields": { - "comment": "", - "available": true, - "txt_idx": "sra", - "label": "Service R\u00e9gional d'Arch\u00e9ologie" - } - }, - { - "pk": 11, - "model": "ishtar_common.organizationtype", - "fields": { - "comment": "Par exemple une mairie portant un projet de fouille programm\u00e9e.", - "available": true, - "txt_idx": "public_struct", - "label": "Structure publique porteuse de projet programm\u00e9" - } - }, - { - "pk": 18, - "model": "ishtar_common.sourcetype", - "fields": { - "comment": "", - "available": true, - "txt_idx": "waterpaint", - "label": "Aquarelle" - } - }, - { - "pk": 17, - "model": "ishtar_common.sourcetype", - "fields": { - "comment": "", - "available": true, - "txt_idx": "comics_book", - "label": "Bande dessin\u00e9e" - } - }, - { - "pk": 14, - "model": "ishtar_common.sourcetype", - "fields": { - "comment": "", - "available": true, - "txt_idx": "Mesh", - "label": "Mod\u00e8le 3D (mesh)" - } - }, - { - "pk": 15, - "model": "ishtar_common.sourcetype", - "fields": { - "comment": "", - "available": true, - "txt_idx": "point_cloud", - "label": "Mod\u00e8le 3D (nuage de points)" - } - }, - { - "pk": 10, - "model": "ishtar_common.sourcetype", - "fields": { - "comment": "", - "available": true, - "txt_idx": "undefined", - "label": "Non pr\u00e9cis\u00e9" - } - }, - { - "pk": 21, - "model": "ishtar_common.sourcetype", - "fields": { - "comment": "", - "available": true, - "txt_idx": "photo_negative", - "label": "Photographie argentique (n\u00e9gatif)" - } - }, - { - "pk": 1, - "model": "ishtar_common.sourcetype", - "fields": { - "comment": "Tirage de photographie argentique.", - "available": true, - "txt_idx": "photo_print", - "label": "Photographie argentique (tirage)" - } - }, - { - "pk": 5, - "model": "ishtar_common.sourcetype", - "fields": { - "comment": "Source photographique num\u00e9rique.", - "available": true, - "txt_idx": "digital_photo", - "label": "Photographie num\u00e9rique" - } - }, - { - "pk": 13, - "model": "ishtar_common.sourcetype", - "fields": { - "comment": "", - "available": true, - "txt_idx": "x_ray", - "label": "Radiographie argentique" - } - }, - { - "pk": 20, - "model": "ishtar_common.sourcetype", - "fields": { - "comment": "", - "available": true, - "txt_idx": "digital_x_ray", - "label": "Radiographie num\u00e9rique" - } - }, - { - "pk": 6, - "model": "ishtar_common.sourcetype", - "fields": { - "comment": "Rapport de laboratoire d'analyse.", - "available": true, - "txt_idx": "lab_report", - "label": "Rapport d'analyse" - } - }, - { - "pk": 4, - "model": "ishtar_common.sourcetype", - "fields": { - "comment": "Rapport li\u00e9 \u00e0 un arr\u00eat\u00e9 de prescription de diagnostic arch\u00e9ologique.", - "available": true, - "txt_idx": "diagnostic_report", - "label": "Rapport de diagnostic" - } - }, - { - "pk": 19, - "model": "ishtar_common.sourcetype", - "fields": { - "comment": "", - "available": true, - "txt_idx": "stange_report", - "label": "Rapport de nature ind\u00e9termin\u00e9e" - } - }, - { - "pk": 8, - "model": "ishtar_common.sourcetype", - "fields": { - "comment": "Rapport li\u00e9 \u00e0 une autorisation de prospection inventaire.", - "available": true, - "txt_idx": "general_survey_report", - "label": "Rapport de prospection inventaire" - } - }, - { - "pk": 9, - "model": "ishtar_common.sourcetype", - "fields": { - "comment": "Rapport li\u00e9 \u00e0 une autorisation de prospection th\u00e9matique. Ce type de rapport passe d'ordinaire en CIRA.", - "available": true, - "txt_idx": "thematic_survey_report", - "label": "Rapport de prospection th\u00e9matique" - } - }, - { - "pk": 7, - "model": "ishtar_common.sourcetype", - "fields": { - "comment": "Rapport li\u00e9 \u00e0 la restauration ou la stabilisation d'un lot de mobilier ou d'un objet isol\u00e9.", - "available": true, - "txt_idx": "restoration_report", - "label": "Rapport de restauration" - } - }, - { - "pk": 3, - "model": "ishtar_common.sourcetype", - "fields": { - "comment": "Rapport li\u00e9 \u00e0 une autorisation de sondage.", - "available": true, - "txt_idx": "survey_report", - "label": "Rapport de sondage" - } - }, - { - "pk": 2, - "model": "ishtar_common.sourcetype", - "fields": { - "comment": "Rapport de fouille arch\u00e9ologique.", - "available": true, - "txt_idx": "final_archaeological_report", - "label": "Rapport final d'op\u00e9ration (fouille)" - } - }, - { - "pk": 115, - "model": "ishtar_common.operationtype", - "fields": { - "comment": "", - "available": true, - "label": "Autre \u00e9tude", - "preventive": true, - "order": 1, - "txt_idx": "other_study" - } - }, - { - "pk": 1, - "model": "ishtar_common.operationtype", - "fields": { - "comment": "Une op\u00e9ration arch\u00e9ologique visant \u00e0 qualifier et quantifier la pr\u00e9sence de vestiges sur une surface donn\u00e9e.", - "available": true, - "label": "Diagnostic arch\u00e9ologique", - "preventive": true, - "order": 1, - "txt_idx": "arch_diagnostic" - } - }, - { - "pk": 7, - "model": "ishtar_common.operationtype", - "fields": { - "comment": "", - "available": true, - "label": "\u00c9tude de b\u00e2ti (pr\u00e9ventif)", - "preventive": true, - "order": 1, - "txt_idx": "building_study" - } - }, - { - "pk": 10, - "model": "ishtar_common.operationtype", - "fields": { - "comment": "", - "available": true, - "label": "\u00c9tude documentaire (pr\u00e9ventif)", - "preventive": true, - "order": 1, - "txt_idx": "documents_study" - } - }, - { - "pk": 12, - "model": "ishtar_common.operationtype", - "fields": { - "comment": "", - "available": true, - "label": "\u00c9valuation", - "preventive": true, - "order": 1, - "txt_idx": "evaluation" - } - }, - { - "pk": 113, - "model": "ishtar_common.operationtype", - "fields": { - "comment": null, - "available": true, - "label": "Fouille ancienne", - "preventive": true, - "order": 1, - "txt_idx": "ancient_excavation" - } - }, - { - "pk": 2, - "model": "ishtar_common.operationtype", - "fields": { - "comment": "A pr\u00e9ciser", - "available": true, - "label": "Fouille arch\u00e9ologique pr\u00e9ventive", - "preventive": true, - "order": 1, - "txt_idx": "prev_excavation" - } - }, - { - "pk": 22, - "model": "ishtar_common.operationtype", - "fields": { - "comment": null, - "available": true, - "label": "Sauvetage urgent", - "preventive": true, - "order": 1, - "txt_idx": "emergency_excavation" - } - }, - { - "pk": 133, - "model": "ishtar_common.operationtype", - "fields": { - "comment": "", - "available": true, - "label": "\u00c0 d\u00e9terminer", - "preventive": false, - "order": 1, - "txt_idx": "unknown" - } - }, - { - "pk": 118, - "model": "ishtar_common.operationtype", - "fields": { - "comment": "", - "available": true, - "label": "Aide \u00e0 la pr\u00e9paration de publication", - "preventive": false, - "order": 1, - "txt_idx": "assistance_preparation_help" - } - }, - { - "pk": 130, - "model": "ishtar_common.operationtype", - "fields": { - "comment": "", - "available": true, - "label": "Aide \u00e0 l'\u00e9dition", - "preventive": false, - "order": 1, - "txt_idx": "AE" - } - }, - { - "pk": 132, - "model": "ishtar_common.operationtype", - "fields": { - "comment": null, - "available": true, - "label": "Diagnostic arch\u00e9ologique (programm\u00e9)", - "preventive": false, - "order": 1, - "txt_idx": "arch_diagnostic_research" - } - }, - { - "pk": 131, - "model": "ishtar_common.operationtype", - "fields": { - "comment": "", - "available": true, - "label": "Diffusion (pour les colloques, expo, s\u00e9minaires...)", - "preventive": false, - "order": 1, - "txt_idx": "communication" - } - }, - { - "pk": 8, - "model": "ishtar_common.operationtype", - "fields": { - "comment": "", - "available": true, - "label": "\u00c9tude de b\u00e2ti (programm\u00e9)", - "preventive": false, - "order": 1, - "txt_idx": "building_study_research" - } - }, - { - "pk": 11, - "model": "ishtar_common.operationtype", - "fields": { - "comment": "", - "available": true, - "label": "\u00c9tude documentaire (programm\u00e9)", - "preventive": false, - "order": 1, - "txt_idx": "documents_study_research" - } - }, - { - "pk": 3, - "model": "ishtar_common.operationtype", - "fields": { - "comment": "", - "available": true, - "label": "Fouille arch\u00e9ologique programm\u00e9e", - "preventive": false, - "order": 1, - "txt_idx": "prog_excavation" - } - }, - { - "pk": 13, - "model": "ishtar_common.operationtype", - "fields": { - "comment": "", - "available": true, - "label": "Fouille arch\u00e9ologique programm\u00e9e pluriannuelle", - "preventive": false, - "order": 1, - "txt_idx": "prog_excavation_multiyear" - } - }, - { - "pk": 122, - "model": "ishtar_common.operationtype", - "fields": { - "comment": "", - "available": true, - "label": "Programme d'analyses", - "preventive": false, - "order": 1, - "txt_idx": "analysis_program" - } - }, - { - "pk": 16, - "model": "ishtar_common.operationtype", - "fields": { - "comment": "", - "available": true, - "label": "Projet Collectif de Recherche", - "preventive": false, - "order": 1, - "txt_idx": "collective_research_project" - } - }, - { - "pk": 14, - "model": "ishtar_common.operationtype", - "fields": { - "comment": "", - "available": true, - "label": "Prospection a\u00e9rienne", - "preventive": false, - "order": 1, - "txt_idx": "aerial_survey_research" - } - }, - { - "pk": 117, - "model": "ishtar_common.operationtype", - "fields": { - "comment": "", - "available": true, - "label": "Prospection avec mat\u00e9riel sp\u00e9cialis\u00e9", - "preventive": false, - "order": 1, - "txt_idx": "specialized_eqp_prospection" - } - }, - { - "pk": 20, - "model": "ishtar_common.operationtype", - "fields": { - "comment": "", - "available": true, - "label": "Prospection avec relev\u00e9 d'art rupestre", - "preventive": false, - "order": 1, - "txt_idx": "rock_art_survey" - } - }, - { - "pk": 120, - "model": "ishtar_common.operationtype", - "fields": { - "comment": null, - "available": true, - "label": "Prospection d\u00e9tecteur de m\u00e9taux", - "preventive": false, - "order": 1, - "txt_idx": "metal_detector_prospection" - } - }, - { - "pk": 17, - "model": "ishtar_common.operationtype", - "fields": { - "comment": "", - "available": true, - "label": "Prospection inventaire", - "preventive": false, - "order": 1, - "txt_idx": "inventory_survey_research" - } - }, - { - "pk": 134, - "model": "ishtar_common.operationtype", - "fields": { - "comment": "", - "available": true, - "label": "Prospection sondage", - "preventive": false, - "order": 1, - "txt_idx": "survey_dig" - } - }, - { - "pk": 5, - "model": "ishtar_common.operationtype", - "fields": { - "comment": "Une campagne de prospection sur un th\u00e8me particulier", - "available": true, - "label": "Prospection th\u00e9matique", - "preventive": false, - "order": 1, - "txt_idx": "thematic_survey" - } - }, - { - "pk": 121, - "model": "ishtar_common.operationtype", - "fields": { - "comment": null, - "available": true, - "label": "Relev\u00e9 d'art rupestre", - "preventive": false, - "order": 1, - "txt_idx": "cave_art_record" - } - }, - { - "pk": 127, - "model": "ishtar_common.operationtype", - "fields": { - "comment": "", - "available": true, - "label": "Sondage (programm\u00e9)", - "preventive": false, - "order": 1, - "txt_idx": "sampling" - } - }, - { - "pk": 5, - "model": "ishtar_common.titletype", - "fields": { - "comment": null, - "available": true, - "txt_idx": "dr", - "label": "Dr." - } - }, - { - "pk": 1, - "model": "ishtar_common.titletype", - "fields": { - "comment": null, - "available": true, - "txt_idx": "mr", - "label": "M." - } - }, - { - "pk": 3, - "model": "ishtar_common.titletype", - "fields": { - "comment": "", - "available": true, - "txt_idx": "mr-and-mrs", - "label": "M. et Mme" - } - }, - { - "pk": 2, - "model": "ishtar_common.titletype", - "fields": { - "comment": "", - "available": true, - "txt_idx": "miss", - "label": "Mlle" - } - }, - { - "pk": 4, - "model": "ishtar_common.titletype", - "fields": { - "comment": "", - "available": true, - "txt_idx": "mrs", - "label": "Mme" - } - }, - { - "pk": 1, - "model": "ishtar_common.supporttype", - "fields": { - "comment": "", - "available": true, - "txt_idx": "tracing-paper", - "label": "Papier calque" - } - }, - { - "pk": 2, - "model": "ishtar_common.supporttype", - "fields": { - "comment": "", - "available": true, - "txt_idx": "graph-paper", - "label": "Papier millim\u00e9tr\u00e9" - } - }, - { - "pk": 3, - "model": "ishtar_common.format", - "fields": { - "comment": "841 \u00d7 1189 mm", - "available": true, - "txt_idx": "a0", - "label": "A0" - } - }, - { - "pk": 4, - "model": "ishtar_common.format", - "fields": { - "comment": "594 \u00d7 841 mm", - "available": true, - "txt_idx": "a1", - "label": "A1" - } - }, - { - "pk": 5, - "model": "ishtar_common.format", - "fields": { - "comment": "420 \u00d7 594 mm", - "available": true, - "txt_idx": "a2", - "label": "A2" - } - }, - { - "pk": 2, - "model": "ishtar_common.format", - "fields": { - "comment": "297 \u00d7 420 mm", - "available": true, - "txt_idx": "a3", - "label": "A3" - } - }, - { - "pk": 1, - "model": "ishtar_common.format", - "fields": { - "comment": "210 \u00d7 297 mm\r\n", - "available": true, - "txt_idx": "a4", - "label": "A4" - } - }, - { - "pk": 6, - "model": "ishtar_common.format", - "fields": { - "comment": "148 \u00d7 210 mm\r\n", - "available": true, - "txt_idx": "a5", - "label": "A5" - } - }, - { - "pk": 7, - "model": "ishtar_common.format", - "fields": { - "comment": "105 \u00d7 148 mm", - "available": true, - "txt_idx": "a6", - "label": "A6" - } - }, - { - "pk": 2, - "model": "ishtar_common.documenttemplate", - "fields": { - "associated_object_name": "archaeological_operations.models.AdministrativeAct", - "available": true, - "name": "Accus\u00e9 de r\u00e9ception d'un dossier", - "template": "upload/templates/ISHTAR_FILE_ACT_AR_Neutre_1.odt" - } - }, - { - "pk": 1, - "model": "ishtar_common.documenttemplate", - "fields": { - "associated_object_name": "archaeological_operations.models.AdministrativeAct", - "available": true, - "name": "Document de r\u00e9f\u00e9rence", - "template": "upload/templates/document_reference.odt" - } - } -]
\ No newline at end of file +{ + "fields": { + "comment": "Il y a plusieurs auteurs pour une m\u00eame source. Au m\u00eame niveau de responsabilit\u00e9.", + "available": true, + "txt_idx": "co_author", + "order": 1, + "label": "Co-auteur " + }, + "model": "ishtar_common.authortype", + "pk": 2 +}, +{ + "fields": { + "comment": "Cette personne est l'auteur principal de la source. Les autres auteurs sont des collaborateurs.", + "available": true, + "txt_idx": "main_author", + "order": 1, + "label": "Auteur principal" + }, + "model": "ishtar_common.authortype", + "pk": 3 +}, +{ + "fields": { + "comment": "Cet auteur n'est pas l'auteur principal de la source mais un collaborateur. Il n'est pas auteur au m\u00eame niveau que l'auteur principal.", + "available": true, + "txt_idx": "associate_author", + "order": 1, + "label": "Collaborateur" + }, + "model": "ishtar_common.authortype", + "pk": 4 +}, +{ + "fields": { + "comment": "", + "available": true, + "txt_idx": "administrator", + "groups": [ + [ + "Op\u00e9rations : lecture" + ], + [ + "Dossiers : lecture" + ], + [ + "UE : lecture" + ], + [ + "D\u00e9p\u00f4ts : lecture" + ], + [ + "Mobilier : lecture" + ], + [ + "Traitements : lecture" + ], + [ + "Actes administratifs : lecture" + ], + [ + "Actes administratifs : ajout" + ], + [ + "Actes administratifs : modification/suppression" + ], + [ + "D\u00e9p\u00f4ts : ajout" + ], + [ + "D\u00e9p\u00f4ts : modification/suppression" + ], + [ + "Dossiers : ajout" + ], + [ + "Dossiers : modification/suppression" + ], + [ + "Mobilier : ajout" + ], + [ + "Mobilier : modification/suppression" + ], + [ + "Op\u00e9rations : ajout" + ], + [ + "Op\u00e9rations : modification/suppression" + ], + [ + "Traitements : ajout" + ], + [ + "Traitements : modification/suppression" + ], + [ + "UE : ajout" + ], + [ + "UE : modification/suppression" + ], + [ + "Personnes : ajout" + ], + [ + "Personnes : modification/suppression" + ], + [ + "Organisations : lecture" + ], + [ + "Organisations : modification/suppression" + ], + [ + "Organisations : ajout" + ], + [ + "Op\u00e9rations : cl\u00f4ture" + ], + [ + "Dossiers : cl\u00f4ture" + ], + [ + "Documents op\u00e9ration : lecture" + ], + [ + "Documents op\u00e9ration : modification/suppression" + ], + [ + "Documents op\u00e9ration : ajout" + ], + [ + "Personnes : lecture" + ], + [ + "Actes administratifs rattach\u00e9s : ajout" + ], + [ + "Actes administratifs rattach\u00e9s : modification/suppression" + ], + [ + "Actes administratifs rattach\u00e9s : lecture" + ], + [ + "D\u00e9p\u00f4ts rattach\u00e9s : ajout" + ], + [ + "D\u00e9p\u00f4ts rattach\u00e9s : modification/suppression" + ], + [ + "D\u00e9p\u00f4ts rattach\u00e9s : lecture" + ], + [ + "Documents op\u00e9ration rattach\u00e9s : ajout" + ], + [ + "Documents op\u00e9ration rattach\u00e9s : modification/suppression" + ], + [ + "Documents op\u00e9ration rattach\u00e9s : lecture" + ], + [ + "Dossiers rattach\u00e9s : ajout" + ], + [ + "Dossiers rattach\u00e9s : modification/suppression" + ], + [ + "Dossiers rattach\u00e9s : lecture" + ], + [ + "Mobilier rattach\u00e9 : ajout" + ], + [ + "Mobilier rattach\u00e9 : modification/suppression" + ], + [ + "Mobilier rattach\u00e9 : lecture" + ], + [ + "Op\u00e9rations rattach\u00e9es : ajout" + ], + [ + "Op\u00e9rations rattach\u00e9es : modification/suppression" + ], + [ + "Op\u00e9rations rattach\u00e9es : lecture" + ], + [ + "Organisations rattach\u00e9es : ajout" + ], + [ + "Organisations rattach\u00e9es : modification/suppression" + ], + [ + "Organisations rattach\u00e9es : lecture" + ], + [ + "Traitements rattach\u00e9s : ajout" + ], + [ + "Traitements rattach\u00e9s : modification/suppression" + ], + [ + "Traitements rattach\u00e9s : lecture" + ], + [ + "UE rattach\u00e9es : ajout" + ], + [ + "UE rattach\u00e9es : modification/suppression" + ], + [ + "UE rattach\u00e9es : lecture" + ], + [ + "Personnes rattach\u00e9es : ajout" + ], + [ + "Personnes rattach\u00e9es : modification/suppression" + ], + [ + "Personnes rattach\u00e9es : lecture" + ], + [ + "Demandes de traitement : ajout" + ], + [ + "Demandes de traitement : modification/suppression" + ], + [ + "Demandes de traitement : lecture" + ], + [ + "Demandes de traitement rattach\u00e9es : ajout" + ], + [ + "Demandes de traitement rattach\u00e9es : lecture" + ], + [ + "Demandes de traitement rattach\u00e9es : modification/suppression" + ], + [ + "Auteurs : ajout" + ], + [ + "Auteurs : modification/suppression" + ], + [ + "Auteurs : lecture" + ], + [ + "Documents UE : lecture" + ], + [ + "Documents UE rattach\u00e9s : lecture" + ], + [ + "Documents UE : ajout" + ], + [ + "Documents UE : modification/suppression" + ], + [ + "Documents UE rattach\u00e9s : modification/suppression" + ], + [ + "Documents UE rattach\u00e9s : ajout" + ], + [ + "Documents mobilier : lecture" + ], + [ + "Documents mobilier : ajout" + ], + [ + "Documents mobilier : modification/suppression" + ], + [ + "Documents mobilier rattach\u00e9s : ajout" + ], + [ + "Documents mobilier rattach\u00e9s : lecture" + ], + [ + "Documents mobilier rattach\u00e9s : modification/suppression" + ], + [ + "Documents de traitement : lecture" + ], + [ + "Documents de traitement : ajout" + ], + [ + "Documents de traitement : modification/suppression" + ], + [ + "Documents de traitement rattach\u00e9s : lecture" + ], + [ + "Documents de traitement rattach\u00e9s : ajout" + ], + [ + "Documents de traitement rattach\u00e9s : modification/suppression" + ], + [ + "Documents de demande de traitement : lecture" + ], + [ + "Documents de demande de traitement : ajout" + ], + [ + "Documents de demande de traitement : modification/suppression" + ], + [ + "Documents de demande de traitement rattach\u00e9s : lecture" + ], + [ + "Documents de demande de traitement rattach\u00e9s : ajout" + ], + [ + "Documents de demande de traitement rattach\u00e9s : modification/suppression" + ] + ], + "label": "Administrateur" + }, + "model": "ishtar_common.persontype", + "pk": 1 +}, +{ + "fields": { + "comment": "Responsable d'op\u00e9ration arch\u00e9ologique.", + "available": true, + "txt_idx": "head_scientist", + "groups": [ + [ + "Organisations : lecture" + ], + [ + "Personnes : lecture" + ], + [ + "Actes administratifs rattach\u00e9s : lecture" + ], + [ + "D\u00e9p\u00f4ts rattach\u00e9s : lecture" + ], + [ + "Documents op\u00e9ration rattach\u00e9s : ajout" + ], + [ + "Documents op\u00e9ration rattach\u00e9s : modification/suppression" + ], + [ + "Documents op\u00e9ration rattach\u00e9s : lecture" + ], + [ + "Dossiers rattach\u00e9s : lecture" + ], + [ + "Mobilier rattach\u00e9 : ajout" + ], + [ + "Mobilier rattach\u00e9 : modification/suppression" + ], + [ + "Mobilier rattach\u00e9 : lecture" + ], + [ + "Op\u00e9rations rattach\u00e9es : modification/suppression" + ], + [ + "Op\u00e9rations rattach\u00e9es : lecture" + ], + [ + "Organisations rattach\u00e9es : ajout" + ], + [ + "Traitements rattach\u00e9s : lecture" + ], + [ + "UE rattach\u00e9es : ajout" + ], + [ + "UE rattach\u00e9es : modification/suppression" + ], + [ + "UE rattach\u00e9es : lecture" + ], + [ + "Personnes rattach\u00e9es : ajout" + ], + [ + "Demandes de traitement rattach\u00e9es : lecture" + ], + [ + "Auteurs : ajout" + ], + [ + "Auteurs : modification/suppression" + ], + [ + "Auteurs : lecture" + ], + [ + "Documents UE rattach\u00e9s : lecture" + ], + [ + "Documents UE rattach\u00e9s : modification/suppression" + ], + [ + "Documents UE rattach\u00e9s : ajout" + ], + [ + "Documents mobilier rattach\u00e9s : ajout" + ], + [ + "Documents mobilier rattach\u00e9s : lecture" + ], + [ + "Documents mobilier rattach\u00e9s : modification/suppression" + ], + [ + "Documents de traitement rattach\u00e9s : lecture" + ], + [ + "Documents de demande de traitement rattach\u00e9s : lecture" + ] + ], + "label": "Responsable scientifique" + }, + "model": "ishtar_common.persontype", + "pk": 2 +}, +{ + "fields": { + "comment": "", + "available": true, + "txt_idx": "sra_agent", + "groups": [ + [ + "Op\u00e9rations : lecture" + ], + [ + "Dossiers : lecture" + ], + [ + "UE : lecture" + ], + [ + "D\u00e9p\u00f4ts : lecture" + ], + [ + "Mobilier : lecture" + ], + [ + "Traitements : lecture" + ], + [ + "Actes administratifs : lecture" + ], + [ + "Actes administratifs : ajout" + ], + [ + "Actes administratifs : modification/suppression" + ], + [ + "Dossiers : ajout" + ], + [ + "Dossiers : modification/suppression" + ], + [ + "Mobilier : ajout" + ], + [ + "Mobilier : modification/suppression" + ], + [ + "Op\u00e9rations : ajout" + ], + [ + "Op\u00e9rations : modification/suppression" + ], + [ + "UE : ajout" + ], + [ + "UE : modification/suppression" + ], + [ + "Personnes : ajout" + ], + [ + "Personnes : modification/suppression" + ], + [ + "Organisations : lecture" + ], + [ + "Organisations : modification/suppression" + ], + [ + "Organisations : ajout" + ], + [ + "Op\u00e9rations : cl\u00f4ture" + ], + [ + "Dossiers : cl\u00f4ture" + ], + [ + "Documents op\u00e9ration : lecture" + ], + [ + "Documents op\u00e9ration : modification/suppression" + ], + [ + "Documents op\u00e9ration : ajout" + ], + [ + "Personnes : lecture" + ], + [ + "Demandes de traitement : lecture" + ], + [ + "Auteurs : ajout" + ], + [ + "Auteurs : modification/suppression" + ], + [ + "Auteurs : lecture" + ], + [ + "Documents UE : lecture" + ], + [ + "Documents UE : ajout" + ], + [ + "Documents UE : modification/suppression" + ], + [ + "Documents mobilier : lecture" + ], + [ + "Documents mobilier : ajout" + ], + [ + "Documents mobilier : modification/suppression" + ], + [ + "Documents de traitement : lecture" + ], + [ + "Documents de demande de traitement : lecture" + ] + ], + "label": "Responsable de suivi scientifique" + }, + "model": "ishtar_common.persontype", + "pk": 3 +}, +{ + "fields": { + "comment": "Peut utiliser toutes les fonctionnalit\u00e9s du module Administratif.", + "available": true, + "txt_idx": "secretarial_dept", + "groups": [ + [ + "Op\u00e9rations : lecture" + ], + [ + "Dossiers : lecture" + ], + [ + "UE : lecture" + ], + [ + "D\u00e9p\u00f4ts : lecture" + ], + [ + "Mobilier : lecture" + ], + [ + "Traitements : lecture" + ], + [ + "Actes administratifs : lecture" + ], + [ + "Actes administratifs : ajout" + ], + [ + "Actes administratifs : modification/suppression" + ], + [ + "Dossiers : ajout" + ], + [ + "Dossiers : modification/suppression" + ], + [ + "Op\u00e9rations : ajout" + ], + [ + "Op\u00e9rations : modification/suppression" + ], + [ + "Personnes : ajout" + ], + [ + "Personnes : modification/suppression" + ], + [ + "Organisations : lecture" + ], + [ + "Organisations : modification/suppression" + ], + [ + "Organisations : ajout" + ], + [ + "Op\u00e9rations : cl\u00f4ture" + ], + [ + "Dossiers : cl\u00f4ture" + ], + [ + "Documents op\u00e9ration : lecture" + ], + [ + "Documents op\u00e9ration : modification/suppression" + ], + [ + "Documents op\u00e9ration : ajout" + ], + [ + "Personnes : lecture" + ], + [ + "Demandes de traitement : lecture" + ], + [ + "Auteurs : ajout" + ], + [ + "Auteurs : modification/suppression" + ], + [ + "Auteurs : lecture" + ], + [ + "Documents UE : lecture" + ], + [ + "Documents mobilier : lecture" + ], + [ + "Documents de traitement : lecture" + ], + [ + "Documents de demande de traitement : lecture" + ] + ], + "label": "Secr\u00e9tariat" + }, + "model": "ishtar_common.persontype", + "pk": 4 +}, +{ + "fields": { + "comment": "Peut g\u00e9rer du mobilier qu'il n'a pas cr\u00e9\u00e9.\r\n\r\n", + "available": true, + "txt_idx": "collection_manager", + "groups": [ + [ + "Op\u00e9rations : lecture" + ], + [ + "Dossiers : lecture" + ], + [ + "UE : lecture" + ], + [ + "D\u00e9p\u00f4ts : lecture" + ], + [ + "Mobilier : lecture" + ], + [ + "Traitements : lecture" + ], + [ + "Actes administratifs : lecture" + ], + [ + "D\u00e9p\u00f4ts : ajout" + ], + [ + "D\u00e9p\u00f4ts : modification/suppression" + ], + [ + "Mobilier : ajout" + ], + [ + "Mobilier : modification/suppression" + ], + [ + "Traitements : ajout" + ], + [ + "Traitements : modification/suppression" + ], + [ + "Organisations : lecture" + ], + [ + "Documents op\u00e9ration : lecture" + ], + [ + "Personnes : lecture" + ], + [ + "Demandes de traitement : ajout" + ], + [ + "Demandes de traitement : modification/suppression" + ], + [ + "Demandes de traitement : lecture" + ], + [ + "Auteurs : ajout" + ], + [ + "Auteurs : modification/suppression" + ], + [ + "Auteurs : lecture" + ], + [ + "Documents UE : lecture" + ], + [ + "Documents mobilier : lecture" + ], + [ + "Documents mobilier : ajout" + ], + [ + "Documents mobilier : modification/suppression" + ], + [ + "Documents de traitement : lecture" + ], + [ + "Documents de traitement : ajout" + ], + [ + "Documents de traitement : modification/suppression" + ], + [ + "Documents de demande de traitement : lecture" + ], + [ + "Documents de demande de traitement : ajout" + ], + [ + "Documents de demande de traitement : modification/suppression" + ] + ], + "label": "R\u00e9gisseur de collection" + }, + "model": "ishtar_common.persontype", + "pk": 5 +}, +{ + "fields": { + "comment": "Responsable de l'am\u00e9nagement (pr\u00e9ventif).", + "available": true, + "txt_idx": "general_contractor", + "groups": [], + "label": "Am\u00e9nageur" + }, + "model": "ishtar_common.persontype", + "pk": 6 +}, +{ + "fields": { + "comment": "Un acc\u00e8s limit\u00e9 - uniquement en lecture - \u00e0 la totalit\u00e9 de la base, apr\u00e8s enregistrement.", + "available": true, + "txt_idx": "reader_access", + "groups": [ + [ + "Documents de demande de traitement : lecture" + ], + [ + "Documents UE : lecture" + ], + [ + "Actes administratifs : lecture" + ], + [ + "Auteurs : lecture" + ], + [ + "Demandes de traitement : lecture" + ], + [ + "D\u00e9p\u00f4ts : lecture" + ], + [ + "Documents op\u00e9ration : lecture" + ], + [ + "Dossiers : lecture" + ], + [ + "Mobilier : lecture" + ], + [ + "Op\u00e9rations : lecture" + ], + [ + "Organisations : lecture" + ], + [ + "Personnes : lecture" + ], + [ + "Traitements : lecture" + ], + [ + "UE : lecture" + ], + [ + "Documents mobilier : lecture" + ], + [ + "Documents de traitement : lecture" + ] + ], + "label": "Acc\u00e8s en lecture" + }, + "model": "ishtar_common.persontype", + "pk": 7 +}, +{ + "fields": { + "comment": "", + "available": true, + "txt_idx": "responsible_planning_service", + "groups": [], + "label": "Chef de service instructeur" + }, + "model": "ishtar_common.persontype", + "pk": 8 +}, +{ + "fields": { + "comment": "Peut intervenir sur les donn\u00e9es d'une op\u00e9ration sans en \u00eatre responsable.", + "available": true, + "txt_idx": "collaborator", + "groups": [ + [ + "Organisations : lecture" + ], + [ + "Personnes : lecture" + ], + [ + "D\u00e9p\u00f4ts rattach\u00e9s : lecture" + ], + [ + "Documents op\u00e9ration rattach\u00e9s : ajout" + ], + [ + "Documents op\u00e9ration rattach\u00e9s : modification/suppression" + ], + [ + "Documents op\u00e9ration rattach\u00e9s : lecture" + ], + [ + "Mobilier rattach\u00e9 : ajout" + ], + [ + "Mobilier rattach\u00e9 : modification/suppression" + ], + [ + "Mobilier rattach\u00e9 : lecture" + ], + [ + "Op\u00e9rations rattach\u00e9es : lecture" + ], + [ + "Organisations rattach\u00e9es : ajout" + ], + [ + "Traitements rattach\u00e9s : lecture" + ], + [ + "UE rattach\u00e9es : ajout" + ], + [ + "UE rattach\u00e9es : modification/suppression" + ], + [ + "UE rattach\u00e9es : lecture" + ], + [ + "Personnes rattach\u00e9es : ajout" + ], + [ + "Demandes de traitement rattach\u00e9es : lecture" + ], + [ + "Auteurs : ajout" + ], + [ + "Auteurs : modification/suppression" + ], + [ + "Auteurs : lecture" + ], + [ + "Documents UE rattach\u00e9s : lecture" + ], + [ + "Documents UE rattach\u00e9s : modification/suppression" + ], + [ + "Documents UE rattach\u00e9s : ajout" + ], + [ + "Documents mobilier rattach\u00e9s : ajout" + ], + [ + "Documents mobilier rattach\u00e9s : lecture" + ], + [ + "Documents mobilier rattach\u00e9s : modification/suppression" + ], + [ + "Documents de traitement rattach\u00e9s : lecture" + ], + [ + "Documents de demande de traitement rattach\u00e9s : lecture" + ] + ], + "label": "Collaborateur scientifique" + }, + "model": "ishtar_common.persontype", + "pk": 9 +}, +{ + "fields": { + "comment": "Personne demandant une action sur le mobilier (traitements).", + "available": true, + "txt_idx": "applicant", + "groups": [], + "label": "Demandeur" + }, + "model": "ishtar_common.persontype", + "pk": 10 +}, +{ + "fields": { + "comment": "", + "available": true, + "txt_idx": "sra", + "label": "Service R\u00e9gional d'Arch\u00e9ologie" + }, + "model": "ishtar_common.organizationtype", + "pk": 1 +}, +{ + "fields": { + "comment": "Selon le d\u00e9cret n\u00b0 2004-490 qui d\u00e9nomme \u00ab Op\u00e9rateurs \u00bb les personnes qui r\u00e9alisent les op\u00e9rations arch\u00e9ologiques.", + "available": true, + "txt_idx": "operator", + "label": "Op\u00e9rateur d'arch\u00e9ologie pr\u00e9ventive" + }, + "model": "ishtar_common.organizationtype", + "pk": 2 +}, +{ + "fields": { + "comment": "Laboratoire ayant sous sa responsabilit\u00e9 du mobilier arch\u00e9ologique de mani\u00e8re temporaire. C'est un type de d\u00e9p\u00f4t. C'est un lieu de traitement.", + "available": true, + "txt_idx": "restoration_laboratory", + "label": "Laboratoire de restauration" + }, + "model": "ishtar_common.organizationtype", + "pk": 4 +}, +{ + "fields": { + "comment": "Pour des entreprises, collectivit\u00e9s territoriales ou autres organisations.", + "available": true, + "txt_idx": "general_contractor", + "label": "Am\u00e9nageur" + }, + "model": "ishtar_common.organizationtype", + "pk": 5 +}, +{ + "fields": { + "comment": "Laboratoire de recherche public (CNRS). Peut \u00eatre une UMR et donc int\u00e9grer des chercheurs de l'universit\u00e9. ", + "available": true, + "txt_idx": "research_laboratory", + "label": "Laboratoire de recherche" + }, + "model": "ishtar_common.organizationtype", + "pk": 6 +}, +{ + "fields": { + "comment": "Cette organisation et ses membres travaillent b\u00e9n\u00e9volement.", + "available": true, + "txt_idx": "volunteer", + "label": "Association de b\u00e9n\u00e9voles" + }, + "model": "ishtar_common.organizationtype", + "pk": 7 +}, +{ + "fields": { + "comment": "Les services qui d\u00e9livrent les autorisations requises pour les diff\u00e9rents projets (DDE, services\r\nurbanisme des collectivit\u00e9s, pr\u00e9fectures, Drire, etc.).", + "available": true, + "txt_idx": "planning_service", + "label": "Service instructeur" + }, + "model": "ishtar_common.organizationtype", + "pk": 8 +}, +{ + "fields": { + "comment": "", + "available": true, + "txt_idx": "museum", + "label": "Mus\u00e9e" + }, + "model": "ishtar_common.organizationtype", + "pk": 9 +}, +{ + "fields": { + "comment": "", + "available": true, + "txt_idx": "undefined", + "label": "Non pr\u00e9cis\u00e9" + }, + "model": "ishtar_common.organizationtype", + "pk": 10 +}, +{ + "fields": { + "comment": "Par exemple une mairie portant un projet de fouille programm\u00e9e.", + "available": true, + "txt_idx": "public_struct", + "label": "Structure publique porteuse de projet programm\u00e9" + }, + "model": "ishtar_common.organizationtype", + "pk": 11 +}, +{ + "fields": { + "comment": "Tirage de photographie argentique.", + "available": true, + "txt_idx": "photo_print", + "label": "Photographie argentique (tirage)" + }, + "model": "ishtar_common.sourcetype", + "pk": 1 +}, +{ + "fields": { + "comment": "Rapport de fouille arch\u00e9ologique.", + "available": true, + "txt_idx": "final_archaeological_report", + "label": "Rapport final d'op\u00e9ration (fouille)" + }, + "model": "ishtar_common.sourcetype", + "pk": 2 +}, +{ + "fields": { + "comment": "Rapport li\u00e9 \u00e0 une autorisation de sondage.", + "available": true, + "txt_idx": "survey_report", + "label": "Rapport de sondage" + }, + "model": "ishtar_common.sourcetype", + "pk": 3 +}, +{ + "fields": { + "comment": "Rapport li\u00e9 \u00e0 un arr\u00eat\u00e9 de prescription de diagnostic arch\u00e9ologique.", + "available": true, + "txt_idx": "diagnostic_report", + "label": "Rapport de diagnostic" + }, + "model": "ishtar_common.sourcetype", + "pk": 4 +}, +{ + "fields": { + "comment": "Source photographique num\u00e9rique.", + "available": true, + "txt_idx": "digital_photo", + "label": "Photographie num\u00e9rique" + }, + "model": "ishtar_common.sourcetype", + "pk": 5 +}, +{ + "fields": { + "comment": "Rapport de laboratoire d'analyse.", + "available": true, + "txt_idx": "lab_report", + "label": "Rapport d'analyse" + }, + "model": "ishtar_common.sourcetype", + "pk": 6 +}, +{ + "fields": { + "comment": "Rapport li\u00e9 \u00e0 la restauration ou la stabilisation d'un lot de mobilier ou d'un objet isol\u00e9.", + "available": true, + "txt_idx": "restoration_report", + "label": "Rapport de restauration" + }, + "model": "ishtar_common.sourcetype", + "pk": 7 +}, +{ + "fields": { + "comment": "Rapport li\u00e9 \u00e0 une autorisation de prospection inventaire.", + "available": true, + "txt_idx": "general_survey_report", + "label": "Rapport de prospection inventaire" + }, + "model": "ishtar_common.sourcetype", + "pk": 8 +}, +{ + "fields": { + "comment": "Rapport li\u00e9 \u00e0 une autorisation de prospection th\u00e9matique. Ce type de rapport passe d'ordinaire en CIRA.", + "available": true, + "txt_idx": "thematic_survey_report", + "label": "Rapport de prospection th\u00e9matique" + }, + "model": "ishtar_common.sourcetype", + "pk": 9 +}, +{ + "fields": { + "comment": "", + "available": true, + "txt_idx": "undefined", + "label": "Non pr\u00e9cis\u00e9" + }, + "model": "ishtar_common.sourcetype", + "pk": 10 +}, +{ + "fields": { + "comment": "", + "available": true, + "txt_idx": "x_ray", + "label": "Radiographie argentique" + }, + "model": "ishtar_common.sourcetype", + "pk": 13 +}, +{ + "fields": { + "comment": "", + "available": true, + "txt_idx": "Mesh", + "label": "Mod\u00e8le 3D (mesh)" + }, + "model": "ishtar_common.sourcetype", + "pk": 14 +}, +{ + "fields": { + "comment": "", + "available": true, + "txt_idx": "point_cloud", + "label": "Mod\u00e8le 3D (nuage de points)" + }, + "model": "ishtar_common.sourcetype", + "pk": 15 +}, +{ + "fields": { + "comment": "", + "available": true, + "txt_idx": "comics_book", + "label": "Bande dessin\u00e9e" + }, + "model": "ishtar_common.sourcetype", + "pk": 17 +}, +{ + "fields": { + "comment": "", + "available": true, + "txt_idx": "waterpaint", + "label": "Aquarelle" + }, + "model": "ishtar_common.sourcetype", + "pk": 18 +}, +{ + "fields": { + "comment": "", + "available": true, + "txt_idx": "stange_report", + "label": "Rapport de nature ind\u00e9termin\u00e9e" + }, + "model": "ishtar_common.sourcetype", + "pk": 19 +}, +{ + "fields": { + "comment": "", + "available": true, + "txt_idx": "digital_x_ray", + "label": "Radiographie num\u00e9rique" + }, + "model": "ishtar_common.sourcetype", + "pk": 20 +}, +{ + "fields": { + "comment": "", + "available": true, + "txt_idx": "photo_negative", + "label": "Photographie argentique (n\u00e9gatif)" + }, + "model": "ishtar_common.sourcetype", + "pk": 21 +}, +{ + "fields": { + "comment": "Une op\u00e9ration arch\u00e9ologique visant \u00e0 qualifier et quantifier la pr\u00e9sence de vestiges sur une surface donn\u00e9e.", + "available": true, + "label": "Diagnostic arch\u00e9ologique", + "preventive": true, + "order": 1, + "txt_idx": "arch_diagnostic" + }, + "model": "ishtar_common.operationtype", + "pk": 1 +}, +{ + "fields": { + "comment": "A pr\u00e9ciser", + "available": true, + "label": "Fouille arch\u00e9ologique pr\u00e9ventive", + "preventive": true, + "order": 1, + "txt_idx": "prev_excavation" + }, + "model": "ishtar_common.operationtype", + "pk": 2 +}, +{ + "fields": { + "comment": "", + "available": true, + "label": "Fouille arch\u00e9ologique programm\u00e9e", + "preventive": false, + "order": 1, + "txt_idx": "prog_excavation" + }, + "model": "ishtar_common.operationtype", + "pk": 3 +}, +{ + "fields": { + "comment": "Une campagne de prospection sur un th\u00e8me particulier", + "available": true, + "label": "Prospection th\u00e9matique", + "preventive": false, + "order": 1, + "txt_idx": "thematic_survey" + }, + "model": "ishtar_common.operationtype", + "pk": 5 +}, +{ + "fields": { + "comment": "", + "available": true, + "label": "\u00c9tude de b\u00e2ti (pr\u00e9ventif)", + "preventive": true, + "order": 1, + "txt_idx": "building_study" + }, + "model": "ishtar_common.operationtype", + "pk": 7 +}, +{ + "fields": { + "comment": "", + "available": true, + "label": "\u00c9tude de b\u00e2ti (programm\u00e9)", + "preventive": false, + "order": 1, + "txt_idx": "building_study_research" + }, + "model": "ishtar_common.operationtype", + "pk": 8 +}, +{ + "fields": { + "comment": "", + "available": true, + "label": "\u00c9tude documentaire (pr\u00e9ventif)", + "preventive": true, + "order": 1, + "txt_idx": "documents_study" + }, + "model": "ishtar_common.operationtype", + "pk": 10 +}, +{ + "fields": { + "comment": "", + "available": true, + "label": "\u00c9tude documentaire (programm\u00e9)", + "preventive": false, + "order": 1, + "txt_idx": "documents_study_research" + }, + "model": "ishtar_common.operationtype", + "pk": 11 +}, +{ + "fields": { + "comment": "", + "available": true, + "label": "\u00c9valuation", + "preventive": true, + "order": 1, + "txt_idx": "evaluation" + }, + "model": "ishtar_common.operationtype", + "pk": 12 +}, +{ + "fields": { + "comment": "", + "available": true, + "label": "Fouille arch\u00e9ologique programm\u00e9e pluriannuelle", + "preventive": false, + "order": 1, + "txt_idx": "prog_excavation_multiyear" + }, + "model": "ishtar_common.operationtype", + "pk": 13 +}, +{ + "fields": { + "comment": "", + "available": true, + "label": "Prospection a\u00e9rienne", + "preventive": false, + "order": 1, + "txt_idx": "aerial_survey_research" + }, + "model": "ishtar_common.operationtype", + "pk": 14 +}, +{ + "fields": { + "comment": "", + "available": true, + "label": "Projet Collectif de Recherche", + "preventive": false, + "order": 1, + "txt_idx": "collective_research_project" + }, + "model": "ishtar_common.operationtype", + "pk": 16 +}, +{ + "fields": { + "comment": "", + "available": true, + "label": "Prospection inventaire", + "preventive": false, + "order": 1, + "txt_idx": "inventory_survey_research" + }, + "model": "ishtar_common.operationtype", + "pk": 17 +}, +{ + "fields": { + "comment": "", + "available": true, + "label": "Prospection avec relev\u00e9 d'art rupestre", + "preventive": false, + "order": 1, + "txt_idx": "rock_art_survey" + }, + "model": "ishtar_common.operationtype", + "pk": 20 +}, +{ + "fields": { + "comment": null, + "available": true, + "label": "Sauvetage urgent", + "preventive": true, + "order": 1, + "txt_idx": "emergency_excavation" + }, + "model": "ishtar_common.operationtype", + "pk": 22 +}, +{ + "fields": { + "comment": null, + "available": true, + "label": "Fouille ancienne", + "preventive": true, + "order": 1, + "txt_idx": "ancient_excavation" + }, + "model": "ishtar_common.operationtype", + "pk": 113 +}, +{ + "fields": { + "comment": "", + "available": true, + "label": "Autre \u00e9tude", + "preventive": true, + "order": 1, + "txt_idx": "other_study" + }, + "model": "ishtar_common.operationtype", + "pk": 115 +}, +{ + "fields": { + "comment": "", + "available": true, + "label": "Prospection avec mat\u00e9riel sp\u00e9cialis\u00e9", + "preventive": false, + "order": 1, + "txt_idx": "specialized_eqp_prospection" + }, + "model": "ishtar_common.operationtype", + "pk": 117 +}, +{ + "fields": { + "comment": "", + "available": true, + "label": "Aide \u00e0 la pr\u00e9paration de publication", + "preventive": false, + "order": 1, + "txt_idx": "assistance_preparation_help" + }, + "model": "ishtar_common.operationtype", + "pk": 118 +}, +{ + "fields": { + "comment": null, + "available": true, + "label": "Prospection d\u00e9tecteur de m\u00e9taux", + "preventive": false, + "order": 1, + "txt_idx": "metal_detector_prospection" + }, + "model": "ishtar_common.operationtype", + "pk": 120 +}, +{ + "fields": { + "comment": null, + "available": true, + "label": "Relev\u00e9 d'art rupestre", + "preventive": false, + "order": 1, + "txt_idx": "cave_art_record" + }, + "model": "ishtar_common.operationtype", + "pk": 121 +}, +{ + "fields": { + "comment": "", + "available": true, + "label": "Programme d'analyses", + "preventive": false, + "order": 1, + "txt_idx": "analysis_program" + }, + "model": "ishtar_common.operationtype", + "pk": 122 +}, +{ + "fields": { + "comment": "", + "available": true, + "label": "Sondage (programm\u00e9)", + "preventive": false, + "order": 1, + "txt_idx": "sampling" + }, + "model": "ishtar_common.operationtype", + "pk": 127 +}, +{ + "fields": { + "comment": "", + "available": true, + "label": "Aide \u00e0 l'\u00e9dition", + "preventive": false, + "order": 1, + "txt_idx": "AE" + }, + "model": "ishtar_common.operationtype", + "pk": 130 +}, +{ + "fields": { + "comment": "", + "available": true, + "label": "Diffusion (pour les colloques, expo, s\u00e9minaires...)", + "preventive": false, + "order": 1, + "txt_idx": "communication" + }, + "model": "ishtar_common.operationtype", + "pk": 131 +}, +{ + "fields": { + "comment": null, + "available": true, + "label": "Diagnostic arch\u00e9ologique (programm\u00e9)", + "preventive": false, + "order": 1, + "txt_idx": "arch_diagnostic_research" + }, + "model": "ishtar_common.operationtype", + "pk": 132 +}, +{ + "fields": { + "comment": "", + "available": true, + "label": "\u00c0 d\u00e9terminer", + "preventive": false, + "order": 1, + "txt_idx": "unknown" + }, + "model": "ishtar_common.operationtype", + "pk": 133 +}, +{ + "fields": { + "comment": "", + "available": true, + "label": "Prospection sondage", + "preventive": false, + "order": 1, + "txt_idx": "survey_dig" + }, + "model": "ishtar_common.operationtype", + "pk": 134 +}, +{ + "fields": { + "comment": null, + "available": true, + "txt_idx": "mr", + "label": "M." + }, + "model": "ishtar_common.titletype", + "pk": 1 +}, +{ + "fields": { + "comment": "", + "available": true, + "txt_idx": "miss", + "label": "Mlle" + }, + "model": "ishtar_common.titletype", + "pk": 2 +}, +{ + "fields": { + "comment": "", + "available": true, + "txt_idx": "mr-and-mrs", + "label": "M. et Mme" + }, + "model": "ishtar_common.titletype", + "pk": 3 +}, +{ + "fields": { + "comment": "", + "available": true, + "txt_idx": "mrs", + "label": "Mme" + }, + "model": "ishtar_common.titletype", + "pk": 4 +}, +{ + "fields": { + "comment": null, + "available": true, + "txt_idx": "dr", + "label": "Dr." + }, + "model": "ishtar_common.titletype", + "pk": 5 +}, +{ + "fields": { + "comment": "", + "available": true, + "txt_idx": "tracing-paper", + "label": "Papier calque" + }, + "model": "ishtar_common.supporttype", + "pk": 1 +}, +{ + "fields": { + "comment": "", + "available": true, + "txt_idx": "graph-paper", + "label": "Papier millim\u00e9tr\u00e9" + }, + "model": "ishtar_common.supporttype", + "pk": 2 +}, +{ + "fields": { + "comment": "210 \u00d7 297 mm\r\n", + "available": true, + "txt_idx": "a4", + "label": "A4" + }, + "model": "ishtar_common.format", + "pk": 1 +}, +{ + "fields": { + "comment": "297 \u00d7 420 mm", + "available": true, + "txt_idx": "a3", + "label": "A3" + }, + "model": "ishtar_common.format", + "pk": 2 +}, +{ + "fields": { + "comment": "841 \u00d7 1189 mm", + "available": true, + "txt_idx": "a0", + "label": "A0" + }, + "model": "ishtar_common.format", + "pk": 3 +}, +{ + "fields": { + "comment": "594 \u00d7 841 mm", + "available": true, + "txt_idx": "a1", + "label": "A1" + }, + "model": "ishtar_common.format", + "pk": 4 +}, +{ + "fields": { + "comment": "420 \u00d7 594 mm", + "available": true, + "txt_idx": "a2", + "label": "A2" + }, + "model": "ishtar_common.format", + "pk": 5 +}, +{ + "fields": { + "comment": "148 \u00d7 210 mm\r\n", + "available": true, + "txt_idx": "a5", + "label": "A5" + }, + "model": "ishtar_common.format", + "pk": 6 +}, +{ + "fields": { + "comment": "105 \u00d7 148 mm", + "available": true, + "txt_idx": "a6", + "label": "A6" + }, + "model": "ishtar_common.format", + "pk": 7 +} +] diff --git a/ishtar_common/fixtures/initial_importtypes-fr.json b/ishtar_common/fixtures/initial_importtypes-fr.json index 3b43f0003..1b9fae709 100644 --- a/ishtar_common/fixtures/initial_importtypes-fr.json +++ b/ishtar_common/fixtures/initial_importtypes-fr.json @@ -1,6640 +1,6640 @@ [ - { - "pk": 17, - "model": "ishtar_common.importermodel", - "fields": { - "name": "Auteur", - "klass": "ishtar_common.models.Author" - } - }, - { - "pk": 11, - "model": "ishtar_common.importermodel", - "fields": { - "name": "Datation", - "klass": "archaeological_context_records.models.Dating" - } - }, - { - "pk": 16, - "model": "ishtar_common.importermodel", - "fields": { - "name": "Documentation de demande de traitement", - "klass": "archaeological_finds.models_treatments.TreatmentFileSource" - } - }, - { - "pk": 15, - "model": "ishtar_common.importermodel", - "fields": { - "name": "Documentation de traitement", - "klass": "archaeological_finds.models_treatments.TreatmentSource" - } - }, - { - "pk": 8, - "model": "ishtar_common.importermodel", - "fields": { - "name": "Documentation d'op\u00e9ration", - "klass": "archaeological_operations.models.OperationSource" - } - }, - { - "pk": 13, - "model": "ishtar_common.importermodel", - "fields": { - "name": "Documentation d'UE", - "klass": "archaeological_context_records.models.ContextRecordSource" - } - }, - { - "pk": 14, - "model": "ishtar_common.importermodel", - "fields": { - "name": "Documentation mobilier", - "klass": "archaeological_finds.models_finds.FindSource" - } - }, - { - "pk": 2, - "model": "ishtar_common.importermodel", - "fields": { - "name": "Dossier arch\u00e9ologique", - "klass": "archaeological_files.models.File" - } - }, - { - "pk": 4, - "model": "ishtar_common.importermodel", - "fields": { - "name": "Entit\u00e9 arch\u00e9ologique", - "klass": "archaeological_operations.models.ArchaeologicalSite" - } - }, - { - "pk": 12, - "model": "ishtar_common.importermodel", - "fields": { - "name": "Find", - "klass": "archaeological_finds.models_finds.Find" - } - }, - { - "pk": 3, - "model": "ishtar_common.importermodel", - "fields": { - "name": "Mobilier de base", - "klass": "archaeological_finds.models.BaseFind" - } - }, - { - "pk": 6, - "model": "ishtar_common.importermodel", - "fields": { - "name": "Op\u00e9ration", - "klass": "archaeological_operations.models.Operation" - } - }, - { - "pk": 1, - "model": "ishtar_common.importermodel", - "fields": { - "name": "Organisation", - "klass": "ishtar_common.models.Organization" - } - }, - { - "pk": 9, - "model": "ishtar_common.importermodel", - "fields": { - "name": "Parcelle", - "klass": "archaeological_operations.models.Parcel" - } - }, - { - "pk": 5, - "model": "ishtar_common.importermodel", - "fields": { - "name": "Personne", - "klass": "ishtar_common.models.Person" - } - }, - { - "pk": 10, - "model": "ishtar_common.importermodel", - "fields": { - "name": "Relation entre Unit\u00e9s d'Enregistrement", - "klass": "archaeological_context_records.models.RecordRelations" - } - }, - { - "pk": 7, - "model": "ishtar_common.importermodel", - "fields": { - "name": "Unit\u00e9 d'Enregistrement", - "klass": "archaeological_context_records.models.ContextRecord" - } - }, - { - "pk": 20, - "model": "ishtar_common.importertype", - "fields": { - "description": "Mobilier", - "created_models": [], - "is_template": true, - "unicity_keys": "external_id", - "users": [], - "slug": "ishtar-finds", - "associated_models": 12, - "name": "Ishtar - Mobilier" - } - }, - { - "pk": 23, - "model": "ishtar_common.importertype", - "fields": { - "description": "Importeur de mobilier + parcelles et UE", - "created_models": [ - 9, - 7 - ], - "is_template": true, - "unicity_keys": "external_id", - "users": [], - "slug": "ishtar_finds_parcels_and_cr", - "associated_models": 12, - "name": "Ishtar - Mobilier_COMBO" - } - }, - { - "pk": 17, - "model": "ishtar_common.importertype", - "fields": { - "description": "Import complet standard operations", - "created_models": [], - "is_template": true, - "unicity_keys": "code_patriarche", - "users": [], - "slug": "ishtar-operations", - "associated_models": 6, - "name": "Ishtar - Op\u00e9rations" - } - }, - { - "pk": 22, - "model": "ishtar_common.importertype", - "fields": { - "description": "Documentation d'op\u00e9ration", - "created_models": [ - 17, - 8, - 5 - ], - "is_template": true, - "unicity_keys": "external_id", - "users": [], - "slug": "ishtar-operations-sources", - "associated_models": 8, - "name": "Ishtar - Op\u00e9rations - Documentation" - } - }, - { - "pk": 19, - "model": "ishtar_common.importertype", - "fields": { - "description": "Parcelles de terrain", - "created_models": [], - "is_template": true, - "unicity_keys": "external_id", - "users": [], - "slug": "ishtar-parcels", - "associated_models": 9, - "name": "Ishtar - Parcelles" - } - }, - { - "pk": 21, - "model": "ishtar_common.importertype", - "fields": { - "description": "", - "created_models": [ - 10 - ], - "is_template": true, - "unicity_keys": "", - "users": [], - "slug": "ishtar-ue-relations", - "associated_models": 10, - "name": "Ishtar - Relations entre UE" - } - }, - { - "pk": 18, - "model": "ishtar_common.importertype", - "fields": { - "description": "Unit\u00e9s d'enregisttrement", - "created_models": [], - "is_template": true, - "unicity_keys": "external_id", - "users": [], - "slug": "ishtar-context-record", - "associated_models": 7, - "name": "Ishtar - UE" - } - }, - { - "pk": 3, - "model": "ishtar_common.importertype", - "fields": { - "description": "", - "created_models": [], - "is_template": true, - "unicity_keys": "", - "users": [], - "slug": "mcc-documentation", - "associated_models": 8, - "name": "MCC - Documentation" - } - }, - { - "pk": 5, - "model": "ishtar_common.importertype", - "fields": { - "description": "", - "created_models": [], - "is_template": true, - "unicity_keys": "external_id", - "users": [], - "slug": "mcc-mobilier", - "associated_models": 12, - "name": "MCC - Mobilier" - } - }, - { - "pk": 1, - "model": "ishtar_common.importertype", - "fields": { - "description": "", - "created_models": [], - "is_template": true, - "unicity_keys": "code_patriarche", - "users": [], - "slug": "mcc-operations", - "associated_models": 6, - "name": "MCC - Op\u00e9rations" - } - }, - { - "pk": 2, - "model": "ishtar_common.importertype", - "fields": { - "description": "", - "created_models": [], - "is_template": true, - "unicity_keys": "external_id", - "users": [], - "slug": "mcc-parcelles", - "associated_models": 9, - "name": "MCC - Parcelles" - } - }, - { - "pk": 4, - "model": "ishtar_common.importertype", - "fields": { - "description": "", - "created_models": [], - "is_template": true, - "unicity_keys": "external_id", - "users": [], - "slug": "mcc-ue", - "associated_models": 7, - "name": "MCC - UE" - } - }, - { - "pk": 2, - "model": "ishtar_common.regexp", - "fields": { - "regexp": "([0-9]*)", - "name": "Num\u00e9ro INSEE", - "description": "" - } - }, - { - "pk": 1, - "model": "ishtar_common.importerdefault", - "fields": { - "importer_type": 1, - "target": "operator" - } - }, - { - "pk": 2, - "model": "ishtar_common.importerdefault", - "fields": { - "importer_type": 3, - "target": "authors" - } - }, - { - "pk": 23, - "model": "ishtar_common.importerdefault", - "fields": { - "importer_type": 17, - "target": "operator" - } - }, - { - "pk": 24, - "model": "ishtar_common.importerdefault", - "fields": { - "importer_type": 17, - "target": "scientist__person_types" - } - }, - { - "pk": 25, - "model": "ishtar_common.importerdefault", - "fields": { - "importer_type": 22, - "target": "authors" - } - }, - { - "pk": 26, - "model": "ishtar_common.importerdefault", - "fields": { - "importer_type": 19, - "target": "public_domain" - } - }, - { - "pk": 1, - "model": "ishtar_common.importerdefaultvalues", - "fields": { - "default_target": 1, - "target": "organization_type", - "value": "operator" - } - }, - { - "pk": 2, - "model": "ishtar_common.importerdefaultvalues", - "fields": { - "default_target": 2, - "target": "author_type", - "value": "main_author" - } - }, - { - "pk": 29, - "model": "ishtar_common.importerdefaultvalues", - "fields": { - "default_target": 23, - "target": "organization_type", - "value": "operator" - } - }, - { - "pk": 30, - "model": "ishtar_common.importerdefaultvalues", - "fields": { - "default_target": 24, - "target": "txt_idx", - "value": "head_scientist" - } - }, - { - "pk": 31, - "model": "ishtar_common.importerdefaultvalues", - "fields": { - "default_target": 25, - "target": "author_type", - "value": "main_author" - } - }, - { - "pk": 32, - "model": "ishtar_common.importerdefaultvalues", - "fields": { - "default_target": 26, - "target": "public_domain", - "value": "False" - } - }, - { - "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 op\u00e9ration", - "importer_type": 20, - "export_field_name": "base_finds__context_record__operation__code_patriarche" - } - }, - { - "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, - "export_field_name": "base_finds__context_record__parcel__town__numero_insee" - } - }, - { - "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, - "export_field_name": "base_finds__context_record__parcel__section|base_finds__context_record__parcel__parcel_number" - } - }, - { - "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, - "export_field_name": "base_finds__context_record__label" - } - }, - { - "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, - "export_field_name": "label" - } - }, - { - "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, - "export_field_name": null - } - }, - { - "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.", - "regexp_pre_filter": null, - "required": false, - "label": "Ref. point topo", - "importer_type": 20, - "export_field_name": null - } - }, - { - "pk": 342, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 8, - "description": "Description du mobilier, objet ou lot. Exemple : \"Fibule aviforme\".", - "regexp_pre_filter": null, - "required": false, - "label": "Description", - "importer_type": 20, - "export_field_name": null - } - }, - { - "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.", - "regexp_pre_filter": null, - "required": false, - "label": "Lot ou objet", - "importer_type": 20, - "export_field_name": null - } - }, - { - "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\" (vrai) ou \"incomplet\" (faux). ", - "regexp_pre_filter": null, - "required": false, - "label": "Compl\u00e9tude", - "importer_type": 20, - "export_field_name": null - } - }, - { - "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": "Mat\u00e9riau(x)", - "importer_type": 20, - "export_field_name": "material_types__label" - } - }, - { - "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, - "export_field_name": null - } - }, - { - "pk": 348, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 13, - "description": "Commentaire relatif \u00e0 la conservation. 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, - "export_field_name": null - } - }, - { - "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, - "export_field_name": null - } - }, - { - "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 & \u00e0 stabiliser\"", - "regexp_pre_filter": null, - "required": false, - "label": "Type(s) d'actions de conservation \u00e0 mener", - "importer_type": 20, - "export_field_name": null - } - }, - { - "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, - "export_field_name": null - } - }, - { - "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, - "export_field_name": null - } - }, - { - "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, - "export_field_name": null - } - }, - { - "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, - "export_field_name": null - } - }, - { - "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, - "export_field_name": null - } - }, - { - "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, - "export_field_name": null - } - }, - { - "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). 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, - "export_field_name": null - } - }, - { - "pk": 372, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 23, - "description": "Poids en grammes.", - "regexp_pre_filter": null, - "required": false, - "label": "Poids (g)", - "importer_type": 20, - "export_field_name": null - } - }, - { - "pk": 358, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 24, - "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, - "export_field_name": null - } - }, - { - "pk": 359, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 25, - "description": "Marquage visible sur le mobilier. 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, - "export_field_name": null - } - }, - { - "pk": 360, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 26, - "description": "Commentaire g\u00e9n\u00e9ral libre. 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, - "export_field_name": null - } - }, - { - "pk": 361, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 27, - "description": "Commentaire g\u00e9n\u00e9ral sur les datations, si besoin. 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, - "export_field_name": null - } - }, - { - "pk": 362, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 28, - "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, - "export_field_name": null - } - }, - { - "pk": 363, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 29, - "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, - "export_field_name": null - } - }, - { - "pk": 364, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 30, - "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, - "export_field_name": "datings__period__label" - } - }, - { - "pk": 365, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 31, - "description": "Coordonn\u00e9e X pour cet objet.", - "regexp_pre_filter": null, - "required": false, - "label": "Coordonn\u00e9e X", - "importer_type": 20, - "export_field_name": null - } - }, - { - "pk": 366, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 32, - "description": "Coordonn\u00e9e Y pour cet objet.", - "regexp_pre_filter": null, - "required": false, - "label": "Coordonn\u00e9e Y", - "importer_type": 20, - "export_field_name": null - } - }, - { - "pk": 367, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 33, - "description": "Coordonn\u00e9e Z pour cet objet (altitude NGF ou arbitraire).", - "regexp_pre_filter": null, - "required": false, - "label": "Coordonn\u00e9e Z", - "importer_type": 20, - "export_field_name": null - } - }, - { - "pk": 368, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 34, - "description": "Code permettant de qualifier le mode de projection des donn\u00e9es (SRS /EPSG). Exemple : \"2154\" pour le Lambert 93.", - "regexp_pre_filter": null, - "required": false, - "label": "Syst\u00e8me de r\u00e9f\u00e9rence spatiale", - "importer_type": 20, - "export_field_name": null - } - }, - { - "pk": 373, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 35, - "description": "Identifiant textuel du d\u00e9p\u00f4t. Cet identifiant doit correspondre \u00e0 un d\u00e9p\u00f4t existant en base de donn\u00e9es.", - "regexp_pre_filter": null, - "required": false, - "label": "Identifiant d\u00e9p\u00f4t", - "importer_type": 20, - "export_field_name": null - } - }, - { - "pk": 374, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 36, - "description": "", - "regexp_pre_filter": null, - "required": false, - "label": "R\u00e9f\u00e9rence de caisse", - "importer_type": 20, - "export_field_name": null - } - }, - { - "pk": 375, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 37, - "description": "Champ n\u00e9cessaire si vous indiquez une caisse", - "regexp_pre_filter": null, - "required": false, - "label": "Type de caisse", - "importer_type": 20, - "export_field_name": null - } - }, - { - "pk": 391, - "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 op\u00e9ration", - "importer_type": 23, - "export_field_name": "base_finds__context_record__operation__code_patriarche" - } - }, - { - "pk": 392, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 2, - "description": "Commune (via num\u00e9ro INSEE).", - "regexp_pre_filter": null, - "required": true, - "label": "INSEE", - "importer_type": 23, - "export_field_name": "base_finds__context_record__parcel__town__numero_insee" - } - }, - { - "pk": 393, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 3, - "description": "Section (identifiant externe), soit des lettres formant la section . Exemple : \"ZA\".", - "regexp_pre_filter": null, - "required": true, - "label": "Section de parcellaire", - "importer_type": 23, - "export_field_name": "base_finds__context_record__parcel__section" - } - }, - { - "pk": 394, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 4, - "description": "Num\u00e9ro de la parcelle, soit des chiffres sans espaces. Exemple : \"253\".", - "regexp_pre_filter": null, - "required": true, - "label": "Num\u00e9ro de parcelle", - "importer_type": 23, - "export_field_name": "base_finds__context_record__parcel__parcel_number" - } - }, - { - "pk": 395, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 5, - "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": 23, - "export_field_name": "base_finds__context_record__label" - } - }, - { - "pk": 396, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 6, - "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": 23, - "export_field_name": "label" - } - }, - { - "pk": 265, - "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 op\u00e9ration", - "importer_type": 17, - "export_field_name": null - } - }, - { - "pk": 266, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 2, - "description": "Nom usuel de l'op\u00e9ration.", - "regexp_pre_filter": null, - "required": true, - "label": "Nom", - "importer_type": 17, - "export_field_name": null - } - }, - { - "pk": 267, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 3, - "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, - "required": true, - "label": "Ann\u00e9e", - "importer_type": 17, - "export_field_name": null - } - }, - { - "pk": 268, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 4, - "description": "Index (num\u00e9ro par ann\u00e9e), le couple ann\u00e9e + index doit \u00eatre unique.", - "regexp_pre_filter": null, - "required": false, - "label": "Index (num\u00e9ro par ann\u00e9e)", - "importer_type": 17, - "export_field_name": null - } - }, - { - "pk": 269, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 5, - "description": "Type d'op\u00e9ration (parmi une liste).", - "regexp_pre_filter": null, - "required": true, - "label": "Type d'op\u00e9ration", - "importer_type": 17, - "export_field_name": null - } - }, - { - "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, - "export_field_name": null - } - }, - { - "pk": 270, - "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, - "label": "R\u00e9f\u00e9rence du dossier administratif", - "importer_type": 17, - "export_field_name": null - } - }, - { - "pk": 271, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 8, - "description": "Identifiants des sites (entit\u00e9s arch\u00e9ologiques) concern\u00e9es par l'op\u00e9ration, s\u00e9par\u00e9es par \u00ab\u00a0&\u00a0\u00bb. Exemple : \"44 125 0028 & 44 125 0029\".", - "regexp_pre_filter": null, - "required": false, - "label": "Identifiants des sites (EAs)", - "importer_type": 17, - "export_field_name": null - } - }, - { - "pk": 272, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 9, - "description": "Types de vestiges (s\u00e9par\u00e9s par un \u00ab\u00a0&\u00a0\u00bb). Exemple : \"four & fosses & villa\".", - "regexp_pre_filter": null, - "required": false, - "label": "Types de vestiges", - "importer_type": 17, - "export_field_name": null - } - }, - { - "pk": 273, - "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, - "label": "P\u00e9riodes", - "importer_type": 17, - "export_field_name": null - } - }, - { - "pk": 274, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 11, - "description": "Titre (M., Mme, etc.) du responsable scientifique.", - "regexp_pre_filter": null, - "required": false, - "label": "Titre du responsable scientifique", - "importer_type": 17, - "export_field_name": null - } - }, - { - "pk": 275, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 12, - "description": "Pr\u00e9nom du responsable scientifique (responsable d'op\u00e9ration).", - "regexp_pre_filter": null, - "required": false, - "label": "Pr\u00e9nom du responsable scientifique", - "importer_type": 17, - "export_field_name": null - } - }, - { - "pk": 276, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 13, - "description": "Nom du responsable scientifique (responsable d'op\u00e9ration).", - "regexp_pre_filter": null, - "required": false, - "label": "Nom du responsable scientifique", - "importer_type": 17, - "export_field_name": null - } - }, - { - "pk": 277, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 14, - "description": "Rattachement du responsable scientifique (responsable d'op\u00e9ration). Exemple : \"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, - "label": "Rattachement du responsable scientifique", - "importer_type": 17, - "export_field_name": null - } - }, - { - "pk": 278, - "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, - "label": "Nom de l'op\u00e9rateur", - "importer_type": 17, - "export_field_name": null - } - }, - { - "pk": 279, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 16, - "description": "R\u00e9f\u00e9rence de l'op\u00e9rateur (code ou autre r\u00e9f\u00e9rence interne de l'op\u00e9rateur).", - "regexp_pre_filter": null, - "required": false, - "label": "R\u00e9f\u00e9rence de l'op\u00e9rateur", - "importer_type": 17, - "export_field_name": null - } - }, - { - "pk": 280, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 17, - "description": "Titre (M., Mme, etc.) du responsable du suivi scientifique.", - "regexp_pre_filter": null, - "required": false, - "label": "Titre du responsable du suivi scientifique", - "importer_type": 17, - "export_field_name": null - } - }, - { - "pk": 281, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 18, - "description": "Pr\u00e9nom du responsable du suivi scientifique. Exemple\u00a0: resp. SRA ou pilote de l'op\u00e9ration, mais non responsable de celle-ci.", - "regexp_pre_filter": null, - "required": false, - "label": "Pr\u00e9nom du responsable du suivi scientifique", - "importer_type": 17, - "export_field_name": null - } - }, - { - "pk": 282, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 19, - "description": "Nom du responsable du suivi scientifique. Exemple : resp. SRA ou pilote de l'op\u00e9ration, mais non responsable de celle-ci.", - "regexp_pre_filter": null, - "required": false, - "label": "Nom du responsable du suivi scientifique", - "importer_type": 17, - "export_field_name": null - } - }, - { - "pk": 283, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 20, - "description": "Rattachement du responsable du suivi scientifique.", - "regexp_pre_filter": null, - "required": false, - "label": "Rattachement du responsable du suivi scientifique", - "importer_type": 17, - "export_field_name": null - } - }, - { - "pk": 284, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 21, - "description": "Surface couverte par l'op\u00e9ration (m2).", - "regexp_pre_filter": null, - "required": false, - "label": "Surface couverte par l'op\u00e9ration", - "importer_type": 17, - "export_field_name": null - } - }, - { - "pk": 285, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 22, - "description": "Date de d\u00e9but de l'op\u00e9ration (habituellement d\u00e9but du terrain mais vous pouvez utiliser autre chose).", - "regexp_pre_filter": null, - "required": false, - "label": "Date de d\u00e9but de l'op\u00e9ration", - "importer_type": 17, - "export_field_name": null - } - }, - { - "pk": 286, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 23, - "description": "Date de fin de l'op\u00e9ration (habituellement fin du terrain mais vous pouvez utiliser autre chose).", - "regexp_pre_filter": null, - "required": false, - "label": "Date de fin de l'op\u00e9ration", - "importer_type": 17, - "export_field_name": null - } - }, - { - "pk": 287, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 24, - "description": "Date de cl\u00f4ture (peut \u00eatre la date de rendu de la documentation, la fin de la recherche associ\u00e9e ou autre). Habituellement 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, - "required": false, - "label": "Date de cl\u00f4ture", - "importer_type": 17, - "export_field_name": null - } - }, - { - "pk": 288, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 25, - "description": "Date d'avis. Exemple\u00a0: avis de CIRA ou autre selon votre usage.", - "regexp_pre_filter": null, - "required": false, - "label": "Date d'avis", - "importer_type": 17, - "export_field_name": null - } - }, - { - "pk": 289, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 26, - "description": "R\u00e9sultats consid\u00e9r\u00e9s comme n\u00e9gatif (d\u2019ordinaire utilis\u00e9 pour les diagnostics n\u00e9gatifs).", - "regexp_pre_filter": null, - "required": false, - "label": "R\u00e9sultats consid\u00e9r\u00e9s comme n\u00e9gatif", - "importer_type": 17, - "export_field_name": null - } - }, - { - "pk": 290, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 27, - "description": "Pr\u00e9nom du rapporteur (CIRA ou autre selon votre usage de la notion d'avis).", - "regexp_pre_filter": null, - "required": false, - "label": "Pr\u00e9nom du rapporteur", - "importer_type": 17, - "export_field_name": null - } - }, - { - "pk": 291, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 28, - "description": "Nom du rapporteur (CIRA ou autre selon votre usage de la notion d'avis).", - "regexp_pre_filter": null, - "required": false, - "label": "Nom du rapporteur", - "importer_type": 17, - "export_field_name": null - } - }, - { - "pk": 292, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 29, - "description": "Rattachement rapporteur (organisation).", - "regexp_pre_filter": null, - "required": false, - "label": "Rattachement du rapporteur", - "importer_type": 17, - "export_field_name": null - } - }, - { - "pk": 293, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 30, - "description": "Date limite pr\u00e9vue pour le rendu de la documentation scientifique.", - "regexp_pre_filter": null, - "required": false, - "label": "Date limite pour le rendu de la documentation", - "importer_type": 17, - "export_field_name": null - } - }, - { - "pk": 294, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 31, - "description": "Documentation re\u00e7ue.", - "regexp_pre_filter": null, - "required": false, - "label": "Documentation re\u00e7ue", - "importer_type": 17, - "export_field_name": null - } - }, - { - "pk": 295, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 32, - "description": "Date limite pr\u00e9vue pour le rendu du mobilier.", - "regexp_pre_filter": null, - "required": false, - "label": "Date limite rendu du mobilier", - "importer_type": 17, - "export_field_name": null - } - }, - { - "pk": 296, - "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, - "label": "Mobilier re\u00e7u", - "importer_type": 17, - "export_field_name": null - } - }, - { - "pk": 297, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 34, - "description": "Commentaire g\u00e9n\u00e9ral.", - "regexp_pre_filter": null, - "required": false, - "label": "Commentaire g\u00e9n\u00e9ral", - "importer_type": 17, - "export_field_name": null - } - }, - { - "pk": 298, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 35, - "description": "Date de livraison du rapport.", - "regexp_pre_filter": null, - "required": false, - "label": "Date de livraison du rapport", - "importer_type": 17, - "export_field_name": null - } - }, - { - "pk": 299, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 36, - "description": "\u00c9tat de traitement du rapport.", - "regexp_pre_filter": null, - "required": false, - "label": "\u00c9tat de traitement du rapport", - "importer_type": 17, - "export_field_name": null - } - }, - { - "pk": 300, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 37, - "description": "Commentaire sur la documentation scientifique (y compris mobilier).", - "regexp_pre_filter": null, - "required": false, - "label": "Commentaire sur la documentation", - "importer_type": 17, - "export_field_name": null - } - }, - { - "pk": 301, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 38, - "description": "Nom du fichier image (jpg ou png. Exemple \"IMG_5023.jpg\". Les fichiers images doivent \u00eatre joints \u00e0 l'import dans un fichier ZIP.", - "regexp_pre_filter": null, - "required": false, - "label": "Image", - "importer_type": 17, - "export_field_name": null - } - }, - { - "pk": 376, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 1, - "description": "Code UNIQUE pour une op\u00e9ration (par exemple : code PATRIARCHE)", - "regexp_pre_filter": null, - "required": true, - "label": "Code op\u00e9ration", - "importer_type": 22, - "export_field_name": "" - } - }, - { - "pk": 379, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 2, - "description": "Num\u00e9ro unique par op\u00e9ration", - "regexp_pre_filter": null, - "required": true, - "label": "Index (num\u00e9ro par op\u00e9ration)", - "importer_type": 22, - "export_field_name": "" - } - }, - { - "pk": 378, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 3, - "description": "", - "regexp_pre_filter": null, - "required": true, - "label": "Type de document", - "importer_type": 22, - "export_field_name": "" - } - }, - { - "pk": 377, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 4, - "description": "Titre du document (max. 300 caract\u00e8res)", - "regexp_pre_filter": null, - "required": true, - "label": "Titre", - "importer_type": 22, - "export_field_name": "" - } - }, - { - "pk": 380, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 5, - "description": "R\u00e9f\u00e9rence libre (max. 100 caract\u00e8res)", - "regexp_pre_filter": null, - "required": false, - "label": "R\u00e9f\u00e9rence", - "importer_type": 22, - "export_field_name": "" - } - }, - { - "pk": 381, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 6, - "description": "R\u00e9f\u00e9rence interne libre (max. 100 caract\u00e8res)", - "regexp_pre_filter": null, - "required": false, - "label": "R\u00e9f\u00e9rence interne", - "importer_type": 22, - "export_field_name": "" - } - }, - { - "pk": 382, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 7, - "description": "Adresse web compl\u00e8te (avec la partie http:// ou https://)", - "regexp_pre_filter": null, - "required": false, - "label": "Adresse web associ\u00e9e", - "importer_type": 22, - "export_field_name": "" - } - }, - { - "pk": 383, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 8, - "description": "Date de r\u00e9ception (format JJ/MM/AAAA ou AAAA-MM-JJ)", - "regexp_pre_filter": null, - "required": false, - "label": "Date de r\u00e9ception", - "importer_type": 22, - "export_field_name": "" - } - }, - { - "pk": 384, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 9, - "description": "Date de cr\u00e9ation (format JJ/MM/AAAA ou AAAA-MM-JJ)", - "regexp_pre_filter": null, - "required": false, - "label": "Date de cr\u00e9ation", - "importer_type": 22, - "export_field_name": "" - } - }, - { - "pk": 385, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 10, - "description": "Date de r\u00e9ception en documentation (format JJ/MM/AAAA ou AAAA-MM-JJ)", - "regexp_pre_filter": null, - "required": false, - "label": "Date de r\u00e9ception en documentation", - "importer_type": 22, - "export_field_name": "" - } - }, - { - "pk": 386, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 11, - "description": "Texte libre", - "regexp_pre_filter": null, - "required": false, - "label": "Commentaire", - "importer_type": 22, - "export_field_name": "" - } - }, - { - "pk": 387, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 12, - "description": "Texte libre", - "regexp_pre_filter": null, - "required": false, - "label": "Description", - "importer_type": 22, - "export_field_name": "" - } - }, - { - "pk": 388, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 13, - "description": "Texte libre", - "regexp_pre_filter": null, - "required": false, - "label": "Information suppl\u00e9mentaire", - "importer_type": 22, - "export_field_name": "" - } - }, - { - "pk": 390, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 14, - "description": "", - "regexp_pre_filter": null, - "required": false, - "label": "Existe en doublon", - "importer_type": 22, - "export_field_name": "" - } - }, - { - "pk": 389, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 15, - "description": "Nom (en casse haute) suivi du pr\u00e9nom de l'auteur (maximum 300 caract\u00e8res). Exemple : DUPONT Jean.", - "regexp_pre_filter": null, - "required": false, - "label": "Auteur principal", - "importer_type": 22, - "export_field_name": "" - } - }, - { - "pk": 303, - "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 op\u00e9ration", - "importer_type": 19, - "export_field_name": "" - } - }, - { - "pk": 304, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 2, - "description": "Commune (via num\u00e9ro INSEE).", - "regexp_pre_filter": 2, - "required": true, - "label": "Commune", - "importer_type": 19, - "export_field_name": null - } - }, - { - "pk": 305, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 3, - "description": "Identifiant externe.", - "regexp_pre_filter": null, - "required": true, - "label": "ID externe", - "importer_type": 19, - "export_field_name": "" - } - }, - { - "pk": 306, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 4, - "description": "Section. Exemple : \"ZA\". Maximum 4 caract\u00e8res.", - "regexp_pre_filter": null, - "required": true, - "label": "Section", - "importer_type": 19, - "export_field_name": null - } - }, - { - "pk": 307, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 5, - "description": "Num\u00e9ro de la parcelle. Exemple : \"253\". Peut accueillir une r\u00e9f\u00e9rence sous la forme de caract\u00e8res (maximum 6).", - "regexp_pre_filter": null, - "required": true, - "label": "Parcelle", - "importer_type": 19, - "export_field_name": null - } - }, - { - "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": "Ann\u00e9e cadastrale", - "importer_type": 19, - "export_field_name": null - } - }, - { - "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": "Adresse", - "importer_type": 19, - "export_field_name": null - } - }, - { - "pk": 310, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 8, - "description": "Parcelle dans le domaine public ou non (oui/non).", - "regexp_pre_filter": null, - "required": false, - "label": "Domaine public", - "importer_type": 19, - "export_field_name": null - } - }, - { - "pk": 369, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 1, - "description": "", - "regexp_pre_filter": null, - "required": true, - "label": "UE (identifiant externe) - membre de gauche", - "importer_type": 21, - "export_field_name": null - } - }, - { - "pk": 370, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 2, - "description": "", - "regexp_pre_filter": null, - "required": true, - "label": "Type de relation entre UE", - "importer_type": 21, - "export_field_name": null - } - }, - { - "pk": 371, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 3, - "description": "", - "regexp_pre_filter": null, - "required": true, - "label": "UE (identifiant externe) - membre de droite", - "importer_type": 21, - "export_field_name": null - } - }, - { - "pk": 302, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 1, - "description": "Code PATRIARCHE ou code UNIQUE de l'op\u00e9ration associ\u00e9e.", - "regexp_pre_filter": null, - "required": true, - "label": "Code op\u00e9ration", - "importer_type": 18, - "export_field_name": null - } - }, - { - "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, - "export_field_name": "parcel__town__numero_insee" - } - }, - { - "pk": 312, - "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": 18, - "export_field_name": "parcel__section|parcel__parcel_number" - } - }, - { - "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, - "export_field_name": null - } - }, - { - "pk": 314, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 5, - "description": "Identifiant (externe) de l'UE. Exemple : \"US 145\", \"Tranch\u00e9e 145\", \"145\", \"St 17\", etc. Doit \u00eatre unique pour une parcelle donn\u00e9e. Maximum 200 caract\u00e8res.", - "regexp_pre_filter": null, - "required": true, - "label": "Identifiant UE", - "importer_type": 18, - "export_field_name": null - } - }, - { - "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, - "export_field_name": null - } - }, - { - "pk": 316, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 7, - "description": "Description.", - "regexp_pre_filter": null, - "required": false, - "label": "Description", - "importer_type": 18, - "export_field_name": null - } - }, - { - "pk": 317, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 8, - "description": "Commentaire g\u00e9n\u00e9ral.", - "regexp_pre_filter": null, - "required": false, - "label": "Commentaire g\u00e9n\u00e9ral", - "importer_type": 18, - "export_field_name": null - } - }, - { - "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": "Taille ou longueur", - "importer_type": 18, - "export_field_name": null - } - }, - { - "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": "Largeur", - "importer_type": 18, - "export_field_name": null - } - }, - { - "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": "\u00c9paisseur", - "importer_type": 18, - "export_field_name": null - } - }, - { - "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": "Profondeur", - "importer_type": 18, - "export_field_name": null - } - }, - { - "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": "Lieu, localisation", - "importer_type": 18, - "export_field_name": null - } - }, - { - "pk": 323, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 14, - "description": "Champ \u00e0 choix multiple (s\u00e9par\u00e9 par \u00ab & \u00bb) permettant de pr\u00e9ciser : contient du mobilier, dispose d'une photo, etc.", - "regexp_pre_filter": null, - "required": false, - "label": "Documentations", - "importer_type": 18, - "export_field_name": "" - } - }, - { - "pk": 324, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 15, - "description": "Nom du fichier image (jpg ou png). Exemple : \"IMG_5023.jpg\". Les fichiers images doivent \u00eatre joints \u00e0 l'import dans un fichier ZIP.", - "regexp_pre_filter": null, - "required": false, - "label": "Image", - "importer_type": 18, - "export_field_name": null - } - }, - { - "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": "P\u00e9riodes", - "importer_type": 18, - "export_field_name": "datings__period__label" - } - }, - { - "pk": 326, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 17, - "description": "Commentaire sur les datations. Exemple : \"IIe - IIIe s.\", \"fin XVe ou plus tard\", etc.", - "regexp_pre_filter": null, - "required": false, - "label": "Commentaire sur les datations", - "importer_type": 18, - "export_field_name": null - } - }, - { - "pk": 327, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 18, - "description": "Description du remplissage. Exemple : \"Limons argileux brun riche en charbons\".", - "regexp_pre_filter": null, - "required": false, - "label": "Description du remplissage", - "importer_type": 18, - "export_field_name": null - } - }, - { - "pk": 328, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 19, - "description": "Interpr\u00e9tation. 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, - "export_field_name": null - } - }, - { - "pk": 329, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 20, - "description": "Activit\u00e9, r\u00e9f\u00e9rence \u00e0 des types. Exemple : \"Naturelle\", \"Construction\", etc.", - "regexp_pre_filter": null, - "required": false, - "label": "Type d'activit\u00e9", - "importer_type": 18, - "export_field_name": null - } - }, - { - "pk": 330, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 21, - "description": "Identification (type). Exemple : \"Niveau d'occupation\", \"Mur\", \"Colluvions\", \"Chablis\", etc.", - "regexp_pre_filter": null, - "required": false, - "label": "Identification (type)", - "importer_type": 18, - "export_field_name": null - } - }, - { - "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, - "export_field_name": null - } - }, - { - "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, - "export_field_name": null - } - }, - { - "pk": 333, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 24, - "description": "Terminus ante quem estim\u00e9, 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\u00e9", - "importer_type": 18, - "export_field_name": null - } - }, - { - "pk": 334, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 25, - "description": "Terminus post quem estim\u00e9, 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\u00e9", - "importer_type": 18, - "export_field_name": null - } - }, - { - "pk": 14, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 1, - "description": "Code Patriarche de l'op\u00e9ration associ\u00e9e", - "regexp_pre_filter": null, - "required": true, - "label": "Code Patriarche", - "importer_type": 3, - "export_field_name": null - } - }, - { - "pk": 15, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 2, - "description": "", - "regexp_pre_filter": null, - "required": true, - "label": "Identifiant externe", - "importer_type": 3, - "export_field_name": null - } - }, - { - "pk": 16, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 3, - "description": "", - "regexp_pre_filter": null, - "required": true, - "label": "Type de document", - "importer_type": 3, - "export_field_name": null - } - }, - { - "pk": 17, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 4, - "description": "", - "regexp_pre_filter": null, - "required": false, - "label": "Type de support", - "importer_type": 3, - "export_field_name": null - } - }, - { - "pk": 18, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 5, - "description": "", - "regexp_pre_filter": null, - "required": false, - "label": "Num\u00e9ro", - "importer_type": 3, - "export_field_name": null - } - }, - { - "pk": 19, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 6, - "description": "", - "regexp_pre_filter": null, - "required": false, - "label": "Nom de l'auteur", - "importer_type": 3, - "export_field_name": null - } - }, - { - "pk": 20, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 7, - "description": "", - "regexp_pre_filter": null, - "required": false, - "label": "Date de cr\u00e9ation", - "importer_type": 3, - "export_field_name": null - } - }, - { - "pk": 21, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 8, - "description": "", - "regexp_pre_filter": null, - "required": false, - "label": "Type de format", - "importer_type": 3, - "export_field_name": null - } - }, - { - "pk": 22, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 9, - "description": "", - "regexp_pre_filter": null, - "required": false, - "label": "Description", - "importer_type": 3, - "export_field_name": null - } - }, - { - "pk": 23, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 12, - "description": "", - "regexp_pre_filter": null, - "required": false, - "label": "Commentaire", - "importer_type": 3, - "export_field_name": null - } - }, - { - "pk": 24, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 13, - "description": "", - "regexp_pre_filter": null, - "required": false, - "label": "\u00c9chelle", - "importer_type": 3, - "export_field_name": null - } - }, - { - "pk": 25, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 16, - "description": "", - "regexp_pre_filter": null, - "required": false, - "label": "Information suppl\u00e9mentaire", - "importer_type": 3, - "export_field_name": null - } - }, - { - "pk": 36, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 1, - "description": "Code patriarche de l'op\u00e9ration associ\u00e9e", - "regexp_pre_filter": null, - "required": true, - "label": "Code Patriarche", - "importer_type": 5, - "export_field_name": "base_finds__context_record__operation__code_patriarche" - } - }, - { - "pk": 227, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 2, - "description": "Commune (via num\u00e9ro INSEE)", - "regexp_pre_filter": null, - "required": true, - "label": "Commune", - "importer_type": 5, - "export_field_name": "base_finds__context_record__parcel__town__numero_insee" - } - }, - { - "pk": 226, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 3, - "description": "Identifiant parcelle", - "regexp_pre_filter": null, - "required": true, - "label": "Parcelle", - "importer_type": 5, - "export_field_name": "base_finds__context_record__parcel__section|base_finds__context_record__parcel__parcel_number" - } - }, - { - "pk": 43, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 4, - "description": "Identifiant UE", - "regexp_pre_filter": null, - "required": true, - "label": "UE", - "importer_type": 5, - "export_field_name": "base_finds__context_record__label" - } - }, - { - "pk": 37, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 5, - "description": "Identifiant externe", - "regexp_pre_filter": null, - "required": true, - "label": "Identifiant externe", - "importer_type": 5, - "export_field_name": null - } - }, - { - "pk": 39, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 9, - "description": "Sous classe de mat\u00e9riaux", - "regexp_pre_filter": null, - "required": false, - "label": "Mat\u00e9riau", - "importer_type": 5, - "export_field_name": null - } - }, - { - "pk": 229, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 12, - "description": "Ref. du contenant / label temporaire utilis\u00e9 pour le mobilier = label libre = Label pour l'instant", - "regexp_pre_filter": null, - "required": false, - "label": "Libell\u00e9 contenant", - "importer_type": 5, - "export_field_name": null - } - }, - { - "pk": 40, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 13, - "description": "Nombre d'\u00e9l\u00e9ments", - "regexp_pre_filter": null, - "required": false, - "label": "Nombre d'\u00e9l\u00e9ments", - "importer_type": 5, - "export_field_name": null - } - }, - { - "pk": 41, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 14, - "description": "Poids", - "regexp_pre_filter": null, - "required": false, - "label": "Poids", - "importer_type": 5, - "export_field_name": null - } - }, - { - "pk": 42, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 15, - "description": "Unit\u00e9 de poids", - "regexp_pre_filter": null, - "required": false, - "label": "Unit\u00e9 de poids", - "importer_type": 5, - "export_field_name": null - } - }, - { - "pk": 44, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 16, - "description": "Date de d\u00e9couverte", - "regexp_pre_filter": null, - "required": false, - "label": "Date de d\u00e9couverte", - "importer_type": 5, - "export_field_name": null - } - }, - { - "pk": 45, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 17, - "description": "\u00c9tat de conservation", - "regexp_pre_filter": null, - "required": false, - "label": "\u00c9tat de conservation", - "importer_type": 5, - "export_field_name": null - } - }, - { - "pk": 46, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 18, - "description": "Mesure de conservation", - "regexp_pre_filter": null, - "required": false, - "label": "Mesure de conservation", - "importer_type": 5, - "export_field_name": null - } - }, - { - "pk": 47, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 19, - "description": "Commentaire", - "regexp_pre_filter": null, - "required": false, - "label": "Commentaire", - "importer_type": 5, - "export_field_name": null - } - }, - { - "pk": 228, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 20, - "description": "Datations s\u00e9par\u00e9es par des \"&\"", - "regexp_pre_filter": null, - "required": false, - "label": "Datation", - "importer_type": 5, - "export_field_name": null - } - }, - { - "pk": 48, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 21, - "description": "Localisation topographique", - "regexp_pre_filter": null, - "required": false, - "label": "Localisation topographique", - "importer_type": 5, - "export_field_name": null - } - }, - { - "pk": 49, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 22, - "description": "Int\u00e9r\u00eat sp\u00e9cifique", - "regexp_pre_filter": null, - "required": false, - "label": "Int\u00e9r\u00eat sp\u00e9cifique", - "importer_type": 5, - "export_field_name": null - } - }, - { - "pk": 50, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 23, - "description": "Description", - "regexp_pre_filter": null, - "required": false, - "label": "Description", - "importer_type": 5, - "export_field_name": null - } - }, - { - "pk": 1, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 1, - "description": "Code Patriarche", - "regexp_pre_filter": null, - "required": true, - "label": "Code Patriarche", - "importer_type": 1, - "export_field_name": null - } - }, - { - "pk": 2, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 3, - "description": "", - "regexp_pre_filter": null, - "required": true, - "label": "Type d'op\u00e9ration", - "importer_type": 1, - "export_field_name": null - } - }, - { - "pk": 3, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 4, - "description": "", - "regexp_pre_filter": null, - "required": true, - "label": "Nom de l'op\u00e9ration", - "importer_type": 1, - "export_field_name": null - } - }, - { - "pk": 4, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 5, - "description": "", - "regexp_pre_filter": null, - "required": true, - "label": "Nom de l'op\u00e9rateur", - "importer_type": 1, - "export_field_name": null - } - }, - { - "pk": 5, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 6, - "description": "Nom du responsable de l'op\u00e9ration. Nom et Pr\u00e9nom sont group\u00e9s et donc mis dans le NOM seul dans l'annuaire.", - "regexp_pre_filter": null, - "required": true, - "label": "Nom du responsable de l'op\u00e9ration", - "importer_type": 1, - "export_field_name": null - } - }, - { - "pk": 6, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 7, - "description": "Date de d\u00e9but de l'op\u00e9ration avec le format ANN\u00c9E/MOIS/JOUR", - "regexp_pre_filter": null, - "required": true, - "label": "Date d\u00e9but", - "importer_type": 1, - "export_field_name": null - } - }, - { - "pk": 7, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 8, - "description": "Date de fin de l'op\u00e9ration avec le format ANN\u00c9E/MOIS/JOUR", - "regexp_pre_filter": null, - "required": true, - "label": "Date fin", - "importer_type": 1, - "export_field_name": null - } - }, - { - "pk": 8, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 9, - "description": "", - "regexp_pre_filter": null, - "required": false, - "label": "P\u00e9riodes", - "importer_type": 1, - "export_field_name": null - } - }, - { - "pk": 9, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 1, - "description": "Code Patriarche de l'op\u00e9ration associ\u00e9e", - "regexp_pre_filter": null, - "required": true, - "label": "Code Patriarche", - "importer_type": 2, - "export_field_name": null - } - }, - { - "pk": 12, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 2, - "description": "Commune (via num\u00e9ro INSEE)", - "regexp_pre_filter": 2, - "required": true, - "label": "Commune", - "importer_type": 2, - "export_field_name": null - } - }, - { - "pk": 53, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 3, - "description": "Identifiant externe", - "regexp_pre_filter": null, - "required": true, - "label": "Identifiant externe", - "importer_type": 2, - "export_field_name": null - } - }, - { - "pk": 51, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 4, - "description": "Num\u00e9ro", - "regexp_pre_filter": null, - "required": false, - "label": "Parcelle", - "importer_type": 2, - "export_field_name": null - } - }, - { - "pk": 52, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 5, - "description": "Section", - "regexp_pre_filter": null, - "required": false, - "label": "Section cadastrale", - "importer_type": 2, - "export_field_name": null - } - }, - { - "pk": 11, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 6, - "description": "Ann\u00e9e", - "regexp_pre_filter": null, - "required": false, - "label": "Ann\u00e9e cadastrale", - "importer_type": 2, - "export_field_name": null - } - }, - { - "pk": 13, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 9, - "description": "Lieu dit / adresse", - "regexp_pre_filter": null, - "required": false, - "label": "Adresse", - "importer_type": 2, - "export_field_name": null - } - }, - { - "pk": 26, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 1, - "description": "Code Patriarche de l'op\u00e9ration associ\u00e9e", - "regexp_pre_filter": null, - "required": true, - "label": "Code Patriarche", - "importer_type": 4, - "export_field_name": null - } - }, - { - "pk": 225, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 2, - "description": "Commune (via num\u00e9ro INSEE)", - "regexp_pre_filter": null, - "required": true, - "label": "Commune", - "importer_type": 4, - "export_field_name": "parcel__town__numero_insee" - } - }, - { - "pk": 33, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 3, - "description": "Parcelle (identifiant externe)", - "regexp_pre_filter": null, - "required": true, - "label": "Parcelle", - "importer_type": 4, - "export_field_name": "parcel__section|parcel__parcel_number" - } - }, - { - "pk": 27, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 4, - "description": "Identifiant externe ", - "regexp_pre_filter": null, - "required": true, - "label": "Identifiant externe", - "importer_type": 4, - "export_field_name": null - } - }, - { - "pk": 28, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 5, - "description": "Type", - "regexp_pre_filter": null, - "required": false, - "label": "Type", - "importer_type": 4, - "export_field_name": null - } - }, - { - "pk": 29, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 6, - "description": "Description", - "regexp_pre_filter": null, - "required": false, - "label": "Description", - "importer_type": 4, - "export_field_name": null - } - }, - { - "pk": 30, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 7, - "description": "Identification", - "regexp_pre_filter": null, - "required": false, - "label": "Identification", - "importer_type": 4, - "export_field_name": null - } - }, - { - "pk": 31, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 8, - "description": "Date d'ouverture", - "regexp_pre_filter": null, - "required": false, - "label": "Date d\u00e9but", - "importer_type": 4, - "export_field_name": null - } - }, - { - "pk": 32, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 9, - "description": "Date de fermeture", - "regexp_pre_filter": null, - "required": false, - "label": "Date fin", - "importer_type": 4, - "export_field_name": null - } - }, - { - "pk": 34, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 11, - "description": "Commentaire", - "regexp_pre_filter": null, - "required": false, - "label": "Commentaire", - "importer_type": 4, - "export_field_name": null - } - }, - { - "pk": 54, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 12, - "description": "Nature", - "regexp_pre_filter": null, - "required": false, - "label": "Nature", - "importer_type": 4, - "export_field_name": null - } - }, - { - "pk": 35, - "model": "ishtar_common.importercolumn", - "fields": { - "col_number": 13, - "description": "Chronologie (plusieurs possibles s\u00e9par\u00e9es par &)", - "regexp_pre_filter": null, - "required": false, - "label": "Chronologie", - "importer_type": 4, - "export_field_name": "datings__period__label" - } - }, - { - "pk": 15, - "model": "ishtar_common.importtarget", - "fields": { - "comment": null, - "target": "operation__code_patriarche", - "column": 14, - "formater_type": 1, - "concat_str": null, - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 28, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "label", - "column": 27, - "formater_type": 3, - "concat_str": null, - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 13, - "model": "ishtar_common.importtarget", - "fields": { - "comment": null, - "target": "town__numero_insee", - "column": 12, - "formater_type": 11, - "concat_str": null, - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 2, - "model": "ishtar_common.importtarget", - "fields": { - "comment": null, - "target": "operation_type", - "column": 2, - "formater_type": 2, - "concat_str": null, - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 4, - "model": "ishtar_common.importtarget", - "fields": { - "comment": null, - "target": "operator__name", - "column": 4, - "formater_type": 3, - "concat_str": null, - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 6, - "model": "ishtar_common.importtarget", - "fields": { - "comment": null, - "target": "start_date", - "column": 6, - "formater_type": 5, - "concat_str": null, - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 7, - "model": "ishtar_common.importtarget", - "fields": { - "comment": null, - "target": "excavation_end_date", - "column": 7, - "formater_type": 5, - "concat_str": null, - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 8, - "model": "ishtar_common.importtarget", - "fields": { - "comment": null, - "target": "periods", - "column": 8, - "formater_type": 6, - "concat_str": null, - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 14, - "model": "ishtar_common.importtarget", - "fields": { - "comment": null, - "target": "address", - "column": 13, - "formater_type": 10, - "concat_str": null, - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 16, - "model": "ishtar_common.importtarget", - "fields": { - "comment": null, - "target": "external_id", - "column": 15, - "formater_type": 11, - "concat_str": null, - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 17, - "model": "ishtar_common.importtarget", - "fields": { - "comment": null, - "target": "source_type", - "column": 16, - "formater_type": 12, - "concat_str": null, - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 18, - "model": "ishtar_common.importtarget", - "fields": { - "comment": null, - "target": "support_type", - "column": 17, - "formater_type": 13, - "concat_str": null, - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 19, - "model": "ishtar_common.importtarget", - "fields": { - "comment": null, - "target": "item_number", - "column": 18, - "formater_type": 1, - "concat_str": null, - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 20, - "model": "ishtar_common.importtarget", - "fields": { - "comment": null, - "target": "authors__person__raw_name", - "column": 19, - "formater_type": 4, - "concat_str": null, - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 21, - "model": "ishtar_common.importtarget", - "fields": { - "comment": null, - "target": "creation_date", - "column": 20, - "formater_type": 14, - "concat_str": null, - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 22, - "model": "ishtar_common.importtarget", - "fields": { - "comment": null, - "target": "format_type", - "column": 21, - "formater_type": 15, - "concat_str": null, - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 23, - "model": "ishtar_common.importtarget", - "fields": { - "comment": null, - "target": "description", - "column": 22, - "formater_type": 16, - "concat_str": null, - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 24, - "model": "ishtar_common.importtarget", - "fields": { - "comment": null, - "target": "comment", - "column": 23, - "formater_type": 16, - "concat_str": null, - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 25, - "model": "ishtar_common.importtarget", - "fields": { - "comment": null, - "target": "scale", - "column": 24, - "formater_type": 17, - "concat_str": null, - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 53, - "model": "ishtar_common.importtarget", - "fields": { - "comment": null, - "target": "parcel_number", - "column": 51, - "formater_type": 8, - "concat_str": null, - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 54, - "model": "ishtar_common.importtarget", - "fields": { - "comment": null, - "target": "section", - "column": 52, - "formater_type": 7, - "concat_str": null, - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 5, - "model": "ishtar_common.importtarget", - "fields": { - "comment": null, - "target": "scientist__raw_name", - "column": 5, - "formater_type": 4, - "concat_str": null, - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 56, - "model": "ishtar_common.importtarget", - "fields": { - "comment": null, - "target": "year", - "column": 11, - "formater_type": 14, - "concat_str": null, - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 35, - "model": "ishtar_common.importtarget", - "fields": { - "comment": null, - "target": "comment", - "column": 34, - "formater_type": 16, - "concat_str": null, - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 31, - "model": "ishtar_common.importtarget", - "fields": { - "comment": null, - "target": "identification", - "column": 30, - "formater_type": 24, - "concat_str": null, - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 57, - "model": "ishtar_common.importtarget", - "fields": { - "comment": null, - "target": "interpretation", - "column": 54, - "formater_type": 16, - "concat_str": null, - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 26, - "model": "ishtar_common.importtarget", - "fields": { - "comment": null, - "target": "additional_information", - "column": 25, - "formater_type": 16, - "concat_str": null, - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 29, - "model": "ishtar_common.importtarget", - "fields": { - "comment": null, - "target": "unit", - "column": 28, - "formater_type": 18, - "concat_str": null, - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 30, - "model": "ishtar_common.importtarget", - "fields": { - "comment": null, - "target": "description", - "column": 29, - "formater_type": 16, - "concat_str": null, - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 32, - "model": "ishtar_common.importtarget", - "fields": { - "comment": null, - "target": "opening_date", - "column": 31, - "formater_type": 5, - "concat_str": null, - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 33, - "model": "ishtar_common.importtarget", - "fields": { - "comment": null, - "target": "closing_date", - "column": 32, - "formater_type": 5, - "concat_str": null, - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 1, - "model": "ishtar_common.importtarget", - "fields": { - "comment": null, - "target": "code_patriarche", - "column": 1, - "formater_type": 1, - "concat_str": null, - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 36, - "model": "ishtar_common.importtarget", - "fields": { - "comment": null, - "target": "datings__period", - "column": 35, - "formater_type": 6, - "concat_str": null, - "regexp_filter": null, - "concat": false, - "force_new": true - } - }, - { - "pk": 55, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "external_id", - "column": 53, - "formater_type": 11, - "concat_str": "-", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 27, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "operation__code_patriarche", - "column": 26, - "formater_type": 1, - "concat_str": "-", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 250, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "parcel__external_id", - "column": 225, - "formater_type": 28, - "concat_str": "-", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 34, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "parcel__external_id", - "column": 33, - "formater_type": 11, - "concat_str": "-", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 9, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "operation__code_patriarche", - "column": 9, - "formater_type": 1, - "concat_str": "-", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 290, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "code_patriarche", - "column": 265, - "formater_type": 1, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 293, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "operation_code", - "column": 268, - "formater_type": 1, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 296, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "periods", - "column": 273, - "formater_type": 6, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 299, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "scientist__surname", - "column": 275, - "formater_type": 3, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 365, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "base_finds__label", - "column": 340, - "formater_type": 3, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 308, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "surface", - "column": 284, - "formater_type": 1, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 311, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "end_date", - "column": 287, - "formater_type": 25, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 368, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "base_finds__batch", - "column": 344, - "formater_type": 48, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 317, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "documentation_deadline", - "column": 293, - "formater_type": 25, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 320, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "finds_received", - "column": 296, - "formater_type": 19, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 323, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "report_processing", - "column": 299, - "formater_type": 37, - "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": 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": 371, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "conservatory_state", - "column": 347, - "formater_type": 22, - "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": 374, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "preservation_to_considers", - "column": 350, - "formater_type": 23, - "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": 377, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "length", - "column": 353, - "formater_type": 21, - "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": 379, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "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_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": "comment", - "column": 360, - "formater_type": 35, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 385, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "dating_comment", - "column": 361, - "formater_type": 35, - "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": true - } - }, - { - "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": 3, - "model": "ishtar_common.importtarget", - "fields": { - "comment": null, - "target": "common_name", - "column": 3, - "formater_type": 3, - "concat_str": null, - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 291, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "common_name", - "column": 266, - "formater_type": 35, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 294, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "operation_type", - "column": 269, - "formater_type": 2, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 300, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "scientist__name", - "column": 276, - "formater_type": 30, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 303, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "operator_reference", - "column": 279, - "formater_type": 3, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 388, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "datings__period", - "column": 364, - "formater_type": 6, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": true - } - }, - { - "pk": 309, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "start_date", - "column": 285, - "formater_type": 25, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 312, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "cira_date", - "column": 288, - "formater_type": 25, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 37, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "base_finds__context_record__external_id", - "column": 36, - "formater_type": 11, - "concat_str": "-", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 318, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "documentation_received", - "column": 294, - "formater_type": 19, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 321, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "comment", - "column": 297, - "formater_type": 35, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 324, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "scientific_documentation_comment", - "column": 300, - "formater_type": 35, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "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": 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": 252, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "base_finds__context_record__external_id", - "column": 227, - "formater_type": 28, - "concat_str": "-", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 251, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "base_finds__context_record__external_id", - "column": 226, - "formater_type": 35, - "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": 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": 38, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "base_finds__label", - "column": 37, - "formater_type": 3, - "concat_str": null, - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 342, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "comment", - "column": 317, - "formater_type": 35, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 347, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "location", - "column": 322, - "formater_type": 35, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 353, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "interpretation", - "column": 328, - "formater_type": 35, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 341, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "description", - "column": 316, - "formater_type": 35, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 339, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "label", - "column": 314, - "formater_type": 30, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 302, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "operator__name", - "column": 278, - "formater_type": 10, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 305, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "in_charge__surname", - "column": 281, - "formater_type": 39, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 306, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "in_charge__name", - "column": 282, - "formater_type": 30, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 314, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "cira_rapporteur__surname", - "column": 290, - "formater_type": 39, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 315, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "cira_rapporteur__name", - "column": 291, - "formater_type": 30, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 40, - "model": "ishtar_common.importtarget", - "fields": { - "comment": null, - "target": "material_types", - "column": 39, - "formater_type": 20, - "concat_str": null, - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 41, - "model": "ishtar_common.importtarget", - "fields": { - "comment": null, - "target": "find_number", - "column": 40, - "formater_type": 1, - "concat_str": null, - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 42, - "model": "ishtar_common.importtarget", - "fields": { - "comment": null, - "target": "weight", - "column": 41, - "formater_type": 21, - "concat_str": null, - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 43, - "model": "ishtar_common.importtarget", - "fields": { - "comment": null, - "target": "weight_unit", - "column": 42, - "formater_type": 7, - "concat_str": null, - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 45, - "model": "ishtar_common.importtarget", - "fields": { - "comment": null, - "target": "base_finds__discovery_date", - "column": 44, - "formater_type": 5, - "concat_str": null, - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 46, - "model": "ishtar_common.importtarget", - "fields": { - "comment": null, - "target": "conservatory_state", - "column": 45, - "formater_type": 22, - "concat_str": null, - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 47, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "preservation_to_considers", - "column": 46, - "formater_type": 23, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 48, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "base_finds__comment", - "column": 47, - "formater_type": 35, - "concat_str": null, - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 253, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "datings__period", - "column": 228, - "formater_type": 6, - "concat_str": null, - "regexp_filter": null, - "concat": false, - "force_new": true - } - }, - { - "pk": 49, - "model": "ishtar_common.importtarget", - "fields": { - "comment": null, - "target": "base_finds__topographic_localisation", - "column": 48, - "formater_type": 3, - "concat_str": null, - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 50, - "model": "ishtar_common.importtarget", - "fields": { - "comment": null, - "target": "base_finds__special_interest", - "column": 49, - "formater_type": 3, - "concat_str": null, - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 51, - "model": "ishtar_common.importtarget", - "fields": { - "comment": null, - "target": "base_finds__description", - "column": 50, - "formater_type": 16, - "concat_str": null, - "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": 348, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "documentations", - "column": 323, - "formater_type": 52, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 395, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "relation_type", - "column": 370, - "formater_type": 49, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 394, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "left_record__external_id", - "column": 369, - "formater_type": 35, - "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": 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": 366, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "previous_id", - "column": 341, - "formater_type": 3, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 369, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "is_complete", - "column": 345, - "formater_type": 19, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 372, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "conservatory_comment", - "column": 348, - "formater_type": 35, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 375, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "integrities", - "column": 351, - "formater_type": 43, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 378, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "width", - "column": 354, - "formater_type": 21, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 380, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "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": "mark", - "column": 359, - "formater_type": 35, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 386, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "estimated_value", - "column": 362, - "formater_type": 21, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 398, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "container__responsible__external_id", - "column": 373, - "formater_type": 35, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 400, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "container__container_type", - "column": 375, - "formater_type": 50, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 254, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "label", - "column": 229, - "formater_type": 3, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 402, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "title", - "column": 377, - "formater_type": 4, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 404, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "index", - "column": 379, - "formater_type": 1, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 406, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "internal_reference", - "column": 381, - "formater_type": 51, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 408, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "receipt_date", - "column": 383, - "formater_type": 25, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 410, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "receipt_date_in_documentation", - "column": 385, - "formater_type": 25, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 412, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "description", - "column": 387, - "formater_type": 35, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 414, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "authors__person__raw_name", - "column": 389, - "formater_type": 4, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 417, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "base_finds__context_record__external_id", - "column": 392, - "formater_type": 28, - "concat_str": "-", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 421, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "base_finds__label", - "column": 396, - "formater_type": 3, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 419, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "base_finds__context_record__external_id", - "column": 394, - "formater_type": 35, - "concat_str": "-", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 423, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "base_finds__context_record__parcel__section", - "column": 393, - "formater_type": 7, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 425, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "base_finds__context_record__parcel__town__numero_insee", - "column": 337, - "formater_type": 28, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 396, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "right_record__external_id", - "column": 371, - "formater_type": 35, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 361, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "base_finds__context_record__external_id", - "column": 336, - "formater_type": 11, - "concat_str": "-", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 362, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "base_finds__context_record__external_id", - "column": 337, - "formater_type": 28, - "concat_str": "-", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 363, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "base_finds__context_record__external_id", - "column": 338, - "formater_type": 35, - "concat_str": "-", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 364, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "base_finds__context_record__external_id", - "column": 339, - "formater_type": 3, - "concat_str": "-", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 389, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "base_finds__topographic_localisation", - "column": 343, - "formater_type": 3, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 367, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "description", - "column": 342, - "formater_type": 35, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 370, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "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": "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": "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": "dimensions_comment", - "column": 357, - "formater_type": 35, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 397, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "weight", - "column": 372, - "formater_type": 21, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 387, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "image", - "column": 363, - "formater_type": 27, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 390, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "base_finds__x", - "column": 365, - "formater_type": 21, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 391, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "base_finds__y", - "column": 366, - "formater_type": 21, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 392, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "base_finds__z", - "column": 367, - "formater_type": 21, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 393, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "base_finds__spatial_reference_system", - "column": 368, - "formater_type": 46, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 399, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "container__reference", - "column": 374, - "formater_type": 17, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 44, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "base_finds__context_record__external_id", - "column": 43, - "formater_type": 3, - "concat_str": "-", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 327, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "operation__code_patriarche", - "column": 303, - "formater_type": 1, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 403, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "source_type", - "column": 378, - "formater_type": 12, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 401, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "operation__code_patriarche", - "column": 376, - "formater_type": 35, - "concat_str": "-", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 405, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "reference", - "column": 380, - "formater_type": 51, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 407, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "associated_url", - "column": 382, - "formater_type": 4, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 409, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "creation_date", - "column": 384, - "formater_type": 25, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 411, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "comment", - "column": 386, - "formater_type": 35, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 413, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "additional_information", - "column": 388, - "formater_type": 35, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "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": 415, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "duplicate", - "column": 390, - "formater_type": 19, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 416, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "base_finds__context_record__external_id", - "column": 391, - "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": 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": 14, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 337, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "parcel__year", - "column": 313, - "formater_type": 14, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 340, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "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, - "force_new": false - } - }, - { - "pk": 301, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "scientist__attached_to__name", - "column": 277, - "formater_type": 30, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 418, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "base_finds__context_record__external_id", - "column": 393, - "formater_type": 35, - "concat_str": "-", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 420, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "base_finds__context_record__external_id", - "column": 395, - "formater_type": 3, - "concat_str": "-", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 355, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "identification", - "column": 330, - "formater_type": 24, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 358, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "taq_estimated", - "column": 333, - "formater_type": 1, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 422, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "base_finds__context_record__parcel__town__numero_insee", - "column": 392, - "formater_type": 11, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 424, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "base_finds__context_record__parcel__parcel_number", - "column": 394, - "formater_type": 8, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 352, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "filling", - "column": 327, - "formater_type": 35, - "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": 47, - "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": 47, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 307, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "in_charge__attached_to__name", - "column": 283, - "formater_type": 10, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 316, - "model": "ishtar_common.importtarget", - "fields": { - "comment": "", - "target": "cira_rapporteur__attached_to__name", - "column": 292, - "formater_type": 10, - "concat_str": "", - "regexp_filter": null, - "concat": false, - "force_new": false - } - }, - { - "pk": 25, - "model": "ishtar_common.formatertype", - "fields": { - "formater_type": "DateFormater", - "many_split": " | ", - "options": "%d/%m/%Y | %Y-%m-%d" - } - }, - { - "pk": 5, - "model": "ishtar_common.formatertype", - "fields": { - "formater_type": "DateFormater", - "many_split": "", - "options": "%Y/%m/%d" - } - }, - { - "pk": 27, - "model": "ishtar_common.formatertype", - "fields": { - "formater_type": "FileFormater", - "many_split": "", - "options": "" - } - }, - { - "pk": 21, - "model": "ishtar_common.formatertype", - "fields": { - "formater_type": "FloatFormater", - "many_split": "", - "options": "" - } - }, - { - "pk": 1, - "model": "ishtar_common.formatertype", - "fields": { - "formater_type": "IntegerFormater", - "many_split": "", - "options": "" - } - }, - { - "pk": 19, - "model": "ishtar_common.formatertype", - "fields": { - "formater_type": "StrToBoolean", - "many_split": "", - "options": "" - } - }, - { - "pk": 42, - "model": "ishtar_common.formatertype", - "fields": { - "formater_type": "TypeFormater", - "many_split": "", - "options": "archaeological_context_records.models.ActivityType" - } - }, - { - "pk": 52, - "model": "ishtar_common.formatertype", - "fields": { - "formater_type": "TypeFormater", - "many_split": "&", - "options": "archaeological_context_records.models.DocumentationType" - } - }, - { - "pk": 24, - "model": "ishtar_common.formatertype", - "fields": { - "formater_type": "TypeFormater", - "many_split": "", - "options": "archaeological_context_records.models.IdentificationType" - } - }, - { - "pk": 49, - "model": "ishtar_common.formatertype", - "fields": { - "formater_type": "TypeFormater", - "many_split": "", - "options": "archaeological_context_records.models.RelationType" - } - }, - { - "pk": 18, - "model": "ishtar_common.formatertype", - "fields": { - "formater_type": "TypeFormater", - "many_split": "", - "options": "archaeological_context_records.models.Unit" - } - }, - { - "pk": 34, - "model": "ishtar_common.formatertype", - "fields": { - "formater_type": "TypeFormater", - "many_split": "", - "options": "archaeological_files.models.PermitType" - } - }, - { - "pk": 32, - "model": "ishtar_common.formatertype", - "fields": { - "formater_type": "TypeFormater", - "many_split": "", - "options": "archaeological_files.models.SaisineType" - } - }, - { - "pk": 48, - "model": "ishtar_common.formatertype", - "fields": { - "formater_type": "TypeFormater", - "many_split": "", - "options": "archaeological_finds.models.BatchType" - } - }, - { - "pk": 22, - "model": "ishtar_common.formatertype", - "fields": { - "formater_type": "TypeFormater", - "many_split": "", - "options": "archaeological_finds.models.ConservatoryState" - } - }, - { - "pk": 43, - "model": "ishtar_common.formatertype", - "fields": { - "formater_type": "TypeFormater", - "many_split": "&", - "options": "archaeological_finds.models.IntegrityType" - } - }, - { - "pk": 20, - "model": "ishtar_common.formatertype", - "fields": { - "formater_type": "TypeFormater", - "many_split": "&", - "options": "archaeological_finds.models.MaterialType" - } - }, - { - "pk": 26, - "model": "ishtar_common.formatertype", - "fields": { - "formater_type": "TypeFormater", - "many_split": "", - "options": "archaeological_finds.models.ObjectType" - } - }, - { - "pk": 23, - "model": "ishtar_common.formatertype", - "fields": { - "formater_type": "TypeFormater", - "many_split": "", - "options": "archaeological_finds.models.PreservationType" - } - }, - { - "pk": 44, - "model": "ishtar_common.formatertype", - "fields": { - "formater_type": "TypeFormater", - "many_split": "&", - "options": "archaeological_finds.models.RemarkabilityType" - } - }, - { - "pk": 2, - "model": "ishtar_common.formatertype", - "fields": { - "formater_type": "TypeFormater", - "many_split": "", - "options": "archaeological_operations.models.OperationType" - } - }, - { - "pk": 6, - "model": "ishtar_common.formatertype", - "fields": { - "formater_type": "TypeFormater", - "many_split": "&", - "options": "archaeological_operations.models.Period" - } - }, - { - "pk": 41, - "model": "ishtar_common.formatertype", - "fields": { - "formater_type": "TypeFormater", - "many_split": "&", - "options": "archaeological_operations.models.RemainType" - } - }, - { - "pk": 37, - "model": "ishtar_common.formatertype", - "fields": { - "formater_type": "TypeFormater", - "many_split": "", - "options": "archaeological_operations.models.ReportState" - } - }, - { - "pk": 50, - "model": "ishtar_common.formatertype", - "fields": { - "formater_type": "TypeFormater", - "many_split": "", - "options": "archaeological_warehouse.models.ContainerType" - } - }, - { - "pk": 15, - "model": "ishtar_common.formatertype", - "fields": { - "formater_type": "TypeFormater", - "many_split": "", - "options": "Format" - } - }, - { - "pk": 12, - "model": "ishtar_common.formatertype", - "fields": { - "formater_type": "TypeFormater", - "many_split": "", - "options": "SourceType" - } - }, - { - "pk": 46, - "model": "ishtar_common.formatertype", - "fields": { - "formater_type": "TypeFormater", - "many_split": "", - "options": "SpatialReferenceSystem" - } - }, - { - "pk": 13, - "model": "ishtar_common.formatertype", - "fields": { - "formater_type": "TypeFormater", - "many_split": "", - "options": "SupportType" - } - }, - { - "pk": 47, - "model": "ishtar_common.formatertype", - "fields": { - "formater_type": "TypeFormater", - "many_split": "", - "options": "TitleType" - } - }, - { - "pk": 35, - "model": "ishtar_common.formatertype", - "fields": { - "formater_type": "UnicodeFormater", - "many_split": "", - "options": "" - } - }, - { - "pk": 38, - "model": "ishtar_common.formatertype", - "fields": { - "formater_type": "UnicodeFormater", - "many_split": "", - "options": "10" - } - }, - { - "pk": 51, - "model": "ishtar_common.formatertype", - "fields": { - "formater_type": "UnicodeFormater", - "many_split": "", - "options": "100" - } - }, - { - "pk": 16, - "model": "ishtar_common.formatertype", - "fields": { - "formater_type": "UnicodeFormater", - "many_split": "", - "options": "1000" - } - }, - { - "pk": 11, - "model": "ishtar_common.formatertype", - "fields": { - "formater_type": "UnicodeFormater", - "many_split": "", - "options": "12" - } - }, - { - "pk": 3, - "model": "ishtar_common.formatertype", - "fields": { - "formater_type": "UnicodeFormater", - "many_split": "", - "options": "120" - } - }, - { - "pk": 45, - "model": "ishtar_common.formatertype", - "fields": { - "formater_type": "UnicodeFormater", - "many_split": "", - "options": "20" - } - }, - { - "pk": 30, - "model": "ishtar_common.formatertype", - "fields": { - "formater_type": "UnicodeFormater", - "many_split": "", - "options": "200" - } - }, - { - "pk": 33, - "model": "ishtar_common.formatertype", - "fields": { - "formater_type": "UnicodeFormater", - "many_split": "", - "options": "2000" - } - }, - { - "pk": 17, - "model": "ishtar_common.formatertype", - "fields": { - "formater_type": "UnicodeFormater", - "many_split": "", - "options": "30" - } - }, - { - "pk": 4, - "model": "ishtar_common.formatertype", - "fields": { - "formater_type": "UnicodeFormater", - "many_split": "", - "options": "300" - } - }, - { - "pk": 7, - "model": "ishtar_common.formatertype", - "fields": { - "formater_type": "UnicodeFormater", - "many_split": "", - "options": "4" - } - }, - { - "pk": 28, - "model": "ishtar_common.formatertype", - "fields": { - "formater_type": "UnicodeFormater", - "many_split": "", - "options": "5" - } - }, - { - "pk": 39, - "model": "ishtar_common.formatertype", - "fields": { - "formater_type": "UnicodeFormater", - "many_split": "", - "options": "50" - } - }, - { - "pk": 10, - "model": "ishtar_common.formatertype", - "fields": { - "formater_type": "UnicodeFormater", - "many_split": "", - "options": "500" - } - }, - { - "pk": 8, - "model": "ishtar_common.formatertype", - "fields": { - "formater_type": "UnicodeFormater", - "many_split": "", - "options": "6" - } - }, - { - "pk": 36, - "model": "ishtar_common.formatertype", - "fields": { - "formater_type": "UnicodeFormater", - "many_split": "", - "options": "60" - } - }, - { - "pk": 31, - "model": "ishtar_common.formatertype", - "fields": { - "formater_type": "UnicodeFormater", - "many_split": "", - "options": "70" - } - }, - { - "pk": 29, - "model": "ishtar_common.formatertype", - "fields": { - "formater_type": "UnknowType", - "many_split": "", - "options": "" - } - }, - { - "pk": 14, - "model": "ishtar_common.formatertype", - "fields": { - "formater_type": "YearFormater", - "many_split": "", - "options": "%Y" - } - }, - { - "pk": 5, - "model": "ishtar_common.importerduplicatefield", - "fields": { - "column": 5, - "concat_str": null, - "field_name": "scientist__name", - "concat": false, - "force_new": false - } - }, - { - "pk": 15, - "model": "ishtar_common.importerduplicatefield", - "fields": { - "column": 9, - "concat_str": "-", - "field_name": "external_id", - "concat": false, - "force_new": false - } - }, - { - "pk": 16, - "model": "ishtar_common.importerduplicatefield", - "fields": { - "column": 12, - "concat_str": "-", - "field_name": "external_id", - "concat": false, - "force_new": false - } - }, - { - "pk": 17, - "model": "ishtar_common.importerduplicatefield", - "fields": { - "column": 26, - "concat_str": "-", - "field_name": "parcel__external_id", - "concat": false, - "force_new": false - } - }, - { - "pk": 18, - "model": "ishtar_common.importerduplicatefield", - "fields": { - "column": 26, - "concat_str": "-", - "field_name": "external_id", - "concat": false, - "force_new": false - } - }, - { - "pk": 19, - "model": "ishtar_common.importerduplicatefield", - "fields": { - "column": 225, - "concat_str": "-", - "field_name": "external_id", - "concat": false, - "force_new": false - } - }, - { - "pk": 20, - "model": "ishtar_common.importerduplicatefield", - "fields": { - "column": 33, - "concat_str": "-", - "field_name": "external_id", - "concat": false, - "force_new": false - } - }, - { - "pk": 6, - "model": "ishtar_common.importerduplicatefield", - "fields": { - "column": 27, - "concat_str": "-", - "field_name": "external_id", - "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": "base_finds__external_id", - "concat": false, - "force_new": false - } - }, - { - "pk": 39, - "model": "ishtar_common.importerduplicatefield", - "fields": { - "column": 336, - "concat_str": "-", - "field_name": "external_id", - "concat": false, - "force_new": false - } - }, - { - "pk": 40, - "model": "ishtar_common.importerduplicatefield", - "fields": { - "column": 337, - "concat_str": "-", - "field_name": "base_finds__external_id", - "concat": false, - "force_new": false - } - }, - { - "pk": 41, - "model": "ishtar_common.importerduplicatefield", - "fields": { - "column": 337, - "concat_str": "-", - "field_name": "external_id", - "concat": false, - "force_new": false - } - }, - { - "pk": 42, - "model": "ishtar_common.importerduplicatefield", - "fields": { - "column": 338, - "concat_str": "-", - "field_name": "base_finds__external_id", - "concat": false, - "force_new": false - } - }, - { - "pk": 43, - "model": "ishtar_common.importerduplicatefield", - "fields": { - "column": 338, - "concat_str": "-", - "field_name": "external_id", - "concat": false, - "force_new": false - } - }, - { - "pk": 44, - "model": "ishtar_common.importerduplicatefield", - "fields": { - "column": 339, - "concat_str": "-", - "field_name": "base_finds__external_id", - "concat": false, - "force_new": false - } - }, - { - "pk": 45, - "model": "ishtar_common.importerduplicatefield", - "fields": { - "column": 339, - "concat_str": "-", - "field_name": "external_id", - "concat": false, - "force_new": false - } - }, - { - "pk": 46, - "model": "ishtar_common.importerduplicatefield", - "fields": { - "column": 340, - "concat_str": "", - "field_name": "label", - "concat": false, - "force_new": false - } - }, - { - "pk": 47, - "model": "ishtar_common.importerduplicatefield", - "fields": { - "column": 340, - "concat_str": "-", - "field_name": "base_finds__external_id", - "concat": false, - "force_new": false - } - }, - { - "pk": 48, - "model": "ishtar_common.importerduplicatefield", - "fields": { - "column": 340, - "concat_str": "-", - "field_name": "external_id", - "concat": false, - "force_new": false - } - }, - { - "pk": 49, - "model": "ishtar_common.importerduplicatefield", - "fields": { - "column": 373, - "concat_str": "", - "field_name": "container__location__external_id", - "concat": false, - "force_new": false - } - }, - { - "pk": 50, - "model": "ishtar_common.importerduplicatefield", - "fields": { - "column": 373, - "concat_str": "", - "field_name": "container__external_id", - "concat": false, - "force_new": false - } - }, - { - "pk": 51, - "model": "ishtar_common.importerduplicatefield", - "fields": { - "column": 374, - "concat_str": "", - "field_name": "container__external_id", - "concat": false, - "force_new": false - } - }, - { - "pk": 21, - "model": "ishtar_common.importerduplicatefield", - "fields": { - "column": 36, - "concat_str": "-", - "field_name": "base_finds__external_id", - "concat": false, - "force_new": false - } - }, - { - "pk": 29, - "model": "ishtar_common.importerduplicatefield", - "fields": { - "column": 36, - "concat_str": "-", - "field_name": "external_id", - "concat": false, - "force_new": false - } - }, - { - "pk": 22, - "model": "ishtar_common.importerduplicatefield", - "fields": { - "column": 227, - "concat_str": "-", - "field_name": "base_finds__external_id", - "concat": false, - "force_new": false - } - }, - { - "pk": 28, - "model": "ishtar_common.importerduplicatefield", - "fields": { - "column": 227, - "concat_str": "-", - "field_name": "external_id", - "concat": false, - "force_new": false - } - }, - { - "pk": 23, - "model": "ishtar_common.importerduplicatefield", - "fields": { - "column": 226, - "concat_str": "-", - "field_name": "base_finds__external_id", - "concat": false, - "force_new": false - } - }, - { - "pk": 27, - "model": "ishtar_common.importerduplicatefield", - "fields": { - "column": 226, - "concat_str": "-", - "field_name": "external_id", - "concat": false, - "force_new": false - } - }, - { - "pk": 24, - "model": "ishtar_common.importerduplicatefield", - "fields": { - "column": 43, - "concat_str": "-", - "field_name": "base_finds__external_id", - "concat": false, - "force_new": false - } - }, - { - "pk": 26, - "model": "ishtar_common.importerduplicatefield", - "fields": { - "column": 43, - "concat_str": "-", - "field_name": "external_id", - "concat": false, - "force_new": false - } - }, - { - "pk": 1, - "model": "ishtar_common.importerduplicatefield", - "fields": { - "column": 37, - "concat_str": null, - "field_name": "label", - "concat": false, - "force_new": false - } - }, - { - "pk": 3, - "model": "ishtar_common.importerduplicatefield", - "fields": { - "column": 37, - "concat_str": "-", - "field_name": "base_finds__external_id", - "concat": false, - "force_new": false - } - }, - { - "pk": 25, - "model": "ishtar_common.importerduplicatefield", - "fields": { - "column": 37, - "concat_str": "-", - "field_name": "external_id", - "concat": false, - "force_new": false - } - }, - { - "pk": 52, - "model": "ishtar_common.importerduplicatefield", - "fields": { - "column": 376, - "concat_str": "-", - "field_name": "external_id", - "concat": false, - "force_new": false - } - }, - { - "pk": 53, - "model": "ishtar_common.importerduplicatefield", - "fields": { - "column": 379, - "concat_str": "-", - "field_name": "external_id", - "concat": false, - "force_new": false - } - }, - { - "pk": 54, - "model": "ishtar_common.importerduplicatefield", - "fields": { - "column": 391, - "concat_str": "-", - "field_name": "base_finds__external_id", - "concat": false, - "force_new": false - } - }, - { - "pk": 55, - "model": "ishtar_common.importerduplicatefield", - "fields": { - "column": 391, - "concat_str": "-", - "field_name": "external_id", - "concat": false, - "force_new": false - } - }, - { - "pk": 56, - "model": "ishtar_common.importerduplicatefield", - "fields": { - "column": 392, - "concat_str": "-", - "field_name": "base_finds__external_id", - "concat": false, - "force_new": false - } - }, - { - "pk": 57, - "model": "ishtar_common.importerduplicatefield", - "fields": { - "column": 392, - "concat_str": "-", - "field_name": "external_id", - "concat": false, - "force_new": false - } - }, - { - "pk": 58, - "model": "ishtar_common.importerduplicatefield", - "fields": { - "column": 393, - "concat_str": "-", - "field_name": "base_finds__external_id", - "concat": false, - "force_new": false - } - }, - { - "pk": 59, - "model": "ishtar_common.importerduplicatefield", - "fields": { - "column": 393, - "concat_str": "-", - "field_name": "external_id", - "concat": false, - "force_new": false - } - }, - { - "pk": 62, - "model": "ishtar_common.importerduplicatefield", - "fields": { - "column": 395, - "concat_str": "-", - "field_name": "base_finds__external_id", - "concat": false, - "force_new": false - } - }, - { - "pk": 63, - "model": "ishtar_common.importerduplicatefield", - "fields": { - "column": 395, - "concat_str": "-", - "field_name": "external_id", - "concat": false, - "force_new": false - } - }, - { - "pk": 64, - "model": "ishtar_common.importerduplicatefield", - "fields": { - "column": 396, - "concat_str": "", - "field_name": "label", - "concat": false, - "force_new": false - } - }, - { - "pk": 65, - "model": "ishtar_common.importerduplicatefield", - "fields": { - "column": 396, - "concat_str": "-", - "field_name": "base_finds__external_id", - "concat": false, - "force_new": false - } - }, - { - "pk": 66, - "model": "ishtar_common.importerduplicatefield", - "fields": { - "column": 396, - "concat_str": "-", - "field_name": "external_id", - "concat": false, - "force_new": false - } - }, - { - "pk": 60, - "model": "ishtar_common.importerduplicatefield", - "fields": { - "column": 394, - "concat_str": "-", - "field_name": "base_finds__external_id", - "concat": false, - "force_new": false - } - }, - { - "pk": 61, - "model": "ishtar_common.importerduplicatefield", - "fields": { - "column": 394, - "concat_str": "-", - "field_name": "external_id", - "concat": false, - "force_new": false - } - } -]
\ No newline at end of file +{ + "fields": { + "name": "Organisation", + "klass": "ishtar_common.models.Organization" + }, + "model": "ishtar_common.importermodel", + "pk": 1 +}, +{ + "fields": { + "name": "Dossier arch\u00e9ologique", + "klass": "archaeological_files.models.File" + }, + "model": "ishtar_common.importermodel", + "pk": 2 +}, +{ + "fields": { + "name": "Mobilier de base", + "klass": "archaeological_finds.models.BaseFind" + }, + "model": "ishtar_common.importermodel", + "pk": 3 +}, +{ + "fields": { + "name": "Entit\u00e9 arch\u00e9ologique", + "klass": "archaeological_operations.models.ArchaeologicalSite" + }, + "model": "ishtar_common.importermodel", + "pk": 4 +}, +{ + "fields": { + "name": "Personne", + "klass": "ishtar_common.models.Person" + }, + "model": "ishtar_common.importermodel", + "pk": 5 +}, +{ + "fields": { + "name": "Op\u00e9ration", + "klass": "archaeological_operations.models.Operation" + }, + "model": "ishtar_common.importermodel", + "pk": 6 +}, +{ + "fields": { + "name": "Unit\u00e9 d'Enregistrement", + "klass": "archaeological_context_records.models.ContextRecord" + }, + "model": "ishtar_common.importermodel", + "pk": 7 +}, +{ + "fields": { + "name": "Documentation d'op\u00e9ration", + "klass": "archaeological_operations.models.OperationSource" + }, + "model": "ishtar_common.importermodel", + "pk": 8 +}, +{ + "fields": { + "name": "Parcelle", + "klass": "archaeological_operations.models.Parcel" + }, + "model": "ishtar_common.importermodel", + "pk": 9 +}, +{ + "fields": { + "name": "Relation entre Unit\u00e9s d'Enregistrement", + "klass": "archaeological_context_records.models.RecordRelations" + }, + "model": "ishtar_common.importermodel", + "pk": 10 +}, +{ + "fields": { + "name": "Datation", + "klass": "archaeological_context_records.models.Dating" + }, + "model": "ishtar_common.importermodel", + "pk": 11 +}, +{ + "fields": { + "name": "Find", + "klass": "archaeological_finds.models_finds.Find" + }, + "model": "ishtar_common.importermodel", + "pk": 12 +}, +{ + "fields": { + "name": "Documentation d'UE", + "klass": "archaeological_context_records.models.ContextRecordSource" + }, + "model": "ishtar_common.importermodel", + "pk": 13 +}, +{ + "fields": { + "name": "Documentation mobilier", + "klass": "archaeological_finds.models_finds.FindSource" + }, + "model": "ishtar_common.importermodel", + "pk": 14 +}, +{ + "fields": { + "name": "Documentation de traitement", + "klass": "archaeological_finds.models_treatments.TreatmentSource" + }, + "model": "ishtar_common.importermodel", + "pk": 15 +}, +{ + "fields": { + "name": "Documentation de demande de traitement", + "klass": "archaeological_finds.models_treatments.TreatmentFileSource" + }, + "model": "ishtar_common.importermodel", + "pk": 16 +}, +{ + "fields": { + "name": "Auteur", + "klass": "ishtar_common.models.Author" + }, + "model": "ishtar_common.importermodel", + "pk": 17 +}, +{ + "fields": { + "description": "", + "created_models": [], + "is_template": true, + "unicity_keys": "code_patriarche", + "users": [], + "slug": "mcc-operations", + "associated_models": 6, + "name": "MCC - Op\u00e9rations" + }, + "model": "ishtar_common.importertype", + "pk": 1 +}, +{ + "fields": { + "description": "", + "created_models": [], + "is_template": true, + "unicity_keys": "external_id", + "users": [], + "slug": "mcc-parcelles", + "associated_models": 9, + "name": "MCC - Parcelles" + }, + "model": "ishtar_common.importertype", + "pk": 2 +}, +{ + "fields": { + "description": "", + "created_models": [], + "is_template": true, + "unicity_keys": "", + "users": [], + "slug": "mcc-documentation", + "associated_models": 8, + "name": "MCC - Documentation" + }, + "model": "ishtar_common.importertype", + "pk": 3 +}, +{ + "fields": { + "description": "", + "created_models": [], + "is_template": true, + "unicity_keys": "external_id", + "users": [], + "slug": "mcc-ue", + "associated_models": 7, + "name": "MCC - UE" + }, + "model": "ishtar_common.importertype", + "pk": 4 +}, +{ + "fields": { + "description": "", + "created_models": [], + "is_template": true, + "unicity_keys": "external_id", + "users": [], + "slug": "mcc-mobilier", + "associated_models": 12, + "name": "MCC - Mobilier" + }, + "model": "ishtar_common.importertype", + "pk": 5 +}, +{ + "fields": { + "description": "Import complet standard operations", + "created_models": [], + "is_template": true, + "unicity_keys": "code_patriarche", + "users": [], + "slug": "ishtar-operations", + "associated_models": 6, + "name": "Ishtar - Op\u00e9rations" + }, + "model": "ishtar_common.importertype", + "pk": 17 +}, +{ + "fields": { + "description": "Unit\u00e9s d'enregisttrement", + "created_models": [], + "is_template": true, + "unicity_keys": "external_id", + "users": [], + "slug": "ishtar-context-record", + "associated_models": 7, + "name": "Ishtar - UE" + }, + "model": "ishtar_common.importertype", + "pk": 18 +}, +{ + "fields": { + "description": "Parcelles de terrain", + "created_models": [], + "is_template": true, + "unicity_keys": "external_id", + "users": [], + "slug": "ishtar-parcels", + "associated_models": 9, + "name": "Ishtar - Parcelles" + }, + "model": "ishtar_common.importertype", + "pk": 19 +}, +{ + "fields": { + "description": "Mobilier", + "created_models": [], + "is_template": true, + "unicity_keys": "external_id", + "users": [], + "slug": "ishtar-finds", + "associated_models": 12, + "name": "Ishtar - Mobilier" + }, + "model": "ishtar_common.importertype", + "pk": 20 +}, +{ + "fields": { + "description": "", + "created_models": [ + 10 + ], + "is_template": true, + "unicity_keys": "", + "users": [], + "slug": "ishtar-ue-relations", + "associated_models": 10, + "name": "Ishtar - Relations entre UE" + }, + "model": "ishtar_common.importertype", + "pk": 21 +}, +{ + "fields": { + "description": "Documentation d'op\u00e9ration", + "created_models": [ + 17, + 8, + 5 + ], + "is_template": true, + "unicity_keys": "external_id", + "users": [], + "slug": "ishtar-operations-sources", + "associated_models": 8, + "name": "Ishtar - Op\u00e9rations - Documentation" + }, + "model": "ishtar_common.importertype", + "pk": 22 +}, +{ + "fields": { + "description": "Importeur de mobilier + parcelles et UE", + "created_models": [ + 9, + 7 + ], + "is_template": true, + "unicity_keys": "external_id", + "users": [], + "slug": "ishtar_finds_parcels_and_cr", + "associated_models": 12, + "name": "Ishtar - Mobilier_COMBO" + }, + "model": "ishtar_common.importertype", + "pk": 23 +}, +{ + "fields": { + "regexp": "([0-9]*)", + "name": "Num\u00e9ro INSEE", + "description": "" + }, + "model": "ishtar_common.regexp", + "pk": 2 +}, +{ + "fields": { + "importer_type": 1, + "target": "operator" + }, + "model": "ishtar_common.importerdefault", + "pk": 1 +}, +{ + "fields": { + "importer_type": 3, + "target": "authors" + }, + "model": "ishtar_common.importerdefault", + "pk": 2 +}, +{ + "fields": { + "importer_type": 17, + "target": "operator" + }, + "model": "ishtar_common.importerdefault", + "pk": 23 +}, +{ + "fields": { + "importer_type": 17, + "target": "scientist__person_types" + }, + "model": "ishtar_common.importerdefault", + "pk": 24 +}, +{ + "fields": { + "importer_type": 22, + "target": "authors" + }, + "model": "ishtar_common.importerdefault", + "pk": 25 +}, +{ + "fields": { + "importer_type": 19, + "target": "public_domain" + }, + "model": "ishtar_common.importerdefault", + "pk": 26 +}, +{ + "fields": { + "default_target": 1, + "target": "organization_type", + "value": "operator" + }, + "model": "ishtar_common.importerdefaultvalues", + "pk": 1 +}, +{ + "fields": { + "default_target": 2, + "target": "author_type", + "value": "main_author" + }, + "model": "ishtar_common.importerdefaultvalues", + "pk": 2 +}, +{ + "fields": { + "default_target": 23, + "target": "organization_type", + "value": "operator" + }, + "model": "ishtar_common.importerdefaultvalues", + "pk": 29 +}, +{ + "fields": { + "default_target": 24, + "target": "txt_idx", + "value": "head_scientist" + }, + "model": "ishtar_common.importerdefaultvalues", + "pk": 30 +}, +{ + "fields": { + "default_target": 25, + "target": "author_type", + "value": "main_author" + }, + "model": "ishtar_common.importerdefaultvalues", + "pk": 31 +}, +{ + "fields": { + "default_target": 26, + "target": "public_domain", + "value": "False" + }, + "model": "ishtar_common.importerdefaultvalues", + "pk": 32 +}, +{ + "fields": { + "col_number": 1, + "description": "Code Patriarche", + "regexp_pre_filter": null, + "required": true, + "label": "Code Patriarche", + "importer_type": 1, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 1 +}, +{ + "fields": { + "col_number": 3, + "description": "", + "regexp_pre_filter": null, + "required": true, + "label": "Type d'op\u00e9ration", + "importer_type": 1, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 2 +}, +{ + "fields": { + "col_number": 4, + "description": "", + "regexp_pre_filter": null, + "required": true, + "label": "Nom de l'op\u00e9ration", + "importer_type": 1, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 3 +}, +{ + "fields": { + "col_number": 5, + "description": "", + "regexp_pre_filter": null, + "required": true, + "label": "Nom de l'op\u00e9rateur", + "importer_type": 1, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 4 +}, +{ + "fields": { + "col_number": 6, + "description": "Nom du responsable de l'op\u00e9ration. Nom et Pr\u00e9nom sont group\u00e9s et donc mis dans le NOM seul dans l'annuaire.", + "regexp_pre_filter": null, + "required": true, + "label": "Nom du responsable de l'op\u00e9ration", + "importer_type": 1, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 5 +}, +{ + "fields": { + "col_number": 7, + "description": "Date de d\u00e9but de l'op\u00e9ration avec le format ANN\u00c9E/MOIS/JOUR", + "regexp_pre_filter": null, + "required": true, + "label": "Date d\u00e9but", + "importer_type": 1, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 6 +}, +{ + "fields": { + "col_number": 8, + "description": "Date de fin de l'op\u00e9ration avec le format ANN\u00c9E/MOIS/JOUR", + "regexp_pre_filter": null, + "required": true, + "label": "Date fin", + "importer_type": 1, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 7 +}, +{ + "fields": { + "col_number": 9, + "description": "", + "regexp_pre_filter": null, + "required": false, + "label": "P\u00e9riodes", + "importer_type": 1, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 8 +}, +{ + "fields": { + "col_number": 1, + "description": "Code Patriarche de l'op\u00e9ration associ\u00e9e", + "regexp_pre_filter": null, + "required": true, + "label": "Code Patriarche", + "importer_type": 2, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 9 +}, +{ + "fields": { + "col_number": 6, + "description": "Ann\u00e9e", + "regexp_pre_filter": null, + "required": false, + "label": "Ann\u00e9e cadastrale", + "importer_type": 2, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 11 +}, +{ + "fields": { + "col_number": 2, + "description": "Commune (via num\u00e9ro INSEE)", + "regexp_pre_filter": 2, + "required": true, + "label": "Commune", + "importer_type": 2, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 12 +}, +{ + "fields": { + "col_number": 9, + "description": "Lieu dit / adresse", + "regexp_pre_filter": null, + "required": false, + "label": "Adresse", + "importer_type": 2, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 13 +}, +{ + "fields": { + "col_number": 1, + "description": "Code Patriarche de l'op\u00e9ration associ\u00e9e", + "regexp_pre_filter": null, + "required": true, + "label": "Code Patriarche", + "importer_type": 3, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 14 +}, +{ + "fields": { + "col_number": 2, + "description": "", + "regexp_pre_filter": null, + "required": true, + "label": "Identifiant externe", + "importer_type": 3, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 15 +}, +{ + "fields": { + "col_number": 3, + "description": "", + "regexp_pre_filter": null, + "required": true, + "label": "Type de document", + "importer_type": 3, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 16 +}, +{ + "fields": { + "col_number": 4, + "description": "", + "regexp_pre_filter": null, + "required": false, + "label": "Type de support", + "importer_type": 3, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 17 +}, +{ + "fields": { + "col_number": 5, + "description": "", + "regexp_pre_filter": null, + "required": false, + "label": "Num\u00e9ro", + "importer_type": 3, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 18 +}, +{ + "fields": { + "col_number": 6, + "description": "", + "regexp_pre_filter": null, + "required": false, + "label": "Nom de l'auteur", + "importer_type": 3, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 19 +}, +{ + "fields": { + "col_number": 7, + "description": "", + "regexp_pre_filter": null, + "required": false, + "label": "Date de cr\u00e9ation", + "importer_type": 3, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 20 +}, +{ + "fields": { + "col_number": 8, + "description": "", + "regexp_pre_filter": null, + "required": false, + "label": "Type de format", + "importer_type": 3, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 21 +}, +{ + "fields": { + "col_number": 9, + "description": "", + "regexp_pre_filter": null, + "required": false, + "label": "Description", + "importer_type": 3, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 22 +}, +{ + "fields": { + "col_number": 12, + "description": "", + "regexp_pre_filter": null, + "required": false, + "label": "Commentaire", + "importer_type": 3, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 23 +}, +{ + "fields": { + "col_number": 13, + "description": "", + "regexp_pre_filter": null, + "required": false, + "label": "\u00c9chelle", + "importer_type": 3, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 24 +}, +{ + "fields": { + "col_number": 16, + "description": "", + "regexp_pre_filter": null, + "required": false, + "label": "Information suppl\u00e9mentaire", + "importer_type": 3, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 25 +}, +{ + "fields": { + "col_number": 1, + "description": "Code Patriarche de l'op\u00e9ration associ\u00e9e", + "regexp_pre_filter": null, + "required": true, + "label": "Code Patriarche", + "importer_type": 4, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 26 +}, +{ + "fields": { + "col_number": 4, + "description": "Identifiant externe ", + "regexp_pre_filter": null, + "required": true, + "label": "Identifiant externe", + "importer_type": 4, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 27 +}, +{ + "fields": { + "col_number": 5, + "description": "Type", + "regexp_pre_filter": null, + "required": false, + "label": "Type", + "importer_type": 4, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 28 +}, +{ + "fields": { + "col_number": 6, + "description": "Description", + "regexp_pre_filter": null, + "required": false, + "label": "Description", + "importer_type": 4, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 29 +}, +{ + "fields": { + "col_number": 7, + "description": "Identification", + "regexp_pre_filter": null, + "required": false, + "label": "Identification", + "importer_type": 4, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 30 +}, +{ + "fields": { + "col_number": 8, + "description": "Date d'ouverture", + "regexp_pre_filter": null, + "required": false, + "label": "Date d\u00e9but", + "importer_type": 4, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 31 +}, +{ + "fields": { + "col_number": 9, + "description": "Date de fermeture", + "regexp_pre_filter": null, + "required": false, + "label": "Date fin", + "importer_type": 4, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 32 +}, +{ + "fields": { + "col_number": 3, + "description": "Parcelle (identifiant externe)", + "regexp_pre_filter": null, + "required": true, + "label": "Parcelle", + "importer_type": 4, + "export_field_name": "parcel__section|parcel__parcel_number" + }, + "model": "ishtar_common.importercolumn", + "pk": 33 +}, +{ + "fields": { + "col_number": 11, + "description": "Commentaire", + "regexp_pre_filter": null, + "required": false, + "label": "Commentaire", + "importer_type": 4, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 34 +}, +{ + "fields": { + "col_number": 13, + "description": "Chronologie (plusieurs possibles s\u00e9par\u00e9es par &)", + "regexp_pre_filter": null, + "required": false, + "label": "Chronologie", + "importer_type": 4, + "export_field_name": "datings__period__label" + }, + "model": "ishtar_common.importercolumn", + "pk": 35 +}, +{ + "fields": { + "col_number": 1, + "description": "Code patriarche de l'op\u00e9ration associ\u00e9e", + "regexp_pre_filter": null, + "required": true, + "label": "Code Patriarche", + "importer_type": 5, + "export_field_name": "base_finds__context_record__operation__code_patriarche" + }, + "model": "ishtar_common.importercolumn", + "pk": 36 +}, +{ + "fields": { + "col_number": 5, + "description": "Identifiant externe", + "regexp_pre_filter": null, + "required": true, + "label": "Identifiant externe", + "importer_type": 5, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 37 +}, +{ + "fields": { + "col_number": 9, + "description": "Sous classe de mat\u00e9riaux", + "regexp_pre_filter": null, + "required": false, + "label": "Mat\u00e9riau", + "importer_type": 5, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 39 +}, +{ + "fields": { + "col_number": 13, + "description": "Nombre d'\u00e9l\u00e9ments", + "regexp_pre_filter": null, + "required": false, + "label": "Nombre d'\u00e9l\u00e9ments", + "importer_type": 5, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 40 +}, +{ + "fields": { + "col_number": 14, + "description": "Poids", + "regexp_pre_filter": null, + "required": false, + "label": "Poids", + "importer_type": 5, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 41 +}, +{ + "fields": { + "col_number": 15, + "description": "Unit\u00e9 de poids", + "regexp_pre_filter": null, + "required": false, + "label": "Unit\u00e9 de poids", + "importer_type": 5, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 42 +}, +{ + "fields": { + "col_number": 4, + "description": "Identifiant UE", + "regexp_pre_filter": null, + "required": true, + "label": "UE", + "importer_type": 5, + "export_field_name": "base_finds__context_record__label" + }, + "model": "ishtar_common.importercolumn", + "pk": 43 +}, +{ + "fields": { + "col_number": 16, + "description": "Date de d\u00e9couverte", + "regexp_pre_filter": null, + "required": false, + "label": "Date de d\u00e9couverte", + "importer_type": 5, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 44 +}, +{ + "fields": { + "col_number": 17, + "description": "\u00c9tat de conservation", + "regexp_pre_filter": null, + "required": false, + "label": "\u00c9tat de conservation", + "importer_type": 5, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 45 +}, +{ + "fields": { + "col_number": 18, + "description": "Mesure de conservation", + "regexp_pre_filter": null, + "required": false, + "label": "Mesure de conservation", + "importer_type": 5, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 46 +}, +{ + "fields": { + "col_number": 19, + "description": "Commentaire", + "regexp_pre_filter": null, + "required": false, + "label": "Commentaire", + "importer_type": 5, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 47 +}, +{ + "fields": { + "col_number": 21, + "description": "Localisation topographique", + "regexp_pre_filter": null, + "required": false, + "label": "Localisation topographique", + "importer_type": 5, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 48 +}, +{ + "fields": { + "col_number": 22, + "description": "Int\u00e9r\u00eat sp\u00e9cifique", + "regexp_pre_filter": null, + "required": false, + "label": "Int\u00e9r\u00eat sp\u00e9cifique", + "importer_type": 5, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 49 +}, +{ + "fields": { + "col_number": 23, + "description": "Description", + "regexp_pre_filter": null, + "required": false, + "label": "Description", + "importer_type": 5, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 50 +}, +{ + "fields": { + "col_number": 4, + "description": "Num\u00e9ro", + "regexp_pre_filter": null, + "required": false, + "label": "Parcelle", + "importer_type": 2, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 51 +}, +{ + "fields": { + "col_number": 5, + "description": "Section", + "regexp_pre_filter": null, + "required": false, + "label": "Section cadastrale", + "importer_type": 2, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 52 +}, +{ + "fields": { + "col_number": 3, + "description": "Identifiant externe", + "regexp_pre_filter": null, + "required": true, + "label": "Identifiant externe", + "importer_type": 2, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 53 +}, +{ + "fields": { + "col_number": 12, + "description": "Nature", + "regexp_pre_filter": null, + "required": false, + "label": "Nature", + "importer_type": 4, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 54 +}, +{ + "fields": { + "col_number": 2, + "description": "Commune (via num\u00e9ro INSEE)", + "regexp_pre_filter": null, + "required": true, + "label": "Commune", + "importer_type": 4, + "export_field_name": "parcel__town__numero_insee" + }, + "model": "ishtar_common.importercolumn", + "pk": 225 +}, +{ + "fields": { + "col_number": 3, + "description": "Identifiant parcelle", + "regexp_pre_filter": null, + "required": true, + "label": "Parcelle", + "importer_type": 5, + "export_field_name": "base_finds__context_record__parcel__section|base_finds__context_record__parcel__parcel_number" + }, + "model": "ishtar_common.importercolumn", + "pk": 226 +}, +{ + "fields": { + "col_number": 2, + "description": "Commune (via num\u00e9ro INSEE)", + "regexp_pre_filter": null, + "required": true, + "label": "Commune", + "importer_type": 5, + "export_field_name": "base_finds__context_record__parcel__town__numero_insee" + }, + "model": "ishtar_common.importercolumn", + "pk": 227 +}, +{ + "fields": { + "col_number": 20, + "description": "Datations s\u00e9par\u00e9es par des \"&\"", + "regexp_pre_filter": null, + "required": false, + "label": "Datation", + "importer_type": 5, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 228 +}, +{ + "fields": { + "col_number": 12, + "description": "Ref. du contenant / label temporaire utilis\u00e9 pour le mobilier = label libre = Label pour l'instant", + "regexp_pre_filter": null, + "required": false, + "label": "Libell\u00e9 contenant", + "importer_type": 5, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 229 +}, +{ + "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 op\u00e9ration", + "importer_type": 17, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 265 +}, +{ + "fields": { + "col_number": 2, + "description": "Nom usuel de l'op\u00e9ration.", + "regexp_pre_filter": null, + "required": true, + "label": "Nom", + "importer_type": 17, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 266 +}, +{ + "fields": { + "col_number": 3, + "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, + "required": true, + "label": "Ann\u00e9e", + "importer_type": 17, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 267 +}, +{ + "fields": { + "col_number": 4, + "description": "Index (num\u00e9ro par ann\u00e9e), le couple ann\u00e9e + index doit \u00eatre unique.", + "regexp_pre_filter": null, + "required": false, + "label": "Index (num\u00e9ro par ann\u00e9e)", + "importer_type": 17, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 268 +}, +{ + "fields": { + "col_number": 5, + "description": "Type d'op\u00e9ration (parmi une liste).", + "regexp_pre_filter": null, + "required": true, + "label": "Type d'op\u00e9ration", + "importer_type": 17, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 269 +}, +{ + "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, + "label": "R\u00e9f\u00e9rence du dossier administratif", + "importer_type": 17, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 270 +}, +{ + "fields": { + "col_number": 8, + "description": "Identifiants des sites (entit\u00e9s arch\u00e9ologiques) concern\u00e9es par l'op\u00e9ration, s\u00e9par\u00e9es par \u00ab\u00a0&\u00a0\u00bb. Exemple : \"44 125 0028 & 44 125 0029\".", + "regexp_pre_filter": null, + "required": false, + "label": "Identifiants des sites (EAs)", + "importer_type": 17, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 271 +}, +{ + "fields": { + "col_number": 9, + "description": "Types de vestiges (s\u00e9par\u00e9s par un \u00ab\u00a0&\u00a0\u00bb). Exemple : \"four & fosses & villa\".", + "regexp_pre_filter": null, + "required": false, + "label": "Types de vestiges", + "importer_type": 17, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 272 +}, +{ + "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, + "label": "P\u00e9riodes", + "importer_type": 17, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 273 +}, +{ + "fields": { + "col_number": 11, + "description": "Titre (M., Mme, etc.) du responsable scientifique.", + "regexp_pre_filter": null, + "required": false, + "label": "Titre du responsable scientifique", + "importer_type": 17, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 274 +}, +{ + "fields": { + "col_number": 12, + "description": "Pr\u00e9nom du responsable scientifique (responsable d'op\u00e9ration).", + "regexp_pre_filter": null, + "required": false, + "label": "Pr\u00e9nom du responsable scientifique", + "importer_type": 17, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 275 +}, +{ + "fields": { + "col_number": 13, + "description": "Nom du responsable scientifique (responsable d'op\u00e9ration).", + "regexp_pre_filter": null, + "required": false, + "label": "Nom du responsable scientifique", + "importer_type": 17, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 276 +}, +{ + "fields": { + "col_number": 14, + "description": "Rattachement du responsable scientifique (responsable d'op\u00e9ration). Exemple : \"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, + "label": "Rattachement du responsable scientifique", + "importer_type": 17, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 277 +}, +{ + "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, + "label": "Nom de l'op\u00e9rateur", + "importer_type": 17, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 278 +}, +{ + "fields": { + "col_number": 16, + "description": "R\u00e9f\u00e9rence de l'op\u00e9rateur (code ou autre r\u00e9f\u00e9rence interne de l'op\u00e9rateur).", + "regexp_pre_filter": null, + "required": false, + "label": "R\u00e9f\u00e9rence de l'op\u00e9rateur", + "importer_type": 17, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 279 +}, +{ + "fields": { + "col_number": 17, + "description": "Titre (M., Mme, etc.) du responsable du suivi scientifique.", + "regexp_pre_filter": null, + "required": false, + "label": "Titre du responsable du suivi scientifique", + "importer_type": 17, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 280 +}, +{ + "fields": { + "col_number": 18, + "description": "Pr\u00e9nom du responsable du suivi scientifique. Exemple\u00a0: resp. SRA ou pilote de l'op\u00e9ration, mais non responsable de celle-ci.", + "regexp_pre_filter": null, + "required": false, + "label": "Pr\u00e9nom du responsable du suivi scientifique", + "importer_type": 17, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 281 +}, +{ + "fields": { + "col_number": 19, + "description": "Nom du responsable du suivi scientifique. Exemple : resp. SRA ou pilote de l'op\u00e9ration, mais non responsable de celle-ci.", + "regexp_pre_filter": null, + "required": false, + "label": "Nom du responsable du suivi scientifique", + "importer_type": 17, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 282 +}, +{ + "fields": { + "col_number": 20, + "description": "Rattachement du responsable du suivi scientifique.", + "regexp_pre_filter": null, + "required": false, + "label": "Rattachement du responsable du suivi scientifique", + "importer_type": 17, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 283 +}, +{ + "fields": { + "col_number": 21, + "description": "Surface couverte par l'op\u00e9ration (m2).", + "regexp_pre_filter": null, + "required": false, + "label": "Surface couverte par l'op\u00e9ration", + "importer_type": 17, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 284 +}, +{ + "fields": { + "col_number": 22, + "description": "Date de d\u00e9but de l'op\u00e9ration (habituellement d\u00e9but du terrain mais vous pouvez utiliser autre chose).", + "regexp_pre_filter": null, + "required": false, + "label": "Date de d\u00e9but de l'op\u00e9ration", + "importer_type": 17, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 285 +}, +{ + "fields": { + "col_number": 23, + "description": "Date de fin de l'op\u00e9ration (habituellement fin du terrain mais vous pouvez utiliser autre chose).", + "regexp_pre_filter": null, + "required": false, + "label": "Date de fin de l'op\u00e9ration", + "importer_type": 17, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 286 +}, +{ + "fields": { + "col_number": 24, + "description": "Date de cl\u00f4ture (peut \u00eatre la date de rendu de la documentation, la fin de la recherche associ\u00e9e ou autre). Habituellement 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, + "required": false, + "label": "Date de cl\u00f4ture", + "importer_type": 17, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 287 +}, +{ + "fields": { + "col_number": 25, + "description": "Date d'avis. Exemple\u00a0: avis de CIRA ou autre selon votre usage.", + "regexp_pre_filter": null, + "required": false, + "label": "Date d'avis", + "importer_type": 17, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 288 +}, +{ + "fields": { + "col_number": 26, + "description": "R\u00e9sultats consid\u00e9r\u00e9s comme n\u00e9gatif (d\u2019ordinaire utilis\u00e9 pour les diagnostics n\u00e9gatifs).", + "regexp_pre_filter": null, + "required": false, + "label": "R\u00e9sultats consid\u00e9r\u00e9s comme n\u00e9gatif", + "importer_type": 17, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 289 +}, +{ + "fields": { + "col_number": 27, + "description": "Pr\u00e9nom du rapporteur (CIRA ou autre selon votre usage de la notion d'avis).", + "regexp_pre_filter": null, + "required": false, + "label": "Pr\u00e9nom du rapporteur", + "importer_type": 17, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 290 +}, +{ + "fields": { + "col_number": 28, + "description": "Nom du rapporteur (CIRA ou autre selon votre usage de la notion d'avis).", + "regexp_pre_filter": null, + "required": false, + "label": "Nom du rapporteur", + "importer_type": 17, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 291 +}, +{ + "fields": { + "col_number": 29, + "description": "Rattachement rapporteur (organisation).", + "regexp_pre_filter": null, + "required": false, + "label": "Rattachement du rapporteur", + "importer_type": 17, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 292 +}, +{ + "fields": { + "col_number": 30, + "description": "Date limite pr\u00e9vue pour le rendu de la documentation scientifique.", + "regexp_pre_filter": null, + "required": false, + "label": "Date limite pour le rendu de la documentation", + "importer_type": 17, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 293 +}, +{ + "fields": { + "col_number": 31, + "description": "Documentation re\u00e7ue.", + "regexp_pre_filter": null, + "required": false, + "label": "Documentation re\u00e7ue", + "importer_type": 17, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 294 +}, +{ + "fields": { + "col_number": 32, + "description": "Date limite pr\u00e9vue pour le rendu du mobilier.", + "regexp_pre_filter": null, + "required": false, + "label": "Date limite rendu du mobilier", + "importer_type": 17, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 295 +}, +{ + "fields": { + "col_number": 33, + "description": "Mobilier re\u00e7u ou livr\u00e9 selon vos usages et proc\u00e9dures.", + "regexp_pre_filter": null, + "required": false, + "label": "Mobilier re\u00e7u", + "importer_type": 17, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 296 +}, +{ + "fields": { + "col_number": 34, + "description": "Commentaire g\u00e9n\u00e9ral.", + "regexp_pre_filter": null, + "required": false, + "label": "Commentaire g\u00e9n\u00e9ral", + "importer_type": 17, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 297 +}, +{ + "fields": { + "col_number": 35, + "description": "Date de livraison du rapport.", + "regexp_pre_filter": null, + "required": false, + "label": "Date de livraison du rapport", + "importer_type": 17, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 298 +}, +{ + "fields": { + "col_number": 36, + "description": "\u00c9tat de traitement du rapport.", + "regexp_pre_filter": null, + "required": false, + "label": "\u00c9tat de traitement du rapport", + "importer_type": 17, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 299 +}, +{ + "fields": { + "col_number": 37, + "description": "Commentaire sur la documentation scientifique (y compris mobilier).", + "regexp_pre_filter": null, + "required": false, + "label": "Commentaire sur la documentation", + "importer_type": 17, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 300 +}, +{ + "fields": { + "col_number": 38, + "description": "Nom du fichier image (jpg ou png. Exemple \"IMG_5023.jpg\". Les fichiers images doivent \u00eatre joints \u00e0 l'import dans un fichier ZIP.", + "regexp_pre_filter": null, + "required": false, + "label": "Image", + "importer_type": 17, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 301 +}, +{ + "fields": { + "col_number": 1, + "description": "Code PATRIARCHE ou code UNIQUE de l'op\u00e9ration associ\u00e9e.", + "regexp_pre_filter": null, + "required": true, + "label": "Code op\u00e9ration", + "importer_type": 18, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 302 +}, +{ + "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 op\u00e9ration", + "importer_type": 19, + "export_field_name": "" + }, + "model": "ishtar_common.importercolumn", + "pk": 303 +}, +{ + "fields": { + "col_number": 2, + "description": "Commune (via num\u00e9ro INSEE).", + "regexp_pre_filter": 2, + "required": true, + "label": "Commune", + "importer_type": 19, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 304 +}, +{ + "fields": { + "col_number": 3, + "description": "Identifiant externe.", + "regexp_pre_filter": null, + "required": true, + "label": "ID externe", + "importer_type": 19, + "export_field_name": "" + }, + "model": "ishtar_common.importercolumn", + "pk": 305 +}, +{ + "fields": { + "col_number": 4, + "description": "Section. Exemple : \"ZA\". Maximum 4 caract\u00e8res.", + "regexp_pre_filter": null, + "required": true, + "label": "Section", + "importer_type": 19, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 306 +}, +{ + "fields": { + "col_number": 5, + "description": "Num\u00e9ro de la parcelle. Exemple : \"253\". Peut accueillir une r\u00e9f\u00e9rence sous la forme de caract\u00e8res (maximum 6).", + "regexp_pre_filter": null, + "required": true, + "label": "Parcelle", + "importer_type": 19, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 307 +}, +{ + "fields": { + "col_number": 6, + "description": "Ann\u00e9e de la r\u00e9f\u00e9rence cadastrale. Exemple : \"1980\".", + "regexp_pre_filter": null, + "required": false, + "label": "Ann\u00e9e cadastrale", + "importer_type": 19, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 308 +}, +{ + "fields": { + "col_number": 7, + "description": "Lieu-dit ou adresse associ\u00e9s \u00e0 la parcelle.", + "regexp_pre_filter": null, + "required": false, + "label": "Adresse", + "importer_type": 19, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 309 +}, +{ + "fields": { + "col_number": 8, + "description": "Parcelle dans le domaine public ou non (oui/non).", + "regexp_pre_filter": null, + "required": false, + "label": "Domaine public", + "importer_type": 19, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 310 +}, +{ + "fields": { + "col_number": 2, + "description": "Commune (via num\u00e9ro INSEE).", + "regexp_pre_filter": null, + "required": true, + "label": "INSEE", + "importer_type": 18, + "export_field_name": "parcel__town__numero_insee" + }, + "model": "ishtar_common.importercolumn", + "pk": 311 +}, +{ + "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": 18, + "export_field_name": "parcel__section|parcel__parcel_number" + }, + "model": "ishtar_common.importercolumn", + "pk": 312 +}, +{ + "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, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 313 +}, +{ + "fields": { + "col_number": 5, + "description": "Identifiant (externe) de l'UE. Exemple : \"US 145\", \"Tranch\u00e9e 145\", \"145\", \"St 17\", etc. Doit \u00eatre unique pour une parcelle donn\u00e9e. Maximum 200 caract\u00e8res.", + "regexp_pre_filter": null, + "required": true, + "label": "Identifiant UE", + "importer_type": 18, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 314 +}, +{ + "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, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 315 +}, +{ + "fields": { + "col_number": 7, + "description": "Description.", + "regexp_pre_filter": null, + "required": false, + "label": "Description", + "importer_type": 18, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 316 +}, +{ + "fields": { + "col_number": 8, + "description": "Commentaire g\u00e9n\u00e9ral.", + "regexp_pre_filter": null, + "required": false, + "label": "Commentaire g\u00e9n\u00e9ral", + "importer_type": 18, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 317 +}, +{ + "fields": { + "col_number": 9, + "description": "Taille ou longueur (en m\u00e8tre). Exemple : \"1.2\", \"12\".", + "regexp_pre_filter": null, + "required": false, + "label": "Taille ou longueur", + "importer_type": 18, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 318 +}, +{ + "fields": { + "col_number": 10, + "description": "Largeur (en m\u00e8tre). Exemple : \"1.2\", \"12\".", + "regexp_pre_filter": null, + "required": false, + "label": "Largeur", + "importer_type": 18, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 319 +}, +{ + "fields": { + "col_number": 11, + "description": "\u00c9paisseur (en m\u00e8tre). Exemple : \"0.2\", \"2\".", + "regexp_pre_filter": null, + "required": false, + "label": "\u00c9paisseur", + "importer_type": 18, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 320 +}, +{ + "fields": { + "col_number": 12, + "description": "Profondeur (en m\u00e8tre). Exemple : \"0.2\", \"2\".", + "regexp_pre_filter": null, + "required": false, + "label": "Profondeur", + "importer_type": 18, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 321 +}, +{ + "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": "Lieu, localisation", + "importer_type": 18, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 322 +}, +{ + "fields": { + "col_number": 14, + "description": "Champ \u00e0 choix multiple (s\u00e9par\u00e9 par \u00ab & \u00bb) permettant de pr\u00e9ciser : contient du mobilier, dispose d'une photo, etc.", + "regexp_pre_filter": null, + "required": false, + "label": "Documentations", + "importer_type": 18, + "export_field_name": "" + }, + "model": "ishtar_common.importercolumn", + "pk": 323 +}, +{ + "fields": { + "col_number": 15, + "description": "Nom du fichier image (jpg ou png). Exemple : \"IMG_5023.jpg\". Les fichiers images doivent \u00eatre joints \u00e0 l'import dans un fichier ZIP.", + "regexp_pre_filter": null, + "required": false, + "label": "Image", + "importer_type": 18, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 324 +}, +{ + "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": "P\u00e9riodes", + "importer_type": 18, + "export_field_name": "datings__period__label" + }, + "model": "ishtar_common.importercolumn", + "pk": 325 +}, +{ + "fields": { + "col_number": 17, + "description": "Commentaire sur les datations. Exemple : \"IIe - IIIe s.\", \"fin XVe ou plus tard\", etc.", + "regexp_pre_filter": null, + "required": false, + "label": "Commentaire sur les datations", + "importer_type": 18, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 326 +}, +{ + "fields": { + "col_number": 18, + "description": "Description du remplissage. Exemple : \"Limons argileux brun riche en charbons\".", + "regexp_pre_filter": null, + "required": false, + "label": "Description du remplissage", + "importer_type": 18, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 327 +}, +{ + "fields": { + "col_number": 19, + "description": "Interpr\u00e9tation. 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, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 328 +}, +{ + "fields": { + "col_number": 20, + "description": "Activit\u00e9, r\u00e9f\u00e9rence \u00e0 des types. Exemple : \"Naturelle\", \"Construction\", etc.", + "regexp_pre_filter": null, + "required": false, + "label": "Type d'activit\u00e9", + "importer_type": 18, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 329 +}, +{ + "fields": { + "col_number": 21, + "description": "Identification (type). Exemple : \"Niveau d'occupation\", \"Mur\", \"Colluvions\", \"Chablis\", etc.", + "regexp_pre_filter": null, + "required": false, + "label": "Identification (type)", + "importer_type": 18, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 330 +}, +{ + "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, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 331 +}, +{ + "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, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 332 +}, +{ + "fields": { + "col_number": 24, + "description": "Terminus ante quem estim\u00e9, 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\u00e9", + "importer_type": 18, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 333 +}, +{ + "fields": { + "col_number": 25, + "description": "Terminus post quem estim\u00e9, 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\u00e9", + "importer_type": 18, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 334 +}, +{ + "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, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 335 +}, +{ + "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 op\u00e9ration", + "importer_type": 20, + "export_field_name": "base_finds__context_record__operation__code_patriarche" + }, + "model": "ishtar_common.importercolumn", + "pk": 336 +}, +{ + "fields": { + "col_number": 2, + "description": "Commune (via num\u00e9ro INSEE).", + "regexp_pre_filter": null, + "required": true, + "label": "INSEE", + "importer_type": 20, + "export_field_name": "base_finds__context_record__parcel__town__numero_insee" + }, + "model": "ishtar_common.importercolumn", + "pk": 337 +}, +{ + "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, + "export_field_name": "base_finds__context_record__parcel__section|base_finds__context_record__parcel__parcel_number" + }, + "model": "ishtar_common.importercolumn", + "pk": 338 +}, +{ + "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, + "export_field_name": "base_finds__context_record__label" + }, + "model": "ishtar_common.importercolumn", + "pk": 339 +}, +{ + "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, + "export_field_name": "label" + }, + "model": "ishtar_common.importercolumn", + "pk": 340 +}, +{ + "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, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 341 +}, +{ + "fields": { + "col_number": 8, + "description": "Description du mobilier, objet ou lot. Exemple : \"Fibule aviforme\".", + "regexp_pre_filter": null, + "required": false, + "label": "Description", + "importer_type": 20, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 342 +}, +{ + "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.", + "regexp_pre_filter": null, + "required": false, + "label": "Ref. point topo", + "importer_type": 20, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 343 +}, +{ + "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.", + "regexp_pre_filter": null, + "required": false, + "label": "Lot ou objet", + "importer_type": 20, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 344 +}, +{ + "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\" (vrai) ou \"incomplet\" (faux). ", + "regexp_pre_filter": null, + "required": false, + "label": "Compl\u00e9tude", + "importer_type": 20, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 345 +}, +{ + "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": "Mat\u00e9riau(x)", + "importer_type": 20, + "export_field_name": "material_types__label" + }, + "model": "ishtar_common.importercolumn", + "pk": 346 +}, +{ + "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, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 347 +}, +{ + "fields": { + "col_number": 13, + "description": "Commentaire relatif \u00e0 la conservation. 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, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 348 +}, +{ + "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, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 349 +}, +{ + "fields": { + "col_number": 15, + "description": "Type(s) d'actions de conservation \u00e0 mener, s\u00e9par\u00e9s par des \"&\". Exemple : \"\u00c0 restaurer\", \"reconditionnement\", \"\u00c0 reconditionner & \u00e0 stabiliser\"", + "regexp_pre_filter": null, + "required": false, + "label": "Type(s) d'actions de conservation \u00e0 mener", + "importer_type": 20, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 350 +}, +{ + "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, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 351 +}, +{ + "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, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 352 +}, +{ + "fields": { + "col_number": 18, + "description": "Longueur en cm (nombre d\u00e9cimal).", + "regexp_pre_filter": null, + "required": false, + "label": "Longueur (cm)", + "importer_type": 20, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 353 +}, +{ + "fields": { + "col_number": 19, + "description": "Largeur en cm (nombre d\u00e9cimal).", + "regexp_pre_filter": null, + "required": false, + "label": "Largeur (cm)", + "importer_type": 20, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 354 +}, +{ + "fields": { + "col_number": 20, + "description": "Hauteur en cm (nombre d\u00e9cimal).", + "regexp_pre_filter": null, + "required": false, + "label": "Hauteur (cm)", + "importer_type": 20, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 355 +}, +{ + "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, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 356 +}, +{ + "fields": { + "col_number": 22, + "description": "Commentaire permettant de donner des pr\u00e9cisions (ou d'importer des donn\u00e9es mixtes). 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, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 357 +}, +{ + "fields": { + "col_number": 24, + "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, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 358 +}, +{ + "fields": { + "col_number": 25, + "description": "Marquage visible sur le mobilier. 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, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 359 +}, +{ + "fields": { + "col_number": 26, + "description": "Commentaire g\u00e9n\u00e9ral libre. 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, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 360 +}, +{ + "fields": { + "col_number": 27, + "description": "Commentaire g\u00e9n\u00e9ral sur les datations, si besoin. 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, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 361 +}, +{ + "fields": { + "col_number": 28, + "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, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 362 +}, +{ + "fields": { + "col_number": 29, + "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, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 363 +}, +{ + "fields": { + "col_number": 30, + "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, + "export_field_name": "datings__period__label" + }, + "model": "ishtar_common.importercolumn", + "pk": 364 +}, +{ + "fields": { + "col_number": 31, + "description": "Coordonn\u00e9e X pour cet objet.", + "regexp_pre_filter": null, + "required": false, + "label": "Coordonn\u00e9e X", + "importer_type": 20, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 365 +}, +{ + "fields": { + "col_number": 32, + "description": "Coordonn\u00e9e Y pour cet objet.", + "regexp_pre_filter": null, + "required": false, + "label": "Coordonn\u00e9e Y", + "importer_type": 20, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 366 +}, +{ + "fields": { + "col_number": 33, + "description": "Coordonn\u00e9e Z pour cet objet (altitude NGF ou arbitraire).", + "regexp_pre_filter": null, + "required": false, + "label": "Coordonn\u00e9e Z", + "importer_type": 20, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 367 +}, +{ + "fields": { + "col_number": 34, + "description": "Code permettant de qualifier le mode de projection des donn\u00e9es (SRS /EPSG). Exemple : \"2154\" pour le Lambert 93.", + "regexp_pre_filter": null, + "required": false, + "label": "Syst\u00e8me de r\u00e9f\u00e9rence spatiale", + "importer_type": 20, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 368 +}, +{ + "fields": { + "col_number": 1, + "description": "", + "regexp_pre_filter": null, + "required": true, + "label": "UE (identifiant externe) - membre de gauche", + "importer_type": 21, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 369 +}, +{ + "fields": { + "col_number": 2, + "description": "", + "regexp_pre_filter": null, + "required": true, + "label": "Type de relation entre UE", + "importer_type": 21, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 370 +}, +{ + "fields": { + "col_number": 3, + "description": "", + "regexp_pre_filter": null, + "required": true, + "label": "UE (identifiant externe) - membre de droite", + "importer_type": 21, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 371 +}, +{ + "fields": { + "col_number": 23, + "description": "Poids en grammes.", + "regexp_pre_filter": null, + "required": false, + "label": "Poids (g)", + "importer_type": 20, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 372 +}, +{ + "fields": { + "col_number": 35, + "description": "Identifiant textuel du d\u00e9p\u00f4t. Cet identifiant doit correspondre \u00e0 un d\u00e9p\u00f4t existant en base de donn\u00e9es.", + "regexp_pre_filter": null, + "required": false, + "label": "Identifiant d\u00e9p\u00f4t", + "importer_type": 20, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 373 +}, +{ + "fields": { + "col_number": 36, + "description": "", + "regexp_pre_filter": null, + "required": false, + "label": "R\u00e9f\u00e9rence de caisse", + "importer_type": 20, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 374 +}, +{ + "fields": { + "col_number": 37, + "description": "Champ n\u00e9cessaire si vous indiquez une caisse", + "regexp_pre_filter": null, + "required": false, + "label": "Type de caisse", + "importer_type": 20, + "export_field_name": null + }, + "model": "ishtar_common.importercolumn", + "pk": 375 +}, +{ + "fields": { + "col_number": 1, + "description": "Code UNIQUE pour une op\u00e9ration (par exemple : code PATRIARCHE)", + "regexp_pre_filter": null, + "required": true, + "label": "Code op\u00e9ration", + "importer_type": 22, + "export_field_name": "" + }, + "model": "ishtar_common.importercolumn", + "pk": 376 +}, +{ + "fields": { + "col_number": 4, + "description": "Titre du document (max. 300 caract\u00e8res)", + "regexp_pre_filter": null, + "required": true, + "label": "Titre", + "importer_type": 22, + "export_field_name": "" + }, + "model": "ishtar_common.importercolumn", + "pk": 377 +}, +{ + "fields": { + "col_number": 3, + "description": "", + "regexp_pre_filter": null, + "required": true, + "label": "Type de document", + "importer_type": 22, + "export_field_name": "" + }, + "model": "ishtar_common.importercolumn", + "pk": 378 +}, +{ + "fields": { + "col_number": 2, + "description": "Num\u00e9ro unique par op\u00e9ration", + "regexp_pre_filter": null, + "required": true, + "label": "Index (num\u00e9ro par op\u00e9ration)", + "importer_type": 22, + "export_field_name": "" + }, + "model": "ishtar_common.importercolumn", + "pk": 379 +}, +{ + "fields": { + "col_number": 5, + "description": "R\u00e9f\u00e9rence libre (max. 100 caract\u00e8res)", + "regexp_pre_filter": null, + "required": false, + "label": "R\u00e9f\u00e9rence", + "importer_type": 22, + "export_field_name": "" + }, + "model": "ishtar_common.importercolumn", + "pk": 380 +}, +{ + "fields": { + "col_number": 6, + "description": "R\u00e9f\u00e9rence interne libre (max. 100 caract\u00e8res)", + "regexp_pre_filter": null, + "required": false, + "label": "R\u00e9f\u00e9rence interne", + "importer_type": 22, + "export_field_name": "" + }, + "model": "ishtar_common.importercolumn", + "pk": 381 +}, +{ + "fields": { + "col_number": 7, + "description": "Adresse web compl\u00e8te (avec la partie http:// ou https://)", + "regexp_pre_filter": null, + "required": false, + "label": "Adresse web associ\u00e9e", + "importer_type": 22, + "export_field_name": "" + }, + "model": "ishtar_common.importercolumn", + "pk": 382 +}, +{ + "fields": { + "col_number": 8, + "description": "Date de r\u00e9ception (format JJ/MM/AAAA ou AAAA-MM-JJ)", + "regexp_pre_filter": null, + "required": false, + "label": "Date de r\u00e9ception", + "importer_type": 22, + "export_field_name": "" + }, + "model": "ishtar_common.importercolumn", + "pk": 383 +}, +{ + "fields": { + "col_number": 9, + "description": "Date de cr\u00e9ation (format JJ/MM/AAAA ou AAAA-MM-JJ)", + "regexp_pre_filter": null, + "required": false, + "label": "Date de cr\u00e9ation", + "importer_type": 22, + "export_field_name": "" + }, + "model": "ishtar_common.importercolumn", + "pk": 384 +}, +{ + "fields": { + "col_number": 10, + "description": "Date de r\u00e9ception en documentation (format JJ/MM/AAAA ou AAAA-MM-JJ)", + "regexp_pre_filter": null, + "required": false, + "label": "Date de r\u00e9ception en documentation", + "importer_type": 22, + "export_field_name": "" + }, + "model": "ishtar_common.importercolumn", + "pk": 385 +}, +{ + "fields": { + "col_number": 11, + "description": "Texte libre", + "regexp_pre_filter": null, + "required": false, + "label": "Commentaire", + "importer_type": 22, + "export_field_name": "" + }, + "model": "ishtar_common.importercolumn", + "pk": 386 +}, +{ + "fields": { + "col_number": 12, + "description": "Texte libre", + "regexp_pre_filter": null, + "required": false, + "label": "Description", + "importer_type": 22, + "export_field_name": "" + }, + "model": "ishtar_common.importercolumn", + "pk": 387 +}, +{ + "fields": { + "col_number": 13, + "description": "Texte libre", + "regexp_pre_filter": null, + "required": false, + "label": "Information suppl\u00e9mentaire", + "importer_type": 22, + "export_field_name": "" + }, + "model": "ishtar_common.importercolumn", + "pk": 388 +}, +{ + "fields": { + "col_number": 15, + "description": "Nom (en casse haute) suivi du pr\u00e9nom de l'auteur (maximum 300 caract\u00e8res). Exemple : DUPONT Jean.", + "regexp_pre_filter": null, + "required": false, + "label": "Auteur principal", + "importer_type": 22, + "export_field_name": "" + }, + "model": "ishtar_common.importercolumn", + "pk": 389 +}, +{ + "fields": { + "col_number": 14, + "description": "", + "regexp_pre_filter": null, + "required": false, + "label": "Existe en doublon", + "importer_type": 22, + "export_field_name": "" + }, + "model": "ishtar_common.importercolumn", + "pk": 390 +}, +{ + "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 op\u00e9ration", + "importer_type": 23, + "export_field_name": "base_finds__context_record__operation__code_patriarche" + }, + "model": "ishtar_common.importercolumn", + "pk": 391 +}, +{ + "fields": { + "col_number": 2, + "description": "Commune (via num\u00e9ro INSEE).", + "regexp_pre_filter": null, + "required": true, + "label": "INSEE", + "importer_type": 23, + "export_field_name": "base_finds__context_record__parcel__town__numero_insee" + }, + "model": "ishtar_common.importercolumn", + "pk": 392 +}, +{ + "fields": { + "col_number": 3, + "description": "Section (identifiant externe), soit des lettres formant la section . Exemple : \"ZA\".", + "regexp_pre_filter": null, + "required": true, + "label": "Section de parcellaire", + "importer_type": 23, + "export_field_name": "base_finds__context_record__parcel__section" + }, + "model": "ishtar_common.importercolumn", + "pk": 393 +}, +{ + "fields": { + "col_number": 4, + "description": "Num\u00e9ro de la parcelle, soit des chiffres sans espaces. Exemple : \"253\".", + "regexp_pre_filter": null, + "required": true, + "label": "Num\u00e9ro de parcelle", + "importer_type": 23, + "export_field_name": "base_finds__context_record__parcel__parcel_number" + }, + "model": "ishtar_common.importercolumn", + "pk": 394 +}, +{ + "fields": { + "col_number": 5, + "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": 23, + "export_field_name": "base_finds__context_record__label" + }, + "model": "ishtar_common.importercolumn", + "pk": 395 +}, +{ + "fields": { + "col_number": 6, + "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": 23, + "export_field_name": "label" + }, + "model": "ishtar_common.importercolumn", + "pk": 396 +}, +{ + "fields": { + "comment": null, + "target": "code_patriarche", + "column": 1, + "formater_type": 1, + "concat_str": null, + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 1 +}, +{ + "fields": { + "comment": null, + "target": "operation_type", + "column": 2, + "formater_type": 2, + "concat_str": null, + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 2 +}, +{ + "fields": { + "comment": null, + "target": "common_name", + "column": 3, + "formater_type": 3, + "concat_str": null, + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 3 +}, +{ + "fields": { + "comment": null, + "target": "operator__name", + "column": 4, + "formater_type": 3, + "concat_str": null, + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 4 +}, +{ + "fields": { + "comment": null, + "target": "scientist__raw_name", + "column": 5, + "formater_type": 4, + "concat_str": null, + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 5 +}, +{ + "fields": { + "comment": null, + "target": "start_date", + "column": 6, + "formater_type": 5, + "concat_str": null, + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 6 +}, +{ + "fields": { + "comment": null, + "target": "excavation_end_date", + "column": 7, + "formater_type": 5, + "concat_str": null, + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 7 +}, +{ + "fields": { + "comment": null, + "target": "periods", + "column": 8, + "formater_type": 6, + "concat_str": null, + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 8 +}, +{ + "fields": { + "comment": "", + "target": "operation__code_patriarche", + "column": 9, + "formater_type": 1, + "concat_str": "-", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 9 +}, +{ + "fields": { + "comment": null, + "target": "town__numero_insee", + "column": 12, + "formater_type": 11, + "concat_str": null, + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 13 +}, +{ + "fields": { + "comment": null, + "target": "address", + "column": 13, + "formater_type": 10, + "concat_str": null, + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 14 +}, +{ + "fields": { + "comment": null, + "target": "operation__code_patriarche", + "column": 14, + "formater_type": 1, + "concat_str": null, + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 15 +}, +{ + "fields": { + "comment": null, + "target": "external_id", + "column": 15, + "formater_type": 11, + "concat_str": null, + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 16 +}, +{ + "fields": { + "comment": null, + "target": "source_type", + "column": 16, + "formater_type": 12, + "concat_str": null, + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 17 +}, +{ + "fields": { + "comment": null, + "target": "support_type", + "column": 17, + "formater_type": 13, + "concat_str": null, + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 18 +}, +{ + "fields": { + "comment": null, + "target": "item_number", + "column": 18, + "formater_type": 1, + "concat_str": null, + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 19 +}, +{ + "fields": { + "comment": null, + "target": "authors__person__raw_name", + "column": 19, + "formater_type": 4, + "concat_str": null, + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 20 +}, +{ + "fields": { + "comment": null, + "target": "creation_date", + "column": 20, + "formater_type": 14, + "concat_str": null, + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 21 +}, +{ + "fields": { + "comment": null, + "target": "format_type", + "column": 21, + "formater_type": 15, + "concat_str": null, + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 22 +}, +{ + "fields": { + "comment": null, + "target": "description", + "column": 22, + "formater_type": 16, + "concat_str": null, + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 23 +}, +{ + "fields": { + "comment": null, + "target": "comment", + "column": 23, + "formater_type": 16, + "concat_str": null, + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 24 +}, +{ + "fields": { + "comment": null, + "target": "scale", + "column": 24, + "formater_type": 17, + "concat_str": null, + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 25 +}, +{ + "fields": { + "comment": null, + "target": "additional_information", + "column": 25, + "formater_type": 16, + "concat_str": null, + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 26 +}, +{ + "fields": { + "comment": "", + "target": "operation__code_patriarche", + "column": 26, + "formater_type": 1, + "concat_str": "-", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 27 +}, +{ + "fields": { + "comment": "", + "target": "label", + "column": 27, + "formater_type": 3, + "concat_str": null, + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 28 +}, +{ + "fields": { + "comment": null, + "target": "unit", + "column": 28, + "formater_type": 18, + "concat_str": null, + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 29 +}, +{ + "fields": { + "comment": null, + "target": "description", + "column": 29, + "formater_type": 16, + "concat_str": null, + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 30 +}, +{ + "fields": { + "comment": null, + "target": "identification", + "column": 30, + "formater_type": 24, + "concat_str": null, + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 31 +}, +{ + "fields": { + "comment": null, + "target": "opening_date", + "column": 31, + "formater_type": 5, + "concat_str": null, + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 32 +}, +{ + "fields": { + "comment": null, + "target": "closing_date", + "column": 32, + "formater_type": 5, + "concat_str": null, + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 33 +}, +{ + "fields": { + "comment": "", + "target": "parcel__external_id", + "column": 33, + "formater_type": 11, + "concat_str": "-", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 34 +}, +{ + "fields": { + "comment": null, + "target": "comment", + "column": 34, + "formater_type": 16, + "concat_str": null, + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 35 +}, +{ + "fields": { + "comment": null, + "target": "datings__period", + "column": 35, + "formater_type": 6, + "concat_str": null, + "regexp_filter": null, + "concat": false, + "force_new": true + }, + "model": "ishtar_common.importtarget", + "pk": 36 +}, +{ + "fields": { + "comment": "", + "target": "base_finds__context_record__external_id", + "column": 36, + "formater_type": 11, + "concat_str": "-", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 37 +}, +{ + "fields": { + "comment": "", + "target": "base_finds__label", + "column": 37, + "formater_type": 3, + "concat_str": null, + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 38 +}, +{ + "fields": { + "comment": null, + "target": "material_types", + "column": 39, + "formater_type": 20, + "concat_str": null, + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 40 +}, +{ + "fields": { + "comment": null, + "target": "find_number", + "column": 40, + "formater_type": 1, + "concat_str": null, + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 41 +}, +{ + "fields": { + "comment": null, + "target": "weight", + "column": 41, + "formater_type": 21, + "concat_str": null, + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 42 +}, +{ + "fields": { + "comment": null, + "target": "weight_unit", + "column": 42, + "formater_type": 7, + "concat_str": null, + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 43 +}, +{ + "fields": { + "comment": "", + "target": "base_finds__context_record__external_id", + "column": 43, + "formater_type": 3, + "concat_str": "-", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 44 +}, +{ + "fields": { + "comment": null, + "target": "base_finds__discovery_date", + "column": 44, + "formater_type": 5, + "concat_str": null, + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 45 +}, +{ + "fields": { + "comment": null, + "target": "conservatory_state", + "column": 45, + "formater_type": 22, + "concat_str": null, + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 46 +}, +{ + "fields": { + "comment": "", + "target": "preservation_to_considers", + "column": 46, + "formater_type": 23, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 47 +}, +{ + "fields": { + "comment": "", + "target": "base_finds__comment", + "column": 47, + "formater_type": 35, + "concat_str": null, + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 48 +}, +{ + "fields": { + "comment": null, + "target": "base_finds__topographic_localisation", + "column": 48, + "formater_type": 3, + "concat_str": null, + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 49 +}, +{ + "fields": { + "comment": null, + "target": "base_finds__special_interest", + "column": 49, + "formater_type": 3, + "concat_str": null, + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 50 +}, +{ + "fields": { + "comment": null, + "target": "base_finds__description", + "column": 50, + "formater_type": 16, + "concat_str": null, + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 51 +}, +{ + "fields": { + "comment": null, + "target": "parcel_number", + "column": 51, + "formater_type": 8, + "concat_str": null, + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 53 +}, +{ + "fields": { + "comment": null, + "target": "section", + "column": 52, + "formater_type": 7, + "concat_str": null, + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 54 +}, +{ + "fields": { + "comment": "", + "target": "external_id", + "column": 53, + "formater_type": 11, + "concat_str": "-", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 55 +}, +{ + "fields": { + "comment": null, + "target": "year", + "column": 11, + "formater_type": 14, + "concat_str": null, + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 56 +}, +{ + "fields": { + "comment": null, + "target": "interpretation", + "column": 54, + "formater_type": 16, + "concat_str": null, + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 57 +}, +{ + "fields": { + "comment": "", + "target": "parcel__external_id", + "column": 225, + "formater_type": 28, + "concat_str": "-", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 250 +}, +{ + "fields": { + "comment": "", + "target": "base_finds__context_record__external_id", + "column": 226, + "formater_type": 35, + "concat_str": "-", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 251 +}, +{ + "fields": { + "comment": "", + "target": "base_finds__context_record__external_id", + "column": 227, + "formater_type": 28, + "concat_str": "-", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 252 +}, +{ + "fields": { + "comment": "", + "target": "datings__period", + "column": 228, + "formater_type": 6, + "concat_str": null, + "regexp_filter": null, + "concat": false, + "force_new": true + }, + "model": "ishtar_common.importtarget", + "pk": 253 +}, +{ + "fields": { + "comment": "", + "target": "label", + "column": 229, + "formater_type": 3, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 254 +}, +{ + "fields": { + "comment": "", + "target": "code_patriarche", + "column": 265, + "formater_type": 1, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 290 +}, +{ + "fields": { + "comment": "", + "target": "common_name", + "column": 266, + "formater_type": 35, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 291 +}, +{ + "fields": { + "comment": "", + "target": "year", + "column": 267, + "formater_type": 14, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 292 +}, +{ + "fields": { + "comment": "", + "target": "operation_code", + "column": 268, + "formater_type": 1, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 293 +}, +{ + "fields": { + "comment": "", + "target": "operation_type", + "column": 269, + "formater_type": 2, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 294 +}, +{ + "fields": { + "comment": "", + "target": "associated_file__external_id", + "column": 270, + "formater_type": 35, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 295 +}, +{ + "fields": { + "comment": "", + "target": "periods", + "column": 273, + "formater_type": 6, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 296 +}, +{ + "fields": { + "comment": "", + "target": "archaeological_sites__reference", + "column": 271, + "formater_type": 45, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 297 +}, +{ + "fields": { + "comment": "", + "target": "scientist__title", + "column": 274, + "formater_type": 47, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 298 +}, +{ + "fields": { + "comment": "", + "target": "scientist__surname", + "column": 275, + "formater_type": 3, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 299 +}, +{ + "fields": { + "comment": "", + "target": "scientist__name", + "column": 276, + "formater_type": 30, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 300 +}, +{ + "fields": { + "comment": "", + "target": "scientist__attached_to__name", + "column": 277, + "formater_type": 30, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 301 +}, +{ + "fields": { + "comment": "", + "target": "operator__name", + "column": 278, + "formater_type": 10, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 302 +}, +{ + "fields": { + "comment": "", + "target": "operator_reference", + "column": 279, + "formater_type": 3, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 303 +}, +{ + "fields": { + "comment": "", + "target": "in_charge__title", + "column": 280, + "formater_type": 47, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 304 +}, +{ + "fields": { + "comment": "", + "target": "in_charge__surname", + "column": 281, + "formater_type": 39, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 305 +}, +{ + "fields": { + "comment": "", + "target": "in_charge__name", + "column": 282, + "formater_type": 30, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 306 +}, +{ + "fields": { + "comment": "", + "target": "in_charge__attached_to__name", + "column": 283, + "formater_type": 10, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 307 +}, +{ + "fields": { + "comment": "", + "target": "surface", + "column": 284, + "formater_type": 1, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 308 +}, +{ + "fields": { + "comment": "", + "target": "start_date", + "column": 285, + "formater_type": 25, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 309 +}, +{ + "fields": { + "comment": "", + "target": "excavation_end_date", + "column": 286, + "formater_type": 25, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 310 +}, +{ + "fields": { + "comment": "", + "target": "end_date", + "column": 287, + "formater_type": 25, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 311 +}, +{ + "fields": { + "comment": "", + "target": "cira_date", + "column": 288, + "formater_type": 25, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 312 +}, +{ + "fields": { + "comment": "", + "target": "negative_result", + "column": 289, + "formater_type": 19, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 313 +}, +{ + "fields": { + "comment": "", + "target": "cira_rapporteur__surname", + "column": 290, + "formater_type": 39, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 314 +}, +{ + "fields": { + "comment": "", + "target": "cira_rapporteur__name", + "column": 291, + "formater_type": 30, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 315 +}, +{ + "fields": { + "comment": "", + "target": "cira_rapporteur__attached_to__name", + "column": 292, + "formater_type": 10, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 316 +}, +{ + "fields": { + "comment": "", + "target": "documentation_deadline", + "column": 293, + "formater_type": 25, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 317 +}, +{ + "fields": { + "comment": "", + "target": "documentation_received", + "column": 294, + "formater_type": 19, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 318 +}, +{ + "fields": { + "comment": "", + "target": "finds_deadline", + "column": 295, + "formater_type": 25, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 319 +}, +{ + "fields": { + "comment": "", + "target": "finds_received", + "column": 296, + "formater_type": 19, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 320 +}, +{ + "fields": { + "comment": "", + "target": "comment", + "column": 297, + "formater_type": 35, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 321 +}, +{ + "fields": { + "comment": "", + "target": "report_delivery_date", + "column": 298, + "formater_type": 25, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 322 +}, +{ + "fields": { + "comment": "", + "target": "report_processing", + "column": 299, + "formater_type": 37, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 323 +}, +{ + "fields": { + "comment": "", + "target": "scientific_documentation_comment", + "column": 300, + "formater_type": 35, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 324 +}, +{ + "fields": { + "comment": "", + "target": "image", + "column": 301, + "formater_type": 27, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 325 +}, +{ + "fields": { + "comment": "", + "target": "operation__code_patriarche", + "column": 302, + "formater_type": 1, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 326 +}, +{ + "fields": { + "comment": "", + "target": "operation__code_patriarche", + "column": 303, + "formater_type": 1, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 327 +}, +{ + "fields": { + "comment": "", + "target": "town__numero_insee", + "column": 304, + "formater_type": 11, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 328 +}, +{ + "fields": { + "comment": "", + "target": "external_id", + "column": 305, + "formater_type": 11, + "concat_str": "-", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 329 +}, +{ + "fields": { + "comment": "", + "target": "section", + "column": 306, + "formater_type": 7, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 330 +}, +{ + "fields": { + "comment": "", + "target": "parcel_number", + "column": 307, + "formater_type": 8, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 331 +}, +{ + "fields": { + "comment": "", + "target": "year", + "column": 308, + "formater_type": 14, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 332 +}, +{ + "fields": { + "comment": "", + "target": "address", + "column": 309, + "formater_type": 10, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 333 +}, +{ + "fields": { + "comment": "", + "target": "public_domain", + "column": 310, + "formater_type": 19, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 334 +}, +{ + "fields": { + "comment": "", + "target": "parcel__external_id", + "column": 311, + "formater_type": 28, + "concat_str": "-", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 335 +}, +{ + "fields": { + "comment": "", + "target": "parcel__external_id", + "column": 312, + "formater_type": 11, + "concat_str": "-", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 336 +}, +{ + "fields": { + "comment": "", + "target": "parcel__year", + "column": 313, + "formater_type": 14, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 337 +}, +{ + "fields": { + "comment": "", + "target": "remains", + "column": 272, + "formater_type": 41, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 338 +}, +{ + "fields": { + "comment": "", + "target": "label", + "column": 314, + "formater_type": 30, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 339 +}, +{ + "fields": { + "comment": "", + "target": "unit", + "column": 315, + "formater_type": 18, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 340 +}, +{ + "fields": { + "comment": "", + "target": "description", + "column": 316, + "formater_type": 35, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 341 +}, +{ + "fields": { + "comment": "", + "target": "comment", + "column": 317, + "formater_type": 35, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 342 +}, +{ + "fields": { + "comment": "", + "target": "length", + "column": 318, + "formater_type": 21, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 343 +}, +{ + "fields": { + "comment": "", + "target": "width", + "column": 319, + "formater_type": 21, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 344 +}, +{ + "fields": { + "comment": "", + "target": "thickness", + "column": 320, + "formater_type": 21, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 345 +}, +{ + "fields": { + "comment": "", + "target": "depth", + "column": 321, + "formater_type": 21, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 346 +}, +{ + "fields": { + "comment": "", + "target": "location", + "column": 322, + "formater_type": 35, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 347 +}, +{ + "fields": { + "comment": "", + "target": "documentations", + "column": 323, + "formater_type": 52, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 348 +}, +{ + "fields": { + "comment": "", + "target": "image", + "column": 324, + "formater_type": 27, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 349 +}, +{ + "fields": { + "comment": "", + "target": "datings__period", + "column": 325, + "formater_type": 6, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": true + }, + "model": "ishtar_common.importtarget", + "pk": 350 +}, +{ + "fields": { + "comment": "", + "target": "datings_comment", + "column": 326, + "formater_type": 16, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 351 +}, +{ + "fields": { + "comment": "", + "target": "filling", + "column": 327, + "formater_type": 35, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 352 +}, +{ + "fields": { + "comment": "", + "target": "interpretation", + "column": 328, + "formater_type": 35, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 353 +}, +{ + "fields": { + "comment": "", + "target": "activity", + "column": 329, + "formater_type": 42, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 354 +}, +{ + "fields": { + "comment": "", + "target": "identification", + "column": 330, + "formater_type": 24, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 355 +}, +{ + "fields": { + "comment": "", + "target": "taq", + "column": 331, + "formater_type": 1, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 356 +}, +{ + "fields": { + "comment": "", + "target": "tpq", + "column": 332, + "formater_type": 1, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 357 +}, +{ + "fields": { + "comment": "", + "target": "taq_estimated", + "column": 333, + "formater_type": 1, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 358 +}, +{ + "fields": { + "comment": "", + "target": "tpq_estimated", + "column": 334, + "formater_type": 1, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 359 +}, +{ + "fields": { + "comment": "", + "target": "old_code", + "column": 335, + "formater_type": 30, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 360 +}, +{ + "fields": { + "comment": "", + "target": "base_finds__context_record__external_id", + "column": 336, + "formater_type": 11, + "concat_str": "-", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 361 +}, +{ + "fields": { + "comment": "", + "target": "base_finds__context_record__external_id", + "column": 337, + "formater_type": 28, + "concat_str": "-", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 362 +}, +{ + "fields": { + "comment": "", + "target": "base_finds__context_record__external_id", + "column": 338, + "formater_type": 35, + "concat_str": "-", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 363 +}, +{ + "fields": { + "comment": "", + "target": "base_finds__context_record__external_id", + "column": 339, + "formater_type": 3, + "concat_str": "-", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 364 +}, +{ + "fields": { + "comment": "", + "target": "base_finds__label", + "column": 340, + "formater_type": 3, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 365 +}, +{ + "fields": { + "comment": "", + "target": "previous_id", + "column": 341, + "formater_type": 3, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 366 +}, +{ + "fields": { + "comment": "", + "target": "description", + "column": 342, + "formater_type": 35, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 367 +}, +{ + "fields": { + "comment": "", + "target": "base_finds__batch", + "column": 344, + "formater_type": 48, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 368 +}, +{ + "fields": { + "comment": "", + "target": "is_complete", + "column": 345, + "formater_type": 19, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 369 +}, +{ + "fields": { + "comment": "", + "target": "material_types", + "column": 346, + "formater_type": 20, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 370 +}, +{ + "fields": { + "comment": "", + "target": "conservatory_state", + "column": 347, + "formater_type": 22, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 371 +}, +{ + "fields": { + "comment": "", + "target": "conservatory_comment", + "column": 348, + "formater_type": 35, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 372 +}, +{ + "fields": { + "comment": "", + "target": "object_types", + "column": 349, + "formater_type": 26, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 373 +}, +{ + "fields": { + "comment": "", + "target": "preservation_to_considers", + "column": 350, + "formater_type": 23, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 374 +}, +{ + "fields": { + "comment": "", + "target": "integrities", + "column": 351, + "formater_type": 43, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 375 +}, +{ + "fields": { + "comment": "", + "target": "remarkabilities", + "column": 352, + "formater_type": 44, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 376 +}, +{ + "fields": { + "comment": "", + "target": "length", + "column": 353, + "formater_type": 21, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 377 +}, +{ + "fields": { + "comment": "", + "target": "width", + "column": 354, + "formater_type": 21, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 378 +}, +{ + "fields": { + "comment": "", + "target": "height", + "column": 355, + "formater_type": 21, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 379 +}, +{ + "fields": { + "comment": "", + "target": "diameter", + "column": 356, + "formater_type": 21, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 380 +}, +{ + "fields": { + "comment": "", + "target": "dimensions_comment", + "column": 357, + "formater_type": 35, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 381 +}, +{ + "fields": { + "comment": "", + "target": "find_number", + "column": 358, + "formater_type": 1, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 382 +}, +{ + "fields": { + "comment": "", + "target": "mark", + "column": 359, + "formater_type": 35, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 383 +}, +{ + "fields": { + "comment": "", + "target": "comment", + "column": 360, + "formater_type": 35, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 384 +}, +{ + "fields": { + "comment": "", + "target": "dating_comment", + "column": 361, + "formater_type": 35, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 385 +}, +{ + "fields": { + "comment": "", + "target": "estimated_value", + "column": 362, + "formater_type": 21, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 386 +}, +{ + "fields": { + "comment": "", + "target": "image", + "column": 363, + "formater_type": 27, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 387 +}, +{ + "fields": { + "comment": "", + "target": "datings__period", + "column": 364, + "formater_type": 6, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": true + }, + "model": "ishtar_common.importtarget", + "pk": 388 +}, +{ + "fields": { + "comment": "", + "target": "base_finds__topographic_localisation", + "column": 343, + "formater_type": 3, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 389 +}, +{ + "fields": { + "comment": "", + "target": "base_finds__x", + "column": 365, + "formater_type": 21, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 390 +}, +{ + "fields": { + "comment": "", + "target": "base_finds__y", + "column": 366, + "formater_type": 21, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 391 +}, +{ + "fields": { + "comment": "", + "target": "base_finds__z", + "column": 367, + "formater_type": 21, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 392 +}, +{ + "fields": { + "comment": "", + "target": "base_finds__spatial_reference_system", + "column": 368, + "formater_type": 46, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 393 +}, +{ + "fields": { + "comment": "", + "target": "left_record__external_id", + "column": 369, + "formater_type": 35, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 394 +}, +{ + "fields": { + "comment": "", + "target": "relation_type", + "column": 370, + "formater_type": 49, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 395 +}, +{ + "fields": { + "comment": "", + "target": "right_record__external_id", + "column": 371, + "formater_type": 35, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 396 +}, +{ + "fields": { + "comment": "", + "target": "weight", + "column": 372, + "formater_type": 21, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 397 +}, +{ + "fields": { + "comment": "", + "target": "container__responsible__external_id", + "column": 373, + "formater_type": 35, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 398 +}, +{ + "fields": { + "comment": "", + "target": "container__reference", + "column": 374, + "formater_type": 17, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 399 +}, +{ + "fields": { + "comment": "", + "target": "container__container_type", + "column": 375, + "formater_type": 50, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 400 +}, +{ + "fields": { + "comment": "", + "target": "operation__code_patriarche", + "column": 376, + "formater_type": 35, + "concat_str": "-", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 401 +}, +{ + "fields": { + "comment": "", + "target": "title", + "column": 377, + "formater_type": 4, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 402 +}, +{ + "fields": { + "comment": "", + "target": "source_type", + "column": 378, + "formater_type": 12, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 403 +}, +{ + "fields": { + "comment": "", + "target": "index", + "column": 379, + "formater_type": 1, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 404 +}, +{ + "fields": { + "comment": "", + "target": "reference", + "column": 380, + "formater_type": 51, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 405 +}, +{ + "fields": { + "comment": "", + "target": "internal_reference", + "column": 381, + "formater_type": 51, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 406 +}, +{ + "fields": { + "comment": "", + "target": "associated_url", + "column": 382, + "formater_type": 4, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 407 +}, +{ + "fields": { + "comment": "", + "target": "receipt_date", + "column": 383, + "formater_type": 25, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 408 +}, +{ + "fields": { + "comment": "", + "target": "creation_date", + "column": 384, + "formater_type": 25, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 409 +}, +{ + "fields": { + "comment": "", + "target": "receipt_date_in_documentation", + "column": 385, + "formater_type": 25, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 410 +}, +{ + "fields": { + "comment": "", + "target": "comment", + "column": 386, + "formater_type": 35, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 411 +}, +{ + "fields": { + "comment": "", + "target": "description", + "column": 387, + "formater_type": 35, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 412 +}, +{ + "fields": { + "comment": "", + "target": "additional_information", + "column": 388, + "formater_type": 35, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 413 +}, +{ + "fields": { + "comment": "", + "target": "authors__person__raw_name", + "column": 389, + "formater_type": 4, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 414 +}, +{ + "fields": { + "comment": "", + "target": "duplicate", + "column": 390, + "formater_type": 19, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 415 +}, +{ + "fields": { + "comment": "", + "target": "base_finds__context_record__external_id", + "column": 391, + "formater_type": 11, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 416 +}, +{ + "fields": { + "comment": "", + "target": "base_finds__context_record__external_id", + "column": 392, + "formater_type": 28, + "concat_str": "-", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 417 +}, +{ + "fields": { + "comment": "", + "target": "base_finds__context_record__external_id", + "column": 393, + "formater_type": 35, + "concat_str": "-", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 418 +}, +{ + "fields": { + "comment": "", + "target": "base_finds__context_record__external_id", + "column": 394, + "formater_type": 35, + "concat_str": "-", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 419 +}, +{ + "fields": { + "comment": "", + "target": "base_finds__context_record__external_id", + "column": 395, + "formater_type": 3, + "concat_str": "-", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 420 +}, +{ + "fields": { + "comment": "", + "target": "base_finds__label", + "column": 396, + "formater_type": 3, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 421 +}, +{ + "fields": { + "comment": "", + "target": "base_finds__context_record__parcel__town__numero_insee", + "column": 392, + "formater_type": 11, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 422 +}, +{ + "fields": { + "comment": "", + "target": "base_finds__context_record__parcel__section", + "column": 393, + "formater_type": 7, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 423 +}, +{ + "fields": { + "comment": "", + "target": "base_finds__context_record__parcel__parcel_number", + "column": 394, + "formater_type": 8, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 424 +}, +{ + "fields": { + "comment": "", + "target": "base_finds__context_record__parcel__town__numero_insee", + "column": 337, + "formater_type": 28, + "concat_str": "", + "regexp_filter": null, + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importtarget", + "pk": 425 +}, +{ + "fields": { + "formater_type": "IntegerFormater", + "many_split": "", + "options": "" + }, + "model": "ishtar_common.formatertype", + "pk": 1 +}, +{ + "fields": { + "formater_type": "TypeFormater", + "many_split": "", + "options": "archaeological_operations.models.OperationType" + }, + "model": "ishtar_common.formatertype", + "pk": 2 +}, +{ + "fields": { + "formater_type": "UnicodeFormater", + "many_split": "", + "options": "120" + }, + "model": "ishtar_common.formatertype", + "pk": 3 +}, +{ + "fields": { + "formater_type": "UnicodeFormater", + "many_split": "", + "options": "300" + }, + "model": "ishtar_common.formatertype", + "pk": 4 +}, +{ + "fields": { + "formater_type": "DateFormater", + "many_split": "", + "options": "%Y/%m/%d" + }, + "model": "ishtar_common.formatertype", + "pk": 5 +}, +{ + "fields": { + "formater_type": "TypeFormater", + "many_split": "&", + "options": "archaeological_operations.models.Period" + }, + "model": "ishtar_common.formatertype", + "pk": 6 +}, +{ + "fields": { + "formater_type": "UnicodeFormater", + "many_split": "", + "options": "4" + }, + "model": "ishtar_common.formatertype", + "pk": 7 +}, +{ + "fields": { + "formater_type": "UnicodeFormater", + "many_split": "", + "options": "6" + }, + "model": "ishtar_common.formatertype", + "pk": 8 +}, +{ + "fields": { + "formater_type": "UnicodeFormater", + "many_split": "", + "options": "500" + }, + "model": "ishtar_common.formatertype", + "pk": 10 +}, +{ + "fields": { + "formater_type": "UnicodeFormater", + "many_split": "", + "options": "12" + }, + "model": "ishtar_common.formatertype", + "pk": 11 +}, +{ + "fields": { + "formater_type": "TypeFormater", + "many_split": "", + "options": "SourceType" + }, + "model": "ishtar_common.formatertype", + "pk": 12 +}, +{ + "fields": { + "formater_type": "TypeFormater", + "many_split": "", + "options": "SupportType" + }, + "model": "ishtar_common.formatertype", + "pk": 13 +}, +{ + "fields": { + "formater_type": "YearFormater", + "many_split": "", + "options": "%Y" + }, + "model": "ishtar_common.formatertype", + "pk": 14 +}, +{ + "fields": { + "formater_type": "TypeFormater", + "many_split": "", + "options": "Format" + }, + "model": "ishtar_common.formatertype", + "pk": 15 +}, +{ + "fields": { + "formater_type": "UnicodeFormater", + "many_split": "", + "options": "1000" + }, + "model": "ishtar_common.formatertype", + "pk": 16 +}, +{ + "fields": { + "formater_type": "UnicodeFormater", + "many_split": "", + "options": "30" + }, + "model": "ishtar_common.formatertype", + "pk": 17 +}, +{ + "fields": { + "formater_type": "TypeFormater", + "many_split": "", + "options": "archaeological_context_records.models.Unit" + }, + "model": "ishtar_common.formatertype", + "pk": 18 +}, +{ + "fields": { + "formater_type": "StrToBoolean", + "many_split": "", + "options": "" + }, + "model": "ishtar_common.formatertype", + "pk": 19 +}, +{ + "fields": { + "formater_type": "TypeFormater", + "many_split": "&", + "options": "archaeological_finds.models.MaterialType" + }, + "model": "ishtar_common.formatertype", + "pk": 20 +}, +{ + "fields": { + "formater_type": "FloatFormater", + "many_split": "", + "options": "" + }, + "model": "ishtar_common.formatertype", + "pk": 21 +}, +{ + "fields": { + "formater_type": "TypeFormater", + "many_split": "", + "options": "archaeological_finds.models.ConservatoryState" + }, + "model": "ishtar_common.formatertype", + "pk": 22 +}, +{ + "fields": { + "formater_type": "TypeFormater", + "many_split": "", + "options": "archaeological_finds.models.PreservationType" + }, + "model": "ishtar_common.formatertype", + "pk": 23 +}, +{ + "fields": { + "formater_type": "TypeFormater", + "many_split": "", + "options": "archaeological_context_records.models.IdentificationType" + }, + "model": "ishtar_common.formatertype", + "pk": 24 +}, +{ + "fields": { + "formater_type": "DateFormater", + "many_split": " | ", + "options": "%d/%m/%Y | %Y-%m-%d" + }, + "model": "ishtar_common.formatertype", + "pk": 25 +}, +{ + "fields": { + "formater_type": "TypeFormater", + "many_split": "", + "options": "archaeological_finds.models.ObjectType" + }, + "model": "ishtar_common.formatertype", + "pk": 26 +}, +{ + "fields": { + "formater_type": "FileFormater", + "many_split": "", + "options": "" + }, + "model": "ishtar_common.formatertype", + "pk": 27 +}, +{ + "fields": { + "formater_type": "UnicodeFormater", + "many_split": "", + "options": "5" + }, + "model": "ishtar_common.formatertype", + "pk": 28 +}, +{ + "fields": { + "formater_type": "UnknowType", + "many_split": "", + "options": "" + }, + "model": "ishtar_common.formatertype", + "pk": 29 +}, +{ + "fields": { + "formater_type": "UnicodeFormater", + "many_split": "", + "options": "200" + }, + "model": "ishtar_common.formatertype", + "pk": 30 +}, +{ + "fields": { + "formater_type": "UnicodeFormater", + "many_split": "", + "options": "70" + }, + "model": "ishtar_common.formatertype", + "pk": 31 +}, +{ + "fields": { + "formater_type": "TypeFormater", + "many_split": "", + "options": "archaeological_files.models.SaisineType" + }, + "model": "ishtar_common.formatertype", + "pk": 32 +}, +{ + "fields": { + "formater_type": "UnicodeFormater", + "many_split": "", + "options": "2000" + }, + "model": "ishtar_common.formatertype", + "pk": 33 +}, +{ + "fields": { + "formater_type": "TypeFormater", + "many_split": "", + "options": "archaeological_files.models.PermitType" + }, + "model": "ishtar_common.formatertype", + "pk": 34 +}, +{ + "fields": { + "formater_type": "UnicodeFormater", + "many_split": "", + "options": "" + }, + "model": "ishtar_common.formatertype", + "pk": 35 +}, +{ + "fields": { + "formater_type": "UnicodeFormater", + "many_split": "", + "options": "60" + }, + "model": "ishtar_common.formatertype", + "pk": 36 +}, +{ + "fields": { + "formater_type": "TypeFormater", + "many_split": "", + "options": "archaeological_operations.models.ReportState" + }, + "model": "ishtar_common.formatertype", + "pk": 37 +}, +{ + "fields": { + "formater_type": "UnicodeFormater", + "many_split": "", + "options": "10" + }, + "model": "ishtar_common.formatertype", + "pk": 38 +}, +{ + "fields": { + "formater_type": "UnicodeFormater", + "many_split": "", + "options": "50" + }, + "model": "ishtar_common.formatertype", + "pk": 39 +}, +{ + "fields": { + "formater_type": "TypeFormater", + "many_split": "&", + "options": "archaeological_operations.models.RemainType" + }, + "model": "ishtar_common.formatertype", + "pk": 41 +}, +{ + "fields": { + "formater_type": "TypeFormater", + "many_split": "", + "options": "archaeological_context_records.models.ActivityType" + }, + "model": "ishtar_common.formatertype", + "pk": 42 +}, +{ + "fields": { + "formater_type": "TypeFormater", + "many_split": "&", + "options": "archaeological_finds.models.IntegrityType" + }, + "model": "ishtar_common.formatertype", + "pk": 43 +}, +{ + "fields": { + "formater_type": "TypeFormater", + "many_split": "&", + "options": "archaeological_finds.models.RemarkabilityType" + }, + "model": "ishtar_common.formatertype", + "pk": 44 +}, +{ + "fields": { + "formater_type": "UnicodeFormater", + "many_split": "", + "options": "20" + }, + "model": "ishtar_common.formatertype", + "pk": 45 +}, +{ + "fields": { + "formater_type": "TypeFormater", + "many_split": "", + "options": "SpatialReferenceSystem" + }, + "model": "ishtar_common.formatertype", + "pk": 46 +}, +{ + "fields": { + "formater_type": "TypeFormater", + "many_split": "", + "options": "TitleType" + }, + "model": "ishtar_common.formatertype", + "pk": 47 +}, +{ + "fields": { + "formater_type": "TypeFormater", + "many_split": "", + "options": "archaeological_finds.models.BatchType" + }, + "model": "ishtar_common.formatertype", + "pk": 48 +}, +{ + "fields": { + "formater_type": "TypeFormater", + "many_split": "", + "options": "archaeological_context_records.models.RelationType" + }, + "model": "ishtar_common.formatertype", + "pk": 49 +}, +{ + "fields": { + "formater_type": "TypeFormater", + "many_split": "", + "options": "archaeological_warehouse.models.ContainerType" + }, + "model": "ishtar_common.formatertype", + "pk": 50 +}, +{ + "fields": { + "formater_type": "UnicodeFormater", + "many_split": "", + "options": "100" + }, + "model": "ishtar_common.formatertype", + "pk": 51 +}, +{ + "fields": { + "formater_type": "TypeFormater", + "many_split": "&", + "options": "archaeological_context_records.models.DocumentationType" + }, + "model": "ishtar_common.formatertype", + "pk": 52 +}, +{ + "fields": { + "column": 37, + "concat_str": null, + "field_name": "label", + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importerduplicatefield", + "pk": 1 +}, +{ + "fields": { + "column": 37, + "concat_str": "-", + "field_name": "base_finds__external_id", + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importerduplicatefield", + "pk": 3 +}, +{ + "fields": { + "column": 5, + "concat_str": null, + "field_name": "scientist__name", + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importerduplicatefield", + "pk": 5 +}, +{ + "fields": { + "column": 27, + "concat_str": "-", + "field_name": "external_id", + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importerduplicatefield", + "pk": 6 +}, +{ + "fields": { + "column": 9, + "concat_str": "-", + "field_name": "external_id", + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importerduplicatefield", + "pk": 15 +}, +{ + "fields": { + "column": 12, + "concat_str": "-", + "field_name": "external_id", + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importerduplicatefield", + "pk": 16 +}, +{ + "fields": { + "column": 26, + "concat_str": "-", + "field_name": "parcel__external_id", + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importerduplicatefield", + "pk": 17 +}, +{ + "fields": { + "column": 26, + "concat_str": "-", + "field_name": "external_id", + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importerduplicatefield", + "pk": 18 +}, +{ + "fields": { + "column": 225, + "concat_str": "-", + "field_name": "external_id", + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importerduplicatefield", + "pk": 19 +}, +{ + "fields": { + "column": 33, + "concat_str": "-", + "field_name": "external_id", + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importerduplicatefield", + "pk": 20 +}, +{ + "fields": { + "column": 36, + "concat_str": "-", + "field_name": "base_finds__external_id", + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importerduplicatefield", + "pk": 21 +}, +{ + "fields": { + "column": 227, + "concat_str": "-", + "field_name": "base_finds__external_id", + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importerduplicatefield", + "pk": 22 +}, +{ + "fields": { + "column": 226, + "concat_str": "-", + "field_name": "base_finds__external_id", + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importerduplicatefield", + "pk": 23 +}, +{ + "fields": { + "column": 43, + "concat_str": "-", + "field_name": "base_finds__external_id", + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importerduplicatefield", + "pk": 24 +}, +{ + "fields": { + "column": 37, + "concat_str": "-", + "field_name": "external_id", + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importerduplicatefield", + "pk": 25 +}, +{ + "fields": { + "column": 43, + "concat_str": "-", + "field_name": "external_id", + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importerduplicatefield", + "pk": 26 +}, +{ + "fields": { + "column": 226, + "concat_str": "-", + "field_name": "external_id", + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importerduplicatefield", + "pk": 27 +}, +{ + "fields": { + "column": 227, + "concat_str": "-", + "field_name": "external_id", + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importerduplicatefield", + "pk": 28 +}, +{ + "fields": { + "column": 36, + "concat_str": "-", + "field_name": "external_id", + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importerduplicatefield", + "pk": 29 +}, +{ + "fields": { + "column": 302, + "concat_str": "-", + "field_name": "parcel__external_id", + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importerduplicatefield", + "pk": 31 +}, +{ + "fields": { + "column": 302, + "concat_str": "-", + "field_name": "external_id", + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importerduplicatefield", + "pk": 32 +}, +{ + "fields": { + "column": 304, + "concat_str": "-", + "field_name": "external_id", + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importerduplicatefield", + "pk": 33 +}, +{ + "fields": { + "column": 303, + "concat_str": "", + "field_name": "external_id", + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importerduplicatefield", + "pk": 34 +}, +{ + "fields": { + "column": 311, + "concat_str": "-", + "field_name": "external_id", + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importerduplicatefield", + "pk": 35 +}, +{ + "fields": { + "column": 312, + "concat_str": "-", + "field_name": "external_id", + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importerduplicatefield", + "pk": 36 +}, +{ + "fields": { + "column": 314, + "concat_str": "-", + "field_name": "external_id", + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importerduplicatefield", + "pk": 37 +}, +{ + "fields": { + "column": 336, + "concat_str": "-", + "field_name": "base_finds__external_id", + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importerduplicatefield", + "pk": 38 +}, +{ + "fields": { + "column": 336, + "concat_str": "-", + "field_name": "external_id", + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importerduplicatefield", + "pk": 39 +}, +{ + "fields": { + "column": 337, + "concat_str": "-", + "field_name": "base_finds__external_id", + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importerduplicatefield", + "pk": 40 +}, +{ + "fields": { + "column": 337, + "concat_str": "-", + "field_name": "external_id", + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importerduplicatefield", + "pk": 41 +}, +{ + "fields": { + "column": 338, + "concat_str": "-", + "field_name": "base_finds__external_id", + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importerduplicatefield", + "pk": 42 +}, +{ + "fields": { + "column": 338, + "concat_str": "-", + "field_name": "external_id", + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importerduplicatefield", + "pk": 43 +}, +{ + "fields": { + "column": 339, + "concat_str": "-", + "field_name": "base_finds__external_id", + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importerduplicatefield", + "pk": 44 +}, +{ + "fields": { + "column": 339, + "concat_str": "-", + "field_name": "external_id", + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importerduplicatefield", + "pk": 45 +}, +{ + "fields": { + "column": 340, + "concat_str": "", + "field_name": "label", + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importerduplicatefield", + "pk": 46 +}, +{ + "fields": { + "column": 340, + "concat_str": "-", + "field_name": "base_finds__external_id", + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importerduplicatefield", + "pk": 47 +}, +{ + "fields": { + "column": 340, + "concat_str": "-", + "field_name": "external_id", + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importerduplicatefield", + "pk": 48 +}, +{ + "fields": { + "column": 373, + "concat_str": "", + "field_name": "container__location__external_id", + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importerduplicatefield", + "pk": 49 +}, +{ + "fields": { + "column": 373, + "concat_str": "", + "field_name": "container__external_id", + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importerduplicatefield", + "pk": 50 +}, +{ + "fields": { + "column": 374, + "concat_str": "", + "field_name": "container__external_id", + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importerduplicatefield", + "pk": 51 +}, +{ + "fields": { + "column": 376, + "concat_str": "-", + "field_name": "external_id", + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importerduplicatefield", + "pk": 52 +}, +{ + "fields": { + "column": 379, + "concat_str": "-", + "field_name": "external_id", + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importerduplicatefield", + "pk": 53 +}, +{ + "fields": { + "column": 391, + "concat_str": "-", + "field_name": "base_finds__external_id", + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importerduplicatefield", + "pk": 54 +}, +{ + "fields": { + "column": 391, + "concat_str": "-", + "field_name": "external_id", + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importerduplicatefield", + "pk": 55 +}, +{ + "fields": { + "column": 392, + "concat_str": "-", + "field_name": "base_finds__external_id", + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importerduplicatefield", + "pk": 56 +}, +{ + "fields": { + "column": 392, + "concat_str": "-", + "field_name": "external_id", + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importerduplicatefield", + "pk": 57 +}, +{ + "fields": { + "column": 393, + "concat_str": "-", + "field_name": "base_finds__external_id", + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importerduplicatefield", + "pk": 58 +}, +{ + "fields": { + "column": 393, + "concat_str": "-", + "field_name": "external_id", + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importerduplicatefield", + "pk": 59 +}, +{ + "fields": { + "column": 394, + "concat_str": "-", + "field_name": "base_finds__external_id", + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importerduplicatefield", + "pk": 60 +}, +{ + "fields": { + "column": 394, + "concat_str": "-", + "field_name": "external_id", + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importerduplicatefield", + "pk": 61 +}, +{ + "fields": { + "column": 395, + "concat_str": "-", + "field_name": "base_finds__external_id", + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importerduplicatefield", + "pk": 62 +}, +{ + "fields": { + "column": 395, + "concat_str": "-", + "field_name": "external_id", + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importerduplicatefield", + "pk": 63 +}, +{ + "fields": { + "column": 396, + "concat_str": "", + "field_name": "label", + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importerduplicatefield", + "pk": 64 +}, +{ + "fields": { + "column": 396, + "concat_str": "-", + "field_name": "base_finds__external_id", + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importerduplicatefield", + "pk": 65 +}, +{ + "fields": { + "column": 396, + "concat_str": "-", + "field_name": "external_id", + "concat": false, + "force_new": false + }, + "model": "ishtar_common.importerduplicatefield", + "pk": 66 +} +] diff --git a/ishtar_common/fixtures/initial_spatialrefsystem-fr.json b/ishtar_common/fixtures/initial_spatialrefsystem-fr.json index 99d16ea51..099186637 100644 --- a/ishtar_common/fixtures/initial_spatialrefsystem-fr.json +++ b/ishtar_common/fixtures/initial_spatialrefsystem-fr.json @@ -1,535 +1,535 @@ [ - { - "pk": 35, - "model": "ishtar_common.spatialreferencesystem", - "fields": { - "comment": "", - "available": true, - "label": "ETRS89 / LAEA Europe", - "auth_name": "EPSG", - "srid": 3035, - "order": 201, - "txt_idx": "laea-europe" - } - }, - { - "pk": 34, - "model": "ishtar_common.spatialreferencesystem", - "fields": { - "comment": "", - "available": true, - "label": "ETRS89 / LCC Europe", - "auth_name": "EPSG", - "srid": 3034, - "order": 200, - "txt_idx": "lcc-europe" - } - }, - { - "pk": 14, - "model": "ishtar_common.spatialreferencesystem", - "fields": { - "comment": "", - "available": true, - "label": "NTF (Paris) / Lambert Centre France", - "auth_name": "EPSG", - "srid": 27562, - "order": 31, - "txt_idx": "lambert-centre-france" - } - }, - { - "pk": 16, - "model": "ishtar_common.spatialreferencesystem", - "fields": { - "comment": "", - "available": true, - "label": "NTF (Paris) / Lambert Corse", - "auth_name": "EPSG", - "srid": 27564, - "order": 33, - "txt_idx": "lambert-corse" - } - }, - { - "pk": 13, - "model": "ishtar_common.spatialreferencesystem", - "fields": { - "comment": "", - "available": true, - "label": "NTF (Paris) / Lambert Nord France", - "auth_name": "EPSG", - "srid": 27561, - "order": 30, - "txt_idx": "lambert-nord-france" - } - }, - { - "pk": 15, - "model": "ishtar_common.spatialreferencesystem", - "fields": { - "comment": "", - "available": true, - "label": "NTF (Paris) / Lambert Sud France", - "auth_name": "EPSG", - "srid": 27563, - "order": 32, - "txt_idx": "lambert-sud-france" - } - }, - { - "pk": 17, - "model": "ishtar_common.spatialreferencesystem", - "fields": { - "comment": "", - "available": true, - "label": "NTF (Paris) / Lambert zone I", - "auth_name": "EPSG", - "srid": 27571, - "order": 34, - "txt_idx": "lambert-zone-i" - } - }, - { - "pk": 19, - "model": "ishtar_common.spatialreferencesystem", - "fields": { - "comment": "", - "available": true, - "label": "NTF (Paris) / Lambert zone III", - "auth_name": "EPSG", - "srid": 27573, - "order": 36, - "txt_idx": "lambert-zone-iii" - } - }, - { - "pk": 18, - "model": "ishtar_common.spatialreferencesystem", - "fields": { - "comment": "", - "available": true, - "label": "NTF (Paris) / Lambert zone II (Lambert II \u00e9tendu)", - "auth_name": "EPSG", - "srid": 27572, - "order": 35, - "txt_idx": "lambert-zone-ii" - } - }, - { - "pk": 20, - "model": "ishtar_common.spatialreferencesystem", - "fields": { - "comment": "", - "available": true, - "label": "NTF (Paris) / Lambert zone IV", - "auth_name": "EPSG", - "srid": 27574, - "order": 37, - "txt_idx": "lambert-zone-iv" - } - }, - { - "pk": 4, - "model": "ishtar_common.spatialreferencesystem", - "fields": { - "comment": "", - "available": true, - "label": "RGF93 / CC42", - "auth_name": "EPSG", - "srid": 3942, - "order": 11, - "txt_idx": "lambert-cc42" - } - }, - { - "pk": 5, - "model": "ishtar_common.spatialreferencesystem", - "fields": { - "comment": "", - "available": true, - "label": "RGF93 / CC43", - "auth_name": "EPSG", - "srid": 3943, - "order": 12, - "txt_idx": "lambert-cc43" - } - }, - { - "pk": 6, - "model": "ishtar_common.spatialreferencesystem", - "fields": { - "comment": "", - "available": true, - "label": "RGF93 / CC44", - "auth_name": "EPSG", - "srid": 3944, - "order": 13, - "txt_idx": "lambert-cc44" - } - }, - { - "pk": 7, - "model": "ishtar_common.spatialreferencesystem", - "fields": { - "comment": "", - "available": true, - "label": "RGF93 / CC45", - "auth_name": "EPSG", - "srid": 3945, - "order": 14, - "txt_idx": "lambert-cc45" - } - }, - { - "pk": 8, - "model": "ishtar_common.spatialreferencesystem", - "fields": { - "comment": "", - "available": true, - "label": "RGF93 / CC46", - "auth_name": "EPSG", - "srid": 3946, - "order": 15, - "txt_idx": "lambert-cc46" - } - }, - { - "pk": 9, - "model": "ishtar_common.spatialreferencesystem", - "fields": { - "comment": "", - "available": true, - "label": "RGF93 / CC47", - "auth_name": "EPSG", - "srid": 3947, - "order": 16, - "txt_idx": "lambert-cc47" - } - }, - { - "pk": 10, - "model": "ishtar_common.spatialreferencesystem", - "fields": { - "comment": "", - "available": true, - "label": "RGF93 / CC48", - "auth_name": "EPSG", - "srid": 3948, - "order": 17, - "txt_idx": "lambert-cc48" - } - }, - { - "pk": 11, - "model": "ishtar_common.spatialreferencesystem", - "fields": { - "comment": "", - "available": true, - "label": "RGF93 / CC49", - "auth_name": "EPSG", - "srid": 3949, - "order": 18, - "txt_idx": "lambert-cc49" - } - }, - { - "pk": 12, - "model": "ishtar_common.spatialreferencesystem", - "fields": { - "comment": "", - "available": true, - "label": "RGF93 / CC50", - "auth_name": "EPSG", - "srid": 3950, - "order": 19, - "txt_idx": "lambert-cc50" - } - }, - { - "pk": 3, - "model": "ishtar_common.spatialreferencesystem", - "fields": { - "comment": "", - "available": true, - "label": "RGF93 / Lambert-93", - "auth_name": "EPSG", - "srid": 2154, - "order": 10, - "txt_idx": "lambert93" - } - }, - { - "pk": 37, - "model": "ishtar_common.spatialreferencesystem", - "fields": { - "comment": "", - "available": true, - "label": "RGFG95 / UTM zone 22N (Guyane)", - "auth_name": "EPSG", - "srid": 2972, - "order": 300, - "txt_idx": "utm-guyane" - } - }, - { - "pk": 40, - "model": "ishtar_common.spatialreferencesystem", - "fields": { - "comment": "", - "available": true, - "label": "RGM04 / UTM zone 38S (Mayotte)", - "auth_name": "EPSG", - "srid": 4471, - "order": 330, - "txt_idx": "utm-mayotte" - } - }, - { - "pk": 38, - "model": "ishtar_common.spatialreferencesystem", - "fields": { - "comment": "", - "available": true, - "label": "RGR92 / UTM zone 40S (La R\u00e9union)", - "auth_name": "EPSG", - "srid": 2975, - "order": 310, - "txt_idx": "utm-reunion" - } - }, - { - "pk": 39, - "model": "ishtar_common.spatialreferencesystem", - "fields": { - "comment": "", - "available": true, - "label": "RGSPM06 / UTM 21N (St-Pierre-et-Miquelon)", - "auth_name": "EPSG", - "srid": 4467, - "order": 320, - "txt_idx": "utm-miquelon" - } - }, - { - "pk": 41, - "model": "ishtar_common.spatialreferencesystem", - "fields": { - "comment": "", - "available": true, - "label": "RRAF 1991 / UTM zone 20N (Guadeloupe et Martinique)", - "auth_name": "EPSG", - "srid": 4559, - "order": 340, - "txt_idx": "utm-guadeloupe" - } - }, - { - "pk": 2, - "model": "ishtar_common.spatialreferencesystem", - "fields": { - "comment": "", - "available": true, - "label": "Syst\u00e8me local (non r\u00e9f\u00e9renc\u00e9)", - "auth_name": "EPSG", - "srid": 0, - "order": 1, - "txt_idx": "local" - } - }, - { - "pk": 1, - "model": "ishtar_common.spatialreferencesystem", - "fields": { - "comment": "", - "available": true, - "label": "WGS84 (lat-long)", - "auth_name": "EPSG", - "srid": 4326, - "order": 2, - "txt_idx": "wgs84" - } - }, - { - "pk": 21, - "model": "ishtar_common.spatialreferencesystem", - "fields": { - "comment": "", - "available": true, - "label": "WGS 84 / UTM zone 28N", - "auth_name": "EPSG", - "srid": 32628, - "order": 128, - "txt_idx": "utm-28n" - } - }, - { - "pk": 22, - "model": "ishtar_common.spatialreferencesystem", - "fields": { - "comment": "", - "available": true, - "label": "WGS 84 / UTM zone 29N", - "auth_name": "EPSG", - "srid": 32629, - "order": 129, - "txt_idx": "utm-29n" - } - }, - { - "pk": 23, - "model": "ishtar_common.spatialreferencesystem", - "fields": { - "comment": "", - "available": true, - "label": "WGS 84 / UTM zone 30N", - "auth_name": "EPSG", - "srid": 32630, - "order": 130, - "txt_idx": "utm-30n" - } - }, - { - "pk": 24, - "model": "ishtar_common.spatialreferencesystem", - "fields": { - "comment": "", - "available": true, - "label": "WGS 84 / UTM zone 31N", - "auth_name": "EPSG", - "srid": 32631, - "order": 131, - "txt_idx": "utm-31n" - } - }, - { - "pk": 25, - "model": "ishtar_common.spatialreferencesystem", - "fields": { - "comment": "", - "available": true, - "label": "WGS 84 / UTM zone 32N", - "auth_name": "EPSG", - "srid": 32632, - "order": 132, - "txt_idx": "utm-32n" - } - }, - { - "pk": 26, - "model": "ishtar_common.spatialreferencesystem", - "fields": { - "comment": "", - "available": true, - "label": "WGS 84 / UTM zone 33N", - "auth_name": "EPSG", - "srid": 32633, - "order": 133, - "txt_idx": "utm-33n" - } - }, - { - "pk": 27, - "model": "ishtar_common.spatialreferencesystem", - "fields": { - "comment": "", - "available": true, - "label": "WGS 84 / UTM zone 34N", - "auth_name": "EPSG", - "srid": 32634, - "order": 134, - "txt_idx": "utm-34n" - } - }, - { - "pk": 28, - "model": "ishtar_common.spatialreferencesystem", - "fields": { - "comment": "", - "available": true, - "label": "WGS 84 / UTM zone 35N", - "auth_name": "EPSG", - "srid": 32635, - "order": 135, - "txt_idx": "utm-35n" - } - }, - { - "pk": 29, - "model": "ishtar_common.spatialreferencesystem", - "fields": { - "comment": "", - "available": true, - "label": "WGS 84 / UTM zone 36N", - "auth_name": "EPSG", - "srid": 32636, - "order": 136, - "txt_idx": "utm-36n" - } - }, - { - "pk": 30, - "model": "ishtar_common.spatialreferencesystem", - "fields": { - "comment": "", - "available": true, - "label": "WGS 84 / UTM zone 37N", - "auth_name": "EPSG", - "srid": 32637, - "order": 137, - "txt_idx": "utm-37n" - } - }, - { - "pk": 31, - "model": "ishtar_common.spatialreferencesystem", - "fields": { - "comment": "", - "available": true, - "label": "WGS 84 / UTM zone 38N", - "auth_name": "EPSG", - "srid": 32638, - "order": 138, - "txt_idx": "utm-38n" - } - }, - { - "pk": 32, - "model": "ishtar_common.spatialreferencesystem", - "fields": { - "comment": "", - "available": true, - "label": "WGS 84 / UTM zone 39N", - "auth_name": "EPSG", - "srid": 32639, - "order": 139, - "txt_idx": "utm-39n" - } - }, - { - "pk": 33, - "model": "ishtar_common.spatialreferencesystem", - "fields": { - "comment": "", - "available": true, - "label": "WGS 84 / UTM zone 40N", - "auth_name": "EPSG", - "srid": 32640, - "order": 140, - "txt_idx": "utm-40n" - } - }, - { - "pk": 36, - "model": "ishtar_common.spatialreferencesystem", - "fields": { - "comment": "", - "available": true, - "label": "WGS 84 / World Mercator", - "auth_name": "EPSG", - "srid": 3395, - "order": 250, - "txt_idx": "wgs84-mercator" - } - } -]
\ No newline at end of file +{ + "fields": { + "comment": "", + "available": true, + "label": "WGS84 (lat-long)", + "auth_name": "EPSG", + "srid": 4326, + "order": 2, + "txt_idx": "wgs84" + }, + "model": "ishtar_common.spatialreferencesystem", + "pk": 1 +}, +{ + "fields": { + "comment": "", + "available": true, + "label": "Syst\u00e8me local (non r\u00e9f\u00e9renc\u00e9)", + "auth_name": "EPSG", + "srid": 0, + "order": 1, + "txt_idx": "local" + }, + "model": "ishtar_common.spatialreferencesystem", + "pk": 2 +}, +{ + "fields": { + "comment": "", + "available": true, + "label": "RGF93 / Lambert-93", + "auth_name": "EPSG", + "srid": 2154, + "order": 10, + "txt_idx": "lambert93" + }, + "model": "ishtar_common.spatialreferencesystem", + "pk": 3 +}, +{ + "fields": { + "comment": "", + "available": true, + "label": "RGF93 / CC42", + "auth_name": "EPSG", + "srid": 3942, + "order": 11, + "txt_idx": "lambert-cc42" + }, + "model": "ishtar_common.spatialreferencesystem", + "pk": 4 +}, +{ + "fields": { + "comment": "", + "available": true, + "label": "RGF93 / CC43", + "auth_name": "EPSG", + "srid": 3943, + "order": 12, + "txt_idx": "lambert-cc43" + }, + "model": "ishtar_common.spatialreferencesystem", + "pk": 5 +}, +{ + "fields": { + "comment": "", + "available": true, + "label": "RGF93 / CC44", + "auth_name": "EPSG", + "srid": 3944, + "order": 13, + "txt_idx": "lambert-cc44" + }, + "model": "ishtar_common.spatialreferencesystem", + "pk": 6 +}, +{ + "fields": { + "comment": "", + "available": true, + "label": "RGF93 / CC45", + "auth_name": "EPSG", + "srid": 3945, + "order": 14, + "txt_idx": "lambert-cc45" + }, + "model": "ishtar_common.spatialreferencesystem", + "pk": 7 +}, +{ + "fields": { + "comment": "", + "available": true, + "label": "RGF93 / CC46", + "auth_name": "EPSG", + "srid": 3946, + "order": 15, + "txt_idx": "lambert-cc46" + }, + "model": "ishtar_common.spatialreferencesystem", + "pk": 8 +}, +{ + "fields": { + "comment": "", + "available": true, + "label": "RGF93 / CC47", + "auth_name": "EPSG", + "srid": 3947, + "order": 16, + "txt_idx": "lambert-cc47" + }, + "model": "ishtar_common.spatialreferencesystem", + "pk": 9 +}, +{ + "fields": { + "comment": "", + "available": true, + "label": "RGF93 / CC48", + "auth_name": "EPSG", + "srid": 3948, + "order": 17, + "txt_idx": "lambert-cc48" + }, + "model": "ishtar_common.spatialreferencesystem", + "pk": 10 +}, +{ + "fields": { + "comment": "", + "available": true, + "label": "RGF93 / CC49", + "auth_name": "EPSG", + "srid": 3949, + "order": 18, + "txt_idx": "lambert-cc49" + }, + "model": "ishtar_common.spatialreferencesystem", + "pk": 11 +}, +{ + "fields": { + "comment": "", + "available": true, + "label": "RGF93 / CC50", + "auth_name": "EPSG", + "srid": 3950, + "order": 19, + "txt_idx": "lambert-cc50" + }, + "model": "ishtar_common.spatialreferencesystem", + "pk": 12 +}, +{ + "fields": { + "comment": "", + "available": true, + "label": "NTF (Paris) / Lambert Nord France", + "auth_name": "EPSG", + "srid": 27561, + "order": 30, + "txt_idx": "lambert-nord-france" + }, + "model": "ishtar_common.spatialreferencesystem", + "pk": 13 +}, +{ + "fields": { + "comment": "", + "available": true, + "label": "NTF (Paris) / Lambert Centre France", + "auth_name": "EPSG", + "srid": 27562, + "order": 31, + "txt_idx": "lambert-centre-france" + }, + "model": "ishtar_common.spatialreferencesystem", + "pk": 14 +}, +{ + "fields": { + "comment": "", + "available": true, + "label": "NTF (Paris) / Lambert Sud France", + "auth_name": "EPSG", + "srid": 27563, + "order": 32, + "txt_idx": "lambert-sud-france" + }, + "model": "ishtar_common.spatialreferencesystem", + "pk": 15 +}, +{ + "fields": { + "comment": "", + "available": true, + "label": "NTF (Paris) / Lambert Corse", + "auth_name": "EPSG", + "srid": 27564, + "order": 33, + "txt_idx": "lambert-corse" + }, + "model": "ishtar_common.spatialreferencesystem", + "pk": 16 +}, +{ + "fields": { + "comment": "", + "available": true, + "label": "NTF (Paris) / Lambert zone I", + "auth_name": "EPSG", + "srid": 27571, + "order": 34, + "txt_idx": "lambert-zone-i" + }, + "model": "ishtar_common.spatialreferencesystem", + "pk": 17 +}, +{ + "fields": { + "comment": "", + "available": true, + "label": "NTF (Paris) / Lambert zone II (Lambert II \u00e9tendu)", + "auth_name": "EPSG", + "srid": 27572, + "order": 35, + "txt_idx": "lambert-zone-ii" + }, + "model": "ishtar_common.spatialreferencesystem", + "pk": 18 +}, +{ + "fields": { + "comment": "", + "available": true, + "label": "NTF (Paris) / Lambert zone III", + "auth_name": "EPSG", + "srid": 27573, + "order": 36, + "txt_idx": "lambert-zone-iii" + }, + "model": "ishtar_common.spatialreferencesystem", + "pk": 19 +}, +{ + "fields": { + "comment": "", + "available": true, + "label": "NTF (Paris) / Lambert zone IV", + "auth_name": "EPSG", + "srid": 27574, + "order": 37, + "txt_idx": "lambert-zone-iv" + }, + "model": "ishtar_common.spatialreferencesystem", + "pk": 20 +}, +{ + "fields": { + "comment": "", + "available": true, + "label": "WGS 84 / UTM zone 28N", + "auth_name": "EPSG", + "srid": 32628, + "order": 128, + "txt_idx": "utm-28n" + }, + "model": "ishtar_common.spatialreferencesystem", + "pk": 21 +}, +{ + "fields": { + "comment": "", + "available": true, + "label": "WGS 84 / UTM zone 29N", + "auth_name": "EPSG", + "srid": 32629, + "order": 129, + "txt_idx": "utm-29n" + }, + "model": "ishtar_common.spatialreferencesystem", + "pk": 22 +}, +{ + "fields": { + "comment": "", + "available": true, + "label": "WGS 84 / UTM zone 30N", + "auth_name": "EPSG", + "srid": 32630, + "order": 130, + "txt_idx": "utm-30n" + }, + "model": "ishtar_common.spatialreferencesystem", + "pk": 23 +}, +{ + "fields": { + "comment": "", + "available": true, + "label": "WGS 84 / UTM zone 31N", + "auth_name": "EPSG", + "srid": 32631, + "order": 131, + "txt_idx": "utm-31n" + }, + "model": "ishtar_common.spatialreferencesystem", + "pk": 24 +}, +{ + "fields": { + "comment": "", + "available": true, + "label": "WGS 84 / UTM zone 32N", + "auth_name": "EPSG", + "srid": 32632, + "order": 132, + "txt_idx": "utm-32n" + }, + "model": "ishtar_common.spatialreferencesystem", + "pk": 25 +}, +{ + "fields": { + "comment": "", + "available": true, + "label": "WGS 84 / UTM zone 33N", + "auth_name": "EPSG", + "srid": 32633, + "order": 133, + "txt_idx": "utm-33n" + }, + "model": "ishtar_common.spatialreferencesystem", + "pk": 26 +}, +{ + "fields": { + "comment": "", + "available": true, + "label": "WGS 84 / UTM zone 34N", + "auth_name": "EPSG", + "srid": 32634, + "order": 134, + "txt_idx": "utm-34n" + }, + "model": "ishtar_common.spatialreferencesystem", + "pk": 27 +}, +{ + "fields": { + "comment": "", + "available": true, + "label": "WGS 84 / UTM zone 35N", + "auth_name": "EPSG", + "srid": 32635, + "order": 135, + "txt_idx": "utm-35n" + }, + "model": "ishtar_common.spatialreferencesystem", + "pk": 28 +}, +{ + "fields": { + "comment": "", + "available": true, + "label": "WGS 84 / UTM zone 36N", + "auth_name": "EPSG", + "srid": 32636, + "order": 136, + "txt_idx": "utm-36n" + }, + "model": "ishtar_common.spatialreferencesystem", + "pk": 29 +}, +{ + "fields": { + "comment": "", + "available": true, + "label": "WGS 84 / UTM zone 37N", + "auth_name": "EPSG", + "srid": 32637, + "order": 137, + "txt_idx": "utm-37n" + }, + "model": "ishtar_common.spatialreferencesystem", + "pk": 30 +}, +{ + "fields": { + "comment": "", + "available": true, + "label": "WGS 84 / UTM zone 38N", + "auth_name": "EPSG", + "srid": 32638, + "order": 138, + "txt_idx": "utm-38n" + }, + "model": "ishtar_common.spatialreferencesystem", + "pk": 31 +}, +{ + "fields": { + "comment": "", + "available": true, + "label": "WGS 84 / UTM zone 39N", + "auth_name": "EPSG", + "srid": 32639, + "order": 139, + "txt_idx": "utm-39n" + }, + "model": "ishtar_common.spatialreferencesystem", + "pk": 32 +}, +{ + "fields": { + "comment": "", + "available": true, + "label": "WGS 84 / UTM zone 40N", + "auth_name": "EPSG", + "srid": 32640, + "order": 140, + "txt_idx": "utm-40n" + }, + "model": "ishtar_common.spatialreferencesystem", + "pk": 33 +}, +{ + "fields": { + "comment": "", + "available": true, + "label": "ETRS89 / LCC Europe", + "auth_name": "EPSG", + "srid": 3034, + "order": 200, + "txt_idx": "lcc-europe" + }, + "model": "ishtar_common.spatialreferencesystem", + "pk": 34 +}, +{ + "fields": { + "comment": "", + "available": true, + "label": "ETRS89 / LAEA Europe", + "auth_name": "EPSG", + "srid": 3035, + "order": 201, + "txt_idx": "laea-europe" + }, + "model": "ishtar_common.spatialreferencesystem", + "pk": 35 +}, +{ + "fields": { + "comment": "", + "available": true, + "label": "WGS 84 / World Mercator", + "auth_name": "EPSG", + "srid": 3395, + "order": 250, + "txt_idx": "wgs84-mercator" + }, + "model": "ishtar_common.spatialreferencesystem", + "pk": 36 +}, +{ + "fields": { + "comment": "", + "available": true, + "label": "RGFG95 / UTM zone 22N (Guyane)", + "auth_name": "EPSG", + "srid": 2972, + "order": 300, + "txt_idx": "utm-guyane" + }, + "model": "ishtar_common.spatialreferencesystem", + "pk": 37 +}, +{ + "fields": { + "comment": "", + "available": true, + "label": "RGR92 / UTM zone 40S (La R\u00e9union)", + "auth_name": "EPSG", + "srid": 2975, + "order": 310, + "txt_idx": "utm-reunion" + }, + "model": "ishtar_common.spatialreferencesystem", + "pk": 38 +}, +{ + "fields": { + "comment": "", + "available": true, + "label": "RGSPM06 / UTM 21N (St-Pierre-et-Miquelon)", + "auth_name": "EPSG", + "srid": 4467, + "order": 320, + "txt_idx": "utm-miquelon" + }, + "model": "ishtar_common.spatialreferencesystem", + "pk": 39 +}, +{ + "fields": { + "comment": "", + "available": true, + "label": "RGM04 / UTM zone 38S (Mayotte)", + "auth_name": "EPSG", + "srid": 4471, + "order": 330, + "txt_idx": "utm-mayotte" + }, + "model": "ishtar_common.spatialreferencesystem", + "pk": 40 +}, +{ + "fields": { + "comment": "", + "available": true, + "label": "RRAF 1991 / UTM zone 20N (Guadeloupe et Martinique)", + "auth_name": "EPSG", + "srid": 4559, + "order": 340, + "txt_idx": "utm-guadeloupe" + }, + "model": "ishtar_common.spatialreferencesystem", + "pk": 41 +} +] diff --git a/ishtar_common/forms.py b/ishtar_common/forms.py index 7eb36f6cc..4e5a8bd1c 100644 --- a/ishtar_common/forms.py +++ b/ishtar_common/forms.py @@ -1,6 +1,6 @@ #!/usr/bin/env python # -*- coding: utf-8 -*- -# Copyright (C) 2010-2016 Étienne Loks <etienne.loks_AT_peacefrogsDOTnet> +# Copyright (C) 2010-2017 Étienne Loks <etienne.loks_AT_peacefrogsDOTnet> # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU Affero General Public License as @@ -159,7 +159,7 @@ class FormSet(BaseFormSet): class TableSelect(forms.Form): def __init__(self, *args, **kwargs): super(TableSelect, self).__init__(*args, **kwargs) - key = self.fields.keyOrder[0] + key = self.fields.keys()[0] self.fields[key].widget.attrs['autofocus'] = 'autofocus' def get_input_ids(self): diff --git a/ishtar_common/forms_common.py b/ishtar_common/forms_common.py index 44af3a588..4d14e4544 100644 --- a/ishtar_common/forms_common.py +++ b/ishtar_common/forms_common.py @@ -585,7 +585,7 @@ class AccountForm(forms.Form): if 'initial' in kwargs and 'pk' in kwargs['initial']: try: person = models.Person.objects.get(pk=kwargs['initial']['pk']) - account = models.IshtarUser.objects.get(person=person) + account = models.IshtarUser.objects.get(person=person).user_ptr if not kwargs['initial'].get('username'): kwargs['initial']['username'] = account.username if not kwargs['initial'].get('email'): @@ -613,7 +613,7 @@ class AccountForm(forms.Form): u"password.")) # check username unicity q = models.IshtarUser.objects.filter( - username=cleaned_data.get('username')) + user_ptr__username=cleaned_data.get('username')) if cleaned_data.get('pk'): q = q.exclude(person__pk=cleaned_data.get('pk')) if q.count(): diff --git a/ishtar_common/management/commands/ishtar_migrate_odts.py b/ishtar_common/management/commands/ishtar_migrate_odts.py new file mode 100644 index 000000000..49ed9f2d8 --- /dev/null +++ b/ishtar_common/management/commands/ishtar_migrate_odts.py @@ -0,0 +1,91 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- +# Copyright (C) 2017 Étienne Loks <etienne.loks_AT_peacefrogsDOTnet> + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. + +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. + +# See the file COPYING for details. + +from django.core.management.base import BaseCommand +from optparse import make_option +import sys + +from ishtar_common.models import DocumentTemplate +from ishtar_common.utils import BColors + +try: + input = raw_input +except NameError: + pass + + +class Command(BaseCommand): + help = "Update ODT templates from v1 to v2" + option_list = BaseCommand.option_list + ( + make_option('--quiet', + action='store_true', + dest='quiet', + default=False, + help='Proceed silently with no interactive input.'), + ) + + def interactive_start(self): + sys.stdout.write( + BColors.HEADER + BColors.BOLD + + "Update ODT templates from v1 to v2\n") + sys.stdout.write( + BColors.ENDC + BColors.WARNING + + "This script need to be run only once. Running it on already " + "migrated ODT files may be a source of error.\n") + sys.stdout.write(BColors.ENDC) + yes = None + while yes != "yes": + sys.stdout.write( + "Are you sure you want to proceed? (yes/[n])\n") + yes = input() + if not yes or yes == "n": + sys.stdout.write(BColors.FAIL + "Aborting\n") + sys.stdout.write(BColors.ENDC) + sys.exit() + + def handle(self, *args, **options): + quiet = options['quiet'] + if not quiet: + self.interactive_start() + q = DocumentTemplate.objects + nb = q.count() + len_of_nb = str(len(str(nb))) + if not quiet: + sys.stdout.write(BColors.OKGREEN) + + errors = [] + for idx, document in enumerate(q.all()): + if not quiet: + sys.stdout.write( + ("Processing {:" + len_of_nb + "d}/{}\r").format( + idx + 1, nb)) + sys.stdout.flush() + try: + document.convert_from_v1() + except IOError as e: + errors.append("Document ({}): ".format(document.pk) + + str(e)) + if errors: + sys.stdout.write(BColors.FAIL + "Error while processing:\n") + for error in errors: + sys.stdout.write("* {}\n".format(error)) + + sys.stdout.write(BColors.ENDC) + print("\n\n") + diff --git a/ishtar_common/menus.py b/ishtar_common/menus.py index 36b53b162..7d24b0fd2 100644 --- a/ishtar_common/menus.py +++ b/ishtar_common/menus.py @@ -1,6 +1,6 @@ #!/usr/bin/env python # -*- coding: utf-8 -*- -# Copyright (C) 2010-2013 Étienne Loks <etienne.loks_AT_peacefrogsDOTnet> +# Copyright (C) 2010-2017 Étienne Loks <etienne.loks_AT_peacefrogsDOTnet> # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU Affero General Public License as @@ -23,7 +23,6 @@ Menus from django.conf import settings - _extra_menus = [] # collect menu from INSTALLED_APPS for app in settings.INSTALLED_APPS: diff --git a/ishtar_common/migrations/0001_initial.py b/ishtar_common/migrations/0001_initial.py index fc22881bc..7b46a3ea5 100644 --- a/ishtar_common/migrations/0001_initial.py +++ b/ishtar_common/migrations/0001_initial.py @@ -1,408 +1,836 @@ # -*- coding: utf-8 -*- -import datetime -from south.db import db -from south.v2 import SchemaMigration -from django.db import models - - -class Migration(SchemaMigration): - - def forwards(self, orm): - # Adding model 'Wizard' - db.create_table('ishtar_common_wizard', ( - ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), - ('url_name', self.gf('django.db.models.fields.CharField')(unique=True, max_length=128)), - )) - db.send_create_signal('ishtar_common', ['Wizard']) - - # Adding model 'WizardStep' - db.create_table('ishtar_common_wizardstep', ( - ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), - ('order', self.gf('django.db.models.fields.IntegerField')()), - ('wizard', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['ishtar_common.Wizard'])), - ('url_name', self.gf('django.db.models.fields.CharField')(max_length=128)), - ('name', self.gf('django.db.models.fields.CharField')(max_length=128)), - )) - db.send_create_signal('ishtar_common', ['WizardStep']) - - # Adding model 'Department' - db.create_table('ishtar_common_department', ( - ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), - ('label', self.gf('django.db.models.fields.CharField')(max_length=30)), - ('number', self.gf('django.db.models.fields.CharField')(unique=True, max_length=3)), - )) - db.send_create_signal('ishtar_common', ['Department']) - - # Adding model 'OrganizationType' - db.create_table('ishtar_common_organizationtype', ( - ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), - ('label', self.gf('django.db.models.fields.CharField')(max_length=100)), - ('txt_idx', self.gf('django.db.models.fields.CharField')(unique=True, max_length=30)), - ('comment', self.gf('django.db.models.fields.TextField')(null=True, blank=True)), - ('available', self.gf('django.db.models.fields.BooleanField')(default=False)), - )) - db.send_create_signal('ishtar_common', ['OrganizationType']) - - # Adding model 'HistoricalOrganization' - db.create_table('ishtar_common_historicalorganization', ( - ('id', self.gf('django.db.models.fields.IntegerField')(db_index=True, blank=True)), - ('history_modifier_id', self.gf('django.db.models.fields.IntegerField')(db_index=True, null=True, blank=True)), - ('address', self.gf('django.db.models.fields.TextField')(null=True, blank=True)), - ('address_complement', self.gf('django.db.models.fields.TextField')(null=True, blank=True)), - ('postal_code', self.gf('django.db.models.fields.CharField')(max_length=10, null=True, blank=True)), - ('town', self.gf('django.db.models.fields.CharField')(max_length=30, null=True, blank=True)), - ('country', self.gf('django.db.models.fields.CharField')(max_length=30, null=True, blank=True)), - ('phone', self.gf('django.db.models.fields.CharField')(max_length=18, null=True, blank=True)), - ('mobile_phone', self.gf('django.db.models.fields.CharField')(max_length=18, null=True, blank=True)), - ('name', self.gf('django.db.models.fields.CharField')(max_length=100)), - ('organization_type_id', self.gf('django.db.models.fields.IntegerField')(db_index=True, null=True, blank=True)), - ('history_id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), - ('history_date', self.gf('django.db.models.fields.DateTimeField')(auto_now_add=True, blank=True)), - ('history_user', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['auth.User'], null=True)), - ('history_type', self.gf('django.db.models.fields.CharField')(max_length=1)), - )) - db.send_create_signal('ishtar_common', ['HistoricalOrganization']) - - # Adding model 'Organization' - db.create_table('ishtar_common_organization', ( - ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), - ('history_modifier', self.gf('django.db.models.fields.related.ForeignKey')(related_name='+', to=orm['auth.User'])), - ('address', self.gf('django.db.models.fields.TextField')(null=True, blank=True)), - ('address_complement', self.gf('django.db.models.fields.TextField')(null=True, blank=True)), - ('postal_code', self.gf('django.db.models.fields.CharField')(max_length=10, null=True, blank=True)), - ('town', self.gf('django.db.models.fields.CharField')(max_length=30, null=True, blank=True)), - ('country', self.gf('django.db.models.fields.CharField')(max_length=30, null=True, blank=True)), - ('phone', self.gf('django.db.models.fields.CharField')(max_length=18, null=True, blank=True)), - ('mobile_phone', self.gf('django.db.models.fields.CharField')(max_length=18, null=True, blank=True)), - ('name', self.gf('django.db.models.fields.CharField')(max_length=100)), - ('organization_type', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['ishtar_common.OrganizationType'])), - )) - db.send_create_signal('ishtar_common', ['Organization']) - - # Adding model 'PersonType' - db.create_table('ishtar_common_persontype', ( - ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), - ('label', self.gf('django.db.models.fields.CharField')(max_length=100)), - ('txt_idx', self.gf('django.db.models.fields.CharField')(unique=True, max_length=30)), - ('comment', self.gf('django.db.models.fields.TextField')(null=True, blank=True)), - ('available', self.gf('django.db.models.fields.BooleanField')(default=False)), - )) - db.send_create_signal('ishtar_common', ['PersonType']) - - # Adding M2M table for field rights on 'PersonType' - db.create_table('ishtar_common_persontype_rights', ( - ('id', models.AutoField(verbose_name='ID', primary_key=True, auto_created=True)), - ('persontype', models.ForeignKey(orm['ishtar_common.persontype'], null=False)), - ('wizardstep', models.ForeignKey(orm['ishtar_common.wizardstep'], null=False)) - )) - db.create_unique('ishtar_common_persontype_rights', ['persontype_id', 'wizardstep_id']) - - # Adding model 'Person' - db.create_table('ishtar_common_person', ( - ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), - ('history_modifier', self.gf('django.db.models.fields.related.ForeignKey')(related_name='+', to=orm['auth.User'])), - ('address', self.gf('django.db.models.fields.TextField')(null=True, blank=True)), - ('address_complement', self.gf('django.db.models.fields.TextField')(null=True, blank=True)), - ('postal_code', self.gf('django.db.models.fields.CharField')(max_length=10, null=True, blank=True)), - ('town', self.gf('django.db.models.fields.CharField')(max_length=30, null=True, blank=True)), - ('country', self.gf('django.db.models.fields.CharField')(max_length=30, null=True, blank=True)), - ('phone', self.gf('django.db.models.fields.CharField')(max_length=18, null=True, blank=True)), - ('mobile_phone', self.gf('django.db.models.fields.CharField')(max_length=18, null=True, blank=True)), - ('title', self.gf('django.db.models.fields.CharField')(max_length=2)), - ('surname', self.gf('django.db.models.fields.CharField')(max_length=20)), - ('name', self.gf('django.db.models.fields.CharField')(max_length=30)), - ('email', self.gf('django.db.models.fields.CharField')(max_length=40, null=True, blank=True)), - ('person_type', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['ishtar_common.PersonType'])), - ('attached_to', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['ishtar_common.Organization'], null=True, blank=True)), - )) - db.send_create_signal('ishtar_common', ['Person']) - - # Adding model 'IshtarUser' - db.create_table('ishtar_common_ishtaruser', ( - ('user_ptr', self.gf('django.db.models.fields.related.OneToOneField')(to=orm['auth.User'], unique=True, primary_key=True)), - ('person', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['ishtar_common.Person'], unique=True)), - )) - db.send_create_signal('ishtar_common', ['IshtarUser']) - - # Adding model 'AuthorType' - db.create_table('ishtar_common_authortype', ( - ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), - ('label', self.gf('django.db.models.fields.CharField')(max_length=100)), - ('txt_idx', self.gf('django.db.models.fields.CharField')(unique=True, max_length=30)), - ('comment', self.gf('django.db.models.fields.TextField')(null=True, blank=True)), - ('available', self.gf('django.db.models.fields.BooleanField')(default=False)), - )) - db.send_create_signal('ishtar_common', ['AuthorType']) - - # Adding model 'Author' - db.create_table('ishtar_common_author', ( - ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), - ('person', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['ishtar_common.Person'])), - ('author_type', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['ishtar_common.AuthorType'])), - )) - db.send_create_signal('ishtar_common', ['Author']) - - # Adding model 'SourceType' - db.create_table('ishtar_common_sourcetype', ( - ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), - ('label', self.gf('django.db.models.fields.CharField')(max_length=100)), - ('txt_idx', self.gf('django.db.models.fields.CharField')(unique=True, max_length=30)), - ('comment', self.gf('django.db.models.fields.TextField')(null=True, blank=True)), - ('available', self.gf('django.db.models.fields.BooleanField')(default=False)), - )) - db.send_create_signal('ishtar_common', ['SourceType']) - - # Adding model 'Arrondissement' - db.create_table('ishtar_common_arrondissement', ( - ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), - ('name', self.gf('django.db.models.fields.CharField')(max_length=30)), - ('department', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['ishtar_common.Department'])), - )) - db.send_create_signal('ishtar_common', ['Arrondissement']) - - # Adding model 'Canton' - db.create_table('ishtar_common_canton', ( - ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), - ('name', self.gf('django.db.models.fields.CharField')(max_length=30)), - ('arrondissement', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['ishtar_common.Arrondissement'])), - )) - db.send_create_signal('ishtar_common', ['Canton']) - - # Adding model 'Town' - db.create_table('ishtar_common_town', ( - ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), - ('name', self.gf('django.db.models.fields.CharField')(max_length=100)), - ('surface', self.gf('django.db.models.fields.IntegerField')(null=True, blank=True)), - ('center', self.gf('django.contrib.gis.db.models.fields.PointField')(srid=27572, null=True, blank=True)), - ('numero_insee', self.gf('django.db.models.fields.CharField')(unique=True, max_length=6)), - ('departement', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['ishtar_common.Department'], null=True, blank=True)), - ('canton', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['ishtar_common.Canton'], null=True, blank=True)), - )) - db.send_create_signal('ishtar_common', ['Town']) +from __future__ import unicode_literals +import datetime - def backwards(self, orm): - # Deleting model 'Wizard' - db.delete_table('ishtar_common_wizard') - - # Deleting model 'WizardStep' - db.delete_table('ishtar_common_wizardstep') - - # Deleting model 'Department' - db.delete_table('ishtar_common_department') - - # Deleting model 'OrganizationType' - db.delete_table('ishtar_common_organizationtype') - - # Deleting model 'HistoricalOrganization' - db.delete_table('ishtar_common_historicalorganization') - - # Deleting model 'Organization' - db.delete_table('ishtar_common_organization') - - # Deleting model 'PersonType' - db.delete_table('ishtar_common_persontype') - - # Removing M2M table for field rights on 'PersonType' - db.delete_table('ishtar_common_persontype_rights') - - # Deleting model 'Person' - db.delete_table('ishtar_common_person') - - # Deleting model 'IshtarUser' - db.delete_table('ishtar_common_ishtaruser') - - # Deleting model 'AuthorType' - db.delete_table('ishtar_common_authortype') - - # Deleting model 'Author' - db.delete_table('ishtar_common_author') - - # Deleting model 'SourceType' - db.delete_table('ishtar_common_sourcetype') - - # Deleting model 'Arrondissement' - db.delete_table('ishtar_common_arrondissement') - - # Deleting model 'Canton' - db.delete_table('ishtar_common_canton') - - # Deleting model 'Town' - db.delete_table('ishtar_common_town') - - - models = { - 'auth.group': { - 'Meta': {'object_name': 'Group'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}), - 'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}) - }, - 'auth.permission': { - 'Meta': {'ordering': "('content_type__app_label', 'content_type__model', 'codename')", 'unique_together': "(('content_type', 'codename'),)", 'object_name': 'Permission'}, - 'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}) - }, - 'auth.user': { - 'Meta': {'object_name': 'User'}, - 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}), - 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Group']", 'symmetrical': 'False', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True'}), - 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}), - 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}), - 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'}) - }, - 'contenttypes.contenttype': { - 'Meta': {'ordering': "('name',)", 'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"}, - 'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'}) - }, - 'ishtar_common.arrondissement': { - 'Meta': {'object_name': 'Arrondissement'}, - 'department': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['ishtar_common.Department']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '30'}) - }, - 'ishtar_common.author': { - 'Meta': {'object_name': 'Author'}, - 'author_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['ishtar_common.AuthorType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'person': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['ishtar_common.Person']"}) - }, - 'ishtar_common.authortype': { - 'Meta': {'object_name': 'AuthorType'}, - 'available': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'comment': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'label': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'txt_idx': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'}) - }, - 'ishtar_common.canton': { - 'Meta': {'object_name': 'Canton'}, - 'arrondissement': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['ishtar_common.Arrondissement']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '30'}) - }, - 'ishtar_common.department': { - 'Meta': {'ordering': "['number']", 'object_name': 'Department'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'label': ('django.db.models.fields.CharField', [], {'max_length': '30'}), - 'number': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '3'}) - }, - 'ishtar_common.historicalorganization': { - 'Meta': {'ordering': "('-history_date', '-history_id')", 'object_name': 'HistoricalOrganization'}, - 'address': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), - 'address_complement': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), - 'country': ('django.db.models.fields.CharField', [], {'max_length': '30', 'null': 'True', 'blank': 'True'}), - 'history_date': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'blank': 'True'}), - 'history_id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'history_modifier_id': ('django.db.models.fields.IntegerField', [], {'db_index': 'True', 'null': 'True', 'blank': 'True'}), - 'history_type': ('django.db.models.fields.CharField', [], {'max_length': '1'}), - 'history_user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['auth.User']", 'null': 'True'}), - 'id': ('django.db.models.fields.IntegerField', [], {'db_index': 'True', 'blank': 'True'}), - 'mobile_phone': ('django.db.models.fields.CharField', [], {'max_length': '18', 'null': 'True', 'blank': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'organization_type_id': ('django.db.models.fields.IntegerField', [], {'db_index': 'True', 'null': 'True', 'blank': 'True'}), - 'phone': ('django.db.models.fields.CharField', [], {'max_length': '18', 'null': 'True', 'blank': 'True'}), - 'postal_code': ('django.db.models.fields.CharField', [], {'max_length': '10', 'null': 'True', 'blank': 'True'}), - 'town': ('django.db.models.fields.CharField', [], {'max_length': '30', 'null': 'True', 'blank': 'True'}) - }, - 'ishtar_common.ishtaruser': { - 'Meta': {'object_name': 'IshtarUser', '_ormbases': ['auth.User']}, - 'person': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['ishtar_common.Person']", 'unique': 'True'}), - 'user_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['auth.User']", 'unique': 'True', 'primary_key': 'True'}) - }, - 'ishtar_common.organization': { - 'Meta': {'object_name': 'Organization'}, - 'address': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), - 'address_complement': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), - 'country': ('django.db.models.fields.CharField', [], {'max_length': '30', 'null': 'True', 'blank': 'True'}), - 'history_modifier': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'to': "orm['auth.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'mobile_phone': ('django.db.models.fields.CharField', [], {'max_length': '18', 'null': 'True', 'blank': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'organization_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['ishtar_common.OrganizationType']"}), - 'phone': ('django.db.models.fields.CharField', [], {'max_length': '18', 'null': 'True', 'blank': 'True'}), - 'postal_code': ('django.db.models.fields.CharField', [], {'max_length': '10', 'null': 'True', 'blank': 'True'}), - 'town': ('django.db.models.fields.CharField', [], {'max_length': '30', 'null': 'True', 'blank': 'True'}) - }, - 'ishtar_common.organizationtype': { - 'Meta': {'object_name': 'OrganizationType'}, - 'available': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'comment': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'label': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'txt_idx': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'}) - }, - 'ishtar_common.person': { - 'Meta': {'object_name': 'Person'}, - 'address': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), - 'address_complement': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), - 'attached_to': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['ishtar_common.Organization']", 'null': 'True', 'blank': 'True'}), - 'country': ('django.db.models.fields.CharField', [], {'max_length': '30', 'null': 'True', 'blank': 'True'}), - 'email': ('django.db.models.fields.CharField', [], {'max_length': '40', 'null': 'True', 'blank': 'True'}), - 'history_modifier': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'to': "orm['auth.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'mobile_phone': ('django.db.models.fields.CharField', [], {'max_length': '18', 'null': 'True', 'blank': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '30'}), - 'person_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['ishtar_common.PersonType']"}), - 'phone': ('django.db.models.fields.CharField', [], {'max_length': '18', 'null': 'True', 'blank': 'True'}), - 'postal_code': ('django.db.models.fields.CharField', [], {'max_length': '10', 'null': 'True', 'blank': 'True'}), - 'surname': ('django.db.models.fields.CharField', [], {'max_length': '20'}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '2'}), - 'town': ('django.db.models.fields.CharField', [], {'max_length': '30', 'null': 'True', 'blank': 'True'}) - }, - 'ishtar_common.persontype': { - 'Meta': {'object_name': 'PersonType'}, - 'available': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'comment': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'label': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'rights': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['ishtar_common.WizardStep']", 'symmetrical': 'False'}), - 'txt_idx': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'}) - }, - 'ishtar_common.sourcetype': { - 'Meta': {'object_name': 'SourceType'}, - 'available': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'comment': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'label': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'txt_idx': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'}) - }, - 'ishtar_common.town': { - 'Meta': {'ordering': "['numero_insee']", 'object_name': 'Town'}, - 'canton': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['ishtar_common.Canton']", 'null': 'True', 'blank': 'True'}), - 'center': ('django.contrib.gis.db.models.fields.PointField', [], {'srid': '27572', 'null': 'True', 'blank': 'True'}), - 'departement': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['ishtar_common.Department']", 'null': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'numero_insee': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '6'}), - 'surface': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}) - }, - 'ishtar_common.wizard': { - 'Meta': {'ordering': "['url_name']", 'object_name': 'Wizard'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'url_name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '128'}) - }, - 'ishtar_common.wizardstep': { - 'Meta': {'ordering': "['wizard', 'order']", 'object_name': 'WizardStep'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '128'}), - 'order': ('django.db.models.fields.IntegerField', [], {}), - 'url_name': ('django.db.models.fields.CharField', [], {'max_length': '128'}), - 'wizard': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['ishtar_common.Wizard']"}) - } - } - - complete_apps = ['ishtar_common']
\ No newline at end of file +from django.db import models, migrations +import re +import django.contrib.gis.db.models.fields +import ishtar_common.models +import django.contrib.auth.models +import django.db.models.deletion +from django.conf import settings +import django.core.validators + + +class Migration(migrations.Migration): + + dependencies = [ + ('contenttypes', '0002_remove_content_type_name'), + migrations.swappable_dependency(settings.AUTH_USER_MODEL), + # ('auth', 'ishtar_profile'), + ] + + operations = [ + migrations.CreateModel( + name='Arrondissement', + fields=[ + ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)), + ('name', models.CharField(max_length=30, verbose_name='Nom')), + ], + ), + migrations.CreateModel( + name='Author', + fields=[ + ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)), + ], + options={ + 'ordering': ('author_type__order', 'person__name'), + 'verbose_name': 'Author', + 'verbose_name_plural': 'Authors', + 'permissions': (('view_author', 'Can view all Authors'), ('view_own_author', 'Can view own Author'), ('add_own_author', 'Can add own Author'), ('change_own_author', 'Can change own Author'), ('delete_own_author', 'Can delete own Author')), + }, + ), + migrations.CreateModel( + name='AuthorType', + fields=[ + ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)), + ('label', models.CharField(max_length=100, verbose_name='Label')), + ('txt_idx', models.CharField(unique=True, max_length=100, verbose_name='Textual ID', validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+$'), "Enter a valid 'slug' consisting of letters, numbers, underscores or hyphens.", 'invalid')])), + ('comment', models.TextField(null=True, verbose_name='Comment', blank=True)), + ('available', models.BooleanField(default=True, verbose_name='Available')), + ('order', models.IntegerField(default=1, verbose_name='Order')), + ], + options={ + 'ordering': ['order', 'label'], + 'verbose_name': 'Author type', + 'verbose_name_plural': 'Author types', + }, + bases=(ishtar_common.models.Cached, models.Model), + ), + migrations.CreateModel( + name='Canton', + fields=[ + ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)), + ('name', models.CharField(max_length=30, verbose_name='Nom')), + ('arrondissement', models.ForeignKey(verbose_name='Arrondissement', to='ishtar_common.Arrondissement')), + ], + ), + migrations.CreateModel( + name='Department', + fields=[ + ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)), + ('label', models.CharField(max_length=30, verbose_name='Label')), + ('number', models.CharField(unique=True, max_length=3, verbose_name='Number')), + ], + options={ + 'ordering': ['number'], + 'verbose_name': 'Department', + 'verbose_name_plural': 'Departments', + }, + ), + migrations.CreateModel( + name='DocumentTemplate', + fields=[ + ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)), + ('name', models.CharField(max_length=100, verbose_name='Name')), + ('template', models.FileField(upload_to=b'upload/templates/', verbose_name='Template')), + ('associated_object_name', models.CharField(max_length=100, verbose_name='Associated object', choices=[(b'archaeological_operations.models.AdministrativeAct', 'Administrative Act')])), + ('available', models.BooleanField(default=True, verbose_name='Available')), + ], + options={ + 'ordering': ['associated_object_name', 'name'], + 'verbose_name': 'Document template', + 'verbose_name_plural': 'Document templates', + }, + ), + migrations.CreateModel( + name='Format', + fields=[ + ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)), + ('label', models.CharField(max_length=100, verbose_name='Label')), + ('txt_idx', models.CharField(unique=True, max_length=100, verbose_name='Textual ID', validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+$'), "Enter a valid 'slug' consisting of letters, numbers, underscores or hyphens.", 'invalid')])), + ('comment', models.TextField(null=True, verbose_name='Comment', blank=True)), + ('available', models.BooleanField(default=True, verbose_name='Available')), + ], + options={ + 'ordering': ['label'], + 'verbose_name': 'Format type', + 'verbose_name_plural': 'Format types', + }, + bases=(ishtar_common.models.Cached, models.Model), + ), + migrations.CreateModel( + name='FormaterType', + fields=[ + ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)), + ('formater_type', models.CharField(max_length=20, verbose_name='Formater type', choices=[(b'IntegerFormater', 'Integer'), (b'FloatFormater', 'Float'), (b'UnicodeFormater', 'String'), (b'DateFormater', 'Date'), (b'TypeFormater', 'Type'), (b'YearFormater', 'Year'), (b'StrToBoolean', 'String to boolean'), (b'FileFormater', 'File'), (b'UnknowType', 'Unknow type')])), + ('options', models.CharField(max_length=500, null=True, verbose_name='Options', blank=True)), + ('many_split', models.CharField(max_length=10, null=True, verbose_name='Split character(s)', blank=True)), + ], + options={ + 'ordering': ('formater_type', 'options'), + 'verbose_name': 'Importer - Formater type', + 'verbose_name_plural': 'Importer - Formater types', + }, + ), + migrations.CreateModel( + name='GlobalVar', + fields=[ + ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)), + ('slug', models.SlugField(unique=True, verbose_name='Variable name')), + ('description', models.TextField(null=True, verbose_name='Description of the variable', blank=True)), + ('value', models.TextField(null=True, verbose_name='Value', blank=True)), + ], + options={ + 'ordering': ['slug'], + 'verbose_name': 'Global variable', + 'verbose_name_plural': 'Global variables', + }, + bases=(models.Model, ishtar_common.models.Cached), + ), + migrations.CreateModel( + name='HistoricalOrganization', + fields=[ + ('id', models.IntegerField(verbose_name='ID', db_index=True, auto_created=True, blank=True)), + ('address', models.TextField(null=True, verbose_name='Address', blank=True)), + ('address_complement', models.TextField(null=True, verbose_name='Address complement', blank=True)), + ('postal_code', models.CharField(max_length=10, null=True, verbose_name='Postal code', blank=True)), + ('town', models.CharField(max_length=70, null=True, verbose_name='Town', blank=True)), + ('country', models.CharField(max_length=30, null=True, verbose_name='Country', blank=True)), + ('alt_address', models.TextField(null=True, verbose_name='Other address: address', blank=True)), + ('alt_address_complement', models.TextField(null=True, verbose_name='Other address: address complement', blank=True)), + ('alt_postal_code', models.CharField(max_length=10, null=True, verbose_name='Other address: postal code', blank=True)), + ('alt_town', models.CharField(max_length=70, null=True, verbose_name='Other address: town', blank=True)), + ('alt_country', models.CharField(max_length=30, null=True, verbose_name='Other address: country', blank=True)), + ('phone', models.CharField(max_length=18, null=True, verbose_name='Phone', blank=True)), + ('phone_desc', models.CharField(max_length=300, null=True, verbose_name='Phone description', blank=True)), + ('phone2', models.CharField(max_length=18, null=True, verbose_name='Phone description 2', blank=True)), + ('phone_desc2', models.CharField(max_length=300, null=True, verbose_name='Phone description 2', blank=True)), + ('phone3', models.CharField(max_length=18, null=True, verbose_name='Phone 3', blank=True)), + ('phone_desc3', models.CharField(max_length=300, null=True, verbose_name='Phone description 3', blank=True)), + ('raw_phone', models.TextField(null=True, verbose_name='Raw phone', blank=True)), + ('mobile_phone', models.CharField(max_length=18, null=True, verbose_name='Mobile phone', blank=True)), + ('email', models.EmailField(max_length=300, null=True, verbose_name='Email', blank=True)), + ('alt_address_is_prefered', models.BooleanField(default=False, verbose_name='Alternative address is prefered')), + ('merge_key', models.TextField(null=True, verbose_name='Merge key', blank=True)), + ('archived', models.NullBooleanField(default=False)), + ('name', models.CharField(max_length=500, verbose_name='Name')), + ('history_id', models.AutoField(serialize=False, primary_key=True)), + ('history_date', models.DateTimeField()), + ('history_type', models.CharField(max_length=1, choices=[('+', 'Created'), ('~', 'Changed'), ('-', 'Deleted')])), + ], + options={ + 'ordering': ('-history_date', '-history_id'), + 'get_latest_by': 'history_date', + 'verbose_name': 'historical Organization', + }, + ), + migrations.CreateModel( + name='HistoricalPerson', + fields=[ + ('id', models.IntegerField(verbose_name='ID', db_index=True, auto_created=True, blank=True)), + ('address', models.TextField(null=True, verbose_name='Address', blank=True)), + ('address_complement', models.TextField(null=True, verbose_name='Address complement', blank=True)), + ('postal_code', models.CharField(max_length=10, null=True, verbose_name='Postal code', blank=True)), + ('town', models.CharField(max_length=70, null=True, verbose_name='Town', blank=True)), + ('country', models.CharField(max_length=30, null=True, verbose_name='Country', blank=True)), + ('alt_address', models.TextField(null=True, verbose_name='Other address: address', blank=True)), + ('alt_address_complement', models.TextField(null=True, verbose_name='Other address: address complement', blank=True)), + ('alt_postal_code', models.CharField(max_length=10, null=True, verbose_name='Other address: postal code', blank=True)), + ('alt_town', models.CharField(max_length=70, null=True, verbose_name='Other address: town', blank=True)), + ('alt_country', models.CharField(max_length=30, null=True, verbose_name='Other address: country', blank=True)), + ('phone', models.CharField(max_length=18, null=True, verbose_name='Phone', blank=True)), + ('phone_desc', models.CharField(max_length=300, null=True, verbose_name='Phone description', blank=True)), + ('phone2', models.CharField(max_length=18, null=True, verbose_name='Phone description 2', blank=True)), + ('phone_desc2', models.CharField(max_length=300, null=True, verbose_name='Phone description 2', blank=True)), + ('phone3', models.CharField(max_length=18, null=True, verbose_name='Phone 3', blank=True)), + ('phone_desc3', models.CharField(max_length=300, null=True, verbose_name='Phone description 3', blank=True)), + ('raw_phone', models.TextField(null=True, verbose_name='Raw phone', blank=True)), + ('mobile_phone', models.CharField(max_length=18, null=True, verbose_name='Mobile phone', blank=True)), + ('email', models.EmailField(max_length=300, null=True, verbose_name='Email', blank=True)), + ('alt_address_is_prefered', models.BooleanField(default=False, verbose_name='Alternative address is prefered')), + ('merge_key', models.TextField(null=True, verbose_name='Merge key', blank=True)), + ('archived', models.NullBooleanField(default=False)), + ('old_title', models.CharField(blank=True, max_length=100, null=True, verbose_name='Title', choices=[(b'Mr', 'Mr'), (b'Ms', 'Miss'), (b'Mr and Miss', 'Mr and Mrs'), (b'Md', 'Mrs'), (b'Dr', 'Doctor')])), + ('salutation', models.CharField(max_length=200, null=True, verbose_name='Salutation', blank=True)), + ('surname', models.CharField(max_length=50, null=True, verbose_name='Surname', blank=True)), + ('name', models.CharField(max_length=200, null=True, verbose_name='Name', blank=True)), + ('raw_name', models.CharField(max_length=300, null=True, verbose_name='Raw name', blank=True)), + ('contact_type', models.CharField(max_length=300, null=True, verbose_name='Contact type', blank=True)), + ('comment', models.TextField(null=True, verbose_name='Comment', blank=True)), + ('history_id', models.AutoField(serialize=False, primary_key=True)), + ('history_date', models.DateTimeField()), + ('history_type', models.CharField(max_length=1, choices=[('+', 'Created'), ('~', 'Changed'), ('-', 'Deleted')])), + ], + options={ + 'ordering': ('-history_date', '-history_id'), + 'get_latest_by': 'history_date', + 'verbose_name': 'historical Person', + }, + ), + migrations.CreateModel( + name='Import', + fields=[ + ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)), + ('name', models.CharField(max_length=500, null=True, verbose_name='Name', blank=True)), + ('imported_file', models.FileField(upload_to=b'upload/imports/', max_length=220, verbose_name='Imported file')), + ('imported_images', models.FileField(max_length=220, upload_to=b'upload/imports/', null=True, verbose_name='Associated images (zip file)', blank=True)), + ('encoding', models.CharField(default=b'utf-8', max_length=15, verbose_name='Encoding', choices=[(b'windows-1252', b'windows-1252'), (b'ISO-8859-15', b'ISO-8859-15'), (b'utf-8', b'utf-8')])), + ('skip_lines', models.IntegerField(default=1, verbose_name='Skip lines')), + ('error_file', models.FileField(max_length=255, upload_to=b'upload/imports/', null=True, verbose_name='Error file', blank=True)), + ('result_file', models.FileField(max_length=255, upload_to=b'upload/imports/', null=True, verbose_name='Result file', blank=True)), + ('match_file', models.FileField(max_length=255, upload_to=b'upload/imports/', null=True, verbose_name='Match file', blank=True)), + ('state', models.CharField(default=b'C', max_length=2, verbose_name='State', choices=[(b'C', 'Created'), (b'AP', 'Analyse in progress'), (b'A', 'Analysed'), (b'P', 'Import pending'), (b'IP', 'Import in progress'), (b'FE', 'Finished with errors'), (b'F', 'Finished'), (b'AC', 'Archived')])), + ('conservative_import', models.BooleanField(default=False, help_text=b'If set to true, do not overload existing values', verbose_name='Conservative import')), + ('creation_date', models.DateTimeField(auto_now_add=True, verbose_name='Creation date', null=True)), + ('end_date', models.DateTimeField(verbose_name='End date', null=True, editable=False, blank=True)), + ('seconds_remaining', models.IntegerField(verbose_name='Remaining seconds', null=True, editable=False, blank=True)), + ], + options={ + 'verbose_name': 'Import', + 'verbose_name_plural': 'Imports', + }, + ), + migrations.CreateModel( + name='ImporterColumn', + fields=[ + ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)), + ('label', models.CharField(max_length=200, null=True, verbose_name='Label', blank=True)), + ('col_number', models.IntegerField(default=1, verbose_name='Column number')), + ('description', models.TextField(null=True, verbose_name='Description', blank=True)), + ('required', models.BooleanField(default=False, verbose_name='Required')), + ('export_field_name', models.CharField(help_text='Fill this field if the field name is ambiguous for export. For instance: concatenated fields.', max_length=200, null=True, verbose_name='Export field name', blank=True)), + ], + options={ + 'ordering': ('importer_type', 'col_number'), + 'verbose_name': 'Importer - Column', + 'verbose_name_plural': 'Importer - Columns', + }, + ), + migrations.CreateModel( + name='ImporterDefault', + fields=[ + ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)), + ('target', models.CharField(max_length=500, verbose_name='Target')), + ], + options={ + 'verbose_name': 'Importer - Default', + 'verbose_name_plural': 'Importer - Defaults', + }, + ), + migrations.CreateModel( + name='ImporterDefaultValues', + fields=[ + ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)), + ('target', models.CharField(max_length=500, verbose_name='Target')), + ('value', models.CharField(max_length=500, verbose_name='Value')), + ('default_target', models.ForeignKey(related_name='default_values', to='ishtar_common.ImporterDefault')), + ], + options={ + 'verbose_name': 'Importer - Default value', + 'verbose_name_plural': 'Importer - Default values', + }, + ), + migrations.CreateModel( + name='ImporterDuplicateField', + fields=[ + ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)), + ('field_name', models.CharField(max_length=200, null=True, verbose_name='Field name', blank=True)), + ('force_new', models.BooleanField(default=False, verbose_name='Force creation of new items')), + ('concat', models.BooleanField(default=False, verbose_name='Concatenate with existing')), + ('concat_str', models.CharField(max_length=5, null=True, verbose_name='Concatenate character', blank=True)), + ('column', models.ForeignKey(related_name='duplicate_fields', to='ishtar_common.ImporterColumn')), + ], + options={ + 'verbose_name': 'Importer - Duplicate field', + 'verbose_name_plural': 'Importer - Duplicate fields', + }, + ), + migrations.CreateModel( + name='ImporterModel', + fields=[ + ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)), + ('name', models.CharField(max_length=200, verbose_name='Name')), + ('klass', models.CharField(max_length=200, verbose_name='Class name')), + ], + options={ + 'ordering': ('name',), + 'verbose_name': 'Importer - Model', + 'verbose_name_plural': 'Importer - Models', + }, + ), + migrations.CreateModel( + name='ImporterType', + fields=[ + ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)), + ('name', models.CharField(max_length=100, null=True, verbose_name='Name', blank=True)), + ('slug', models.SlugField(null=True, max_length=100, blank=True, unique=True, verbose_name='Slug')), + ('description', models.CharField(max_length=500, null=True, verbose_name='Description', blank=True)), + ('is_template', models.BooleanField(default=False, verbose_name='Is template')), + ('unicity_keys', models.CharField(max_length=500, null=True, verbose_name='Unicity keys (separator ";")', blank=True)), + ('associated_models', models.ForeignKey(related_name='+', verbose_name='Associated model', blank=True, to='ishtar_common.ImporterModel', null=True)), + ('created_models', models.ManyToManyField(help_text='Leave blank for no restrictions', related_name='+', verbose_name='Models that can accept new items', to='ishtar_common.ImporterModel', blank=True)), + ], + options={ + 'ordering': ('name',), + 'verbose_name': 'Importer - Type', + 'verbose_name_plural': 'Importer - Types', + }, + ), + migrations.CreateModel( + name='ImportTarget', + fields=[ + ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)), + ('target', models.CharField(max_length=500, verbose_name='Target')), + ('force_new', models.BooleanField(default=False, verbose_name='Force creation of new items')), + ('concat', models.BooleanField(default=False, verbose_name='Concatenate with existing')), + ('concat_str', models.CharField(max_length=5, null=True, verbose_name='Concatenate character', blank=True)), + ('comment', models.TextField(null=True, verbose_name='Comment', blank=True)), + ('column', models.ForeignKey(related_name='targets', to='ishtar_common.ImporterColumn')), + ('formater_type', models.ForeignKey(to='ishtar_common.FormaterType')), + ], + options={ + 'verbose_name': 'Importer - Target', + 'verbose_name_plural': 'Importer - Targets', + }, + ), + migrations.CreateModel( + name='IshtarSiteProfile', + fields=[ + ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)), + ('label', models.TextField(verbose_name='Name')), + ('slug', models.SlugField(unique=True, verbose_name='Slug')), + ('description', models.TextField(null=True, verbose_name='Description', blank=True)), + ('base_color', models.CharField(default=b'rgba(0, 0, 0, 0)', max_length=200, verbose_name='CSS color code for base module')), + ('files', models.BooleanField(default=False, verbose_name='Files module')), + ('files_color', models.CharField(default=b'rgba(0, 32, 210, 0.1)', max_length=200, verbose_name='CSS color code for files module')), + ('context_record', models.BooleanField(default=False, verbose_name='Context records module')), + ('context_record_color', models.CharField(default=b'rgba(210,200,0,0.2)', max_length=200, verbose_name='CSS color code for context record module')), + ('find', models.BooleanField(default=False, help_text='Need context records module', verbose_name='Finds module')), + ('find_index', models.CharField(default=b'O', help_text='To prevent irrelevant indexes, change this parameter only if there is no find in the database', max_length=2, verbose_name='Find index is based on', choices=[('O', 'Operations'), ('CR', 'Context records')])), + ('find_color', models.CharField(default=b'rgba(210,0,0,0.15)', max_length=200, verbose_name='CSS color code for find module')), + ('warehouse', models.BooleanField(default=False, help_text='Need finds module', verbose_name='Warehouses module')), + ('warehouse_color', models.CharField(default=b'rgba(10,20,200,0.15)', max_length=200, verbose_name='CSS code for warehouse module')), + ('mapping', models.BooleanField(default=False, verbose_name='Mapping module')), + ('mapping_color', models.CharField(default=b'rgba(72, 236, 0, 0.15)', max_length=200, verbose_name='CSS code for mapping module')), + ('homepage', models.TextField(help_text='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.', null=True, verbose_name='Home page', blank=True)), + ('file_external_id', models.TextField(default=b'{year}-{numeric_reference}', help_text='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.', verbose_name='File external id')), + ('parcel_external_id', models.TextField(default=b'{associated_file__external_id}{operation__code_patriarche}-{town__numero_insee}-{section}{parcel_number}', help_text='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.', verbose_name='Parcel external id')), + ('context_record_external_id', models.TextField(default=b'{parcel__external_id}-{label}', help_text='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.', verbose_name='Context record external id')), + ('base_find_external_id', models.TextField(default=b'{context_record__external_id}-{label}', help_text='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.', verbose_name='Base find external id')), + ('find_external_id', models.TextField(default=b'{get_first_base_find__context_record__external_id}-{label}', help_text='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.', verbose_name='Find external id')), + ('container_external_id', models.TextField(default=b'{responsible__external_id}-{index}', help_text='Formula to manage container external ID. Change this with care. With incorrect formula, the application might be unusable and import of external data can be destructive.', verbose_name='Container external id')), + ('warehouse_external_id', models.TextField(default=b'{name|slug}', help_text='Formula to manage warehouse external ID. Change this with care. With incorrect formula, the application might be unusable and import of external data can be destructive.', verbose_name='Warehouse external id')), + ('person_raw_name', models.TextField(default=b'{name|upper} {surname}', help_text='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.', verbose_name='Raw name for person')), + ('active', models.BooleanField(default=False, verbose_name='Current active')), + ('currency', models.CharField(default='\u20ac', max_length=b'5', verbose_name='Currency', choices=[('\u20ac', 'Euro'), ('$', 'US dollar')])), + ], + options={ + 'ordering': ['label'], + 'verbose_name': 'Ishtar site profile', + 'verbose_name_plural': 'Ishtar site profiles', + }, + bases=(models.Model, ishtar_common.models.Cached), + ), + migrations.CreateModel( + name='IshtarUser', + fields=[ + ('user_ptr', models.OneToOneField(parent_link=True, auto_created=True, primary_key=True, serialize=False, to=settings.AUTH_USER_MODEL)), + ('advanced_shortcut_menu', models.BooleanField(default=False, verbose_name='Advanced shortcut menu')), + ], + options={ + 'verbose_name': 'Ishtar user', + 'verbose_name_plural': 'Ishtar users', + }, + bases=('auth.user',), + managers=[ + (b'objects', django.contrib.auth.models.UserManager()), + ], + ), + migrations.CreateModel( + name='ItemKey', + fields=[ + ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)), + ('key', models.CharField(max_length=100, verbose_name='Key')), + ('object_id', models.PositiveIntegerField()), + ('content_type', models.ForeignKey(to='contenttypes.ContentType')), + ('importer', models.ForeignKey(blank=True, to='ishtar_common.Import', help_text='Specific key to an import', null=True)), + ], + ), + migrations.CreateModel( + name='OperationType', + fields=[ + ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)), + ('label', models.CharField(max_length=100, verbose_name='Label')), + ('txt_idx', models.CharField(unique=True, max_length=100, verbose_name='Textual ID', validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+$'), "Enter a valid 'slug' consisting of letters, numbers, underscores or hyphens.", 'invalid')])), + ('comment', models.TextField(null=True, verbose_name='Comment', blank=True)), + ('available', models.BooleanField(default=True, verbose_name='Available')), + ('order', models.IntegerField(default=1, verbose_name='Order')), + ('preventive', models.BooleanField(default=True, verbose_name='Is preventive')), + ], + options={ + 'ordering': ['-preventive', 'order', 'label'], + 'verbose_name': 'Operation type', + 'verbose_name_plural': 'Operation types', + }, + bases=(ishtar_common.models.Cached, models.Model), + ), + migrations.CreateModel( + name='Organization', + fields=[ + ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)), + ('address', models.TextField(null=True, verbose_name='Address', blank=True)), + ('address_complement', models.TextField(null=True, verbose_name='Address complement', blank=True)), + ('postal_code', models.CharField(max_length=10, null=True, verbose_name='Postal code', blank=True)), + ('town', models.CharField(max_length=70, null=True, verbose_name='Town', blank=True)), + ('country', models.CharField(max_length=30, null=True, verbose_name='Country', blank=True)), + ('alt_address', models.TextField(null=True, verbose_name='Other address: address', blank=True)), + ('alt_address_complement', models.TextField(null=True, verbose_name='Other address: address complement', blank=True)), + ('alt_postal_code', models.CharField(max_length=10, null=True, verbose_name='Other address: postal code', blank=True)), + ('alt_town', models.CharField(max_length=70, null=True, verbose_name='Other address: town', blank=True)), + ('alt_country', models.CharField(max_length=30, null=True, verbose_name='Other address: country', blank=True)), + ('phone', models.CharField(max_length=18, null=True, verbose_name='Phone', blank=True)), + ('phone_desc', models.CharField(max_length=300, null=True, verbose_name='Phone description', blank=True)), + ('phone2', models.CharField(max_length=18, null=True, verbose_name='Phone description 2', blank=True)), + ('phone_desc2', models.CharField(max_length=300, null=True, verbose_name='Phone description 2', blank=True)), + ('phone3', models.CharField(max_length=18, null=True, verbose_name='Phone 3', blank=True)), + ('phone_desc3', models.CharField(max_length=300, null=True, verbose_name='Phone description 3', blank=True)), + ('raw_phone', models.TextField(null=True, verbose_name='Raw phone', blank=True)), + ('mobile_phone', models.CharField(max_length=18, null=True, verbose_name='Mobile phone', blank=True)), + ('email', models.EmailField(max_length=300, null=True, verbose_name='Email', blank=True)), + ('alt_address_is_prefered', models.BooleanField(default=False, verbose_name='Alternative address is prefered')), + ('merge_key', models.TextField(null=True, verbose_name='Merge key', blank=True)), + ('archived', models.NullBooleanField(default=False)), + ('name', models.CharField(max_length=500, verbose_name='Name')), + ('history_creator', models.ForeignKey(related_name='+', on_delete=django.db.models.deletion.SET_NULL, verbose_name='Creator', blank=True, to=settings.AUTH_USER_MODEL, null=True)), + ('history_modifier', models.ForeignKey(related_name='+', on_delete=django.db.models.deletion.SET_NULL, verbose_name='Last editor', blank=True, to=settings.AUTH_USER_MODEL, null=True)), + ('imports', models.ManyToManyField(related_name='imported_ishtar_common_organization', to='ishtar_common.Import', blank=True)), + ('merge_candidate', models.ManyToManyField(related_name='merge_candidate_rel_+', to='ishtar_common.Organization', blank=True)), + ('merge_exclusion', models.ManyToManyField(related_name='merge_exclusion_rel_+', to='ishtar_common.Organization', blank=True)), + ], + options={ + 'verbose_name': 'Organization', + 'verbose_name_plural': 'Organizations', + 'permissions': (('view_organization', 'Peut voir toutes les Organisations'), ('view_own_organization', 'Peut voir sa propre Organisation'), ('add_own_organization', 'Peut ajouter sa propre Organisation'), ('change_own_organization', 'Peut modifier sa propre Organisation'), ('delete_own_organization', 'Peut supprimer sa propre Organisation')), + }, + bases=(models.Model, ishtar_common.models.OwnPerms, ishtar_common.models.ValueGetter), + ), + migrations.CreateModel( + name='OrganizationType', + fields=[ + ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)), + ('label', models.CharField(max_length=100, verbose_name='Label')), + ('txt_idx', models.CharField(unique=True, max_length=100, verbose_name='Textual ID', validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+$'), "Enter a valid 'slug' consisting of letters, numbers, underscores or hyphens.", 'invalid')])), + ('comment', models.TextField(null=True, verbose_name='Comment', blank=True)), + ('available', models.BooleanField(default=True, verbose_name='Available')), + ], + options={ + 'ordering': ('label',), + 'verbose_name': 'Organization type', + 'verbose_name_plural': 'Organization types', + }, + bases=(ishtar_common.models.Cached, models.Model), + ), + migrations.CreateModel( + name='Person', + fields=[ + ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)), + ('address', models.TextField(null=True, verbose_name='Address', blank=True)), + ('address_complement', models.TextField(null=True, verbose_name='Address complement', blank=True)), + ('postal_code', models.CharField(max_length=10, null=True, verbose_name='Postal code', blank=True)), + ('town', models.CharField(max_length=70, null=True, verbose_name='Town', blank=True)), + ('country', models.CharField(max_length=30, null=True, verbose_name='Country', blank=True)), + ('alt_address', models.TextField(null=True, verbose_name='Other address: address', blank=True)), + ('alt_address_complement', models.TextField(null=True, verbose_name='Other address: address complement', blank=True)), + ('alt_postal_code', models.CharField(max_length=10, null=True, verbose_name='Other address: postal code', blank=True)), + ('alt_town', models.CharField(max_length=70, null=True, verbose_name='Other address: town', blank=True)), + ('alt_country', models.CharField(max_length=30, null=True, verbose_name='Other address: country', blank=True)), + ('phone', models.CharField(max_length=18, null=True, verbose_name='Phone', blank=True)), + ('phone_desc', models.CharField(max_length=300, null=True, verbose_name='Phone description', blank=True)), + ('phone2', models.CharField(max_length=18, null=True, verbose_name='Phone description 2', blank=True)), + ('phone_desc2', models.CharField(max_length=300, null=True, verbose_name='Phone description 2', blank=True)), + ('phone3', models.CharField(max_length=18, null=True, verbose_name='Phone 3', blank=True)), + ('phone_desc3', models.CharField(max_length=300, null=True, verbose_name='Phone description 3', blank=True)), + ('raw_phone', models.TextField(null=True, verbose_name='Raw phone', blank=True)), + ('mobile_phone', models.CharField(max_length=18, null=True, verbose_name='Mobile phone', blank=True)), + ('email', models.EmailField(max_length=300, null=True, verbose_name='Email', blank=True)), + ('alt_address_is_prefered', models.BooleanField(default=False, verbose_name='Alternative address is prefered')), + ('merge_key', models.TextField(null=True, verbose_name='Merge key', blank=True)), + ('archived', models.NullBooleanField(default=False)), + ('old_title', models.CharField(blank=True, max_length=100, null=True, verbose_name='Title', choices=[(b'Mr', 'Mr'), (b'Ms', 'Miss'), (b'Mr and Miss', 'Mr and Mrs'), (b'Md', 'Mrs'), (b'Dr', 'Doctor')])), + ('salutation', models.CharField(max_length=200, null=True, verbose_name='Salutation', blank=True)), + ('surname', models.CharField(max_length=50, null=True, verbose_name='Surname', blank=True)), + ('name', models.CharField(max_length=200, null=True, verbose_name='Name', blank=True)), + ('raw_name', models.CharField(max_length=300, null=True, verbose_name='Raw name', blank=True)), + ('contact_type', models.CharField(max_length=300, null=True, verbose_name='Contact type', blank=True)), + ('comment', models.TextField(null=True, verbose_name='Comment', blank=True)), + ('attached_to', models.ForeignKey(related_name='members', on_delete=django.db.models.deletion.SET_NULL, verbose_name='Is attached to', blank=True, to='ishtar_common.Organization', null=True)), + ('history_creator', models.ForeignKey(related_name='+', on_delete=django.db.models.deletion.SET_NULL, verbose_name='Creator', blank=True, to=settings.AUTH_USER_MODEL, null=True)), + ('history_modifier', models.ForeignKey(related_name='+', on_delete=django.db.models.deletion.SET_NULL, verbose_name='Last editor', blank=True, to=settings.AUTH_USER_MODEL, null=True)), + ('imports', models.ManyToManyField(related_name='imported_ishtar_common_person', to='ishtar_common.Import', blank=True)), + ('merge_candidate', models.ManyToManyField(related_name='merge_candidate_rel_+', to='ishtar_common.Person', blank=True)), + ('merge_exclusion', models.ManyToManyField(related_name='merge_exclusion_rel_+', to='ishtar_common.Person', blank=True)), + ], + options={ + 'verbose_name': 'Person', + 'verbose_name_plural': 'Persons', + 'permissions': (('view_person', 'Peut voir toutes les Personnes'), ('view_own_person', 'Peut voir sa propre Personne'), ('add_own_person', 'Peut ajouter sa propre Personne'), ('change_own_person', 'Peut modifier sa propre Personne'), ('delete_own_person', 'Peut supprimer sa propre Personne')), + }, + bases=(models.Model, ishtar_common.models.OwnPerms, ishtar_common.models.ValueGetter), + ), + migrations.CreateModel( + name='PersonType', + fields=[ + ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)), + ('label', models.CharField(max_length=100, verbose_name='Label')), + ('txt_idx', models.CharField(unique=True, max_length=100, verbose_name='Textual ID', validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+$'), "Enter a valid 'slug' consisting of letters, numbers, underscores or hyphens.", 'invalid')])), + ('comment', models.TextField(null=True, verbose_name='Comment', blank=True)), + ('available', models.BooleanField(default=True, verbose_name='Available')), + ('groups', models.ManyToManyField(to='auth.Group', verbose_name='Groups', blank=True)), + ], + options={ + 'ordering': ('label',), + 'verbose_name': 'Person type', + 'verbose_name_plural': 'Person types', + }, + bases=(ishtar_common.models.Cached, models.Model), + ), + migrations.CreateModel( + name='Regexp', + fields=[ + ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)), + ('name', models.CharField(max_length=100, verbose_name='Name')), + ('description', models.CharField(max_length=500, null=True, verbose_name='Description', blank=True)), + ('regexp', models.CharField(max_length=500, verbose_name='Regular expression')), + ], + options={ + 'verbose_name': 'Importer - Regular expression', + 'verbose_name_plural': 'Importer - Regular expressions', + }, + ), + migrations.CreateModel( + name='SourceType', + fields=[ + ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)), + ('label', models.CharField(max_length=100, verbose_name='Label')), + ('txt_idx', models.CharField(unique=True, max_length=100, verbose_name='Textual ID', validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+$'), "Enter a valid 'slug' consisting of letters, numbers, underscores or hyphens.", 'invalid')])), + ('comment', models.TextField(null=True, verbose_name='Comment', blank=True)), + ('available', models.BooleanField(default=True, verbose_name='Available')), + ], + options={ + 'ordering': ['label'], + 'verbose_name': 'Source type', + 'verbose_name_plural': 'Source types', + }, + bases=(ishtar_common.models.Cached, models.Model), + ), + migrations.CreateModel( + name='SpatialReferenceSystem', + fields=[ + ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)), + ('label', models.CharField(max_length=100, verbose_name='Label')), + ('txt_idx', models.CharField(unique=True, max_length=100, verbose_name='Textual ID', validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+$'), "Enter a valid 'slug' consisting of letters, numbers, underscores or hyphens.", 'invalid')])), + ('comment', models.TextField(null=True, verbose_name='Comment', blank=True)), + ('available', models.BooleanField(default=True, verbose_name='Available')), + ('order', models.IntegerField(default=10, verbose_name='Order')), + ('auth_name', models.CharField(default=b'EPSG', max_length=256, verbose_name='Authority name')), + ('srid', models.IntegerField(verbose_name='Authority SRID')), + ], + options={ + 'ordering': ('label',), + 'verbose_name': 'Spatial reference system', + 'verbose_name_plural': 'Spatial reference systems', + }, + bases=(ishtar_common.models.Cached, models.Model), + ), + migrations.CreateModel( + name='State', + fields=[ + ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)), + ('label', models.CharField(max_length=30, verbose_name='Label')), + ('number', models.CharField(unique=True, max_length=3, verbose_name='Number')), + ], + options={ + 'ordering': ['number'], + 'verbose_name': 'State', + }, + ), + migrations.CreateModel( + name='SupportType', + fields=[ + ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)), + ('label', models.CharField(max_length=100, verbose_name='Label')), + ('txt_idx', models.CharField(unique=True, max_length=100, verbose_name='Textual ID', validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+$'), "Enter a valid 'slug' consisting of letters, numbers, underscores or hyphens.", 'invalid')])), + ('comment', models.TextField(null=True, verbose_name='Comment', blank=True)), + ('available', models.BooleanField(default=True, verbose_name='Available')), + ], + options={ + 'verbose_name': 'Support type', + 'verbose_name_plural': 'Support types', + }, + bases=(ishtar_common.models.Cached, models.Model), + ), + migrations.CreateModel( + name='TargetKey', + fields=[ + ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)), + ('key', models.TextField(verbose_name='Key')), + ('value', models.TextField(null=True, verbose_name='Value', blank=True)), + ('is_set', models.BooleanField(default=False, verbose_name='Is set')), + ('associated_import', models.ForeignKey(blank=True, to='ishtar_common.Import', null=True)), + ('associated_user', models.ForeignKey(blank=True, to='ishtar_common.IshtarUser', null=True)), + ('target', models.ForeignKey(related_name='keys', to='ishtar_common.ImportTarget')), + ], + options={ + 'verbose_name': 'Importer - Target key', + 'verbose_name_plural': 'Importer - Targets keys', + }, + ), + migrations.CreateModel( + name='TitleType', + fields=[ + ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)), + ('label', models.CharField(max_length=100, verbose_name='Label')), + ('txt_idx', models.CharField(unique=True, max_length=100, verbose_name='Textual ID', validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+$'), "Enter a valid 'slug' consisting of letters, numbers, underscores or hyphens.", 'invalid')])), + ('comment', models.TextField(null=True, verbose_name='Comment', blank=True)), + ('available', models.BooleanField(default=True, verbose_name='Available')), + ], + options={ + 'ordering': ('label',), + 'verbose_name': 'Title type', + 'verbose_name_plural': 'Title types', + }, + bases=(ishtar_common.models.Cached, models.Model), + ), + migrations.CreateModel( + name='Town', + fields=[ + ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)), + ('name', models.CharField(max_length=100, verbose_name='Name')), + ('surface', models.IntegerField(null=True, verbose_name='Surface (m2)', blank=True)), + ('center', django.contrib.gis.db.models.fields.PointField(srid=27572, null=True, verbose_name='Localisation', blank=True)), + ('numero_insee', models.CharField(unique=True, max_length=6, verbose_name='Num\xe9ro INSEE')), + ('canton', models.ForeignKey(verbose_name='Canton', blank=True, to='ishtar_common.Canton', null=True)), + ('departement', models.ForeignKey(verbose_name='D\xe9partement', blank=True, to='ishtar_common.Department', null=True)), + ('imports', models.ManyToManyField(related_name='imported_ishtar_common_town', to='ishtar_common.Import', blank=True)), + ], + options={ + 'ordering': ['numero_insee'], + 'verbose_name': 'Town', + 'verbose_name_plural': 'Towns', + }, + ), + migrations.AddField( + model_name='person', + name='person_types', + field=models.ManyToManyField(to='ishtar_common.PersonType', verbose_name='Types'), + ), + migrations.AddField( + model_name='person', + name='title', + field=models.ForeignKey(verbose_name='Title', blank=True, to='ishtar_common.TitleType', null=True), + ), + migrations.AddField( + model_name='organization', + name='organization_type', + field=models.ForeignKey(verbose_name='Type', to='ishtar_common.OrganizationType'), + ), + migrations.AddField( + model_name='ishtaruser', + name='person', + field=models.OneToOneField(related_name='ishtaruser', verbose_name='Person', to='ishtar_common.Person'), + ), + migrations.AddField( + model_name='importtarget', + name='regexp_filter', + field=models.ForeignKey(blank=True, to='ishtar_common.Regexp', null=True), + ), + migrations.AddField( + model_name='importertype', + name='users', + field=models.ManyToManyField(to='ishtar_common.IshtarUser', verbose_name='Users', blank=True), + ), + migrations.AddField( + model_name='importerdefault', + name='importer_type', + field=models.ForeignKey(related_name='defaults', to='ishtar_common.ImporterType'), + ), + migrations.AddField( + model_name='importercolumn', + name='importer_type', + field=models.ForeignKey(related_name='columns', to='ishtar_common.ImporterType'), + ), + migrations.AddField( + model_name='importercolumn', + name='regexp_pre_filter', + field=models.ForeignKey(blank=True, to='ishtar_common.Regexp', null=True), + ), + migrations.AddField( + model_name='import', + name='importer_type', + field=models.ForeignKey(to='ishtar_common.ImporterType'), + ), + migrations.AddField( + model_name='import', + name='user', + field=models.ForeignKey(to='ishtar_common.IshtarUser'), + ), + migrations.AddField( + model_name='historicalperson', + name='attached_to', + field=models.ForeignKey(related_name='+', on_delete=django.db.models.deletion.DO_NOTHING, db_constraint=False, blank=True, to='ishtar_common.Organization', null=True), + ), + migrations.AddField( + model_name='historicalperson', + name='history_creator', + field=models.ForeignKey(related_name='+', on_delete=django.db.models.deletion.DO_NOTHING, db_constraint=False, blank=True, to=settings.AUTH_USER_MODEL, null=True), + ), + migrations.AddField( + model_name='historicalperson', + name='history_modifier', + field=models.ForeignKey(related_name='+', on_delete=django.db.models.deletion.DO_NOTHING, db_constraint=False, blank=True, to=settings.AUTH_USER_MODEL, null=True), + ), + migrations.AddField( + model_name='historicalperson', + name='history_user', + field=models.ForeignKey(related_name='+', on_delete=django.db.models.deletion.SET_NULL, to=settings.AUTH_USER_MODEL, null=True), + ), + migrations.AddField( + model_name='historicalperson', + name='title', + field=models.ForeignKey(related_name='+', on_delete=django.db.models.deletion.DO_NOTHING, db_constraint=False, blank=True, to='ishtar_common.TitleType', null=True), + ), + migrations.AddField( + model_name='historicalorganization', + name='history_creator', + field=models.ForeignKey(related_name='+', on_delete=django.db.models.deletion.DO_NOTHING, db_constraint=False, blank=True, to=settings.AUTH_USER_MODEL, null=True), + ), + migrations.AddField( + model_name='historicalorganization', + name='history_modifier', + field=models.ForeignKey(related_name='+', on_delete=django.db.models.deletion.DO_NOTHING, db_constraint=False, blank=True, to=settings.AUTH_USER_MODEL, null=True), + ), + migrations.AddField( + model_name='historicalorganization', + name='history_user', + field=models.ForeignKey(related_name='+', on_delete=django.db.models.deletion.SET_NULL, to=settings.AUTH_USER_MODEL, null=True), + ), + migrations.AddField( + model_name='historicalorganization', + name='organization_type', + field=models.ForeignKey(related_name='+', on_delete=django.db.models.deletion.DO_NOTHING, db_constraint=False, blank=True, to='ishtar_common.OrganizationType', null=True), + ), + migrations.AlterUniqueTogether( + name='formatertype', + unique_together=set([('formater_type', 'options', 'many_split')]), + ), + migrations.AddField( + model_name='department', + name='state', + field=models.ForeignKey(verbose_name='State', blank=True, to='ishtar_common.State', null=True), + ), + migrations.AddField( + model_name='author', + name='author_type', + field=models.ForeignKey(verbose_name='Author type', to='ishtar_common.AuthorType'), + ), + migrations.AddField( + model_name='author', + name='person', + field=models.ForeignKey(related_name='author', verbose_name='Person', to='ishtar_common.Person'), + ), + migrations.AddField( + model_name='arrondissement', + name='department', + field=models.ForeignKey(verbose_name='D\xe9partement', to='ishtar_common.Department'), + ), + migrations.AlterUniqueTogether( + name='targetkey', + unique_together=set([('target', 'key', 'associated_user', 'associated_import')]), + ), + migrations.AlterUniqueTogether( + name='importercolumn', + unique_together=set([('importer_type', 'col_number')]), + ), + migrations.CreateModel( + name='AdministrationScript', + fields=[ + ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)), + ('path', models.CharField(max_length=30, verbose_name='Filename')), + ('name', models.TextField(null=True, verbose_name='Name', blank=True)), + ], + options={ + 'ordering': ['name'], + 'verbose_name': 'Administration script', + 'verbose_name_plural': 'Administration scripts', + }, + ), + migrations.CreateModel( + name='AdministrationTask', + fields=[ + ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)), + ('state', models.CharField(default=b'S', max_length=2, verbose_name='State', choices=[(b'S', 'Scheduled'), (b'P', 'In progress'), (b'FE', 'Finished with errors'), (b'F', 'Finished')])), + ('creation_date', models.DateTimeField(default=datetime.datetime.now)), + ('launch_date', models.DateTimeField(null=True, blank=True)), + ('finished_date', models.DateTimeField(null=True, blank=True)), + ('result', models.TextField(null=True, verbose_name='Result', blank=True)), + ('script', models.ForeignKey(to='ishtar_common.AdministrationScript')), + ], + options={ + 'ordering': ['script'], + 'verbose_name': 'Administration task', + 'verbose_name_plural': 'Administration tasks', + }, + ), + ] diff --git a/ishtar_common/migrations/0002_change_ishtaruser_management.py b/ishtar_common/migrations/0002_change_ishtaruser_management.py new file mode 100644 index 000000000..3dda6d7cb --- /dev/null +++ b/ishtar_common/migrations/0002_change_ishtaruser_management.py @@ -0,0 +1,25 @@ +# -*- coding: utf-8 -*- +from __future__ import unicode_literals + +from django.db import models, migrations +from django.conf import settings + + +class Migration(migrations.Migration): + + dependencies = [ + ('ishtar_common', '0001_initial'), + ] + + operations = [ + migrations.AlterModelManagers( + name='ishtaruser', + managers=[ + ], + ), + migrations.AlterField( + model_name='ishtaruser', + name='user_ptr', + field=models.OneToOneField(primary_key=True, serialize=False, to=settings.AUTH_USER_MODEL), + ), + ] diff --git a/ishtar_common/migrations/0003_auto_20170421_1613.py b/ishtar_common/migrations/0003_auto_20170421_1613.py new file mode 100644 index 000000000..f82860ff3 --- /dev/null +++ b/ishtar_common/migrations/0003_auto_20170421_1613.py @@ -0,0 +1,20 @@ +# -*- coding: utf-8 -*- +from __future__ import unicode_literals + +from django.db import models, migrations +from django.conf import settings + + +class Migration(migrations.Migration): + + dependencies = [ + ('ishtar_common', '0002_change_ishtaruser_management'), + ] + + operations = [ + migrations.AlterField( + model_name='ishtaruser', + name='user_ptr', + field=models.OneToOneField(related_name='ishtaruser', primary_key=True, serialize=False, to=settings.AUTH_USER_MODEL), + ), + ] diff --git a/ishtar_common/migrations/0077_auto__add_administrationscript__add_administrationtask.py b/ishtar_common/migrations/0077_auto__add_administrationscript__add_administrationtask.py deleted file mode 100644 index b6f2680e6..000000000 --- a/ishtar_common/migrations/0077_auto__add_administrationscript__add_administrationtask.py +++ /dev/null @@ -1,530 +0,0 @@ -# -*- coding: utf-8 -*- -import datetime -from south.db import db -from south.v2 import SchemaMigration -from django.db import models - - -class Migration(SchemaMigration): - - def forwards(self, orm): - # Adding model 'AdministrationScript' - db.create_table('ishtar_common_administrationscript', ( - ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), - ('path', self.gf('django.db.models.fields.CharField')(max_length=30)), - ('name', self.gf('django.db.models.fields.TextField')(null=True, blank=True)), - )) - db.send_create_signal('ishtar_common', ['AdministrationScript']) - - # Adding model 'AdministrationTask' - db.create_table('ishtar_common_administrationtask', ( - ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), - ('script', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['ishtar_common.AdministrationScript'])), - ('state', self.gf('django.db.models.fields.CharField')(default='S', max_length=2)), - ('creation_date', self.gf('django.db.models.fields.DateTimeField')(default=datetime.datetime.now)), - ('launch_date', self.gf('django.db.models.fields.DateTimeField')(null=True, blank=True)), - ('finished_date', self.gf('django.db.models.fields.DateTimeField')(null=True, blank=True)), - ('result', self.gf('django.db.models.fields.TextField')(null=True, blank=True)), - )) - db.send_create_signal('ishtar_common', ['AdministrationTask']) - - - def backwards(self, orm): - # Deleting model 'AdministrationScript' - db.delete_table('ishtar_common_administrationscript') - - # Deleting model 'AdministrationTask' - db.delete_table('ishtar_common_administrationtask') - - - models = { - 'auth.group': { - 'Meta': {'object_name': 'Group'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}), - 'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}) - }, - 'auth.permission': { - 'Meta': {'ordering': "('content_type__app_label', 'content_type__model', 'codename')", 'unique_together': "(('content_type', 'codename'),)", 'object_name': 'Permission'}, - 'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}) - }, - 'auth.user': { - 'Meta': {'object_name': 'User'}, - 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}), - 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Group']", 'symmetrical': 'False', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True'}), - 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}), - 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}), - 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'}) - }, - 'contenttypes.contenttype': { - 'Meta': {'ordering': "('name',)", 'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"}, - 'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'}) - }, - 'ishtar_common.administrationscript': { - 'Meta': {'ordering': "['name']", 'object_name': 'AdministrationScript'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), - 'path': ('django.db.models.fields.CharField', [], {'max_length': '30'}) - }, - 'ishtar_common.administrationtask': { - 'Meta': {'ordering': "['script']", 'object_name': 'AdministrationTask'}, - 'creation_date': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'finished_date': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'launch_date': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'result': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), - 'script': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['ishtar_common.AdministrationScript']"}), - 'state': ('django.db.models.fields.CharField', [], {'default': "'S'", 'max_length': '2'}) - }, - 'ishtar_common.arrondissement': { - 'Meta': {'object_name': 'Arrondissement'}, - 'department': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['ishtar_common.Department']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '30'}) - }, - 'ishtar_common.author': { - 'Meta': {'ordering': "('author_type__order', 'person__name')", 'object_name': 'Author'}, - 'author_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['ishtar_common.AuthorType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'person': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'author'", 'to': "orm['ishtar_common.Person']"}) - }, - 'ishtar_common.authortype': { - 'Meta': {'ordering': "['order', 'label']", 'object_name': 'AuthorType'}, - 'available': ('django.db.models.fields.BooleanField', [], {'default': 'True'}), - 'comment': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'label': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'order': ('django.db.models.fields.IntegerField', [], {'default': '1'}), - 'txt_idx': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '100'}) - }, - 'ishtar_common.canton': { - 'Meta': {'object_name': 'Canton'}, - 'arrondissement': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['ishtar_common.Arrondissement']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '30'}) - }, - 'ishtar_common.department': { - 'Meta': {'ordering': "['number']", 'object_name': 'Department'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'label': ('django.db.models.fields.CharField', [], {'max_length': '30'}), - 'number': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '3'}), - 'state': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['ishtar_common.State']", 'null': 'True', 'blank': 'True'}) - }, - 'ishtar_common.documenttemplate': { - 'Meta': {'ordering': "['associated_object_name', 'name']", 'object_name': 'DocumentTemplate'}, - 'associated_object_name': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'available': ('django.db.models.fields.BooleanField', [], {'default': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'template': ('django.db.models.fields.files.FileField', [], {'max_length': '100'}) - }, - 'ishtar_common.format': { - 'Meta': {'ordering': "['label']", 'object_name': 'Format'}, - 'available': ('django.db.models.fields.BooleanField', [], {'default': 'True'}), - 'comment': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'label': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'txt_idx': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '100'}) - }, - 'ishtar_common.formatertype': { - 'Meta': {'ordering': "('formater_type', 'options')", 'unique_together': "(('formater_type', 'options', 'many_split'),)", 'object_name': 'FormaterType'}, - 'formater_type': ('django.db.models.fields.CharField', [], {'max_length': '20'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'many_split': ('django.db.models.fields.CharField', [], {'max_length': '10', 'null': 'True', 'blank': 'True'}), - 'options': ('django.db.models.fields.CharField', [], {'max_length': '500', 'null': 'True', 'blank': 'True'}) - }, - 'ishtar_common.globalvar': { - 'Meta': {'ordering': "['slug']", 'object_name': 'GlobalVar'}, - 'description': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'slug': ('django.db.models.fields.SlugField', [], {'unique': 'True', 'max_length': '50'}), - 'value': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}) - }, - 'ishtar_common.historicalorganization': { - 'Meta': {'ordering': "('-history_date', '-history_id')", 'object_name': 'HistoricalOrganization'}, - 'address': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), - 'address_complement': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), - 'alt_address': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), - 'alt_address_complement': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), - 'alt_address_is_prefered': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'alt_country': ('django.db.models.fields.CharField', [], {'max_length': '30', 'null': 'True', 'blank': 'True'}), - 'alt_postal_code': ('django.db.models.fields.CharField', [], {'max_length': '10', 'null': 'True', 'blank': 'True'}), - 'alt_town': ('django.db.models.fields.CharField', [], {'max_length': '70', 'null': 'True', 'blank': 'True'}), - 'archived': ('django.db.models.fields.NullBooleanField', [], {'default': 'False', 'null': 'True', 'blank': 'True'}), - 'country': ('django.db.models.fields.CharField', [], {'max_length': '30', 'null': 'True', 'blank': 'True'}), - 'email': ('django.db.models.fields.EmailField', [], {'max_length': '300', 'null': 'True', 'blank': 'True'}), - 'history_creator_id': ('django.db.models.fields.IntegerField', [], {'db_index': 'True', 'null': 'True', 'blank': 'True'}), - 'history_date': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'blank': 'True'}), - 'history_id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'history_modifier_id': ('django.db.models.fields.IntegerField', [], {'db_index': 'True', 'null': 'True', 'blank': 'True'}), - 'history_type': ('django.db.models.fields.CharField', [], {'max_length': '1'}), - 'history_user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['auth.User']", 'null': 'True'}), - 'id': ('django.db.models.fields.IntegerField', [], {'db_index': 'True', 'blank': 'True'}), - 'merge_key': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), - 'mobile_phone': ('django.db.models.fields.CharField', [], {'max_length': '18', 'null': 'True', 'blank': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '500'}), - 'organization_type_id': ('django.db.models.fields.IntegerField', [], {'db_index': 'True', 'null': 'True', 'blank': 'True'}), - 'phone': ('django.db.models.fields.CharField', [], {'max_length': '18', 'null': 'True', 'blank': 'True'}), - 'phone2': ('django.db.models.fields.CharField', [], {'max_length': '18', 'null': 'True', 'blank': 'True'}), - 'phone3': ('django.db.models.fields.CharField', [], {'max_length': '18', 'null': 'True', 'blank': 'True'}), - 'phone_desc': ('django.db.models.fields.CharField', [], {'max_length': '300', 'null': 'True', 'blank': 'True'}), - 'phone_desc2': ('django.db.models.fields.CharField', [], {'max_length': '300', 'null': 'True', 'blank': 'True'}), - 'phone_desc3': ('django.db.models.fields.CharField', [], {'max_length': '300', 'null': 'True', 'blank': 'True'}), - 'postal_code': ('django.db.models.fields.CharField', [], {'max_length': '10', 'null': 'True', 'blank': 'True'}), - 'raw_phone': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), - 'town': ('django.db.models.fields.CharField', [], {'max_length': '70', 'null': 'True', 'blank': 'True'}) - }, - 'ishtar_common.historicalperson': { - 'Meta': {'ordering': "('-history_date', '-history_id')", 'object_name': 'HistoricalPerson'}, - 'address': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), - 'address_complement': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), - 'alt_address': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), - 'alt_address_complement': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), - 'alt_address_is_prefered': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'alt_country': ('django.db.models.fields.CharField', [], {'max_length': '30', 'null': 'True', 'blank': 'True'}), - 'alt_postal_code': ('django.db.models.fields.CharField', [], {'max_length': '10', 'null': 'True', 'blank': 'True'}), - 'alt_town': ('django.db.models.fields.CharField', [], {'max_length': '70', 'null': 'True', 'blank': 'True'}), - 'archived': ('django.db.models.fields.NullBooleanField', [], {'default': 'False', 'null': 'True', 'blank': 'True'}), - 'attached_to_id': ('django.db.models.fields.IntegerField', [], {'db_index': 'True', 'null': 'True', 'blank': 'True'}), - 'comment': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), - 'contact_type': ('django.db.models.fields.CharField', [], {'max_length': '300', 'null': 'True', 'blank': 'True'}), - 'country': ('django.db.models.fields.CharField', [], {'max_length': '30', 'null': 'True', 'blank': 'True'}), - 'email': ('django.db.models.fields.EmailField', [], {'max_length': '300', 'null': 'True', 'blank': 'True'}), - 'history_creator_id': ('django.db.models.fields.IntegerField', [], {'db_index': 'True', 'null': 'True', 'blank': 'True'}), - 'history_date': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'blank': 'True'}), - 'history_id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'history_modifier_id': ('django.db.models.fields.IntegerField', [], {'db_index': 'True', 'null': 'True', 'blank': 'True'}), - 'history_type': ('django.db.models.fields.CharField', [], {'max_length': '1'}), - 'history_user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['auth.User']", 'null': 'True'}), - 'id': ('django.db.models.fields.IntegerField', [], {'db_index': 'True', 'blank': 'True'}), - 'merge_key': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), - 'mobile_phone': ('django.db.models.fields.CharField', [], {'max_length': '18', 'null': 'True', 'blank': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '200', 'null': 'True', 'blank': 'True'}), - 'old_title': ('django.db.models.fields.CharField', [], {'max_length': '100', 'null': 'True', 'blank': 'True'}), - 'phone': ('django.db.models.fields.CharField', [], {'max_length': '18', 'null': 'True', 'blank': 'True'}), - 'phone2': ('django.db.models.fields.CharField', [], {'max_length': '18', 'null': 'True', 'blank': 'True'}), - 'phone3': ('django.db.models.fields.CharField', [], {'max_length': '18', 'null': 'True', 'blank': 'True'}), - 'phone_desc': ('django.db.models.fields.CharField', [], {'max_length': '300', 'null': 'True', 'blank': 'True'}), - 'phone_desc2': ('django.db.models.fields.CharField', [], {'max_length': '300', 'null': 'True', 'blank': 'True'}), - 'phone_desc3': ('django.db.models.fields.CharField', [], {'max_length': '300', 'null': 'True', 'blank': 'True'}), - 'postal_code': ('django.db.models.fields.CharField', [], {'max_length': '10', 'null': 'True', 'blank': 'True'}), - 'raw_name': ('django.db.models.fields.CharField', [], {'max_length': '300', 'null': 'True', 'blank': 'True'}), - 'raw_phone': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), - 'salutation': ('django.db.models.fields.CharField', [], {'max_length': '200', 'null': 'True', 'blank': 'True'}), - 'surname': ('django.db.models.fields.CharField', [], {'max_length': '50', 'null': 'True', 'blank': 'True'}), - 'title_id': ('django.db.models.fields.IntegerField', [], {'db_index': 'True', 'null': 'True', 'blank': 'True'}), - 'town': ('django.db.models.fields.CharField', [], {'max_length': '70', 'null': 'True', 'blank': 'True'}) - }, - 'ishtar_common.import': { - 'Meta': {'object_name': 'Import'}, - 'conservative_import': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'creation_date': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'null': 'True', 'blank': 'True'}), - 'encoding': ('django.db.models.fields.CharField', [], {'default': "'utf-8'", 'max_length': '15'}), - 'end_date': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'error_file': ('django.db.models.fields.files.FileField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'imported_file': ('django.db.models.fields.files.FileField', [], {'max_length': '220'}), - 'imported_images': ('django.db.models.fields.files.FileField', [], {'max_length': '220', 'null': 'True', 'blank': 'True'}), - 'importer_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['ishtar_common.ImporterType']"}), - 'match_file': ('django.db.models.fields.files.FileField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '500', 'null': 'True', 'blank': 'True'}), - 'result_file': ('django.db.models.fields.files.FileField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}), - 'seconds_remaining': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}), - 'skip_lines': ('django.db.models.fields.IntegerField', [], {'default': '1'}), - 'state': ('django.db.models.fields.CharField', [], {'default': "'C'", 'max_length': '2'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['ishtar_common.IshtarUser']"}) - }, - 'ishtar_common.importercolumn': { - 'Meta': {'ordering': "('importer_type', 'col_number')", 'unique_together': "(('importer_type', 'col_number'),)", 'object_name': 'ImporterColumn'}, - 'col_number': ('django.db.models.fields.IntegerField', [], {'default': '1'}), - 'description': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), - 'export_field_name': ('django.db.models.fields.CharField', [], {'max_length': '200', 'null': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'importer_type': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'columns'", 'to': "orm['ishtar_common.ImporterType']"}), - 'label': ('django.db.models.fields.CharField', [], {'max_length': '200', 'null': 'True', 'blank': 'True'}), - 'regexp_pre_filter': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['ishtar_common.Regexp']", 'null': 'True', 'blank': 'True'}), - 'required': ('django.db.models.fields.BooleanField', [], {'default': 'False'}) - }, - 'ishtar_common.importerdefault': { - 'Meta': {'object_name': 'ImporterDefault'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'importer_type': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'defaults'", 'to': "orm['ishtar_common.ImporterType']"}), - 'target': ('django.db.models.fields.CharField', [], {'max_length': '500'}) - }, - 'ishtar_common.importerdefaultvalues': { - 'Meta': {'object_name': 'ImporterDefaultValues'}, - 'default_target': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'default_values'", 'to': "orm['ishtar_common.ImporterDefault']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'target': ('django.db.models.fields.CharField', [], {'max_length': '500'}), - 'value': ('django.db.models.fields.CharField', [], {'max_length': '500'}) - }, - 'ishtar_common.importerduplicatefield': { - 'Meta': {'object_name': 'ImporterDuplicateField'}, - 'column': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'duplicate_fields'", 'to': "orm['ishtar_common.ImporterColumn']"}), - 'concat': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'concat_str': ('django.db.models.fields.CharField', [], {'max_length': '5', 'null': 'True', 'blank': 'True'}), - 'field_name': ('django.db.models.fields.CharField', [], {'max_length': '200', 'null': 'True', 'blank': 'True'}), - 'force_new': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}) - }, - 'ishtar_common.importermodel': { - 'Meta': {'ordering': "('name',)", 'object_name': 'ImporterModel'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'klass': ('django.db.models.fields.CharField', [], {'max_length': '200'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '200'}) - }, - 'ishtar_common.importertype': { - 'Meta': {'ordering': "('name',)", 'object_name': 'ImporterType'}, - 'associated_models': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'to': "orm['ishtar_common.ImporterModel']"}), - 'created_models': ('django.db.models.fields.related.ManyToManyField', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'symmetrical': 'False', 'to': "orm['ishtar_common.ImporterModel']"}), - 'description': ('django.db.models.fields.CharField', [], {'max_length': '500', 'null': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_template': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '100', 'null': 'True', 'blank': 'True'}), - 'slug': ('django.db.models.fields.SlugField', [], {'max_length': '100', 'unique': 'True', 'null': 'True', 'blank': 'True'}), - 'unicity_keys': ('django.db.models.fields.CharField', [], {'max_length': '500', 'null': 'True', 'blank': 'True'}), - 'users': ('django.db.models.fields.related.ManyToManyField', [], {'symmetrical': 'False', 'to': "orm['ishtar_common.IshtarUser']", 'null': 'True', 'blank': 'True'}) - }, - 'ishtar_common.importtarget': { - 'Meta': {'object_name': 'ImportTarget'}, - 'column': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'targets'", 'to': "orm['ishtar_common.ImporterColumn']"}), - 'comment': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), - 'concat': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'concat_str': ('django.db.models.fields.CharField', [], {'max_length': '5', 'null': 'True', 'blank': 'True'}), - 'force_new': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'formater_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['ishtar_common.FormaterType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'regexp_filter': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['ishtar_common.Regexp']", 'null': 'True', 'blank': 'True'}), - 'target': ('django.db.models.fields.CharField', [], {'max_length': '500'}) - }, - 'ishtar_common.ishtarsiteprofile': { - 'Meta': {'ordering': "['label']", 'object_name': 'IshtarSiteProfile'}, - 'active': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'base_color': ('django.db.models.fields.CharField', [], {'default': "'rgba(0, 0, 0, 0)'", 'max_length': '200'}), - 'base_find_external_id': ('django.db.models.fields.TextField', [], {'default': "'{context_record__external_id}-{label}'"}), - 'container_external_id': ('django.db.models.fields.TextField', [], {'default': "'{responsible__external_id}-{index}'"}), - 'context_record': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'context_record_color': ('django.db.models.fields.CharField', [], {'default': "'rgba(210,200,0,0.2)'", 'max_length': '200'}), - 'context_record_external_id': ('django.db.models.fields.TextField', [], {'default': "'{parcel__external_id}-{label}'"}), - 'currency': ('django.db.models.fields.CharField', [], {'default': "u'\\u20ac'", 'max_length': "'5'"}), - 'description': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), - 'file_external_id': ('django.db.models.fields.TextField', [], {'default': "'{year}-{numeric_reference}'"}), - 'files': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'files_color': ('django.db.models.fields.CharField', [], {'default': "'rgba(0, 32, 210, 0.1)'", 'max_length': '200'}), - 'find': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'find_color': ('django.db.models.fields.CharField', [], {'default': "'rgba(210,0,0,0.15)'", 'max_length': '200'}), - 'find_external_id': ('django.db.models.fields.TextField', [], {'default': "'{get_first_base_find__context_record__external_id}-{label}'"}), - 'find_index': ('django.db.models.fields.CharField', [], {'default': "'O'", 'max_length': '2'}), - 'homepage': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'label': ('django.db.models.fields.TextField', [], {}), - 'mapping': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'mapping_color': ('django.db.models.fields.CharField', [], {'default': "'rgba(72, 236, 0, 0.15)'", 'max_length': '200'}), - 'parcel_external_id': ('django.db.models.fields.TextField', [], {'default': "'{associated_file__external_id}{operation__code_patriarche}-{town__numero_insee}-{section}{parcel_number}'"}), - 'person_raw_name': ('django.db.models.fields.TextField', [], {'default': "'{name|upper} {surname}'"}), - 'slug': ('django.db.models.fields.SlugField', [], {'unique': 'True', 'max_length': '50'}), - 'warehouse': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'warehouse_color': ('django.db.models.fields.CharField', [], {'default': "'rgba(10,20,200,0.15)'", 'max_length': '200'}), - 'warehouse_external_id': ('django.db.models.fields.TextField', [], {'default': "'{name|slug}'"}) - }, - 'ishtar_common.ishtaruser': { - 'Meta': {'object_name': 'IshtarUser', '_ormbases': ['auth.User']}, - 'advanced_shortcut_menu': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'person': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'ishtaruser'", 'unique': 'True', 'to': "orm['ishtar_common.Person']"}), - 'user_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['auth.User']", 'unique': 'True', 'primary_key': 'True'}) - }, - 'ishtar_common.itemkey': { - 'Meta': {'object_name': 'ItemKey'}, - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'importer': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['ishtar_common.Import']", 'null': 'True', 'blank': 'True'}), - 'key': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}) - }, - 'ishtar_common.operationtype': { - 'Meta': {'ordering': "['-preventive', 'order', 'label']", 'object_name': 'OperationType'}, - 'available': ('django.db.models.fields.BooleanField', [], {'default': 'True'}), - 'comment': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'label': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'order': ('django.db.models.fields.IntegerField', [], {'default': '1'}), - 'preventive': ('django.db.models.fields.BooleanField', [], {'default': 'True'}), - 'txt_idx': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '100'}) - }, - 'ishtar_common.organization': { - 'Meta': {'object_name': 'Organization'}, - 'address': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), - 'address_complement': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), - 'alt_address': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), - 'alt_address_complement': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), - 'alt_address_is_prefered': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'alt_country': ('django.db.models.fields.CharField', [], {'max_length': '30', 'null': 'True', 'blank': 'True'}), - 'alt_postal_code': ('django.db.models.fields.CharField', [], {'max_length': '10', 'null': 'True', 'blank': 'True'}), - 'alt_town': ('django.db.models.fields.CharField', [], {'max_length': '70', 'null': 'True', 'blank': 'True'}), - 'archived': ('django.db.models.fields.NullBooleanField', [], {'default': 'False', 'null': 'True', 'blank': 'True'}), - 'country': ('django.db.models.fields.CharField', [], {'max_length': '30', 'null': 'True', 'blank': 'True'}), - 'email': ('django.db.models.fields.EmailField', [], {'max_length': '300', 'null': 'True', 'blank': 'True'}), - 'history_creator': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['auth.User']"}), - 'history_modifier': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['auth.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'imports': ('django.db.models.fields.related.ManyToManyField', [], {'blank': 'True', 'related_name': "'imported_ishtar_common_organization'", 'null': 'True', 'symmetrical': 'False', 'to': "orm['ishtar_common.Import']"}), - 'merge_candidate': ('django.db.models.fields.related.ManyToManyField', [], {'blank': 'True', 'related_name': "'merge_candidate_rel_+'", 'null': 'True', 'to': "orm['ishtar_common.Organization']"}), - 'merge_exclusion': ('django.db.models.fields.related.ManyToManyField', [], {'blank': 'True', 'related_name': "'merge_exclusion_rel_+'", 'null': 'True', 'to': "orm['ishtar_common.Organization']"}), - 'merge_key': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), - 'mobile_phone': ('django.db.models.fields.CharField', [], {'max_length': '18', 'null': 'True', 'blank': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '500'}), - 'organization_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['ishtar_common.OrganizationType']"}), - 'phone': ('django.db.models.fields.CharField', [], {'max_length': '18', 'null': 'True', 'blank': 'True'}), - 'phone2': ('django.db.models.fields.CharField', [], {'max_length': '18', 'null': 'True', 'blank': 'True'}), - 'phone3': ('django.db.models.fields.CharField', [], {'max_length': '18', 'null': 'True', 'blank': 'True'}), - 'phone_desc': ('django.db.models.fields.CharField', [], {'max_length': '300', 'null': 'True', 'blank': 'True'}), - 'phone_desc2': ('django.db.models.fields.CharField', [], {'max_length': '300', 'null': 'True', 'blank': 'True'}), - 'phone_desc3': ('django.db.models.fields.CharField', [], {'max_length': '300', 'null': 'True', 'blank': 'True'}), - 'postal_code': ('django.db.models.fields.CharField', [], {'max_length': '10', 'null': 'True', 'blank': 'True'}), - 'raw_phone': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), - 'town': ('django.db.models.fields.CharField', [], {'max_length': '70', 'null': 'True', 'blank': 'True'}) - }, - 'ishtar_common.organizationtype': { - 'Meta': {'ordering': "('label',)", 'object_name': 'OrganizationType'}, - 'available': ('django.db.models.fields.BooleanField', [], {'default': 'True'}), - 'comment': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'label': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'txt_idx': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '100'}) - }, - 'ishtar_common.person': { - 'Meta': {'object_name': 'Person'}, - 'address': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), - 'address_complement': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), - 'alt_address': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), - 'alt_address_complement': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), - 'alt_address_is_prefered': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'alt_country': ('django.db.models.fields.CharField', [], {'max_length': '30', 'null': 'True', 'blank': 'True'}), - 'alt_postal_code': ('django.db.models.fields.CharField', [], {'max_length': '10', 'null': 'True', 'blank': 'True'}), - 'alt_town': ('django.db.models.fields.CharField', [], {'max_length': '70', 'null': 'True', 'blank': 'True'}), - 'archived': ('django.db.models.fields.NullBooleanField', [], {'default': 'False', 'null': 'True', 'blank': 'True'}), - 'attached_to': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'members'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['ishtar_common.Organization']"}), - 'comment': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), - 'contact_type': ('django.db.models.fields.CharField', [], {'max_length': '300', 'null': 'True', 'blank': 'True'}), - 'country': ('django.db.models.fields.CharField', [], {'max_length': '30', 'null': 'True', 'blank': 'True'}), - 'email': ('django.db.models.fields.EmailField', [], {'max_length': '300', 'null': 'True', 'blank': 'True'}), - 'history_creator': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['auth.User']"}), - 'history_modifier': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['auth.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'imports': ('django.db.models.fields.related.ManyToManyField', [], {'blank': 'True', 'related_name': "'imported_ishtar_common_person'", 'null': 'True', 'symmetrical': 'False', 'to': "orm['ishtar_common.Import']"}), - 'merge_candidate': ('django.db.models.fields.related.ManyToManyField', [], {'blank': 'True', 'related_name': "'merge_candidate_rel_+'", 'null': 'True', 'to': "orm['ishtar_common.Person']"}), - 'merge_exclusion': ('django.db.models.fields.related.ManyToManyField', [], {'blank': 'True', 'related_name': "'merge_exclusion_rel_+'", 'null': 'True', 'to': "orm['ishtar_common.Person']"}), - 'merge_key': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), - 'mobile_phone': ('django.db.models.fields.CharField', [], {'max_length': '18', 'null': 'True', 'blank': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '200', 'null': 'True', 'blank': 'True'}), - 'old_title': ('django.db.models.fields.CharField', [], {'max_length': '100', 'null': 'True', 'blank': 'True'}), - 'person_types': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['ishtar_common.PersonType']", 'symmetrical': 'False'}), - 'phone': ('django.db.models.fields.CharField', [], {'max_length': '18', 'null': 'True', 'blank': 'True'}), - 'phone2': ('django.db.models.fields.CharField', [], {'max_length': '18', 'null': 'True', 'blank': 'True'}), - 'phone3': ('django.db.models.fields.CharField', [], {'max_length': '18', 'null': 'True', 'blank': 'True'}), - 'phone_desc': ('django.db.models.fields.CharField', [], {'max_length': '300', 'null': 'True', 'blank': 'True'}), - 'phone_desc2': ('django.db.models.fields.CharField', [], {'max_length': '300', 'null': 'True', 'blank': 'True'}), - 'phone_desc3': ('django.db.models.fields.CharField', [], {'max_length': '300', 'null': 'True', 'blank': 'True'}), - 'postal_code': ('django.db.models.fields.CharField', [], {'max_length': '10', 'null': 'True', 'blank': 'True'}), - 'raw_name': ('django.db.models.fields.CharField', [], {'max_length': '300', 'null': 'True', 'blank': 'True'}), - 'raw_phone': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), - 'salutation': ('django.db.models.fields.CharField', [], {'max_length': '200', 'null': 'True', 'blank': 'True'}), - 'surname': ('django.db.models.fields.CharField', [], {'max_length': '50', 'null': 'True', 'blank': 'True'}), - 'title': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['ishtar_common.TitleType']", 'null': 'True', 'blank': 'True'}), - 'town': ('django.db.models.fields.CharField', [], {'max_length': '70', 'null': 'True', 'blank': 'True'}) - }, - 'ishtar_common.persontype': { - 'Meta': {'ordering': "('label',)", 'object_name': 'PersonType'}, - 'available': ('django.db.models.fields.BooleanField', [], {'default': 'True'}), - 'comment': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), - 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'symmetrical': 'False', 'to': "orm['auth.Group']", 'null': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'label': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'txt_idx': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '100'}) - }, - 'ishtar_common.regexp': { - 'Meta': {'object_name': 'Regexp'}, - 'description': ('django.db.models.fields.CharField', [], {'max_length': '500', 'null': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'regexp': ('django.db.models.fields.CharField', [], {'max_length': '500'}) - }, - 'ishtar_common.sourcetype': { - 'Meta': {'ordering': "['label']", 'object_name': 'SourceType'}, - 'available': ('django.db.models.fields.BooleanField', [], {'default': 'True'}), - 'comment': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'label': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'txt_idx': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '100'}) - }, - 'ishtar_common.spatialreferencesystem': { - 'Meta': {'ordering': "('label',)", 'object_name': 'SpatialReferenceSystem'}, - 'auth_name': ('django.db.models.fields.CharField', [], {'default': "'EPSG'", 'max_length': '256'}), - 'available': ('django.db.models.fields.BooleanField', [], {'default': 'True'}), - 'comment': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'label': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'order': ('django.db.models.fields.IntegerField', [], {'default': '10'}), - 'srid': ('django.db.models.fields.IntegerField', [], {}), - 'txt_idx': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '100'}) - }, - 'ishtar_common.state': { - 'Meta': {'ordering': "['number']", 'object_name': 'State'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'label': ('django.db.models.fields.CharField', [], {'max_length': '30'}), - 'number': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '3'}) - }, - 'ishtar_common.supporttype': { - 'Meta': {'object_name': 'SupportType'}, - 'available': ('django.db.models.fields.BooleanField', [], {'default': 'True'}), - 'comment': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'label': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'txt_idx': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '100'}) - }, - 'ishtar_common.targetkey': { - 'Meta': {'unique_together': "(('target', 'key', 'associated_user', 'associated_import'),)", 'object_name': 'TargetKey'}, - 'associated_import': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['ishtar_common.Import']", 'null': 'True', 'blank': 'True'}), - 'associated_user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['ishtar_common.IshtarUser']", 'null': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_set': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'key': ('django.db.models.fields.TextField', [], {}), - 'target': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'keys'", 'to': "orm['ishtar_common.ImportTarget']"}), - 'value': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}) - }, - 'ishtar_common.titletype': { - 'Meta': {'ordering': "('label',)", 'object_name': 'TitleType'}, - 'available': ('django.db.models.fields.BooleanField', [], {'default': 'True'}), - 'comment': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'label': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'txt_idx': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '100'}) - }, - 'ishtar_common.town': { - 'Meta': {'ordering': "['numero_insee']", 'object_name': 'Town'}, - 'canton': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['ishtar_common.Canton']", 'null': 'True', 'blank': 'True'}), - 'center': ('django.contrib.gis.db.models.fields.PointField', [], {'srid': '27572', 'null': 'True', 'blank': 'True'}), - 'departement': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['ishtar_common.Department']", 'null': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'imports': ('django.db.models.fields.related.ManyToManyField', [], {'blank': 'True', 'related_name': "'imported_ishtar_common_town'", 'null': 'True', 'symmetrical': 'False', 'to': "orm['ishtar_common.Import']"}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'numero_insee': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '6'}), - 'surface': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}) - } - } - - complete_apps = ['ishtar_common']
\ No newline at end of file diff --git a/ishtar_common/model_merging.py b/ishtar_common/model_merging.py index c577a8cf1..be2867cb6 100644 --- a/ishtar_common/model_merging.py +++ b/ishtar_common/model_merging.py @@ -1,11 +1,22 @@ # from https://djangosnippets.org/snippets/2283/ +from django.apps import apps from django.db import transaction -from django.db.models import get_models, Model -from django.contrib.contenttypes.generic import GenericForeignKey +from django.db.models import Model +from django.contrib.contenttypes.fields import GenericForeignKey +from django.core.exceptions import ObjectDoesNotExist -@transaction.commit_on_success +def get_models(): + _apps = apps.app_configs.items() + models = [] + for app_name, app_config in _apps: + models += [apps.get_model(app_name, m) + for m in apps.get_app_config(app_name).models] + return models + + +@transaction.atomic def merge_model_objects(primary_object, alias_objects=[], keep_old=False): """ Use this function to merge model objects (i.e. Users, Organizations, Polls, @@ -63,7 +74,10 @@ def merge_model_objects(primary_object, alias_objects=[], keep_old=False): alias_varname = related_object.get_accessor_name() # The variable name on the related model. obj_varname = related_object.field.name - related_objects = getattr(alias_object, alias_varname) + try: + related_objects = getattr(alias_object, alias_varname) + except ObjectDoesNotExist: + continue for obj in related_objects.all(): setattr(obj, obj_varname, primary_object) obj.save() diff --git a/ishtar_common/models.py b/ishtar_common/models.py index 7f79df72f..01b46b7ae 100644 --- a/ishtar_common/models.py +++ b/ishtar_common/models.py @@ -30,9 +30,11 @@ import logging import os from os.path import isfile, join import re +from secretary import Renderer as SecretaryRenderer import shutil from subprocess import Popen, PIPE import tempfile +import time import unicodecsv import zipfile @@ -57,38 +59,29 @@ from django.template.defaultfilters import slugify from django.contrib.auth.models import User, Group from django.contrib.contenttypes.models import ContentType -from django.contrib.contenttypes import generic +from django.contrib.contenttypes.fields import GenericForeignKey from django.contrib.gis.db import models from simple_history.models import HistoricalRecords as BaseHistoricalRecords -from ishtar_common.ooo_replace import ooo_replace from ishtar_common.model_merging import merge_model_objects from ishtar_common.utils import get_cache, disable_for_loaddata from ishtar_common.data_importer import Importer, ImportFormater, \ IntegerFormater, FloatFormater, UnicodeFormater, DateFormater, \ TypeFormater, YearFormater, StrToBoolean, FileFormater - logger = logging.getLogger(__name__) def post_save_user(sender, **kwargs): user = kwargs['instance'] - try: - q = IshtarUser.objects.filter(username=user.username) - if not q.count(): - ishtaruser = IshtarUser.create_from_user(user) - else: - ishtaruser = q.all()[0] - administrator, created = PersonType.objects.get_or_create( - txt_idx='administrator') - if ishtaruser.is_superuser \ - and not ishtaruser.has_right('administrator'): - ishtaruser.person.person_types.add(administrator) - except DatabaseError: # manage when db is not synced - pass + if kwargs["created"]: + try: + IshtarUser.create_from_user(user) + except DatabaseError: # manage when db is not synced + pass + IshtarUser.set_superuser(user) post_save.connect(post_save_user, sender=User) @@ -132,7 +125,7 @@ def check_model_access_control(request, model, available_perms=None): class Imported(models.Model): imports = models.ManyToManyField( - 'Import', blank=True, null=True, + 'Import', blank=True, related_name="imported_%(app_label)s_%(class)s") class Meta: @@ -158,6 +151,15 @@ class ValueGetter(object): values[prefix + field_name] = value for extra_field in self.GET_VALUES_EXTRA: values[prefix + extra_field] = getattr(self, extra_field) or '' + for key in values.keys(): + val = values[key] + if val is None: + val = '' + else: + val = unicode(val) + if val.endswith('.None'): + val = '' + values[key] = val values['KEYS'] = u'\n'.join(values.keys()) value_list = [] for key in values.keys(): @@ -187,7 +189,7 @@ class HistoricalRecords(BaseHistoricalRecords): history_modifier = getattr(instance, 'history_modifier', None) assert history_modifier except (User.DoesNotExist, AssertionError): - # on batch removing of users, user could have disapeared + # on batch removing of users, user could have disappeared return manager = getattr(instance, self.manager_name) attrs = {} @@ -197,7 +199,8 @@ class HistoricalRecords(BaseHistoricalRecords): .filter(history_modifier_id=history_modifier.pk)\ .order_by('-history_date', '-history_id') if not q_history.count(): - manager.create(history_type=type, **attrs) + manager.create(history_type=type, + history_date=datetime.datetime.now(), **attrs) return old_instance = q_history.all()[0] # multiple saving by the same user in a very short time are generaly @@ -210,6 +213,8 @@ class HistoricalRecords(BaseHistoricalRecords): if q.count(): return + if 'history_date' not in attrs or not attrs['history_date']: + attrs['history_date'] = datetime.datetime.now() # record a new version only if data have been changed for field in instance._meta.fields: if getattr(old_instance, field.attname) != attrs[field.attname]: @@ -253,7 +258,7 @@ def is_unique(cls, field): return func -class OwnPerms: +class OwnPerms(object): """ Manage special permissions for object's owner """ @@ -315,13 +320,13 @@ class OwnPerms: """ Get Own items """ - if isinstance(user, User): - user = IshtarUser.objects.get(user_ptr=user) - if user.is_anonymous(): + if hasattr(user, 'is_authenticated') and not user.is_authenticated(): returned = cls.objects.filter(pk__isnull=True) if values: returned = [] return returned + if isinstance(user, User): + user = IshtarUser.objects.get(user_ptr=user) items = [] if hasattr(cls, 'BASKET_MODEL'): items = list(cls.BASKET_MODEL.objects.filter(user=user).all()) @@ -774,7 +779,7 @@ class ItemKey(models.Model): key = models.CharField(_(u"Key"), max_length=100) content_type = models.ForeignKey(ContentType) object_id = models.PositiveIntegerField() - content_object = generic.GenericForeignKey('content_type', 'object_id') + content_object = GenericForeignKey('content_type', 'object_id') importer = models.ForeignKey( 'Import', null=True, blank=True, help_text=_(u"Specific key to an import")) @@ -869,6 +874,28 @@ class HistoryError(Exception): PRIVATE_FIELDS = ('id', 'history_modifier', 'order') +class BulkUpdatedItem(object): + @classmethod + def bulk_recursion(cls, transaction_id, extra_args): + """ + Prevent infinite recursion. Should not happen but wrong manipulation + in the database or messy imports can generate circular relations + + :param transaction_id: current transaction ID (unix time) - if null + a transaction ID is generated + :param extra_args: arguments dealing with + :return: (transaction ID, is a recursion) + """ + if not transaction_id: + transaction_id = unicode(time.time()) + args = ['cached_label_bulk_update', transaction_id] + extra_args + key, val = get_cache(cls, args) + if val: + return transaction_id, True + cache.set(key, 1, settings.CACHE_SMALLTIMEOUT) + return transaction_id, False + + class BaseHistorizedItem(Imported): IS_BASKET = False history_modifier = models.ForeignKey( @@ -1163,16 +1190,16 @@ class IshtarSiteProfile(models.Model, Cached): description = models.TextField(_(u"Description"), null=True, blank=True) base_color = models.CharField( _(u"CSS color code for base module"), - default='rgba(0, 0, 0, 0)', max_length=200) + default=u'rgba(0, 0, 0, 0)', max_length=200) files = models.BooleanField(_(u"Files module"), default=False) files_color = models.CharField( _(u"CSS color code for files module"), - default='rgba(0, 32, 210, 0.1)', max_length=200) + default=u'rgba(0, 32, 210, 0.1)', max_length=200) context_record = models.BooleanField(_(u"Context records module"), default=False) context_record_color = models.CharField( _(u"CSS color code for context record module"), - default='rgba(210,200,0,0.2)', max_length=200) + default=u'rgba(210,200,0,0.2)', max_length=200) find = models.BooleanField(_(u"Finds module"), default=False, help_text=_(u"Need context records module")) find_index = models.CharField( @@ -1182,16 +1209,16 @@ class IshtarSiteProfile(models.Model, Cached): u"only if there is no find in the database")) find_color = models.CharField( _(u"CSS color code for find module"), - default='rgba(210,0,0,0.15)', max_length=200) + default=u'rgba(210,0,0,0.15)', max_length=200) warehouse = models.BooleanField( _(u"Warehouses module"), default=False, help_text=_(u"Need finds module")) warehouse_color = models.CharField( - _(u"CSS code for warehouse module"), default='rgba(10,20,200,0.15)', + _(u"CSS code for warehouse module"), default=u'rgba(10,20,200,0.15)', max_length=200) mapping = models.BooleanField(_(u"Mapping module"), default=False) mapping_color = models.CharField( - _(u"CSS code for mapping module"), default='rgba(72, 236, 0, 0.15)', + _(u"CSS code for mapping module"), default=u'rgba(72, 236, 0, 0.15)', max_length=200) homepage = models.TextField( _(u"Home page"), null=True, blank=True, @@ -1200,57 +1227,57 @@ class IshtarSiteProfile(models.Model, Cached): u"can be used to display a random image.")) file_external_id = models.TextField( _(u"File external id"), - default="{year}-{numeric_reference}", + default=u"{year}-{numeric_reference}", help_text=_(u"Formula to manage file external ID. " u"Change this with care. With incorrect formula, the " u"application might be unusable and import of external " u"data can be destructive.")) parcel_external_id = models.TextField( _(u"Parcel external id"), - default="{associated_file__external_id}{operation__code_patriarche}-" - "{town__numero_insee}-{section}{parcel_number}", + default=u"{associated_file__external_id}{operation__code_patriarche}-" + u"{town__numero_insee}-{section}{parcel_number}", help_text=_(u"Formula to manage parcel external ID. " u"Change this with care. With incorrect formula, the " u"application might be unusable and import of external " u"data can be destructive.")) context_record_external_id = models.TextField( _(u"Context record external id"), - default="{parcel__external_id}-{label}", + default=u"{parcel__external_id}-{label}", help_text=_(u"Formula to manage context record external ID. " u"Change this with care. With incorrect formula, the " u"application might be unusable and import of external " u"data can be destructive.")) base_find_external_id = models.TextField( _(u"Base find external id"), - default="{context_record__external_id}-{label}", + default=u"{context_record__external_id}-{label}", help_text=_(u"Formula to manage base find external ID. " u"Change this with care. With incorrect formula, the " u"application might be unusable and import of external " u"data can be destructive.")) find_external_id = models.TextField( _(u"Find external id"), - default="{get_first_base_find__context_record__external_id}-{label}", + default=u"{get_first_base_find__context_record__external_id}-{label}", help_text=_(u"Formula to manage find external ID. " u"Change this with care. With incorrect formula, the " u"application might be unusable and import of external " u"data can be destructive.")) container_external_id = models.TextField( _(u"Container external id"), - default="{responsible__external_id}-{index}", + default=u"{responsible__external_id}-{index}", help_text=_(u"Formula to manage container external ID. " u"Change this with care. With incorrect formula, the " u"application might be unusable and import of external " u"data can be destructive.")) warehouse_external_id = models.TextField( _(u"Warehouse external id"), - default="{name|slug}", + default=u"{name|slug}", help_text=_(u"Formula to manage warehouse external ID. " u"Change this with care. With incorrect formula, the " u"application might be unusable and import of external " u"data can be destructive.")) person_raw_name = models.TextField( _(u"Raw name for person"), - default="{name|upper} {surname}", + default=u"{name|upper} {surname}", help_text=_(u"Formula to manage person raw_name. " u"Change this with care. With incorrect formula, the " u"application might be unusable and import of external " @@ -1584,7 +1611,50 @@ class DocumentTemplate(models.Model): datetime.date.today().strftime('%Y-%m-%d') +\ u"." + self.template.name.split('.')[-1] values = c_object.get_values() + engine = SecretaryRenderer() + result = engine.render(self.template, **values) + output = open(output_name, 'wb') + output.write(result) + return output_name + + def convert_from_v1(self): + """ + Convert the current template from v1 to v2. + """ + from old.ooo_replace import ooo_replace + from archaeological_operations.models import AdministrativeAct + + old_dir = settings.MEDIA_ROOT + "/upload/templates/v1/" + if not os.path.exists(old_dir): + os.makedirs(old_dir) + shutil.copy(settings.MEDIA_ROOT + self.template.name, old_dir) + + tempdir = tempfile.mkdtemp("-ishtardocs") + output_name = tempdir + os.path.sep + self.template.name.split( + os.sep)[-1] + + objects = [] + filters = [ + {'operation__isnull': False}, + {'associated_file__isnull': False}, + {'treatment_file__isnull': False}, + {'treatment__isnull': False}, + ] + for filtr in filters: + q = AdministrativeAct.objects.filter(**filtr) + if q.count(): + objects.append(q.all()[0]) + + if not objects: + return + values = {} + for obj in objects: + values.update(obj.get_values()) + for key in values: + values[key] = "{{ " + key + " }}" + ooo_replace(self.template, output_name, values) + shutil.move(output_name, settings.MEDIA_ROOT + self.template.name) return output_name @@ -1704,10 +1774,8 @@ class Address(BaseHistorizedItem): class Merge(models.Model): merge_key = models.TextField(_("Merge key"), blank=True, null=True) - merge_candidate = models.ManyToManyField("self", - blank=True, null=True) - merge_exclusion = models.ManyToManyField("self", - blank=True, null=True) + merge_candidate = models.ManyToManyField("self", blank=True) + merge_exclusion = models.ManyToManyField("self", blank=True) archived = models.NullBooleanField(default=False, blank=True, null=True) # 1 for one word similarity, 2 for two word similarity, etc. @@ -1846,13 +1914,13 @@ class ImporterType(models.Model): description = models.CharField(_(u"Description"), blank=True, null=True, max_length=500) users = models.ManyToManyField('IshtarUser', verbose_name=_(u"Users"), - blank=True, null=True) + blank=True) associated_models = models.ForeignKey( ImporterModel, verbose_name=_(u"Associated model"), related_name='+', blank=True, null=True) created_models = models.ManyToManyField( ImporterModel, verbose_name=_(u"Models that can accept new items"), - blank=True, null=True, help_text=_(u"Leave blank for no restrictions"), + blank=True, help_text=_(u"Leave blank for no restrictions"), related_name='+') is_template = models.BooleanField(_(u"Is template"), default=False) unicity_keys = models.CharField(_(u"Unicity keys (separator \";\")"), @@ -2366,7 +2434,7 @@ class Import(models.Model): _(u"Associated images (zip file)"), upload_to="upload/imports/", blank=True, null=True, max_length=220) encoding = models.CharField(_(u"Encoding"), choices=ENCODINGS, - default='utf-8', max_length=15) + default=u'utf-8', max_length=15) skip_lines = models.IntegerField(_(u"Skip lines"), default=1) error_file = models.FileField(_(u"Error file"), upload_to="upload/imports/", @@ -2378,7 +2446,7 @@ class Import(models.Model): upload_to="upload/imports/", blank=True, null=True, max_length=255) state = models.CharField(_(u"State"), max_length=2, choices=IMPORT_STATE, - default='C') + default=u'C') conservative_import = models.BooleanField( _(u"Conservative import"), default=False, help_text='If set to true, do not overload existing values') @@ -2572,13 +2640,11 @@ class Organization(Address, Merge, OwnPerms, ValueGetter): verbose_name = _(u"Organization") verbose_name_plural = _(u"Organizations") permissions = ( - ("view_organization", ugettext(u"Can view all Organizations")), - ("view_own_organization", ugettext(u"Can view own Organization")), - ("add_own_organization", ugettext(u"Can add own Organization")), - ("change_own_organization", - ugettext(u"Can change own Organization")), - ("delete_own_organization", - ugettext(u"Can delete own Organization")), + ("view_organization", u"Can view all Organizations"), + ("view_own_organization", u"Can view own Organization"), + ("add_own_organization", u"Can add own Organization"), + ("change_own_organization", u"Can change own Organization"), + ("delete_own_organization", u"Can delete own Organization"), ) def simple_lbl(self): @@ -2614,7 +2680,7 @@ class Organization(Address, Merge, OwnPerms, ValueGetter): class PersonType(GeneralType): # rights = models.ManyToManyField(WizardStep, verbose_name=_(u"Rights")) groups = models.ManyToManyField(Group, verbose_name=_(u"Groups"), - blank=True, null=True) + blank=True) class Meta: verbose_name = _(u"Person type") @@ -2689,11 +2755,11 @@ class Person(Address, Merge, OwnPerms, ValueGetter): verbose_name = _(u"Person") verbose_name_plural = _(u"Persons") permissions = ( - ("view_person", ugettext(u"Can view all Persons")), - ("view_own_person", ugettext(u"Can view own Person")), - ("add_own_person", ugettext(u"Can add own Person")), - ("change_own_person", ugettext(u"Can change own Person")), - ("delete_own_person", ugettext(u"Can delete own Person")), + ("view_person", u"Can view all Persons"), + ("view_own_person", u"Can view own Person"), + ("add_own_person", u"Can add own Person"), + ("change_own_person", u"Can change own Person"), + ("delete_own_person", u"Can delete own Person"), ) @property @@ -2781,21 +2847,21 @@ class Person(Address, Merge, OwnPerms, ValueGetter): txt_idx__in=right_name).count()) or \ bool(self.person_types.filter( groups__permissions__codename__in=right_name).count()) or\ - bool(self.ishtaruser.filter( - groups__permissions__codename__in=right_name + bool(self.ishtaruser.user_ptr.groups.filter( + permissions__codename__in=right_name ).count()) or\ - bool(self.ishtaruser.filter( - user_permissions__codename__in=right_name).count()) + bool(self.ishtaruser.user_ptr.user_permissions.filter( + codename__in=right_name).count()) # or self.person_types.filter(wizard__url_name__in=right_name).count()) else: res = bool(self.person_types.filter(txt_idx=right_name).count()) or \ bool(self.person_types.filter( groups__permissions__codename=right_name).count()) or \ - bool(self.ishtaruser.filter( - groups__permissions__codename__in=[right_name] - ).count()) or\ - bool(self.ishtaruser.filter( - user_permissions__codename__in=[right_name]).count()) + bool(self.ishtaruser.user_ptr.groups.filter( + permissions__codename__in=[right_name] + ).count()) or \ + bool(self.ishtaruser.user_ptr.user_permissions.filter( + codename__in=[right_name]).count()) # or self.person_types.filter(wizard__url_name=right_name).count()) if session: cache.set(cache_key, res, settings.CACHE_SMALLTIMEOUT) @@ -2862,7 +2928,7 @@ class Person(Address, Merge, OwnPerms, ValueGetter): =user.ishtaruser) -class IshtarUser(User): +class IshtarUser(models.Model): TABLE_COLS = ('username', 'person__name', 'person__surname', 'person__email', 'person__person_types_list', 'person__attached_to') @@ -2879,8 +2945,10 @@ class IshtarUser(User): } # fields - person = models.ForeignKey(Person, verbose_name=_(u"Person"), unique=True, - related_name='ishtaruser') + user_ptr = models.OneToOneField(User, primary_key=True, + related_name='ishtaruser') + person = models.OneToOneField(Person, verbose_name=_(u"Person"), + related_name='ishtaruser') advanced_shortcut_menu = models.BooleanField( _(u"Advanced shortcut menu"), default=False) @@ -2889,6 +2957,20 @@ class IshtarUser(User): verbose_name_plural = _(u"Ishtar users") @classmethod + def set_superuser(cls, user): + q = cls.objects.filter(user_ptr=user) + if not q.count(): + return + ishtaruser = q.all()[0] + admin, created = PersonType.objects.get_or_create( + txt_idx='administrator') + person = ishtaruser.person + if user.is_superuser: + person.person_types.add(admin) + elif admin in person.person_types.all(): + person.person_types.remove(admin) + + @classmethod def create_from_user(cls, user): default = user.username surname = user.first_name or default @@ -2897,13 +2979,7 @@ class IshtarUser(User): person = Person.objects.create(surname=surname, name=name, email=email, history_modifier=user) - if user.is_superuser: - person_type, created = PersonType.objects.get_or_create( - txt_idx='administrator') - person.person_types.add(person_type) - password = user.password - isht_user = IshtarUser.objects.create( - user_ptr=user, username=default, person=person, password=password) + isht_user = cls.objects.create(user_ptr=user, person=person) return isht_user def has_right(self, right_name, session=None): @@ -2914,20 +2990,17 @@ class IshtarUser(User): def has_perm(self, perm, model=None, session=None, obj=None): if not session: - return super(IshtarUser, self).has_perm(perm, model) + return self.user_ptr.has_perm(perm, model) cache_key = 'usersession-{}-{}-{}-{}'.format( session.session_key, perm, model.__name__ if model else 'no', obj.pk if obj else 'no') res = cache.get(cache_key) if res in (True, False): return res - res = super(IshtarUser, self).has_perm(perm, model) + res = self.user_ptr.has_perm(perm, model) cache.set(cache_key, res, settings.CACHE_SMALLTIMEOUT) return res -IshtarUser._meta.get_field('password').help_text = _( - u"To modify the password use the form in Auth > User") - class AuthorType(GeneralType): order = models.IntegerField(_(u"Order"), default=1) @@ -2950,16 +3023,11 @@ class Author(models.Model): verbose_name_plural = _(u"Authors") ordering = ('author_type__order', 'person__name') permissions = ( - ("view_author", - ugettext(u"Can view all Authors")), - ("view_own_author", - ugettext(u"Can view own Author")), - ("add_own_author", - ugettext(u"Can add own Author")), - ("change_own_author", - ugettext(u"Can change own Author")), - ("delete_own_author", - ugettext(u"Can delete own Author")), + ("view_author", u"Can view all Authors"), + ("view_own_author", u"Can view own Author"), + ("add_own_author", u"Can add own Author"), + ("change_own_author", u"Can change own Author"), + ("delete_own_author", u"Can delete own Author"), ) def __unicode__(self): @@ -3017,7 +3085,7 @@ class Source(OwnPerms, ImageModel, models.Model): authors = models.ManyToManyField(Author, verbose_name=_(u"Authors"), related_name="%(class)s_related") associated_url = models.URLField( - verify_exists=False, blank=True, null=True, + blank=True, null=True, verbose_name=_(u"Numerical ressource (web address)")) receipt_date = models.DateField(blank=True, null=True, verbose_name=_(u"Receipt date")) @@ -3156,7 +3224,7 @@ post_delete.connect(post_save_cache, sender=OperationType) class SpatialReferenceSystem(GeneralType): order = models.IntegerField(_(u"Order"), default=10) auth_name = models.CharField( - _(u"Authority name"), default='EPSG', max_length=256) + _(u"Authority name"), default=u'EPSG', max_length=256) srid = models.IntegerField(_(u"Authority SRID")) class Meta: diff --git a/ishtar_common/old_migrations/0001_initial.py b/ishtar_common/old_migrations/0001_initial.py new file mode 100644 index 000000000..fc22881bc --- /dev/null +++ b/ishtar_common/old_migrations/0001_initial.py @@ -0,0 +1,408 @@ +# -*- coding: utf-8 -*- +import datetime +from south.db import db +from south.v2 import SchemaMigration +from django.db import models + + +class Migration(SchemaMigration): + + def forwards(self, orm): + # Adding model 'Wizard' + db.create_table('ishtar_common_wizard', ( + ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), + ('url_name', self.gf('django.db.models.fields.CharField')(unique=True, max_length=128)), + )) + db.send_create_signal('ishtar_common', ['Wizard']) + + # Adding model 'WizardStep' + db.create_table('ishtar_common_wizardstep', ( + ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), + ('order', self.gf('django.db.models.fields.IntegerField')()), + ('wizard', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['ishtar_common.Wizard'])), + ('url_name', self.gf('django.db.models.fields.CharField')(max_length=128)), + ('name', self.gf('django.db.models.fields.CharField')(max_length=128)), + )) + db.send_create_signal('ishtar_common', ['WizardStep']) + + # Adding model 'Department' + db.create_table('ishtar_common_department', ( + ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), + ('label', self.gf('django.db.models.fields.CharField')(max_length=30)), + ('number', self.gf('django.db.models.fields.CharField')(unique=True, max_length=3)), + )) + db.send_create_signal('ishtar_common', ['Department']) + + # Adding model 'OrganizationType' + db.create_table('ishtar_common_organizationtype', ( + ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), + ('label', self.gf('django.db.models.fields.CharField')(max_length=100)), + ('txt_idx', self.gf('django.db.models.fields.CharField')(unique=True, max_length=30)), + ('comment', self.gf('django.db.models.fields.TextField')(null=True, blank=True)), + ('available', self.gf('django.db.models.fields.BooleanField')(default=False)), + )) + db.send_create_signal('ishtar_common', ['OrganizationType']) + + # Adding model 'HistoricalOrganization' + db.create_table('ishtar_common_historicalorganization', ( + ('id', self.gf('django.db.models.fields.IntegerField')(db_index=True, blank=True)), + ('history_modifier_id', self.gf('django.db.models.fields.IntegerField')(db_index=True, null=True, blank=True)), + ('address', self.gf('django.db.models.fields.TextField')(null=True, blank=True)), + ('address_complement', self.gf('django.db.models.fields.TextField')(null=True, blank=True)), + ('postal_code', self.gf('django.db.models.fields.CharField')(max_length=10, null=True, blank=True)), + ('town', self.gf('django.db.models.fields.CharField')(max_length=30, null=True, blank=True)), + ('country', self.gf('django.db.models.fields.CharField')(max_length=30, null=True, blank=True)), + ('phone', self.gf('django.db.models.fields.CharField')(max_length=18, null=True, blank=True)), + ('mobile_phone', self.gf('django.db.models.fields.CharField')(max_length=18, null=True, blank=True)), + ('name', self.gf('django.db.models.fields.CharField')(max_length=100)), + ('organization_type_id', self.gf('django.db.models.fields.IntegerField')(db_index=True, null=True, blank=True)), + ('history_id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), + ('history_date', self.gf('django.db.models.fields.DateTimeField')(auto_now_add=True, blank=True)), + ('history_user', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['auth.User'], null=True)), + ('history_type', self.gf('django.db.models.fields.CharField')(max_length=1)), + )) + db.send_create_signal('ishtar_common', ['HistoricalOrganization']) + + # Adding model 'Organization' + db.create_table('ishtar_common_organization', ( + ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), + ('history_modifier', self.gf('django.db.models.fields.related.ForeignKey')(related_name='+', to=orm['auth.User'])), + ('address', self.gf('django.db.models.fields.TextField')(null=True, blank=True)), + ('address_complement', self.gf('django.db.models.fields.TextField')(null=True, blank=True)), + ('postal_code', self.gf('django.db.models.fields.CharField')(max_length=10, null=True, blank=True)), + ('town', self.gf('django.db.models.fields.CharField')(max_length=30, null=True, blank=True)), + ('country', self.gf('django.db.models.fields.CharField')(max_length=30, null=True, blank=True)), + ('phone', self.gf('django.db.models.fields.CharField')(max_length=18, null=True, blank=True)), + ('mobile_phone', self.gf('django.db.models.fields.CharField')(max_length=18, null=True, blank=True)), + ('name', self.gf('django.db.models.fields.CharField')(max_length=100)), + ('organization_type', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['ishtar_common.OrganizationType'])), + )) + db.send_create_signal('ishtar_common', ['Organization']) + + # Adding model 'PersonType' + db.create_table('ishtar_common_persontype', ( + ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), + ('label', self.gf('django.db.models.fields.CharField')(max_length=100)), + ('txt_idx', self.gf('django.db.models.fields.CharField')(unique=True, max_length=30)), + ('comment', self.gf('django.db.models.fields.TextField')(null=True, blank=True)), + ('available', self.gf('django.db.models.fields.BooleanField')(default=False)), + )) + db.send_create_signal('ishtar_common', ['PersonType']) + + # Adding M2M table for field rights on 'PersonType' + db.create_table('ishtar_common_persontype_rights', ( + ('id', models.AutoField(verbose_name='ID', primary_key=True, auto_created=True)), + ('persontype', models.ForeignKey(orm['ishtar_common.persontype'], null=False)), + ('wizardstep', models.ForeignKey(orm['ishtar_common.wizardstep'], null=False)) + )) + db.create_unique('ishtar_common_persontype_rights', ['persontype_id', 'wizardstep_id']) + + # Adding model 'Person' + db.create_table('ishtar_common_person', ( + ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), + ('history_modifier', self.gf('django.db.models.fields.related.ForeignKey')(related_name='+', to=orm['auth.User'])), + ('address', self.gf('django.db.models.fields.TextField')(null=True, blank=True)), + ('address_complement', self.gf('django.db.models.fields.TextField')(null=True, blank=True)), + ('postal_code', self.gf('django.db.models.fields.CharField')(max_length=10, null=True, blank=True)), + ('town', self.gf('django.db.models.fields.CharField')(max_length=30, null=True, blank=True)), + ('country', self.gf('django.db.models.fields.CharField')(max_length=30, null=True, blank=True)), + ('phone', self.gf('django.db.models.fields.CharField')(max_length=18, null=True, blank=True)), + ('mobile_phone', self.gf('django.db.models.fields.CharField')(max_length=18, null=True, blank=True)), + ('title', self.gf('django.db.models.fields.CharField')(max_length=2)), + ('surname', self.gf('django.db.models.fields.CharField')(max_length=20)), + ('name', self.gf('django.db.models.fields.CharField')(max_length=30)), + ('email', self.gf('django.db.models.fields.CharField')(max_length=40, null=True, blank=True)), + ('person_type', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['ishtar_common.PersonType'])), + ('attached_to', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['ishtar_common.Organization'], null=True, blank=True)), + )) + db.send_create_signal('ishtar_common', ['Person']) + + # Adding model 'IshtarUser' + db.create_table('ishtar_common_ishtaruser', ( + ('user_ptr', self.gf('django.db.models.fields.related.OneToOneField')(to=orm['auth.User'], unique=True, primary_key=True)), + ('person', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['ishtar_common.Person'], unique=True)), + )) + db.send_create_signal('ishtar_common', ['IshtarUser']) + + # Adding model 'AuthorType' + db.create_table('ishtar_common_authortype', ( + ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), + ('label', self.gf('django.db.models.fields.CharField')(max_length=100)), + ('txt_idx', self.gf('django.db.models.fields.CharField')(unique=True, max_length=30)), + ('comment', self.gf('django.db.models.fields.TextField')(null=True, blank=True)), + ('available', self.gf('django.db.models.fields.BooleanField')(default=False)), + )) + db.send_create_signal('ishtar_common', ['AuthorType']) + + # Adding model 'Author' + db.create_table('ishtar_common_author', ( + ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), + ('person', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['ishtar_common.Person'])), + ('author_type', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['ishtar_common.AuthorType'])), + )) + db.send_create_signal('ishtar_common', ['Author']) + + # Adding model 'SourceType' + db.create_table('ishtar_common_sourcetype', ( + ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), + ('label', self.gf('django.db.models.fields.CharField')(max_length=100)), + ('txt_idx', self.gf('django.db.models.fields.CharField')(unique=True, max_length=30)), + ('comment', self.gf('django.db.models.fields.TextField')(null=True, blank=True)), + ('available', self.gf('django.db.models.fields.BooleanField')(default=False)), + )) + db.send_create_signal('ishtar_common', ['SourceType']) + + # Adding model 'Arrondissement' + db.create_table('ishtar_common_arrondissement', ( + ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), + ('name', self.gf('django.db.models.fields.CharField')(max_length=30)), + ('department', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['ishtar_common.Department'])), + )) + db.send_create_signal('ishtar_common', ['Arrondissement']) + + # Adding model 'Canton' + db.create_table('ishtar_common_canton', ( + ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), + ('name', self.gf('django.db.models.fields.CharField')(max_length=30)), + ('arrondissement', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['ishtar_common.Arrondissement'])), + )) + db.send_create_signal('ishtar_common', ['Canton']) + + # Adding model 'Town' + db.create_table('ishtar_common_town', ( + ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), + ('name', self.gf('django.db.models.fields.CharField')(max_length=100)), + ('surface', self.gf('django.db.models.fields.IntegerField')(null=True, blank=True)), + ('center', self.gf('django.contrib.gis.db.models.fields.PointField')(srid=27572, null=True, blank=True)), + ('numero_insee', self.gf('django.db.models.fields.CharField')(unique=True, max_length=6)), + ('departement', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['ishtar_common.Department'], null=True, blank=True)), + ('canton', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['ishtar_common.Canton'], null=True, blank=True)), + )) + db.send_create_signal('ishtar_common', ['Town']) + + + def backwards(self, orm): + # Deleting model 'Wizard' + db.delete_table('ishtar_common_wizard') + + # Deleting model 'WizardStep' + db.delete_table('ishtar_common_wizardstep') + + # Deleting model 'Department' + db.delete_table('ishtar_common_department') + + # Deleting model 'OrganizationType' + db.delete_table('ishtar_common_organizationtype') + + # Deleting model 'HistoricalOrganization' + db.delete_table('ishtar_common_historicalorganization') + + # Deleting model 'Organization' + db.delete_table('ishtar_common_organization') + + # Deleting model 'PersonType' + db.delete_table('ishtar_common_persontype') + + # Removing M2M table for field rights on 'PersonType' + db.delete_table('ishtar_common_persontype_rights') + + # Deleting model 'Person' + db.delete_table('ishtar_common_person') + + # Deleting model 'IshtarUser' + db.delete_table('ishtar_common_ishtaruser') + + # Deleting model 'AuthorType' + db.delete_table('ishtar_common_authortype') + + # Deleting model 'Author' + db.delete_table('ishtar_common_author') + + # Deleting model 'SourceType' + db.delete_table('ishtar_common_sourcetype') + + # Deleting model 'Arrondissement' + db.delete_table('ishtar_common_arrondissement') + + # Deleting model 'Canton' + db.delete_table('ishtar_common_canton') + + # Deleting model 'Town' + db.delete_table('ishtar_common_town') + + + models = { + 'auth.group': { + 'Meta': {'object_name': 'Group'}, + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}), + 'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}) + }, + 'auth.permission': { + 'Meta': {'ordering': "('content_type__app_label', 'content_type__model', 'codename')", 'unique_together': "(('content_type', 'codename'),)", 'object_name': 'Permission'}, + 'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}), + 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}) + }, + 'auth.user': { + 'Meta': {'object_name': 'User'}, + 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), + 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}), + 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), + 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Group']", 'symmetrical': 'False', 'blank': 'True'}), + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True'}), + 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), + 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), + 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), + 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), + 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}), + 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}), + 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'}) + }, + 'contenttypes.contenttype': { + 'Meta': {'ordering': "('name',)", 'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"}, + 'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}), + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}), + 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'}) + }, + 'ishtar_common.arrondissement': { + 'Meta': {'object_name': 'Arrondissement'}, + 'department': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['ishtar_common.Department']"}), + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'name': ('django.db.models.fields.CharField', [], {'max_length': '30'}) + }, + 'ishtar_common.author': { + 'Meta': {'object_name': 'Author'}, + 'author_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['ishtar_common.AuthorType']"}), + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'person': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['ishtar_common.Person']"}) + }, + 'ishtar_common.authortype': { + 'Meta': {'object_name': 'AuthorType'}, + 'available': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), + 'comment': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'label': ('django.db.models.fields.CharField', [], {'max_length': '100'}), + 'txt_idx': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'}) + }, + 'ishtar_common.canton': { + 'Meta': {'object_name': 'Canton'}, + 'arrondissement': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['ishtar_common.Arrondissement']"}), + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'name': ('django.db.models.fields.CharField', [], {'max_length': '30'}) + }, + 'ishtar_common.department': { + 'Meta': {'ordering': "['number']", 'object_name': 'Department'}, + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'label': ('django.db.models.fields.CharField', [], {'max_length': '30'}), + 'number': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '3'}) + }, + 'ishtar_common.historicalorganization': { + 'Meta': {'ordering': "('-history_date', '-history_id')", 'object_name': 'HistoricalOrganization'}, + 'address': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), + 'address_complement': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), + 'country': ('django.db.models.fields.CharField', [], {'max_length': '30', 'null': 'True', 'blank': 'True'}), + 'history_date': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'blank': 'True'}), + 'history_id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'history_modifier_id': ('django.db.models.fields.IntegerField', [], {'db_index': 'True', 'null': 'True', 'blank': 'True'}), + 'history_type': ('django.db.models.fields.CharField', [], {'max_length': '1'}), + 'history_user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['auth.User']", 'null': 'True'}), + 'id': ('django.db.models.fields.IntegerField', [], {'db_index': 'True', 'blank': 'True'}), + 'mobile_phone': ('django.db.models.fields.CharField', [], {'max_length': '18', 'null': 'True', 'blank': 'True'}), + 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'}), + 'organization_type_id': ('django.db.models.fields.IntegerField', [], {'db_index': 'True', 'null': 'True', 'blank': 'True'}), + 'phone': ('django.db.models.fields.CharField', [], {'max_length': '18', 'null': 'True', 'blank': 'True'}), + 'postal_code': ('django.db.models.fields.CharField', [], {'max_length': '10', 'null': 'True', 'blank': 'True'}), + 'town': ('django.db.models.fields.CharField', [], {'max_length': '30', 'null': 'True', 'blank': 'True'}) + }, + 'ishtar_common.ishtaruser': { + 'Meta': {'object_name': 'IshtarUser', '_ormbases': ['auth.User']}, + 'person': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['ishtar_common.Person']", 'unique': 'True'}), + 'user_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['auth.User']", 'unique': 'True', 'primary_key': 'True'}) + }, + 'ishtar_common.organization': { + 'Meta': {'object_name': 'Organization'}, + 'address': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), + 'address_complement': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), + 'country': ('django.db.models.fields.CharField', [], {'max_length': '30', 'null': 'True', 'blank': 'True'}), + 'history_modifier': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'to': "orm['auth.User']"}), + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'mobile_phone': ('django.db.models.fields.CharField', [], {'max_length': '18', 'null': 'True', 'blank': 'True'}), + 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'}), + 'organization_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['ishtar_common.OrganizationType']"}), + 'phone': ('django.db.models.fields.CharField', [], {'max_length': '18', 'null': 'True', 'blank': 'True'}), + 'postal_code': ('django.db.models.fields.CharField', [], {'max_length': '10', 'null': 'True', 'blank': 'True'}), + 'town': ('django.db.models.fields.CharField', [], {'max_length': '30', 'null': 'True', 'blank': 'True'}) + }, + 'ishtar_common.organizationtype': { + 'Meta': {'object_name': 'OrganizationType'}, + 'available': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), + 'comment': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'label': ('django.db.models.fields.CharField', [], {'max_length': '100'}), + 'txt_idx': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'}) + }, + 'ishtar_common.person': { + 'Meta': {'object_name': 'Person'}, + 'address': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), + 'address_complement': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), + 'attached_to': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['ishtar_common.Organization']", 'null': 'True', 'blank': 'True'}), + 'country': ('django.db.models.fields.CharField', [], {'max_length': '30', 'null': 'True', 'blank': 'True'}), + 'email': ('django.db.models.fields.CharField', [], {'max_length': '40', 'null': 'True', 'blank': 'True'}), + 'history_modifier': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'to': "orm['auth.User']"}), + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'mobile_phone': ('django.db.models.fields.CharField', [], {'max_length': '18', 'null': 'True', 'blank': 'True'}), + 'name': ('django.db.models.fields.CharField', [], {'max_length': '30'}), + 'person_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['ishtar_common.PersonType']"}), + 'phone': ('django.db.models.fields.CharField', [], {'max_length': '18', 'null': 'True', 'blank': 'True'}), + 'postal_code': ('django.db.models.fields.CharField', [], {'max_length': '10', 'null': 'True', 'blank': 'True'}), + 'surname': ('django.db.models.fields.CharField', [], {'max_length': '20'}), + 'title': ('django.db.models.fields.CharField', [], {'max_length': '2'}), + 'town': ('django.db.models.fields.CharField', [], {'max_length': '30', 'null': 'True', 'blank': 'True'}) + }, + 'ishtar_common.persontype': { + 'Meta': {'object_name': 'PersonType'}, + 'available': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), + 'comment': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'label': ('django.db.models.fields.CharField', [], {'max_length': '100'}), + 'rights': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['ishtar_common.WizardStep']", 'symmetrical': 'False'}), + 'txt_idx': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'}) + }, + 'ishtar_common.sourcetype': { + 'Meta': {'object_name': 'SourceType'}, + 'available': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), + 'comment': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'label': ('django.db.models.fields.CharField', [], {'max_length': '100'}), + 'txt_idx': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'}) + }, + 'ishtar_common.town': { + 'Meta': {'ordering': "['numero_insee']", 'object_name': 'Town'}, + 'canton': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['ishtar_common.Canton']", 'null': 'True', 'blank': 'True'}), + 'center': ('django.contrib.gis.db.models.fields.PointField', [], {'srid': '27572', 'null': 'True', 'blank': 'True'}), + 'departement': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['ishtar_common.Department']", 'null': 'True', 'blank': 'True'}), + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'}), + 'numero_insee': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '6'}), + 'surface': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}) + }, + 'ishtar_common.wizard': { + 'Meta': {'ordering': "['url_name']", 'object_name': 'Wizard'}, + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'url_name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '128'}) + }, + 'ishtar_common.wizardstep': { + 'Meta': {'ordering': "['wizard', 'order']", 'object_name': 'WizardStep'}, + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'name': ('django.db.models.fields.CharField', [], {'max_length': '128'}), + 'order': ('django.db.models.fields.IntegerField', [], {}), + 'url_name': ('django.db.models.fields.CharField', [], {'max_length': '128'}), + 'wizard': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['ishtar_common.Wizard']"}) + } + } + + complete_apps = ['ishtar_common']
\ No newline at end of file diff --git a/ishtar_common/migrations/0002_auto__chg_field_person_surname.py b/ishtar_common/old_migrations/0002_auto__chg_field_person_surname.py index 105144aac..105144aac 100644 --- a/ishtar_common/migrations/0002_auto__chg_field_person_surname.py +++ b/ishtar_common/old_migrations/0002_auto__chg_field_person_surname.py diff --git a/ishtar_common/migrations/0003_auto__del_field_person_person_type.py b/ishtar_common/old_migrations/0003_auto__del_field_person_person_type.py index 369568ecc..369568ecc 100644 --- a/ishtar_common/migrations/0003_auto__del_field_person_person_type.py +++ b/ishtar_common/old_migrations/0003_auto__del_field_person_person_type.py diff --git a/ishtar_common/migrations/0004_auto.py b/ishtar_common/old_migrations/0004_auto.py index 074080757..074080757 100644 --- a/ishtar_common/migrations/0004_auto.py +++ b/ishtar_common/old_migrations/0004_auto.py diff --git a/ishtar_common/migrations/0005_auto__add_documenttemplate.py b/ishtar_common/old_migrations/0005_auto__add_documenttemplate.py index 383ee5a32..383ee5a32 100644 --- a/ishtar_common/migrations/0005_auto__add_documenttemplate.py +++ b/ishtar_common/old_migrations/0005_auto__add_documenttemplate.py diff --git a/ishtar_common/migrations/0006_auto__chg_field_organization_name__chg_field_historicalorganization_na.py b/ishtar_common/old_migrations/0006_auto__chg_field_organization_name__chg_field_historicalorganization_na.py index f852608a3..f852608a3 100644 --- a/ishtar_common/migrations/0006_auto__chg_field_organization_name__chg_field_historicalorganization_na.py +++ b/ishtar_common/old_migrations/0006_auto__chg_field_organization_name__chg_field_historicalorganization_na.py diff --git a/ishtar_common/migrations/0007_auto__add_field_organization_history_creator__add_field_historicalorga.py b/ishtar_common/old_migrations/0007_auto__add_field_organization_history_creator__add_field_historicalorga.py index 5423b758e..5423b758e 100644 --- a/ishtar_common/migrations/0007_auto__add_field_organization_history_creator__add_field_historicalorga.py +++ b/ishtar_common/old_migrations/0007_auto__add_field_organization_history_creator__add_field_historicalorga.py diff --git a/ishtar_common/migrations/0008_init_history_creator.py b/ishtar_common/old_migrations/0008_init_history_creator.py index c28292e61..c28292e61 100644 --- a/ishtar_common/migrations/0008_init_history_creator.py +++ b/ishtar_common/old_migrations/0008_init_history_creator.py diff --git a/ishtar_common/migrations/0009_auto__add_field_organization_email__add_field_historicalorganization_e.py b/ishtar_common/old_migrations/0009_auto__add_field_organization_email__add_field_historicalorganization_e.py index 1ef247b56..1ef247b56 100644 --- a/ishtar_common/migrations/0009_auto__add_field_organization_email__add_field_historicalorganization_e.py +++ b/ishtar_common/old_migrations/0009_auto__add_field_organization_email__add_field_historicalorganization_e.py diff --git a/ishtar_common/migrations/0010_auto__del_wizardstep__del_wizard__add_globalvar__chg_field_person_atta.py b/ishtar_common/old_migrations/0010_auto__del_wizardstep__del_wizard__add_globalvar__chg_field_person_atta.py index 4bba74da9..4bba74da9 100644 --- a/ishtar_common/migrations/0010_auto__del_wizardstep__del_wizard__add_globalvar__chg_field_person_atta.py +++ b/ishtar_common/old_migrations/0010_auto__del_wizardstep__del_wizard__add_globalvar__chg_field_person_atta.py diff --git a/ishtar_common/migrations/0011_auto__chg_field_person_surname__chg_field_person_name.py b/ishtar_common/old_migrations/0011_auto__chg_field_person_surname__chg_field_person_name.py index a21e00efb..a21e00efb 100644 --- a/ishtar_common/migrations/0011_auto__chg_field_person_surname__chg_field_person_name.py +++ b/ishtar_common/old_migrations/0011_auto__chg_field_person_surname__chg_field_person_name.py diff --git a/ishtar_common/migrations/0012_auto__add_field_person_raw_name__chg_field_person_name.py b/ishtar_common/old_migrations/0012_auto__add_field_person_raw_name__chg_field_person_name.py index 015956610..015956610 100644 --- a/ishtar_common/migrations/0012_auto__add_field_person_raw_name__chg_field_person_name.py +++ b/ishtar_common/old_migrations/0012_auto__add_field_person_raw_name__chg_field_person_name.py diff --git a/ishtar_common/migrations/0013_auto__add_field_organization_merge_key__add_field_historicalorganizati.py b/ishtar_common/old_migrations/0013_auto__add_field_organization_merge_key__add_field_historicalorganizati.py index b0934572d..b0934572d 100644 --- a/ishtar_common/migrations/0013_auto__add_field_organization_merge_key__add_field_historicalorganizati.py +++ b/ishtar_common/old_migrations/0013_auto__add_field_organization_merge_key__add_field_historicalorganizati.py diff --git a/ishtar_common/migrations/0014_auto__chg_field_organization_history_creator__chg_field_organization_h.py b/ishtar_common/old_migrations/0014_auto__chg_field_organization_history_creator__chg_field_organization_h.py index 86783b8fd..86783b8fd 100644 --- a/ishtar_common/migrations/0014_auto__chg_field_organization_history_creator__chg_field_organization_h.py +++ b/ishtar_common/old_migrations/0014_auto__chg_field_organization_history_creator__chg_field_organization_h.py diff --git a/ishtar_common/migrations/0015_auto__chg_field_organization_town__chg_field_historicalorganization_to.py b/ishtar_common/old_migrations/0015_auto__chg_field_organization_town__chg_field_historicalorganization_to.py index d5d1c4742..d5d1c4742 100644 --- a/ishtar_common/migrations/0015_auto__chg_field_organization_town__chg_field_historicalorganization_to.py +++ b/ishtar_common/old_migrations/0015_auto__chg_field_organization_town__chg_field_historicalorganization_to.py diff --git a/ishtar_common/migrations/0016_auto__add_import.py b/ishtar_common/old_migrations/0016_auto__add_import.py index f7d87ff13..f7d87ff13 100644 --- a/ishtar_common/migrations/0016_auto__add_import.py +++ b/ishtar_common/old_migrations/0016_auto__add_import.py diff --git a/ishtar_common/migrations/0017_auto__add_supporttype__add_format.py b/ishtar_common/old_migrations/0017_auto__add_supporttype__add_format.py index 7ce790321..7ce790321 100644 --- a/ishtar_common/migrations/0017_auto__add_supporttype__add_format.py +++ b/ishtar_common/old_migrations/0017_auto__add_supporttype__add_format.py diff --git a/ishtar_common/migrations/0018_auto__add_itemkey.py b/ishtar_common/old_migrations/0018_auto__add_itemkey.py index 4de340549..4de340549 100644 --- a/ishtar_common/migrations/0018_auto__add_itemkey.py +++ b/ishtar_common/old_migrations/0018_auto__add_itemkey.py diff --git a/ishtar_common/migrations/0019_auto__add_field_itemkey_importer.py b/ishtar_common/old_migrations/0019_auto__add_field_itemkey_importer.py index 9206279d1..9206279d1 100644 --- a/ishtar_common/migrations/0019_auto__add_field_itemkey_importer.py +++ b/ishtar_common/old_migrations/0019_auto__add_field_itemkey_importer.py diff --git a/ishtar_common/migrations/0020_auto__chg_field_person_title.py b/ishtar_common/old_migrations/0020_auto__chg_field_person_title.py index 8d4674ace..8d4674ace 100644 --- a/ishtar_common/migrations/0020_auto__chg_field_person_title.py +++ b/ishtar_common/old_migrations/0020_auto__chg_field_person_title.py diff --git a/ishtar_common/migrations/0021_auto__add_importerdefault__add_importertype__add_importtarget__add_for.py b/ishtar_common/old_migrations/0021_auto__add_importerdefault__add_importertype__add_importtarget__add_for.py index 21f6e5f78..21f6e5f78 100644 --- a/ishtar_common/migrations/0021_auto__add_importerdefault__add_importertype__add_importtarget__add_for.py +++ b/ishtar_common/old_migrations/0021_auto__add_importerdefault__add_importertype__add_importtarget__add_for.py diff --git a/ishtar_common/migrations/0022_auto__add_field_import_importer_type.py b/ishtar_common/old_migrations/0022_auto__add_field_import_importer_type.py index d5091b542..d5091b542 100644 --- a/ishtar_common/migrations/0022_auto__add_field_import_importer_type.py +++ b/ishtar_common/old_migrations/0022_auto__add_field_import_importer_type.py diff --git a/ishtar_common/migrations/0023_auto__add_importerdefaultvalues__del_field_importerdefault_value.py b/ishtar_common/old_migrations/0023_auto__add_importerdefaultvalues__del_field_importerdefault_value.py index 74c5e0a1c..74c5e0a1c 100644 --- a/ishtar_common/migrations/0023_auto__add_importerdefaultvalues__del_field_importerdefault_value.py +++ b/ishtar_common/old_migrations/0023_auto__add_importerdefaultvalues__del_field_importerdefault_value.py diff --git a/ishtar_common/migrations/0024_auto__add_importerduplicatefield__chg_field_importerdefault_target__ad.py b/ishtar_common/old_migrations/0024_auto__add_importerduplicatefield__chg_field_importerdefault_target__ad.py index d5d3293f0..d5d3293f0 100644 --- a/ishtar_common/migrations/0024_auto__add_importerduplicatefield__chg_field_importerdefault_target__ad.py +++ b/ishtar_common/old_migrations/0024_auto__add_importerduplicatefield__chg_field_importerdefault_target__ad.py diff --git a/ishtar_common/migrations/0025_auto__add_unique_formatertype_formater_type_many_split_options.py b/ishtar_common/old_migrations/0025_auto__add_unique_formatertype_formater_type_many_split_options.py index 73c88ce1a..73c88ce1a 100644 --- a/ishtar_common/migrations/0025_auto__add_unique_formatertype_formater_type_many_split_options.py +++ b/ishtar_common/old_migrations/0025_auto__add_unique_formatertype_formater_type_many_split_options.py diff --git a/ishtar_common/migrations/0026_auto__add_targetkey__add_unique_targetkey_target_value__add_field_impo.py b/ishtar_common/old_migrations/0026_auto__add_targetkey__add_unique_targetkey_target_value__add_field_impo.py index b4752a48e..b4752a48e 100644 --- a/ishtar_common/migrations/0026_auto__add_targetkey__add_unique_targetkey_target_value__add_field_impo.py +++ b/ishtar_common/old_migrations/0026_auto__add_targetkey__add_unique_targetkey_target_value__add_field_impo.py diff --git a/ishtar_common/migrations/0027_auto__chg_field_targetkey_target.py b/ishtar_common/old_migrations/0027_auto__chg_field_targetkey_target.py index d6ea7e10a..d6ea7e10a 100644 --- a/ishtar_common/migrations/0027_auto__chg_field_targetkey_target.py +++ b/ishtar_common/old_migrations/0027_auto__chg_field_targetkey_target.py diff --git a/ishtar_common/migrations/0028_auto__chg_field_targetkey_key__chg_field_targetkey_value.py b/ishtar_common/old_migrations/0028_auto__chg_field_targetkey_key__chg_field_targetkey_value.py index b99480a2b..b99480a2b 100644 --- a/ishtar_common/migrations/0028_auto__chg_field_targetkey_key__chg_field_targetkey_value.py +++ b/ishtar_common/old_migrations/0028_auto__chg_field_targetkey_key__chg_field_targetkey_value.py diff --git a/ishtar_common/migrations/0029_auto.py b/ishtar_common/old_migrations/0029_auto.py index 9bcf818b5..9bcf818b5 100644 --- a/ishtar_common/migrations/0029_auto.py +++ b/ishtar_common/old_migrations/0029_auto.py diff --git a/ishtar_common/migrations/0030_auto__add_state__chg_field_sourcetype_txt_idx__chg_field_authortype_tx.py b/ishtar_common/old_migrations/0030_auto__add_state__chg_field_sourcetype_txt_idx__chg_field_authortype_tx.py index cd5d06576..cd5d06576 100644 --- a/ishtar_common/migrations/0030_auto__add_state__chg_field_sourcetype_txt_idx__chg_field_authortype_tx.py +++ b/ishtar_common/old_migrations/0030_auto__add_state__chg_field_sourcetype_txt_idx__chg_field_authortype_tx.py diff --git a/ishtar_common/migrations/0031_auto__del_unique_targetkey_target_value__add_unique_targetkey_target_k.py b/ishtar_common/old_migrations/0031_auto__del_unique_targetkey_target_value__add_unique_targetkey_target_k.py index 7fddc0fca..7fddc0fca 100644 --- a/ishtar_common/migrations/0031_auto__del_unique_targetkey_target_value__add_unique_targetkey_target_k.py +++ b/ishtar_common/old_migrations/0031_auto__del_unique_targetkey_target_value__add_unique_targetkey_target_k.py diff --git a/ishtar_common/migrations/0033_auto__add_field_targetkey_associated_import__add_field_targetkey_assoc.py b/ishtar_common/old_migrations/0033_auto__add_field_targetkey_associated_import__add_field_targetkey_assoc.py index 2a6c8fc15..2a6c8fc15 100644 --- a/ishtar_common/migrations/0033_auto__add_field_targetkey_associated_import__add_field_targetkey_assoc.py +++ b/ishtar_common/old_migrations/0033_auto__add_field_targetkey_associated_import__add_field_targetkey_assoc.py diff --git a/ishtar_common/migrations/0034_auto__add_field_import_encoding.py b/ishtar_common/old_migrations/0034_auto__add_field_import_encoding.py index 2774b3c15..2774b3c15 100644 --- a/ishtar_common/migrations/0034_auto__add_field_import_encoding.py +++ b/ishtar_common/old_migrations/0034_auto__add_field_import_encoding.py diff --git a/ishtar_common/migrations/0035_auto__add_field_importtarget_force_new__add_field_importerduplicatefie.py b/ishtar_common/old_migrations/0035_auto__add_field_importtarget_force_new__add_field_importerduplicatefie.py index 2a396ee62..2a396ee62 100644 --- a/ishtar_common/migrations/0035_auto__add_field_importtarget_force_new__add_field_importerduplicatefie.py +++ b/ishtar_common/old_migrations/0035_auto__add_field_importtarget_force_new__add_field_importerduplicatefie.py diff --git a/ishtar_common/migrations/0036_auto__add_field_import_imported_images.py b/ishtar_common/old_migrations/0036_auto__add_field_import_imported_images.py index d0741abca..d0741abca 100644 --- a/ishtar_common/migrations/0036_auto__add_field_import_imported_images.py +++ b/ishtar_common/old_migrations/0036_auto__add_field_import_imported_images.py diff --git a/ishtar_common/migrations/0037_auto__add_field_importertype_slug.py b/ishtar_common/old_migrations/0037_auto__add_field_importertype_slug.py index c7bf06c5d..c7bf06c5d 100644 --- a/ishtar_common/migrations/0037_auto__add_field_importertype_slug.py +++ b/ishtar_common/old_migrations/0037_auto__add_field_importertype_slug.py diff --git a/ishtar_common/migrations/0038_auto__add_field_importtarget_comment.py b/ishtar_common/old_migrations/0038_auto__add_field_importtarget_comment.py index a2cbe1579..a2cbe1579 100644 --- a/ishtar_common/migrations/0038_auto__add_field_importtarget_comment.py +++ b/ishtar_common/old_migrations/0038_auto__add_field_importtarget_comment.py diff --git a/ishtar_common/migrations/0039_auto__add_field_import_match_file.py b/ishtar_common/old_migrations/0039_auto__add_field_import_match_file.py index 6df3e81a8..6df3e81a8 100644 --- a/ishtar_common/migrations/0039_auto__add_field_import_match_file.py +++ b/ishtar_common/old_migrations/0039_auto__add_field_import_match_file.py diff --git a/ishtar_common/migrations/0040_auto__chg_field_person_title.py b/ishtar_common/old_migrations/0040_auto__chg_field_person_title.py index 2623f9eae..2623f9eae 100644 --- a/ishtar_common/migrations/0040_auto__chg_field_person_title.py +++ b/ishtar_common/old_migrations/0040_auto__chg_field_person_title.py diff --git a/ishtar_common/migrations/0041_auto__add_field_importertype_unicity_keys__add_field_importtarget_conc.py b/ishtar_common/old_migrations/0041_auto__add_field_importertype_unicity_keys__add_field_importtarget_conc.py index 990f35efc..990f35efc 100644 --- a/ishtar_common/migrations/0041_auto__add_field_importertype_unicity_keys__add_field_importtarget_conc.py +++ b/ishtar_common/old_migrations/0041_auto__add_field_importertype_unicity_keys__add_field_importtarget_conc.py diff --git a/ishtar_common/migrations/0042_auto__add_field_importtarget_concat_str__add_unique_importercolumn_col.py b/ishtar_common/old_migrations/0042_auto__add_field_importtarget_concat_str__add_unique_importercolumn_col.py index 7f8bac846..7f8bac846 100644 --- a/ishtar_common/migrations/0042_auto__add_field_importtarget_concat_str__add_unique_importercolumn_col.py +++ b/ishtar_common/old_migrations/0042_auto__add_field_importtarget_concat_str__add_unique_importercolumn_col.py diff --git a/ishtar_common/migrations/0043_auto__add_field_importerduplicatefield_concat__add_field_importerdupli.py b/ishtar_common/old_migrations/0043_auto__add_field_importerduplicatefield_concat__add_field_importerdupli.py index efde90aca..efde90aca 100644 --- a/ishtar_common/migrations/0043_auto__add_field_importerduplicatefield_concat__add_field_importerdupli.py +++ b/ishtar_common/old_migrations/0043_auto__add_field_importerduplicatefield_concat__add_field_importerdupli.py diff --git a/ishtar_common/migrations/0044_auto__add_operationtype.py b/ishtar_common/old_migrations/0044_auto__add_operationtype.py index f623809de..f623809de 100644 --- a/ishtar_common/migrations/0044_auto__add_operationtype.py +++ b/ishtar_common/old_migrations/0044_auto__add_operationtype.py diff --git a/ishtar_common/migrations/0045_auto__chg_field_person_merge_key__chg_field_historicalorganization_mer.py b/ishtar_common/old_migrations/0045_auto__chg_field_person_merge_key__chg_field_historicalorganization_mer.py index 39114eba5..39114eba5 100644 --- a/ishtar_common/migrations/0045_auto__chg_field_person_merge_key__chg_field_historicalorganization_mer.py +++ b/ishtar_common/old_migrations/0045_auto__chg_field_person_merge_key__chg_field_historicalorganization_mer.py diff --git a/ishtar_common/migrations/0046_auto__add_field_person_exclude_from_merge__add_field_historicalorganiz.py b/ishtar_common/old_migrations/0046_auto__add_field_person_exclude_from_merge__add_field_historicalorganiz.py index e0dbc9222..e0dbc9222 100644 --- a/ishtar_common/migrations/0046_auto__add_field_person_exclude_from_merge__add_field_historicalorganiz.py +++ b/ishtar_common/old_migrations/0046_auto__add_field_person_exclude_from_merge__add_field_historicalorganiz.py diff --git a/ishtar_common/migrations/0047_auto__chg_field_person_exclude_from_merge__chg_field_historicalorganiz.py b/ishtar_common/old_migrations/0047_auto__chg_field_person_exclude_from_merge__chg_field_historicalorganiz.py index 4bc7b8a48..4bc7b8a48 100644 --- a/ishtar_common/migrations/0047_auto__chg_field_person_exclude_from_merge__chg_field_historicalorganiz.py +++ b/ishtar_common/old_migrations/0047_auto__chg_field_person_exclude_from_merge__chg_field_historicalorganiz.py diff --git a/ishtar_common/migrations/0048_auto__add_ishtarsiteprofile.py b/ishtar_common/old_migrations/0048_auto__add_ishtarsiteprofile.py index 5a2c21bf1..5a2c21bf1 100644 --- a/ishtar_common/migrations/0048_auto__add_ishtarsiteprofile.py +++ b/ishtar_common/old_migrations/0048_auto__add_ishtarsiteprofile.py diff --git a/ishtar_common/migrations/0049_auto__add_field_person_alt_address__add_field_person_alt_address_compl.py b/ishtar_common/old_migrations/0049_auto__add_field_person_alt_address__add_field_person_alt_address_compl.py index d64e3a964..d64e3a964 100644 --- a/ishtar_common/migrations/0049_auto__add_field_person_alt_address__add_field_person_alt_address_compl.py +++ b/ishtar_common/old_migrations/0049_auto__add_field_person_alt_address__add_field_person_alt_address_compl.py diff --git a/ishtar_common/migrations/0050_auto__chg_field_person_phone_desc3__chg_field_person_phone_desc2__chg_.py b/ishtar_common/old_migrations/0050_auto__chg_field_person_phone_desc3__chg_field_person_phone_desc2__chg_.py index b68b3b9bb..b68b3b9bb 100644 --- a/ishtar_common/migrations/0050_auto__chg_field_person_phone_desc3__chg_field_person_phone_desc2__chg_.py +++ b/ishtar_common/old_migrations/0050_auto__chg_field_person_phone_desc3__chg_field_person_phone_desc2__chg_.py diff --git a/ishtar_common/migrations/0051_auto__add_field_ishtarsiteprofile_homepage.py b/ishtar_common/old_migrations/0051_auto__add_field_ishtarsiteprofile_homepage.py index 7f8c65857..7f8c65857 100644 --- a/ishtar_common/migrations/0051_auto__add_field_ishtarsiteprofile_homepage.py +++ b/ishtar_common/old_migrations/0051_auto__add_field_ishtarsiteprofile_homepage.py diff --git a/ishtar_common/migrations/0052_auto__add_field_ishtarsiteprofile_file_external_id__add_field_ishtarsi.py b/ishtar_common/old_migrations/0052_auto__add_field_ishtarsiteprofile_file_external_id__add_field_ishtarsi.py index 7b902a432..7b902a432 100644 --- a/ishtar_common/migrations/0052_auto__add_field_ishtarsiteprofile_file_external_id__add_field_ishtarsi.py +++ b/ishtar_common/old_migrations/0052_auto__add_field_ishtarsiteprofile_file_external_id__add_field_ishtarsi.py diff --git a/ishtar_common/migrations/0053_auto__add_field_ishtarsiteprofile_currency.py b/ishtar_common/old_migrations/0053_auto__add_field_ishtarsiteprofile_currency.py index 04d293b04..04d293b04 100644 --- a/ishtar_common/migrations/0053_auto__add_field_ishtarsiteprofile_currency.py +++ b/ishtar_common/old_migrations/0053_auto__add_field_ishtarsiteprofile_currency.py diff --git a/ishtar_common/migrations/0054_auto__add_field_ishtarsiteprofile_person_raw_name.py b/ishtar_common/old_migrations/0054_auto__add_field_ishtarsiteprofile_person_raw_name.py index 06e380189..06e380189 100644 --- a/ishtar_common/migrations/0054_auto__add_field_ishtarsiteprofile_person_raw_name.py +++ b/ishtar_common/old_migrations/0054_auto__add_field_ishtarsiteprofile_person_raw_name.py diff --git a/ishtar_common/migrations/0055_auto.py b/ishtar_common/old_migrations/0055_auto.py index db41eb868..db41eb868 100644 --- a/ishtar_common/migrations/0055_auto.py +++ b/ishtar_common/old_migrations/0055_auto.py diff --git a/ishtar_common/migrations/0056_auto__add_titletype__add_field_person_pretitle.py b/ishtar_common/old_migrations/0056_auto__add_titletype__add_field_person_pretitle.py index 6db62c107..6db62c107 100644 --- a/ishtar_common/migrations/0056_auto__add_titletype__add_field_person_pretitle.py +++ b/ishtar_common/old_migrations/0056_auto__add_titletype__add_field_person_pretitle.py diff --git a/ishtar_common/migrations/0057_rename_pretitle_old_title.py b/ishtar_common/old_migrations/0057_rename_pretitle_old_title.py index 8a13b6c88..8a13b6c88 100644 --- a/ishtar_common/migrations/0057_rename_pretitle_old_title.py +++ b/ishtar_common/old_migrations/0057_rename_pretitle_old_title.py diff --git a/ishtar_common/migrations/0058_generate_title.py b/ishtar_common/old_migrations/0058_generate_title.py index d30850cab..d30850cab 100644 --- a/ishtar_common/migrations/0058_generate_title.py +++ b/ishtar_common/old_migrations/0058_generate_title.py diff --git a/ishtar_common/migrations/0059_rename_exc_from_merge_to_archived.py b/ishtar_common/old_migrations/0059_rename_exc_from_merge_to_archived.py index c329b76e2..c329b76e2 100644 --- a/ishtar_common/migrations/0059_rename_exc_from_merge_to_archived.py +++ b/ishtar_common/old_migrations/0059_rename_exc_from_merge_to_archived.py diff --git a/ishtar_common/migrations/0060_auto__add_historicalperson.py b/ishtar_common/old_migrations/0060_auto__add_historicalperson.py index a1db55c37..a1db55c37 100644 --- a/ishtar_common/migrations/0060_auto__add_historicalperson.py +++ b/ishtar_common/old_migrations/0060_auto__add_historicalperson.py diff --git a/ishtar_common/migrations/0061_auto__add_field_historicalperson_salutation__add_field_person_salutati.py b/ishtar_common/old_migrations/0061_auto__add_field_historicalperson_salutation__add_field_person_salutati.py index eb3b34a26..eb3b34a26 100644 --- a/ishtar_common/migrations/0061_auto__add_field_historicalperson_salutation__add_field_person_salutati.py +++ b/ishtar_common/old_migrations/0061_auto__add_field_historicalperson_salutation__add_field_person_salutati.py diff --git a/ishtar_common/migrations/0062_remove_ishtar_local_prefix.py b/ishtar_common/old_migrations/0062_remove_ishtar_local_prefix.py index b1406a111..b1406a111 100644 --- a/ishtar_common/migrations/0062_remove_ishtar_local_prefix.py +++ b/ishtar_common/old_migrations/0062_remove_ishtar_local_prefix.py diff --git a/ishtar_common/migrations/0063_auto__add_field_ishtaruser_advanced_shortcut_menu.py b/ishtar_common/old_migrations/0063_auto__add_field_ishtaruser_advanced_shortcut_menu.py index 19a076913..19a076913 100644 --- a/ishtar_common/migrations/0063_auto__add_field_ishtaruser_advanced_shortcut_menu.py +++ b/ishtar_common/old_migrations/0063_auto__add_field_ishtaruser_advanced_shortcut_menu.py diff --git a/ishtar_common/migrations/0064_auto__add_field_importercolumn_label.py b/ishtar_common/old_migrations/0064_auto__add_field_importercolumn_label.py index 2f2b6efcc..2f2b6efcc 100644 --- a/ishtar_common/migrations/0064_auto__add_field_importercolumn_label.py +++ b/ishtar_common/old_migrations/0064_auto__add_field_importercolumn_label.py diff --git a/ishtar_common/migrations/0065_auto__add_spatialreferencesystem__add_field_ishtarsiteprofile_mapping.py b/ishtar_common/old_migrations/0065_auto__add_spatialreferencesystem__add_field_ishtarsiteprofile_mapping.py index 2c1dc8a49..2c1dc8a49 100644 --- a/ishtar_common/migrations/0065_auto__add_spatialreferencesystem__add_field_ishtarsiteprofile_mapping.py +++ b/ishtar_common/old_migrations/0065_auto__add_spatialreferencesystem__add_field_ishtarsiteprofile_mapping.py diff --git a/ishtar_common/migrations/0066_auto__add_field_ishtarsiteprofile_base_color__add_field_ishtarsiteprof.py b/ishtar_common/old_migrations/0066_auto__add_field_ishtarsiteprofile_base_color__add_field_ishtarsiteprof.py index 16baf8881..16baf8881 100644 --- a/ishtar_common/migrations/0066_auto__add_field_ishtarsiteprofile_base_color__add_field_ishtarsiteprof.py +++ b/ishtar_common/old_migrations/0066_auto__add_field_ishtarsiteprofile_base_color__add_field_ishtarsiteprof.py diff --git a/ishtar_common/migrations/0067_auto__add_field_ishtarsiteprofile_container_external_id__add_field_ish.py b/ishtar_common/old_migrations/0067_auto__add_field_ishtarsiteprofile_container_external_id__add_field_ish.py index 2bff66138..2bff66138 100644 --- a/ishtar_common/migrations/0067_auto__add_field_ishtarsiteprofile_container_external_id__add_field_ish.py +++ b/ishtar_common/old_migrations/0067_auto__add_field_ishtarsiteprofile_container_external_id__add_field_ish.py diff --git a/ishtar_common/migrations/0068_auto__add_field_spatialreferencesystem_auth_name.py b/ishtar_common/old_migrations/0068_auto__add_field_spatialreferencesystem_auth_name.py index a7f83884d..a7f83884d 100644 --- a/ishtar_common/migrations/0068_auto__add_field_spatialreferencesystem_auth_name.py +++ b/ishtar_common/old_migrations/0068_auto__add_field_spatialreferencesystem_auth_name.py diff --git a/ishtar_common/migrations/0069_auto__chg_field_import_error_file__chg_field_import_match_file__chg_fi.py b/ishtar_common/old_migrations/0069_auto__chg_field_import_error_file__chg_field_import_match_file__chg_fi.py index 1fbccf642..1fbccf642 100644 --- a/ishtar_common/migrations/0069_auto__chg_field_import_error_file__chg_field_import_match_file__chg_fi.py +++ b/ishtar_common/old_migrations/0069_auto__chg_field_import_error_file__chg_field_import_match_file__chg_fi.py diff --git a/ishtar_common/migrations/0070_auto__add_importermodel__add_field_importertype_new_associated_models.py b/ishtar_common/old_migrations/0070_auto__add_importermodel__add_field_importertype_new_associated_models.py index b78e71bbf..b78e71bbf 100644 --- a/ishtar_common/migrations/0070_auto__add_importermodel__add_field_importertype_new_associated_models.py +++ b/ishtar_common/old_migrations/0070_auto__add_importermodel__add_field_importertype_new_associated_models.py diff --git a/ishtar_common/migrations/0071_migrate_importermodels.py b/ishtar_common/old_migrations/0071_migrate_importermodels.py index cc9b6f449..cc9b6f449 100644 --- a/ishtar_common/migrations/0071_migrate_importermodels.py +++ b/ishtar_common/old_migrations/0071_migrate_importermodels.py diff --git a/ishtar_common/migrations/0072_auto__del_field_importertype_new_associated_models__chg_field_importer.py b/ishtar_common/old_migrations/0072_auto__del_field_importertype_new_associated_models__chg_field_importer.py index 9d1c9f55c..9d1c9f55c 100644 --- a/ishtar_common/migrations/0072_auto__del_field_importertype_new_associated_models__chg_field_importer.py +++ b/ishtar_common/old_migrations/0072_auto__del_field_importertype_new_associated_models__chg_field_importer.py diff --git a/ishtar_common/migrations/0073_auto__add_field_importercolumn_export_field_name.py b/ishtar_common/old_migrations/0073_auto__add_field_importercolumn_export_field_name.py index a2b5ed719..a2b5ed719 100644 --- a/ishtar_common/migrations/0073_auto__add_field_importercolumn_export_field_name.py +++ b/ishtar_common/old_migrations/0073_auto__add_field_importercolumn_export_field_name.py diff --git a/ishtar_common/migrations/0074_auto__add_field_import_name.py b/ishtar_common/old_migrations/0074_auto__add_field_import_name.py index 8374ce83f..8374ce83f 100644 --- a/ishtar_common/migrations/0074_auto__add_field_import_name.py +++ b/ishtar_common/old_migrations/0074_auto__add_field_import_name.py diff --git a/ishtar_common/migrations/0075_auto__add_field_authortype_order.py b/ishtar_common/old_migrations/0075_auto__add_field_authortype_order.py index e768e57de..e768e57de 100644 --- a/ishtar_common/migrations/0075_auto__add_field_authortype_order.py +++ b/ishtar_common/old_migrations/0075_auto__add_field_authortype_order.py diff --git a/ishtar_common/migrations/0076_auto__add_field_ishtarsiteprofile_find_index.py b/ishtar_common/old_migrations/0076_auto__add_field_ishtarsiteprofile_find_index.py index 84bf5f971..84bf5f971 100644 --- a/ishtar_common/migrations/0076_auto__add_field_ishtarsiteprofile_find_index.py +++ b/ishtar_common/old_migrations/0076_auto__add_field_ishtarsiteprofile_find_index.py diff --git a/ishtar_common/old_migrations/__init__.py b/ishtar_common/old_migrations/__init__.py new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/ishtar_common/old_migrations/__init__.py diff --git a/ishtar_common/ooo_replace.py b/ishtar_common/ooo_replace.py deleted file mode 100644 index 18c4e1878..000000000 --- a/ishtar_common/ooo_replace.py +++ /dev/null @@ -1,218 +0,0 @@ -#!/usr/bin/python -# -*- coding: utf-8 -*- -# Copyright (C) 2013-2015 Étienne Loks <etienne.loks_AT_peacefrogsDOTnet> - -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU Affero General Public License as -# published by the Free Software Foundation, either version 3 of the -# License, or (at your option) any later version. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU Affero General Public License for more details. - -# You should have received a copy of the GNU Affero General Public License -# along with this program. If not, see <http://www.gnu.org/licenses/>. - -# See the file COPYING for details. - -import locale -import re -from zipfile import ZipFile, ZIP_DEFLATED -from cStringIO import StringIO -from xml.etree.cElementTree import ElementTree, fromstring - -from django.conf import settings -from ooo_translation import ooo_translation - - -def translate_context(context, locale): - if locale not in ooo_translation: - return context - new_context = {} - for k in context: - new_key = k - if k in ooo_translation[locale]: - new_key = ooo_translation[locale][k] - new_context[new_key] = context[k] - return new_context - -OOO_NS = "{urn:oasis:names:tc:opendocument:xmlns:text:1.0}" - - -def _set_value_from_formula(value, context, default_value): - value = value.strip() - if value.startswith("ooow:") and len(value) >= 5: - value = value[5:] - if value.startswith('"') and value.endswith('"') and len(value) > 1: - value = value[1:-1] - elif value in context: - value = _format_value(context[value], default_value) - else: - value = None - return value - - -def _parse_condition(condition, context, default_value): - # parse only == and != operator - operator = "" - if "!=" in condition: - operator = "!=" - elif "==" in condition: - operator = "==" - else: - return - var1, var2 = condition.split(operator) - var1 = _set_value_from_formula(var1, context, default_value) - var2 = _set_value_from_formula(var2, context, default_value) - res = var1 == var2 - if operator == '!=': - res = not res - return res - - -def _format_value(value, default_value): - if hasattr(value, 'strftime'): - c_locale = settings.LANGUAGE_CODE.split('-') - if len(c_locale) == 2: - c_locale[1] = c_locale[1].upper() - c_locale = "_".join(c_locale) - if locale.getlocale()[0] != c_locale: - for loc in (c_locale, c_locale + '.utf8'): - try: - locale.setlocale(locale.LC_ALL, loc) - break - except: - pass - try: - if settings.DATE_FORMAT: - value = value.strftime(settings.DATE_FORMAT).lower() - else: - value = value.strftime('%x') - except ValueError: - value = unicode(value) - if locale.getlocale()[1]: - value = value.decode(locale.getlocale()[1]) - value = unicode(value) if value else default_value - return value - -VAR_EXPR = u"###%sVAR %s###" -WHOLE_KEY_FILTER = u"((?:(?: )*(?:<[^#>]*>)*(?: )*(?:[-a-zA-Z0-9_])*(?: )*)*)" -WHOLE_KEY_FILTER = u"([^#]*)" -RE_VAR = re.compile(VAR_EXPR % (WHOLE_KEY_FILTER, WHOLE_KEY_FILTER)) -IF_EXPR = u"###%sIF %s###(.*)###ENDIF###" -RE_IF = re.compile(IF_EXPR % (WHOLE_KEY_FILTER, WHOLE_KEY_FILTER)) -TAG_FILTER = re.compile(u"(<[^<^>]*>)") -KEY_FILTER = re.compile(u"([-a-zA-Z0-9_]*)") - - -def _filter_key(base_key): - # return (key, extra_marker) - # manage strange key such as: - # test_<text:span text:style-name="T1">date</text:span> - key = base_key[:] - key = key.strip() - tags, new_key = '', key[:] - for tag in TAG_FILTER.findall(key): - tags += tag - new_key = new_key.replace(tag, '') - full_key = '' - for k in KEY_FILTER.findall(new_key): - if not k: - continue - full_key += k - return full_key, tags - - -def _custom_parsing(context, value, default_value=''): - """ - ###VAR nom_var### for displaying a variable name - ###IF nom_var### ###ENDIF### for conditionnal display - Be carreful nested condition are not yet managed! - """ - for regexp, sub_exp, if_cond in ((RE_IF, IF_EXPR, True), - (RE_VAR, VAR_EXPR, False)): - for base_key in regexp.findall(value[:]): - v, val = "", None - if if_cond: # the value inside the if is parsed - pre_tag, base_key, val = base_key - else: - pre_tag, base_key = base_key - key, extra_markers = _filter_key(base_key) - v = '' - if pre_tag: - v = pre_tag - if key in context and context[key]: - if if_cond: - v += _custom_parsing(context, val, default_value) - else: - v += _format_value(context[key], default_value) - # to preserve a consistent OOO file put extra_markers - if extra_markers: - v += extra_markers - value = re.sub(sub_exp % (pre_tag, base_key), v, value) - return value - - -def _ooo_replace(content, context, missing_keys, default_value=''): - - # regular ooo parsing - for xp in ('variable-set', 'variable-get'): - for p in content.findall(".//" + OOO_NS + xp): - name = p.get(OOO_NS + "name") - if name in context: - value = context[name] - p.text = _format_value(value, default_value) - else: - if default_value is not None: - p.text = default_value - missing_keys.add(name) - for p in content.findall(".//" + OOO_NS + "conditional-text"): - condition = p.get(OOO_NS + "condition") - res = 'true' if _parse_condition(condition, context, default_value) \ - else 'false' - value = p.get(OOO_NS + 'string-value-if-' + res) - value = _format_value(value, default_value) - if value.strip() in context: - value = context[value.strip()] - p.text = value - - # raw content parsing - str_io = StringIO() - content.write(str_io) - value = str_io.getvalue() - value = _custom_parsing(context, value, default_value).encode('utf-8') - return value - - -def ooo_replace(infile, outfile, context, default_value=''): - inzip = ZipFile(infile, 'r', ZIP_DEFLATED) - outzip = ZipFile(outfile, 'w', ZIP_DEFLATED) - - values = {} - missing_keys = set() - for xml_file in ('content.xml', 'styles.xml'): - content = ElementTree(fromstring(inzip.read(xml_file))) - values[xml_file] = _ooo_replace(content, context, missing_keys, - default_value) - - for f in inzip.infolist(): - if f.filename in values: - outzip.writestr(f.filename, values[f.filename]) - else: - outzip.writestr(f, inzip.read(f.filename)) - - inzip.close() - outzip.close() - return missing_keys - -if __name__ == '__main__': - infile = "../archaeological_files/tests/"\ - "AR_dossier_DRAC_modele_ishtar_1-MOD.odt" - outfile = "../archaeological_files/tests/"\ - "AR_dossier_DRAC_modele_ishtar-test.odt" - rep = {"file_incharge_surname": u"Yann", - "file_incharge_name": u"Le Jeune", - "fileact_ref": u"ref"} - ooo_replace(infile, outfile, rep, default_value="") diff --git a/ishtar_common/ooo_translation.py b/ishtar_common/ooo_translation.py deleted file mode 100644 index 5a3d4cb84..000000000 --- a/ishtar_common/ooo_translation.py +++ /dev/null @@ -1,38 +0,0 @@ -#!/usr/bin/python -# -*- coding: utf-8 -*- -# Copyright (C) 2013-2016 Étienne Loks <etienne.loks_AT_peacefrogsDOTnet> - -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU Affero General Public License as -# published by the Free Software Foundation, either version 3 of the -# License, or (at your option) any later version. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU Affero General Public License for more details. - -# You should have received a copy of the GNU Affero General Public License -# along with this program. If not, see <http://www.gnu.org/licenses/>. - -# See the file COPYING for details. - -from django.conf import settings -from django.utils import translation -# from django.utils.translation import pgettext_lazy - -# [('study', pgettext_lazy('ooo key', u'study')),] - -TRANSLATION_STRINGS = [] - -ooo_translation = {} -cur_language = translation.get_language() - -try: - for language, lbl in settings.LANGUAGES: - translation.activate(language) - ooo_translation[language] = {} - for k, v in TRANSLATION_STRINGS: - ooo_translation[language][k] = unicode(v) -finally: - translation.activate(cur_language) diff --git a/ishtar_common/templates/base.html b/ishtar_common/templates/base.html index b142c70c7..75e0e3740 100644 --- a/ishtar_common/templates/base.html +++ b/ishtar_common/templates/base.html @@ -1,4 +1,4 @@ -{% load i18n %}{% load url from future %}<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" +{% load i18n %}<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="{{LANGUAGE_CODE}}" lang="{{LANGUAGE_CODE}}"> diff --git a/ishtar_common/templates/blocks/JQueryAdvancedTown.html b/ishtar_common/templates/blocks/JQueryAdvancedTown.html index 5d6d93f30..b74bb6b68 100644 --- a/ishtar_common/templates/blocks/JQueryAdvancedTown.html +++ b/ishtar_common/templates/blocks/JQueryAdvancedTown.html @@ -1,4 +1,4 @@ -{% load i18n %}{% load url from future %}</td></tr> +{% load i18n %}</td></tr> <tr> <td>{% trans "State" context "Region" %}</td> <td> diff --git a/ishtar_common/templates/ishtar/blocks/advanced_shortcut_menu.html b/ishtar_common/templates/ishtar/blocks/advanced_shortcut_menu.html index 5cea8b5a7..cd7bf88f8 100644 --- a/ishtar_common/templates/ishtar/blocks/advanced_shortcut_menu.html +++ b/ishtar_common/templates/ishtar/blocks/advanced_shortcut_menu.html @@ -1,5 +1,4 @@ {% load i18n %} -{% load url from future%} {% if menu %} <form method="post" action="{% url 'update-current-item' %}"> <fieldset id='shortcut-menu'> diff --git a/ishtar_common/templates/ishtar/blocks/shortcut_menu.html b/ishtar_common/templates/ishtar/blocks/shortcut_menu.html index c03cb3806..67f91dfea 100644 --- a/ishtar_common/templates/ishtar/blocks/shortcut_menu.html +++ b/ishtar_common/templates/ishtar/blocks/shortcut_menu.html @@ -1,5 +1,4 @@ {% load i18n %} -{% load url from future%} {% if current_menu %} <form method="post" action="{% url 'update-current-item' %}"> <fieldset id="shortcut-menu"> diff --git a/ishtar_common/templates/ishtar/blocks/window_nav.html b/ishtar_common/templates/ishtar/blocks/window_nav.html index 3c52063f4..f212ebff6 100644 --- a/ishtar_common/templates/ishtar/blocks/window_nav.html +++ b/ishtar_common/templates/ishtar/blocks/window_nav.html @@ -1,4 +1,3 @@ -{% load url from future %} {% load i18n %} {% if previous or next %} <div class='tool-right'> diff --git a/ishtar_common/templates/ishtar/dashboards/dashboard_main.html b/ishtar_common/templates/ishtar/dashboards/dashboard_main.html index 6a5a67a63..ed61d1265 100644 --- a/ishtar_common/templates/ishtar/dashboards/dashboard_main.html +++ b/ishtar_common/templates/ishtar/dashboards/dashboard_main.html @@ -1,6 +1,5 @@ {% extends "base.html" %} {% load i18n %} -{% load url from future %} {% block extra_head %} {{form.media}} <script language="javascript" type="text/javascript" src="{{STATIC_URL}}js/jqplot/jquery.jqplot.min.js?ver={{VERSION}}"></script> diff --git a/ishtar_common/templates/ishtar/dashboards/dashboard_main_detail.html b/ishtar_common/templates/ishtar/dashboards/dashboard_main_detail.html index 2650282ca..5ebb05af4 100644 --- a/ishtar_common/templates/ishtar/dashboards/dashboard_main_detail.html +++ b/ishtar_common/templates/ishtar/dashboards/dashboard_main_detail.html @@ -1,5 +1,4 @@ {% load i18n date_formating humanize %} -{% load url from future %} <div class='dashboard' id="{{unique_id}}-tab"> <div> <h4>{% trans "Numbers" %}</h4> diff --git a/ishtar_common/templates/ishtar/import_delete.html b/ishtar_common/templates/ishtar/import_delete.html index 4b48ebc8c..ef05a884c 100644 --- a/ishtar_common/templates/ishtar/import_delete.html +++ b/ishtar_common/templates/ishtar/import_delete.html @@ -1,6 +1,5 @@ {% extends "base.html" %} {% load i18n inline_formset verbose_names %} -{% load url from future %} {% block content %} <h2>{{page_name}}</h2> <div class='form'> diff --git a/ishtar_common/templates/ishtar/import_list.html b/ishtar_common/templates/ishtar/import_list.html index 5dba51b6f..d5747fe88 100644 --- a/ishtar_common/templates/ishtar/import_list.html +++ b/ishtar_common/templates/ishtar/import_list.html @@ -1,6 +1,5 @@ {% extends "base.html" %} {% load i18n inline_formset %} -{% load url from future %} {% block content %} <h2>{{page_name}}</h2> <div class='form'> diff --git a/ishtar_common/templates/ishtar/manage_basket.html b/ishtar_common/templates/ishtar/manage_basket.html index a6065a7c2..3292318ea 100644 --- a/ishtar_common/templates/ishtar/manage_basket.html +++ b/ishtar_common/templates/ishtar/manage_basket.html @@ -1,6 +1,5 @@ {% extends "base.html" %} {% load i18n inline_formset %} -{% load url from future %} {% block content %} <h2>{{page_name}}{% trans ":"%} {{basket}}</h2> <form enctype="multipart/form-data" action="." method="post">{% csrf_token %} diff --git a/ishtar_common/templates/ishtar/merge.html b/ishtar_common/templates/ishtar/merge.html index 0e15da62a..de46e95c6 100644 --- a/ishtar_common/templates/ishtar/merge.html +++ b/ishtar_common/templates/ishtar/merge.html @@ -1,5 +1,4 @@ {% extends "base.html" %} -{% load url from future %} {% load i18n inline_formset %} {% block content %} <h2>{% trans "Merge" %}</h2> diff --git a/ishtar_common/templates/ishtar/merge_organization.html b/ishtar_common/templates/ishtar/merge_organization.html index 87eab7d53..10730e8c5 100644 --- a/ishtar_common/templates/ishtar/merge_organization.html +++ b/ishtar_common/templates/ishtar/merge_organization.html @@ -1,5 +1,4 @@ {% extends "ishtar/merge.html" %} -{% load url from future %} {% block merge_field_row %} {% if form.non_field_errors %}<tr><td colspan='4'></td><td colspan='3' class='errorlist'>{% for error in form.non_field_errors %}{{error}} {% endfor%}</tr>{% endif %} <tr> diff --git a/ishtar_common/templates/ishtar/merge_person.html b/ishtar_common/templates/ishtar/merge_person.html index 4e76c804b..0d03112c5 100644 --- a/ishtar_common/templates/ishtar/merge_person.html +++ b/ishtar_common/templates/ishtar/merge_person.html @@ -1,5 +1,4 @@ {% extends "ishtar/merge.html" %} -{% load url from future %} {% block merge_field_row %} {% if form.non_field_errors %}<tr><td colspan='4'></td><td colspan='3' class='errorlist'>{% for error in form.non_field_errors %}{{error}} {% endfor%}</tr>{% endif %} <tr> diff --git a/ishtar_common/templates/ishtar/organization_form.html b/ishtar_common/templates/ishtar/organization_form.html index 21d5ffa9e..828023908 100644 --- a/ishtar_common/templates/ishtar/organization_form.html +++ b/ishtar_common/templates/ishtar/organization_form.html @@ -1,4 +1,4 @@ -{% load i18n %}{% load url from future %} +{% load i18n %} <div id='orga-form'> <form id='dyn-form-organization' method='post'> {% csrf_token %} diff --git a/ishtar_common/templates/ishtar/organization_person_form.html b/ishtar_common/templates/ishtar/organization_person_form.html index 46f2cdc15..e258441b3 100644 --- a/ishtar_common/templates/ishtar/organization_person_form.html +++ b/ishtar_common/templates/ishtar/organization_person_form.html @@ -1,4 +1,4 @@ -{% load i18n %}{% load url from future %} +{% load i18n %} <div id='orga-person-form'> <form id='dyn-form-person' method='post'> {% csrf_token %} diff --git a/ishtar_common/templates/ishtar/person_form.html b/ishtar_common/templates/ishtar/person_form.html index 555aa1a5f..10a49cd52 100644 --- a/ishtar_common/templates/ishtar/person_form.html +++ b/ishtar_common/templates/ishtar/person_form.html @@ -1,4 +1,4 @@ -{% load i18n %}{% load url from future %} +{% load i18n %} <div id='person-form'> <form id='dyn-form-person' method='post'> {% csrf_token %} diff --git a/ishtar_common/templates/ishtar/sheet_organization.html b/ishtar_common/templates/ishtar/sheet_organization.html index 66048095b..525b69325 100644 --- a/ishtar_common/templates/ishtar/sheet_organization.html +++ b/ishtar_common/templates/ishtar/sheet_organization.html @@ -28,7 +28,7 @@ <td class='string'>{{person.name|default:""}}</td> <td class='string'>{{person.surname|default:""}}</td> <td>{% for type in person.person_types.all %}{% if forloop.counter0 %}, {% endif %}{{type.label}}{% endfor %}</td> - <td class='link'><a class='display_details' href="#" onclick='load_window("{%url show-person person.pk ''%}")'><i class="fa fa-info-circle" aria-hidden="true"></i></a></td> + <td class='link'><a class='display_details' href="#" onclick='load_window("{% url "show-person" person.pk "" %}")'><i class="fa fa-info-circle" aria-hidden="true"></i></a></td> </tr> {% empty %} <tr><td colspan="8" class='no_items'>{% trans "No person in this organization" %}</td></tr> diff --git a/ishtar_common/templates/ishtar/sheet_source.html b/ishtar_common/templates/ishtar/sheet_source.html index 244ca1be3..24477ce2c 100644 --- a/ishtar_common/templates/ishtar/sheet_source.html +++ b/ishtar_common/templates/ishtar/sheet_source.html @@ -19,8 +19,8 @@ {% field_li "Source type" item.source_type %} {% field_li "Format type" item.format_type %} {% field_li "Scale" item.scale %} - {% trans "Web link" as weblink_label %} - {% field_li_url weblink_label item.associated_url %} +{% trans "Web link" as weblink_label %} +{% field_li_url weblink_label item.associated_url %} {% field_li "Item number" item.item_number %} {% field_li "Ref." item.reference %} {% field_li "Internal ref." item.internal_reference %} diff --git a/ishtar_common/templates/ishtar/wizard/default_wizard.html b/ishtar_common/templates/ishtar/wizard/default_wizard.html index 204feeebe..19076b0de 100644 --- a/ishtar_common/templates/ishtar/wizard/default_wizard.html +++ b/ishtar_common/templates/ishtar/wizard/default_wizard.html @@ -1,6 +1,5 @@ {% extends "base.html" %} {% load i18n range table_form %} -{% load url from future %} {% block extra_head %} {{form.media}} {% endblock %} diff --git a/ishtar_common/templates/ishtar/wizard/validation_bar.html b/ishtar_common/templates/ishtar/wizard/validation_bar.html index a1590858f..b99b9e689 100644 --- a/ishtar_common/templates/ishtar/wizard/validation_bar.html +++ b/ishtar_common/templates/ishtar/wizard/validation_bar.html @@ -1,5 +1,4 @@ {% load i18n %} -{% load url from future %} <div id='validation-bar'> <input type="submit" id="submit_form" name='validate' value="{% trans 'Validate' %}"/> {% if last_step_is_available and next_steps %} diff --git a/ishtar_common/templates/registration/activation_complete.html b/ishtar_common/templates/registration/activation_complete.html index b243d22f2..7db8c186e 100644 --- a/ishtar_common/templates/registration/activation_complete.html +++ b/ishtar_common/templates/registration/activation_complete.html @@ -1,5 +1,4 @@ {% extends "base.html" %} -{% load url from future %} {% load i18n %} {% block content %} diff --git a/ishtar_common/templates/registration/login.html b/ishtar_common/templates/registration/login.html index ada4f6aa9..e8122f150 100644 --- a/ishtar_common/templates/registration/login.html +++ b/ishtar_common/templates/registration/login.html @@ -13,7 +13,7 @@ </form> </div> <div class='info'> -<p>{% trans "Forgot password?" %} <a href="{% url auth_password_reset %}">{% trans "Reset it" %}</a></p> -<p>{% trans "Not member?" %} <a href="{% url registration_register %}">{% trans "Register" %}</a></p> +<p>{% trans "Forgot password?" %} <a href="{% url 'auth_password_reset' %}">{% trans "Reset it" %}</a></p> +<p>{% trans "Not member?" %} <a href="{% url 'registration_register' %}">{% trans "Register" %}</a></p> </div> {% endblock %} diff --git a/ishtar_common/templates/welcome.html b/ishtar_common/templates/welcome.html index 508f7be02..4b9f3b5c5 100644 --- a/ishtar_common/templates/welcome.html +++ b/ishtar_common/templates/welcome.html @@ -1,5 +1,4 @@ {% load i18n %} -{% load url from future %} <h2>{% trans "Welcome in Ishtar, open source software for management and inventory of archaeological data" %}</h2> {{random_image}} diff --git a/ishtar_common/templatetags/link_to_window.py b/ishtar_common/templatetags/link_to_window.py index 14e4bd6c7..f157b6255 100644 --- a/ishtar_common/templatetags/link_to_window.py +++ b/ishtar_common/templatetags/link_to_window.py @@ -60,12 +60,16 @@ def add_links(items, extra_attr=''): takes_context=True) def modify_toolbar(context, item, action): request = context.get('request') - items_by_idx = request.session['MENU'].items_by_idx.keys() + menu = context.get('MENU', None) + print("TODO: link_to_window - check") + if not menu: + return {} + items_by_idx = menu.items_by_idx.keys() if action not in items_by_idx: return {} - menu = request.session['MENU'].items_by_idx[action] + action = menu.items_by_idx[action] user = request.user if not hasattr(user, 'ishtaruser') or \ - not menu.is_available(user.ishtaruser, item): + not action.is_available(user.ishtaruser, item): return {} return {'item': item} diff --git a/ishtar_common/templatetags/window_field.py b/ishtar_common/templatetags/window_field.py index 5180955d8..022986493 100644 --- a/ishtar_common/templatetags/window_field.py +++ b/ishtar_common/templatetags/window_field.py @@ -25,10 +25,8 @@ def field_li(caption, data, pre_data='', post_data=''): def field_url(caption, link, link_name='', li=False): if link: link = link.strip() - if not link: - return u'' - if not link.startswith('http://') and not link.startswith('https://'): - link = 'http://' + link + if not link.startswith('http://') and not link.startswith('https://'): + link = 'http://' + link return {'caption': caption, 'link': link, "link_name": link_name, 'li': li} diff --git a/ishtar_common/tests.py b/ishtar_common/tests.py index b862b4ea7..ad623980d 100644 --- a/ishtar_common/tests.py +++ b/ishtar_common/tests.py @@ -27,47 +27,17 @@ from django.contrib.contenttypes.models import ContentType from django.core.cache import cache from django.core.exceptions import ValidationError from django.core.files.base import File as DjangoFile -from django.core.files.uploadedfile import SimpleUploadedFile from django.core.management import call_command from django.core.urlresolvers import reverse -from django.db import connection, transaction from django.template.defaultfilters import slugify from django.test import TestCase as BaseTestCase from django.test.client import Client -from django.test.simple import DjangoTestSuiteRunner +from django.test.runner import DiscoverRunner from ishtar_common import models -from ishtar_common import forms_common +from ishtar_common import views from ishtar_common.utils import post_save_point -from archaeological_context_records.models import CRBulkView -from archaeological_finds.models import BFBulkView, FBulkView, FirstBaseFindView - -""" -from django.conf import settings -import tempfile, datetime -from zipfile import ZipFile, ZIP_DEFLATED - -from oook_replace.oook_replace import oook_replace - -class OOOGenerationTest(TestCase): - def testGeneration(self): - context = {'test_var':u"Testé", 'test_var2':u"", - "test_date":datetime.date(2015, 1, 1)} - tmp = tempfile.TemporaryFile() - oook_replace("../ishtar_common/tests/test-file.odt", tmp, context) - inzip = ZipFile(tmp, 'r', ZIP_DEFLATED) - value = inzip.read('content.xml') - self.assertTrue(u"Testé" in value or "Testé" in value) - self.assertTrue("testé 2" not in value and "testé 2" not in value) - self.assertTrue("2015" in value) - lg, ct = settings.LANGUAGE_CODE.split('-') - if lg == 'fr': - self.assertTrue('janvier' in value) - if lg == 'en': - self.assertTrue('january' in value) -""" - COMMON_FIXTURES = [ settings.ROOT_PATH + '../fixtures/initial_data-auth-fr.json', @@ -87,14 +57,22 @@ OPERATION_FIXTURES = COMMON_FIXTURES + [ def create_superuser(): username = 'username4277' password = 'dcbqj756456!@%' + q = User.objects.filter(username=username) + if q.count(): + return username, password, q.all()[0] user = User.objects.create_superuser(username, "nomail@nomail.com", password) + user.set_password(password) + user.save() return username, password, user def create_user(): username = 'username678' - password = 'dcbqj756456!@%' + password = 'dcbqj756aaa456!@%' + q = User.objects.filter(username=username) + if q.count(): + return username, password, q.all()[0] user = User.objects.create_user(username, email="nomail2@nomail.com") user.set_password(password) user.save() @@ -102,14 +80,7 @@ def create_user(): class TestCase(BaseTestCase): - def _pre_setup(self): - super(TestCase, self)._pre_setup() - if settings.USE_SPATIALITE_FOR_TESTS: - return - c = connection.cursor() - for view in [CRBulkView, FirstBaseFindView, BFBulkView, FBulkView]: - c.execute(view.CREATE_SQL) - transaction.commit_unless_managed() + pass class CommandsTestCase(TestCase): @@ -132,7 +103,7 @@ class WizardTestFormData(object): """ Test set to simulate wizard steps """ - def __init__(self, name, form_datas, ignored=[], pre_tests=[], + def __init__(self, name, form_datas={}, ignored=[], pre_tests=[], extra_tests=[]): """ :param name: explicit name of the test @@ -159,6 +130,8 @@ class WizardTestFormData(object): :param value: value :return: None """ + if form_name not in self.form_datas: + self.form_datas[form_name] = {} self.form_datas[form_name][field_name] = value def append(self, form_name, value): @@ -169,6 +142,8 @@ class WizardTestFormData(object): :param value: value :return: None """ + if form_name not in self.form_datas: + self.form_datas[form_name] = {} self.form_datas[form_name].append(value) def inits(self, test_object): @@ -182,7 +157,6 @@ class WizardTestFormData(object): if suffix in form_name: continue self.form_datas[form_name + suffix] = self.form_datas.pop(form_name) - for pre in self.pre_tests: pre(test_object) @@ -194,15 +168,15 @@ class WizardTestFormData(object): test(test_object, final_step_response) -class ManagedModelTestRunner(DjangoTestSuiteRunner): +class ManagedModelTestRunner(DiscoverRunner): """ 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() + from django.apps import apps + self.unmanaged_models = [m for m in apps.get_models() if not m._meta.managed] for m in self.unmanaged_models: m._meta.managed = True @@ -283,8 +257,8 @@ class WizardTest(object): next_form_is_checked = len(self.steps) > idx + 1 and \ self.steps[idx + 1][0] not in ignored try: - response = self.client.post(url, data, - follow=not next_form_is_checked) + response = self.client.post( + url, data, follow=not next_form_is_checked) except ValidationError as e: msg = u"Errors: {} on {}. On \"ManagementForm data is " \ u"missing or...\" error verify the wizard_name or " \ @@ -347,8 +321,15 @@ class AccessControlTest(TestCase): user, created = User.objects.get_or_create(username='myusername') user.is_superuser = True user.save() - ishtar_user = models.IshtarUser.objects.get(username=user.username) + ishtar_user = models.IshtarUser.objects.get( + user_ptr__username='myusername') self.assertIn(admin, ishtar_user.person.person_types.all()) + user = ishtar_user.user_ptr + user.is_superuser = False + user.save() + ishtar_user = models.IshtarUser.objects.get( + user_ptr__username='myusername') + self.assertNotIn(admin, ishtar_user.person.person_types.all()) class AdminGenTypeTest(TestCase): @@ -362,11 +343,14 @@ class AdminGenTypeTest(TestCase): module_name = 'ishtar_common' def setUp(self): - password = 'mypassword' - my_admin = User.objects.create_superuser( - 'myuser', 'myemail@test.com', password) + self.password = 'mypassword' + self.username = "myuser" + user = User.objects.create_superuser( + self.username, 'myemail@test.com', self.password) + user.set_password(self.password) + user.save() self.client = Client() - self.client.login(username=my_admin.username, password=password) + self.client.login(username=self.username, password=self.password) def test_listing_and_detail(self): for model in self.models: @@ -742,7 +726,8 @@ class ShortMenuTest(TestCase): def test_treatment_file(self): c = Client() c.login(username=self.username, password=self.password) - from archaeological_finds.models import TreatmentFile, TreatmentFileType + from archaeological_finds.models import TreatmentFile, \ + TreatmentFileType tf = TreatmentFile.objects.create( type=TreatmentFileType.objects.create(), year=2050 @@ -998,11 +983,12 @@ class IshtarSiteProfileTest(TestCase): class IshtarBasicTest(TestCase): def setUp(self): - password = 'mypassword' - my_admin = User.objects.create_superuser( - 'myuser', 'myemail@test.com', password) + self.password = 'mypassword' + self.my_admin = User.objects.create_superuser( + 'myuser', 'myemail@test.com', self.password) self.client = Client() - self.client.login(username=my_admin.username, password=password) + self.client.login(username=self.my_admin.username, + password=self.password) def test_status(self): response = self.client.get(reverse('status')) @@ -1015,6 +1001,34 @@ class IshtarBasicTest(TestCase): person.save() self.assertEqual(person.raw_name, "WEASLEY George") + def test_show(self): + person = models.Person.objects.create(name="Weasley", surname="Bill") + orga_type = models.OrganizationType.objects.create( + txt_idx='test', label='testy') + company = models.Organization.objects.create( + history_modifier=self.my_admin, name='Franquin Comp.', + organization_type=orga_type) + c = Client() + + response = c.get(reverse('show-person', kwargs={'pk': person.pk})) + self.assertEqual(response.status_code, 200) + # empty content when not allowed + self.assertEqual(response.content, "") + response = c.get(reverse('show-organization', + kwargs={'pk': company.pk})) + self.assertEqual(response.status_code, 200) + # empty content when not allowed + self.assertEqual(response.content, "") + + c.login(username=self.my_admin.username, password=self.password) + response = c.get(reverse('show-person', kwargs={'pk': person.pk})) + self.assertEqual(response.status_code, 200) + self.assertIn('class="sheet"', response.content) + response = c.get(reverse('show-organization', + kwargs={'pk': company.pk})) + self.assertEqual(response.status_code, 200) + self.assertIn('class="sheet"', response.content) + class GeomaticTest(TestCase): def test_post_save_point(self): @@ -1041,3 +1055,44 @@ class GeomaticTest(TestCase): post_save_point(None, instance=obj) self.assertIsNotNone(obj.point_2d) self.assertIsNotNone(obj.point) + + +class AccountWizardTest(WizardTest, TestCase): + fixtures = [settings.ROOT_PATH + + '../fixtures/initial_data-auth-fr.json', + settings.ROOT_PATH + + '../ishtar_common/fixtures/initial_data-fr.json',] + url_name = 'account_management' + wizard_name = 'account_wizard' + steps = views.account_wizard_steps + form_datas = [ + WizardTestFormData( + "Add an account", + form_datas={ + 'account': { + 'username': "My username", + 'email': "test@example.com", + 'hidden_password': "my_pass", + 'hidden_password_confirm': "my_pass", + } + }, + ), + ] + + def pre_wizard(self): + self.person = models.Person.objects.create( + name='Boule', surname=' ', + ) + self.form_datas[0].set('selec', 'pk', self.person.pk) + self.form_datas[0].set('account', 'pk', self.person.pk) + + self.account_number = models.IshtarUser.objects.count() + super(AccountWizardTest, self).pre_wizard() + + def post_wizard(self): + person = models.Person.objects.get(pk=self.person.pk) + user = person.ishtaruser.user_ptr + self.assertEqual(user.username, "My username") + self.assertEqual(user.email, "test@example.com") + self.assertEqual(models.IshtarUser.objects.count(), + self.account_number + 1) diff --git a/ishtar_common/tests/old.odt b/ishtar_common/tests/old.odt Binary files differnew file mode 100644 index 000000000..4d13ac834 --- /dev/null +++ b/ishtar_common/tests/old.odt diff --git a/ishtar_common/urls.py b/ishtar_common/urls.py index 5abec4215..163fedeb9 100644 --- a/ishtar_common/urls.py +++ b/ishtar_common/urls.py @@ -18,9 +18,9 @@ # See the file COPYING for details. from django.conf import settings -from django.conf.urls.defaults import patterns, include, url +from django.conf.urls import patterns, include, url from django.conf.urls.static import static -from django.views.generic.simple import direct_to_template +from django.views.generic import TemplateView from menus import menu @@ -33,8 +33,8 @@ from ishtar_common.wizards import check_rights urlpatterns = patterns( '', url(r'^status/$', views.status, name='status'), - url(r'^robots\.txt$', direct_to_template, - {'template': 'robots.txt', 'mimetype': 'text/plain'}), + url(r'^robots\.txt$', TemplateView.as_view(template_name='robots.txt', + content_type='text/plain')), # internationalization url(r'^i18n/', include('django.conf.urls.i18n')), # General diff --git a/ishtar_common/utils.py b/ishtar_common/utils.py index f1e2e4b96..19ff16394 100644 --- a/ishtar_common/utils.py +++ b/ishtar_common/utils.py @@ -20,6 +20,7 @@ from functools import wraps import hashlib import random +import datetime from django import forms from django.conf import settings @@ -31,6 +32,24 @@ from django.utils.translation import ugettext_lazy as _, ugettext from django.template.defaultfilters import slugify +class BColors: + """ + Bash colors. Don't forget to finish your colored string with ENDC. + """ + HEADER = '\033[95m' + OKBLUE = '\033[94m' + OKGREEN = '\033[92m' + WARNING = '\033[93m' + FAIL = '\033[91m' + ENDC = '\033[0m' + BOLD = '\033[1m' + UNDERLINE = '\033[4m' + + +def get_current_year(): + return datetime.datetime.now().year + + def get_cache(cls, extra_args=[]): cache_key = u"{}-{}-{}".format( settings.PROJECT_SLUG, cls._meta.app_label, cls.__name__) diff --git a/ishtar_common/views.py b/ishtar_common/views.py index 86c87d049..0f1397758 100644 --- a/ishtar_common/views.py +++ b/ishtar_common/views.py @@ -23,7 +23,11 @@ from copy import copy import csv import cStringIO as StringIO import datetime + +import reportlab +reportlab.Version = "2.2" # stupid hack for an old library... import ho.pisa as pisa + import json import logging from markdown import markdown @@ -186,10 +190,13 @@ organization_deletion_wizard = wizards.OrganizationDeletionWizard.as_view( label=_(u"Organization deletion"), url_name='organization_deletion',) +account_wizard_steps = [ + ('selec-account_management', forms.PersonUserFormSelection), + ('account-account_management', forms.AccountForm), + ('final-account_management', forms.FinalAccountForm)] + account_management_wizard = wizards.AccountWizard.as_view( - [('selec-account_management', forms.PersonUserFormSelection), - ('account-account_management', forms.AccountForm), - ('final-account_management', forms.FinalAccountForm)], + account_wizard_steps, label=_(u"Account management"), url_name='account_management',) @@ -214,44 +221,44 @@ def get_autocomplete_generic(model, extra={'available': True}): else unicode(x) data = json.dumps([{'id': obj.pk, 'value': get_label(obj)} for obj in objects]) - return HttpResponse(data, mimetype='text/plain') + return HttpResponse(data, content_type='text/plain') return func def hide_shortcut_menu(request): request.session['SHORTCUT_SHOW'] = 'off' - return HttpResponse('OK', mimetype='text/plain') + return HttpResponse('OK', content_type='text/plain') def show_shortcut_menu(request): request.session['SHORTCUT_SHOW'] = 'on' - return HttpResponse('OK', mimetype='text/plain') + return HttpResponse('OK', content_type='text/plain') def activate_all_search(request): request.session['SHORTCUT_SEARCH'] = 'all' - return HttpResponse('OK', mimetype='text/plain') + return HttpResponse('OK', content_type='text/plain') def activate_own_search(request): request.session['SHORTCUT_SEARCH'] = 'own' - return HttpResponse('OK', mimetype='text/plain') + return HttpResponse('OK', content_type='text/plain') def activate_advanced_shortcut_menu(request): if not hasattr(request.user, 'ishtaruser'): - return HttpResponse('KO', mimetype='text/plain') + return HttpResponse('KO', content_type='text/plain') request.user.ishtaruser.advanced_shortcut_menu = True request.user.ishtaruser.save() - return HttpResponse('OK', mimetype='text/plain') + return HttpResponse('OK', content_type='text/plain') def activate_simple_shortcut_menu(request): if not hasattr(request.user, 'ishtaruser'): - return HttpResponse('KO', mimetype='text/plain') + return HttpResponse('KO', content_type='text/plain') request.user.ishtaruser.advanced_shortcut_menu = False request.user.ishtaruser.save() - return HttpResponse('OK', mimetype='text/plain') + return HttpResponse('OK', content_type='text/plain') def shortcut_menu(request): @@ -462,7 +469,7 @@ def autocomplete_person(request, person_types=None, attached_to=None, own_items = request.user.has_perm('ishtar_common.view_own_person', models.Person) if not all_items and not own_items or not request.GET.get('term'): - return HttpResponse('[]', mimetype='text/plain') + return HttpResponse('[]', content_type='text/plain') q = request.GET.get('term') limit = request.GET.get('limit', 20) try: @@ -493,12 +500,12 @@ def autocomplete_person(request, person_types=None, attached_to=None, persons = models.Person.objects.filter(query)[:limit] data = json.dumps([{'id': person.pk, 'value': unicode(person)} for person in persons if person]) - return HttpResponse(data, mimetype='text/plain') + return HttpResponse(data, content_type='text/plain') def autocomplete_department(request): if not request.GET.get('term'): - return HttpResponse('[]', mimetype='text/plain') + return HttpResponse('[]', content_type='text/plain') q = request.GET.get('term') q = unicodedata.normalize("NFKD", q).encode('ascii', 'ignore') query = Q() @@ -509,12 +516,12 @@ def autocomplete_department(request): departments = models.Department.objects.filter(query)[:limit] data = json.dumps([{'id': department.pk, 'value': unicode(department)} for department in departments]) - return HttpResponse(data, mimetype='text/plain') + return HttpResponse(data, content_type='text/plain') def autocomplete_town(request): if not request.GET.get('term'): - return HttpResponse(mimetype='text/plain') + return HttpResponse(content_type='text/plain') q = request.GET.get('term') q = unicodedata.normalize("NFKD", q).encode('ascii', 'ignore') query = Q() @@ -527,12 +534,12 @@ def autocomplete_town(request): towns = models.Town.objects.filter(query)[:limit] data = json.dumps([{'id': town.pk, 'value': unicode(town)} for town in towns]) - return HttpResponse(data, mimetype='text/plain') + return HttpResponse(data, content_type='text/plain') def autocomplete_advanced_town(request, department_id=None, state_id=None): if not request.GET.get('term'): - return HttpResponse(mimetype='text/plain') + return HttpResponse(content_type='text/plain') q = request.GET.get('term') q = unicodedata.normalize("NFKD", q).encode('ascii', 'ignore') query = Q() @@ -556,7 +563,7 @@ def autocomplete_advanced_town(request, department_id=None, state_id=None): val += " (%s)" % town.numero_insee result.append({'id': town.pk, 'value': val}) data = json.dumps(result) - return HttpResponse(data, mimetype='text/plain') + return HttpResponse(data, content_type='text/plain') def department_by_state(request, state_id=''): @@ -567,7 +574,7 @@ def department_by_state(request, state_id=''): data = json.dumps([{'id': department.pk, 'number': department.number, 'value': unicode(department)} for department in departments]) - return HttpResponse(data, mimetype='text/plain') + return HttpResponse(data, content_type='text/plain') def format_val(val): @@ -585,6 +592,23 @@ HIERARCHIC_FIELDS = ['periods', 'period', 'unit', 'material_types', 'material_type', 'conservatory_state'] +def _get_values(request, val): + if hasattr(val, 'all'): # manage related objects + vals = list(val.all()) + else: + vals = [val] + new_vals = [] + for v in vals: + if callable(v): + v = v() + if hasattr(v, 'url'): + v = request.is_secure() and \ + 'https' or 'http' + '://' + \ + request.get_host() + v.url + new_vals.append(v) + return new_vals + + def get_item(model, func_name, default_name, extra_request_keys=[], base_request=None, bool_fields=[], reversed_bool_fields=[], dated_fields=[], associated_models=[], relative_session_names=[], @@ -607,7 +631,7 @@ def get_item(model, func_name, default_name, extra_request_keys=[], allowed, own = models.check_model_access_control(request, model, available_perms) if not allowed: - return HttpResponse(EMPTY, mimetype='text/plain') + return HttpResponse(EMPTY, content_type='text/plain') if force_own: own = True @@ -683,7 +707,7 @@ def get_item(model, func_name, default_name, extra_request_keys=[], try: old = 'old' in request_items and int(request_items['old']) except ValueError: - return HttpResponse('[]', mimetype='text/plain') + return HttpResponse('[]', content_type='text/plain') # manage relations types if 'relation_types' not in my_relation_types_prefix: @@ -730,7 +754,7 @@ def get_item(model, func_name, default_name, extra_request_keys=[], try: dct = {"pk": request.session[default_name]} pinned_search = unicode(model._meta.verbose_name)\ - + u" - " + unicode( + + u" - " + unicode( model.objects.get(pk=dct["pk"])) except model.DoesNotExist: pass @@ -856,7 +880,11 @@ def get_item(model, func_name, default_name, extra_request_keys=[], query |= Q(**altor_dct) if own: - query = query & model.get_query_owns(request.user) + q = models.IshtarUser.objects.filter(user_ptr=request.user) + if q.count(): + query = query & model.get_query_owns(q.all()[0]) + else: + return HttpResponse(EMPTY, content_type='text/plain') for and_req in and_reqs: query = query & and_req @@ -1007,23 +1035,11 @@ def get_item(model, func_name, default_name, extra_request_keys=[], val = list(val.all()) for v in val: v = getattr(v, ky) - if callable(v): - v = v() - if hasattr(v, 'url'): - v = request.is_secure() and \ - 'https' or 'http' + '://' + \ - request.get_host() + v.url - new_vals.append(v) + new_vals += _get_values(request, v) elif val: try: val = getattr(val, ky) - if callable(val): - val = val() - if hasattr(val, 'url'): - val = request.is_secure() and \ - 'https' or 'http' + '://' + \ - request.get_host() + val.url - new_vals.append(val) + new_vals += _get_values(request, val) except AttributeError: # must be a query key such as "contains" pass @@ -1111,9 +1127,9 @@ def get_item(model, func_name, default_name, extra_request_keys=[], "page": page_nb, "total": (items_nb / row_nb + 1) if row_nb else items_nb, }) - return HttpResponse(data, mimetype='text/plain') + return HttpResponse(data, content_type='text/plain') elif data_type == "csv": - response = HttpResponse(mimetype='text/csv') + response = HttpResponse(content_type='text/csv') n = datetime.datetime.now() filename = u'%s_%s.csv' % (default_name, n.strftime('%Y%m%d-%H%M%S')) @@ -1154,14 +1170,15 @@ def get_item(model, func_name, default_name, extra_request_keys=[], val = data[1:][idx + delta].encode( ENCODING, errors='replace') if col_name and "|" in col_name[0]: - for delta_idx in range(len(col_name[0].split('|')) - 1): + for delta_idx in range( + len(col_name[0].split('|')) - 1): delta += 1 val += data[1:][idx + delta].encode( ENCODING, errors='replace') row.append(val) writer.writerow(row) return response - return HttpResponse('{}', mimetype='text/plain') + return HttpResponse('{}', content_type='text/plain') return func @@ -1173,7 +1190,7 @@ def get_by_importer(request, slug, data_type='json', full=False, res = '' if data_type == "json": res = '{}' - return HttpResponse(res, mimetype='text/plain') + return HttpResponse(res, content_type='text/plain') imp = q.all()[0].get_importer_class() cols, col_names = [], [] for formater in imp.LINE_FORMAT: @@ -1231,7 +1248,7 @@ def show_item(model, name, extra_dct=None): item = item.get_previous(date=date) assert item is not None except (ValueError, AssertionError): - return HttpResponse(None, mimetype='text/plain') + return HttpResponse(None, content_type='text/plain') dct['previous'] = item._previous dct['next'] = item._next else: @@ -1286,7 +1303,7 @@ def show_item(model, name, extra_dct=None): except xhtml2odt.ODTExportError: return HttpResponse(content, content_type="application/xhtml") response = HttpResponse( - mimetype='application/vnd.oasis.opendocument.text') + content_type='application/vnd.oasis.opendocument.text') response['Content-Disposition'] = 'attachment; filename=%s.odt' % \ filename response.write(odtfile) @@ -1301,7 +1318,7 @@ def show_item(model, name, extra_dct=None): pdf = pisa.pisaDocument(StringIO.StringIO(html), result, encoding='utf-8') response = HttpResponse(result.getvalue(), - mimetype='application/pdf') + content_type='application/pdf') response['Content-Disposition'] = 'attachment; filename=%s.pdf' % \ filename if not pdf.err: @@ -1321,8 +1338,8 @@ def revert_item(model): date = datetime.datetime.strptime(date, '%Y-%m-%dT%H:%M:%S.%f') item.rollback(date) except (ObjectDoesNotExist, ValueError, HistoryError): - return HttpResponse(None, mimetype='text/plain') - return HttpResponse("True", mimetype='text/plain') + return HttpResponse(None, content_type='text/plain') + return HttpResponse("True", content_type='text/plain') return func @@ -1333,9 +1350,9 @@ def autocomplete_organization(request, orga_type=None): models.Organization) and not request.user.ishtaruser.has_right( 'person_search', session=request.session)): - return HttpResponse('[]', mimetype='text/plain') + return HttpResponse('[]', content_type='text/plain') if not request.GET.get('term'): - return HttpResponse('[]', mimetype='text/plain') + return HttpResponse('[]', content_type='text/plain') q = request.GET.get('term') query = Q() for q in q.split(' '): @@ -1352,16 +1369,16 @@ def autocomplete_organization(request, orga_type=None): organizations = models.Organization.objects.filter(query)[:limit] data = json.dumps([{'id': org.pk, 'value': unicode(org)} for org in organizations]) - return HttpResponse(data, mimetype='text/plain') + return HttpResponse(data, content_type='text/plain') def autocomplete_author(request): if not request.user.has_perm('ishtar_common.view_author', models.Author)\ and not request.user.has_perm('ishtar_common.view_own_author', models.Author): - return HttpResponse('[]', mimetype='text/plain') + return HttpResponse('[]', content_type='text/plain') if not request.GET.get('term'): - return HttpResponse('[]', mimetype='text/plain') + return HttpResponse('[]', content_type='text/plain') q = request.GET.get('term') query = Q() for q in q.split(' '): @@ -1374,7 +1391,7 @@ def autocomplete_author(request): authors = models.Author.objects.filter(query)[:limit] data = json.dumps([{'id': author.pk, 'value': unicode(author)} for author in authors]) - return HttpResponse(data, mimetype='text/plain') + return HttpResponse(data, content_type='text/plain') def new_item(model, frm, many=False): diff --git a/ishtar_common/widgets.py b/ishtar_common/widgets.py index 42a93ddaa..0a80bb895 100644 --- a/ishtar_common/widgets.py +++ b/ishtar_common/widgets.py @@ -34,7 +34,7 @@ from django.utils.encoding import smart_unicode from django.utils.functional import lazy from django.utils.html import escape from django.utils.safestring import mark_safe -from django.utils.simplejson import JSONEncoder +from json import JSONEncoder from django.utils.translation import ugettext_lazy as _ from ishtar_common import models diff --git a/ishtar_common/wizards.py b/ishtar_common/wizards.py index c5158dfcd..a82b68d5b 100644 --- a/ishtar_common/wizards.py +++ b/ishtar_common/wizards.py @@ -1,6 +1,6 @@ #!/usr/bin/env python # -*- coding: utf-8 -*- -# Copyright (C) 2010-2016 Étienne Loks <etienne.loks_AT_peacefrogsDOTnet> +# Copyright (C) 2010-2017 Étienne Loks <etienne.loks_AT_peacefrogsDOTnet> # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU Affero General Public License as @@ -22,14 +22,15 @@ import logging # from functools import wraps from django.conf import settings -from django.contrib.formtools.wizard.views import NamedUrlWizardView, \ - normalize_name, get_storage, StepsHelper +from formtools.wizard.views import NamedUrlWizardView, normalize_name, \ + get_storage, StepsHelper + from django.contrib.sites.models import Site from django.core.exceptions import ObjectDoesNotExist from django.core.files.images import ImageFile from django.core.files.storage import default_storage from django.core.mail import send_mail -from django.db.models.fields.files import FileField +from django.db.models.fields.files import FileField, ImageFieldFile from django.db.models.fields.related import ManyToManyField from django.db.models.fields import NOT_PROVIDED @@ -127,8 +128,7 @@ class Wizard(NamedUrlWizardView): label = '' translated_keys = [] modification = None # True when the wizard modify an item - storage_name = \ - 'django.contrib.formtools.wizard.storage.session.SessionStorage' + storage_name = 'formtools.wizard.storage.session.SessionStorage' wizard_done_template = 'ishtar/wizard/wizard_done.html' wizard_done_window = '' wizard_confirm = 'ishtar/wizard/confirm_wizard.html' @@ -357,7 +357,7 @@ class Wizard(NamedUrlWizardView): if form_datas: form_datas.append(("", "", "spacer")) items = hasattr(base_form, 'fields') and \ - base_form.fields.keyOrder or cleaned_data.keys() + base_form.fields.keys() or cleaned_data.keys() for key in items: lbl = None if key.startswith('hidden_'): @@ -368,7 +368,7 @@ class Wizard(NamedUrlWizardView): if hasattr(base_form, 'associated_labels') \ and key in base_form.associated_labels: lbl = base_form.associated_labels[key] - if not lbl: + if not lbl or key not in cleaned_data: continue value = cleaned_data[key] if value is None or value == '': @@ -715,19 +715,22 @@ class Wizard(NamedUrlWizardView): # check if there is no missing fields # should be managed normally in forms but... - if hasattr(model._meta, 'get_fields'): # django 1.8 - fields = model._meta.get_field() - else: - fields = model._meta.fields + fields = model._meta.get_fields() - has_problemetic_null = [ - (field.name, field.default == NOT_PROVIDED) - for field in fields + + has_problemetic_null = False + for field in fields: if (field.name not in value - or not value[field.name]) - and not field.null and not field.blank - and (not field.default - or field.default == NOT_PROVIDED)] + or not value[field.name]) \ + and (hasattr(field, 'null') + and not field.null) \ + and (hasattr(field, 'blank') + and not field.blank) \ + and (hasattr(field, 'default') + and (not field.default + or field.default == NOT_PROVIDED)): + has_problemetic_null = True + break if has_problemetic_null: continue @@ -739,7 +742,9 @@ class Wizard(NamedUrlWizardView): 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'): + (not hasattr(related_model, 'through') or + not isinstance(value, related_model.through)): + # many to many and the value have been already managed related_model.add(value) # necessary to manage interaction between models like # material_index management for baseitems @@ -876,7 +881,7 @@ class Wizard(NamedUrlWizardView): frm = form.forms[0] if frm: # autofocus on first field - first_field = frm.fields[frm.fields.keyOrder[0]] + first_field = frm.fields[frm.fields.keys()[0]] attrs = first_field.widget.attrs attrs.update({'autofocus': "autofocus"}) first_field.widget.attrs = attrs @@ -1112,7 +1117,13 @@ class Wizard(NamedUrlWizardView): continue if hasattr(value, 'pk'): value = value.pk - if value in (True, False) or \ + if isinstance(value, ImageFieldFile) \ + or isinstance(value, FileField): + try: + initial[base_field] = value.path + except ValueError: + pass + elif value in (True, False) or \ isinstance(value, FileField) or \ isinstance(value, ImageFile): initial[base_field] = value @@ -1164,8 +1175,7 @@ class SearchWizard(NamedUrlWizardView): model = None label = '' modification = None # True when the wizard modify an item - storage_name = \ - 'django.contrib.formtools.wizard.storage.session.SessionStorage' + storage_name = 'formtools.wizard.storage.session.SessionStorage' def get_wizard_name(self): """ @@ -1377,17 +1387,24 @@ class AccountWizard(Wizard): if key.startswith('hidden_password'): dct['password'] = dct.pop(key) try: - account = models.IshtarUser.objects.get(person=person) + account = models.IshtarUser.objects.get(person=person).user_ptr account.username = dct['username'] account.email = dct['email'] except ObjectDoesNotExist: now = datetime.datetime.now() - account = models.IshtarUser( - person=person, username=dct['username'], email=dct['email'], + account = models.User.objects.create( + username=dct['username'], email=dct['email'], first_name=person.surname or '***', last_name=person.name or '***', is_staff=False, is_active=True, is_superuser=False, - last_login=now, date_joined=now) + last_login=now, date_joined=now + ) + ishtaruser = account.ishtaruser + old_person_pk = ishtaruser.person.pk + ishtaruser.person = person + ishtaruser.save() + models.Person.objects.get(pk=old_person_pk).delete() + if dct['password']: account.set_password(dct['password']) account.save() |