summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorÉtienne Loks <etienne.loks@iggdrasil.net>2017-01-12 22:43:58 +0100
committerÉtienne Loks <etienne.loks@iggdrasil.net>2017-01-12 22:43:58 +0100
commit0b90b1681ca2d14f90bfdd50f86ee2965d7294bf (patch)
tree569f270ed0a08c03c3d4ed45042784241ee1f979
parent07c83a42b720e057f7e28add67a0e1e834745ba3 (diff)
parent1d7b5ef3055236b56ec1e104ab66a6ccc8e3da14 (diff)
downloadIshtar-0b90b1681ca2d14f90bfdd50f86ee2965d7294bf.tar.bz2
Ishtar-0b90b1681ca2d14f90bfdd50f86ee2965d7294bf.zip
Merge branch 'v0.9' into wheezy
-rw-r--r--CHANGES.md16
-rw-r--r--archaeological_finds/forms.py66
-rw-r--r--archaeological_finds/locale/django.pot576
-rw-r--r--archaeological_finds/migrations/0017_fix_treatment_views.py1173
-rw-r--r--archaeological_finds/migrations/0018_auto__del_field_find_topographic_reference_point__add_field_basefind_x.py1335
-rw-r--r--archaeological_finds/models_finds.py28
-rw-r--r--archaeological_finds/models_treatments.py4
-rw-r--r--archaeological_finds/templates/ishtar/sheet_find.html17
-rw-r--r--archaeological_operations/locale/django.pot286
-rw-r--r--archaeological_warehouse/locale/django.pot42
-rw-r--r--archaeological_warehouse/migrations/0004_auto__chg_field_container_responsible.py3
-rw-r--r--ishtar_common/admin.py6
-rw-r--r--ishtar_common/locale/django.pot500
-rw-r--r--ishtar_common/migrations/0018_auto__add_spatialreferencesystem__add_field_ishtarsiteprofile_mapping.py491
-rw-r--r--ishtar_common/models.py13
-rw-r--r--ishtar_common/utils.py38
-rw-r--r--ishtar_common/views.py1
-rw-r--r--translations/de/ishtar_common.po500
-rw-r--r--translations/fr/archaeological_finds.po587
-rw-r--r--translations/fr/archaeological_operations.po286
-rw-r--r--translations/fr/archaeological_warehouse.po42
-rw-r--r--translations/fr/ishtar_common.po505
-rw-r--r--version.py2
23 files changed, 4964 insertions, 1553 deletions
diff --git a/CHANGES.md b/CHANGES.md
index b404af7ef..0c8e2e167 100644
--- a/CHANGES.md
+++ b/CHANGES.md
@@ -1,6 +1,22 @@
Ishtar changelog
================
+0.99.2 (2017-01-12)
+-------------------
+
+### Features ###
+
+- Common: manage spatial reference systems
+- Common: add a mapping module
+- Finds: add explicit x, y, z, point (2d)
+- Finds: automatically update point and point_2d when changing explicit coordinates
+
+### Bug fixes ###
+
+- Fix treatments views on cyclic treatments (should not happen but...)
+- Fix treatment views migrations
+
+
0.99.1 (2017-01-11)
-------------------
diff --git a/archaeological_finds/forms.py b/archaeological_finds/forms.py
index 9441e6899..11ecf8152 100644
--- a/archaeological_finds/forms.py
+++ b/archaeological_finds/forms.py
@@ -31,7 +31,8 @@ from django.forms.formsets import formset_factory
from django.utils.safestring import mark_safe
from django.utils.translation import ugettext_lazy as _
-from ishtar_common.models import valid_id, valid_ids, get_current_profile
+from ishtar_common.models import valid_id, valid_ids, get_current_profile, \
+ SpatialReferenceSystem
from archaeological_operations.models import Period, ArchaeologicalSite, \
RelationType as OpeRelationType
from archaeological_context_records.models import DatingType, DatingQuality, \
@@ -43,6 +44,7 @@ from ishtar_common.forms import FormSet, FloatField, \
ManageOldType
from ishtar_common.forms_common import get_town_field, SourceSelect
+from ishtar_common.utils import convert_coordinates_to_point
from ishtar_common import widgets
from archaeological_operations.widgets import OAWidget
@@ -127,7 +129,9 @@ class FindForm(ManageOldType, forms.Form):
'object_type': models.ObjectType,
'preservation_to_consider': models.PreservationType,
'integritie': models.IntegrityType,
- 'remarkabilitie': models.RemarkabilityType}
+ 'remarkabilitie': models.RemarkabilityType,
+ 'get_first_base_find__spatial_reference_system':
+ SpatialReferenceSystem}
label = forms.CharField(
label=_(u"Free ID"),
validators=[validators.MaxLengthValidator(60)])
@@ -157,10 +161,22 @@ class FindForm(ManageOldType, forms.Form):
remarkabilitie = forms.MultipleChoiceField(
label=_(u"Remarkability"), choices=[],
widget=widgets.CheckboxSelectMultiple, required=False)
- topographic_reference_point = forms.CharField(
+ get_first_base_find__topographic_localisation = forms.CharField(
label=_(u"Point of topographic reference"),
- required=False, max_length=20
+ required=False, max_length=120
)
+ get_first_base_find__x = forms.FloatField(label=_(u"X"), required=False)
+ get_first_base_find__estimated_error_x = \
+ forms.FloatField(label=_(u"Estimated error for X"), required=False)
+ get_first_base_find__y = forms.FloatField(label=_(u"Y"), required=False)
+ get_first_base_find__estimated_error_y = \
+ forms.FloatField(label=_(u"Estimated error for Y"), required=False)
+ get_first_base_find__z = forms.FloatField(label=_(u"Z"), required=False)
+ get_first_base_find__estimated_error_z = \
+ forms.FloatField(label=_(u"Estimated error for Z"), required=False)
+ get_first_base_find__spatial_reference_system = \
+ forms.ChoiceField(label=_(u"Spatial Reference System"), required=False,
+ choices=[])
length = FloatField(label=_(u"Length (cm)"), required=False)
width = FloatField(label=_(u"Width (cm)"), required=False)
height = FloatField(label=_(u"Height (cm)"), required=False)
@@ -192,6 +208,21 @@ class FindForm(ManageOldType, forms.Form):
def __init__(self, *args, **kwargs):
super(FindForm, self).__init__(*args, **kwargs)
+ if not get_current_profile().mapping:
+ for k in ['get_first_base_find__x', 'get_first_base_find__y',
+ 'get_first_base_find__z',
+ 'get_first_base_find__estimated_error_x',
+ 'get_first_base_find__estimated_error_y',
+ 'get_first_base_find__estimated_error_z',
+ 'get_first_base_find__spatial_reference_system',]:
+ self.fields.pop(k)
+ else:
+ srs = 'get_first_base_find__spatial_reference_system'
+ self.fields[srs].choices = \
+ SpatialReferenceSystem.get_types(
+ initial=self.init_data.get(srs))
+ self.fields[srs].help_text = \
+ SpatialReferenceSystem.get_help()
self.fields['checked'].choices = models.CHECK_CHOICES
self.fields['material_type'].help_text = models.MaterialType.get_help()
self.fields['conservatory_state'].choices = \
@@ -221,6 +252,33 @@ class FindForm(ManageOldType, forms.Form):
unicode(self.fields['estimated_value'].label),
get_current_profile().currency)
+ def clean(self):
+ if not get_current_profile().mapping:
+ return self.cleaned_data
+ x = self.cleaned_data.get('get_first_base_find__x', None)
+ y = self.cleaned_data.get('get_first_base_find__y', None)
+ s = 'get_first_base_find__spatial_reference_system'
+ srs = self.cleaned_data.get(s, None)
+ if srs:
+ try:
+ srs = SpatialReferenceSystem.objects.get(pk=srs)
+ except SpatialReferenceSystem.DoesNotExist:
+ srs = None
+ if x and y and not srs:
+ raise forms.ValidationError(
+ _(u"You should at least provide X, Y and the spatial "
+ u"reference system used."))
+ if x and y and srs:
+ try:
+ convert_coordinates_to_point(
+ x, y, self.cleaned_data.get('get_first_base_find__z', None),
+ srs.srid)
+ except forms.ValidationError as e:
+ raise forms.ValidationError(
+ unicode(_(u"Coordinates are not relevant for the spatial "
+ u"reference system used: {}.")).format(e))
+ return self.cleaned_data
+
class DateForm(ManageOldType, forms.Form):
form_label = _("Dating")
diff --git a/archaeological_finds/locale/django.pot b/archaeological_finds/locale/django.pot
index 1291d8491..9dc6a44d0 100644
--- a/archaeological_finds/locale/django.pot
+++ b/archaeological_finds/locale/django.pot
@@ -7,520 +7,576 @@
msgid ""
msgstr ""
-#: forms.py:88 forms.py:92 wizards.py:64
+#: forms.py:90 forms.py:94 wizards.py:64
msgid "Context record"
msgstr ""
-#: forms.py:121 ishtar_menu.py:32 models_finds.py:466 models_finds.py:791
-#: models_finds.py:800 models_treatments.py:265
+#: forms.py:123 ishtar_menu.py:32 models_finds.py:480 models_finds.py:805
+#: models_finds.py:814 models_treatments.py:277
#: templates/ishtar/sheet_find.html:5
msgid "Find"
msgstr ""
-#: forms.py:132 forms.py:263 forms.py:487 models_finds.py:127
-#: models_finds.py:394
+#: forms.py:136 forms.py:321 forms.py:545 models_finds.py:127
+#: models_finds.py:411
msgid "Free ID"
msgstr ""
-#: forms.py:134 models_finds.py:449
+#: forms.py:138 models_finds.py:463
msgid "Previous ID"
msgstr ""
-#: forms.py:135 forms.py:295 forms_treatments.py:133 models_finds.py:131
-#: models_finds.py:395 models_treatments.py:123
+#: forms.py:139 forms.py:353 forms_treatments.py:134 models_finds.py:131
+#: models_finds.py:412 models_treatments.py:123
msgid "Description"
msgstr ""
-#: forms.py:138 forms.py:297 models_finds.py:142
+#: forms.py:142 forms.py:355 models_finds.py:140
msgid "Batch/object"
msgstr ""
-#: forms.py:140 models_finds.py:423
+#: forms.py:144 models_finds.py:440
msgid "Is complete?"
msgstr ""
-#: forms.py:143 forms.py:285 forms.py:491 models_finds.py:50
+#: forms.py:147 forms.py:343 forms.py:549 models_finds.py:50
msgid "Material type"
msgstr ""
-#: forms.py:144 forms.py:289 models_finds.py:62 models_finds.py:399
+#: forms.py:148 forms.py:347 models_finds.py:62 models_finds.py:416
msgid "Conservatory state"
msgstr ""
-#: forms.py:147 models_finds.py:401
+#: forms.py:151 models_finds.py:418
msgid "Conservatory comment"
msgstr ""
-#: forms.py:150 models_finds.py:102 models_finds.py:426
+#: forms.py:154 models_finds.py:102 models_finds.py:443
msgid "Object types"
msgstr ""
-#: forms.py:152 forms.py:288 models_finds.py:71
+#: forms.py:156 forms.py:346 models_finds.py:71
msgid "Preservation type"
msgstr ""
-#: forms.py:155 forms.py:291 models_finds.py:428
+#: forms.py:159 forms.py:349 models_finds.py:445
msgid "Integrity / interest"
msgstr ""
-#: forms.py:158 forms.py:293 models_finds.py:431
+#: forms.py:162 forms.py:351 models_finds.py:448
msgid "Remarkability"
msgstr ""
-#: forms.py:161 models_finds.py:441
+#: forms.py:165 models_finds.py:145
msgid "Point of topographic reference"
msgstr ""
-#: forms.py:164 models_finds.py:435
+#: forms.py:168 models_finds.py:147
+msgid "X"
+msgstr ""
+
+#: forms.py:170 models_finds.py:150
+msgid "Estimated error for X"
+msgstr ""
+
+#: forms.py:171 models_finds.py:148
+msgid "Y"
+msgstr ""
+
+#: forms.py:173 models_finds.py:152
+msgid "Estimated error for Y"
+msgstr ""
+
+#: forms.py:174 models_finds.py:149
+msgid "Z"
+msgstr ""
+
+#: forms.py:176 models_finds.py:154
+msgid "Estimated error for Z"
+msgstr ""
+
+#: forms.py:178 models_finds.py:157
+msgid "Spatial Reference System"
+msgstr ""
+
+#: forms.py:180 models_finds.py:452
msgid "Length (cm)"
msgstr ""
-#: forms.py:165 models_finds.py:436
+#: forms.py:181 models_finds.py:453
msgid "Width (cm)"
msgstr ""
-#: forms.py:166 models_finds.py:437
+#: forms.py:182 models_finds.py:454
msgid "Height (cm)"
msgstr ""
-#: forms.py:167 models_finds.py:438
+#: forms.py:183 models_finds.py:455
msgid "Diameter (cm)"
msgstr ""
-#: forms.py:168 models_finds.py:439
+#: forms.py:184 models_finds.py:456
msgid "Thickness (cm)"
msgstr ""
-#: forms.py:169 forms.py:492 models_finds.py:406
+#: forms.py:185 forms.py:550 models_finds.py:423
msgid "Volume (l)"
msgstr ""
-#: forms.py:170 forms.py:493 models_finds.py:407
+#: forms.py:186 forms.py:551 models_finds.py:424
msgid "Weight (g)"
msgstr ""
-#: forms.py:172 models_finds.py:443
+#: forms.py:188 models_finds.py:457
msgid "Dimensions comment"
msgstr ""
-#: forms.py:173 forms.py:494 models_finds.py:410
+#: forms.py:189 forms.py:552 models_finds.py:427
msgid "Find number"
msgstr ""
-#: forms.py:175 models_finds.py:434
+#: forms.py:191 models_finds.py:451
msgid "Minimum number of individuals (MNI)"
msgstr ""
-#: forms.py:176 models_finds.py:445
+#: forms.py:192 models_finds.py:459
msgid "Mark"
msgstr ""
-#: forms.py:177 forms.py:299 models_finds.py:451
+#: forms.py:193 forms.py:357 models_finds.py:465
msgid "Check"
msgstr ""
-#: forms.py:179 models_finds.py:453
+#: forms.py:195 models_finds.py:467
msgid "Check date"
msgstr ""
-#: forms.py:180 forms_treatments.py:131 forms_treatments.py:418
-#: models_finds.py:132 models_finds.py:446 models_treatments.py:122
-#: models_treatments.py:468
+#: forms.py:196 forms_treatments.py:132 forms_treatments.py:434
+#: models_finds.py:132 models_finds.py:460 models_treatments.py:122
+#: models_treatments.py:484
msgid "Comment"
msgstr ""
-#: forms.py:183 models_finds.py:447
+#: forms.py:199 models_finds.py:461
msgid "Comment on dating"
msgstr ""
-#: forms.py:184 models_finds.py:455
+#: forms.py:200 models_finds.py:469
msgid "Estimated value"
msgstr ""
-#: forms.py:186 forms_treatments.py:142
+#: forms.py:202 forms_treatments.py:151
msgid "Image"
msgstr ""
-#: forms.py:187 forms_treatments.py:143
+#: forms.py:203 forms_treatments.py:152
#, python-format
msgid ""
"<p>Heavy images are resized to: %(width)dx%(height)d (ratio is preserved).</"
"p>"
msgstr ""
-#: forms.py:226 forms.py:257 models_finds.py:418
+#: forms.py:269
+msgid "You should at least provide X, Y and the spatial reference system used."
+msgstr ""
+
+#: forms.py:278
+msgid "Coordinates are not relevant for the spatial reference system used: {}."
+msgstr ""
+
+#: forms.py:284 forms.py:315 models_finds.py:435
msgid "Dating"
msgstr ""
-#: forms.py:231 forms.py:283
+#: forms.py:289 forms.py:341
msgid "Period"
msgstr ""
-#: forms.py:232 forms_treatments.py:137 forms_treatments.py:420
-#: models_finds.py:805 models_treatments.py:125 models_treatments.py:276
-#: templates/ishtar/sheet_find.html:102 templates/ishtar/sheet_find.html:142
+#: forms.py:290 forms_treatments.py:138 forms_treatments.py:436
+#: models_finds.py:819 models_treatments.py:125 models_treatments.py:288
+#: templates/ishtar/sheet_find.html:101 templates/ishtar/sheet_find.html:141
msgid "Start date"
msgstr ""
-#: forms.py:234 models_finds.py:806 models_treatments.py:277
-#: templates/ishtar/sheet_find.html:103 templates/ishtar/sheet_find.html:143
+#: forms.py:292 models_finds.py:820 models_treatments.py:289
+#: templates/ishtar/sheet_find.html:102 templates/ishtar/sheet_find.html:142
msgid "End date"
msgstr ""
-#: forms.py:235
+#: forms.py:293
msgid "Quality"
msgstr ""
-#: forms.py:237
+#: forms.py:295
msgid "Dating type"
msgstr ""
-#: forms.py:239
+#: forms.py:297
msgid "Precise dating"
msgstr ""
-#: forms.py:261 models_finds.py:150
+#: forms.py:319 models_finds.py:164
msgid "Short ID"
msgstr ""
-#: forms.py:262 models_finds.py:153
+#: forms.py:320 models_finds.py:167
msgid "Complete ID"
msgstr ""
-#: forms.py:266 forms_treatments.py:53 forms_treatments.py:95
-#: forms_treatments.py:268 forms_treatments.py:340 forms_treatments.py:390
-#: forms_treatments.py:473 models_treatments.py:98 models_treatments.py:440
+#: forms.py:324 forms_treatments.py:54 forms_treatments.py:96
+#: forms_treatments.py:284 forms_treatments.py:356 forms_treatments.py:406
+#: forms_treatments.py:489 models_treatments.py:98 models_treatments.py:456
msgid "Year"
msgstr ""
-#: forms.py:268
+#: forms.py:326
msgid "Operation's number (index by year)"
msgstr ""
-#: forms.py:271
+#: forms.py:329
msgid "Code PATRIARCHE"
msgstr ""
-#: forms.py:275
+#: forms.py:333
msgid "Archaeological site"
msgstr ""
-#: forms.py:281
+#: forms.py:339
msgid "Search within related operations"
msgstr ""
-#: forms.py:286 models_finds.py:101
+#: forms.py:344 models_finds.py:101
msgid "Object type"
msgstr ""
-#: forms.py:300 forms_treatments.py:56
+#: forms.py:358 forms_treatments.py:57
msgid "Has an image?"
msgstr ""
-#: forms.py:342 forms.py:355 views.py:129
+#: forms.py:400 forms.py:413 views.py:129
msgid "Find search"
msgstr ""
-#: forms.py:369 templates/ishtar/sheet_treatment.html:42
+#: forms.py:427 templates/ishtar/sheet_treatment.html:46
msgid "Upstream finds"
msgstr ""
-#: forms.py:371 models_finds.py:467
+#: forms.py:429 models_finds.py:481
msgid "Finds"
msgstr ""
-#: forms.py:381
+#: forms.py:439
msgid "You should at least select one archaeological find."
msgstr ""
-#: forms.py:484
+#: forms.py:542
msgid "Resulting find"
msgstr ""
-#: forms.py:489
+#: forms.py:547
msgid "Precise description"
msgstr ""
-#: forms.py:504
+#: forms.py:562
msgid "Resulting finds"
msgstr ""
-#: forms.py:509
+#: forms.py:567
msgid "Would you like to delete this find?"
msgstr ""
-#: forms.py:513 models_treatments.py:90
+#: forms.py:571 models_treatments.py:90
msgid "Upstream find"
msgstr ""
-#: forms.py:526
+#: forms.py:584
msgid "Archaeological find search"
msgstr ""
-#: forms.py:528
+#: forms.py:586
msgid "You should select an archaeological find."
msgstr ""
-#: forms.py:533
+#: forms.py:591
msgid "Year of the operation"
msgstr ""
-#: forms.py:535
+#: forms.py:593
msgid "Numeric reference"
msgstr ""
-#: forms.py:542
+#: forms.py:600
msgid "Period of the archaeological find"
msgstr ""
-#: forms.py:544
+#: forms.py:602
msgid "Material type of the archaeological find"
msgstr ""
-#: forms.py:546
+#: forms.py:604
msgid "Description of the archaeological find"
msgstr ""
-#: forms.py:558 forms_treatments.py:574 forms_treatments.py:600
+#: forms.py:616 forms_treatments.py:590 forms_treatments.py:616
msgid "Documentation search"
msgstr ""
-#: forms.py:560 forms_treatments.py:576 forms_treatments.py:602
+#: forms.py:618 forms_treatments.py:592 forms_treatments.py:618
msgid "You should select a document."
msgstr ""
-#: forms.py:577
+#: forms.py:635
msgid "Another basket already exists with this name."
msgstr ""
-#: forms.py:587 forms.py:591 forms_treatments.py:159 ishtar_menu.py:56
+#: forms.py:645 forms.py:649 forms_treatments.py:175 ishtar_menu.py:56
msgid "Basket"
msgstr ""
-#: forms_treatments.py:51 forms_treatments.py:91 models_treatments.py:94
-#: templates/ishtar/sheet_find.html:97 templates/ishtar/sheet_find.html:137
+#: forms_treatments.py:52 forms_treatments.py:92 models_treatments.py:94
+#: templates/ishtar/sheet_find.html:96 templates/ishtar/sheet_find.html:136
msgid "Label"
msgstr ""
-#: forms_treatments.py:52 forms_treatments.py:94 models_treatments.py:96
+#: forms_treatments.py:53 forms_treatments.py:95 models_treatments.py:96
msgid "Other ref."
msgstr ""
-#: forms_treatments.py:54 forms_treatments.py:221 forms_treatments.py:269
-#: forms_treatments.py:332 forms_treatments.py:341 forms_treatments.py:443
-#: forms_treatments.py:474 forms_treatments.py:541 models_treatments.py:100
-#: models_treatments.py:442
+#: forms_treatments.py:55 forms_treatments.py:237 forms_treatments.py:285
+#: forms_treatments.py:348 forms_treatments.py:357 forms_treatments.py:459
+#: forms_treatments.py:490 forms_treatments.py:557 models_treatments.py:100
+#: models_treatments.py:458
msgid "Index"
msgstr ""
-#: forms_treatments.py:55 forms_treatments.py:100 forms_treatments.py:285
-#: forms_treatments.py:562 models_treatments.py:56 models_treatments.py:105
-#: models_treatments.py:275
+#: forms_treatments.py:56 forms_treatments.py:101 forms_treatments.py:301
+#: forms_treatments.py:578 models_treatments.py:56 models_treatments.py:105
+#: models_treatments.py:287
msgid "Treatment type"
msgstr ""
-#: forms_treatments.py:67 forms_treatments.py:544 views.py:359
+#: forms_treatments.py:68 forms_treatments.py:560 views.py:359
msgid "Treatment search"
msgstr ""
-#: forms_treatments.py:79
+#: forms_treatments.py:80
msgid "Base treatment"
msgstr ""
-#: forms_treatments.py:102 models_treatments.py:107
+#: forms_treatments.py:103 models_treatments.py:107
msgid "State"
msgstr ""
-#: forms_treatments.py:104
+#: forms_treatments.py:105
msgid "Target"
msgstr ""
-#: forms_treatments.py:106 forms_treatments.py:401 models_treatments.py:115
+#: forms_treatments.py:107 forms_treatments.py:417 models_treatments.py:115
msgid "Responsible"
msgstr ""
-#: forms_treatments.py:112 models_treatments.py:118
+#: forms_treatments.py:113 models_treatments.py:118
msgid "Organization"
msgstr ""
-#: forms_treatments.py:118 models_treatments.py:110 models_treatments.py:278
+#: forms_treatments.py:119 models_treatments.py:110 models_treatments.py:290
msgid "Location"
msgstr ""
-#: forms_treatments.py:124
+#: forms_treatments.py:125
msgid "Container (relevant for packaging)"
msgstr ""
-#: forms_treatments.py:130 forms_treatments.py:397
+#: forms_treatments.py:131 forms_treatments.py:413
msgid "External ref."
msgstr ""
-#: forms_treatments.py:135 models_treatments.py:124
+#: forms_treatments.py:136 models_treatments.py:124
msgid "Goal"
msgstr ""
-#: forms_treatments.py:139 forms_treatments.py:426 models_treatments.py:126
-#: models_treatments.py:462
+#: forms_treatments.py:140 forms_treatments.py:442 models_treatments.py:126
+#: models_treatments.py:478
msgid "Closing date"
msgstr ""
-#: forms_treatments.py:159
+#: forms_treatments.py:142
+#, python-brace-format
+msgid "Estimated cost ({currency})"
+msgstr ""
+
+#: forms_treatments.py:144
+#, python-brace-format
+msgid "Quoted cost ({currency})"
+msgstr ""
+
+#: forms_treatments.py:146
+#, python-brace-format
+msgid "Realized cost ({currency})"
+msgstr ""
+
+#: forms_treatments.py:148
+#, python-brace-format
+msgid "Insurance cost ({currency})"
+msgstr ""
+
+#: forms_treatments.py:175
msgid "Single find"
msgstr ""
-#: forms_treatments.py:193
+#: forms_treatments.py:209
msgid ""
"The container field is attached to the treatment. If no packaging treatment "
"is done it is not relevant."
msgstr ""
-#: forms_treatments.py:198
+#: forms_treatments.py:214
msgid "If a packaging treatment is done, the container field must be filled."
msgstr ""
-#: forms_treatments.py:202
+#: forms_treatments.py:218
msgid "A responsible or an organization must be defined."
msgstr ""
-#: forms_treatments.py:240
+#: forms_treatments.py:256
msgid "Another treatment with this index exists for {}."
msgstr ""
-#: forms_treatments.py:246 models_treatments.py:103
+#: forms_treatments.py:262 models_treatments.py:103
msgid "Associated request"
msgstr ""
-#: forms_treatments.py:250 forms_treatments.py:381 ishtar_menu.py:107
-#: models_treatments.py:473 models_treatments.py:495 models_treatments.py:556
+#: forms_treatments.py:266 forms_treatments.py:397 ishtar_menu.py:107
+#: models_treatments.py:489 models_treatments.py:511 models_treatments.py:572
#: wizards.py:183 templates/ishtar/sheet_treatmentfile.html:5
msgid "Treatment request"
msgstr ""
-#: forms_treatments.py:259
+#: forms_treatments.py:275
msgid ""
"Are you sure you want to delete this treatment? All changes made to the "
"associated finds since this treatment record will be lost!"
msgstr ""
-#: forms_treatments.py:262
+#: forms_treatments.py:278
msgid "Would you like to delete this treatment?"
msgstr ""
-#: forms_treatments.py:270 forms_treatments.py:318 forms_treatments.py:475
-#: forms_treatments.py:526
+#: forms_treatments.py:286 forms_treatments.py:334 forms_treatments.py:491
+#: forms_treatments.py:542
msgid "Act type"
msgstr ""
-#: forms_treatments.py:271 forms_treatments.py:476
+#: forms_treatments.py:287 forms_treatments.py:492
msgid "Indexed?"
msgstr ""
-#: forms_treatments.py:272 forms_treatments.py:477 models_finds.py:120
+#: forms_treatments.py:288 forms_treatments.py:493 models_finds.py:120
msgid "Object"
msgstr ""
-#: forms_treatments.py:276 forms_treatments.py:481
+#: forms_treatments.py:292 forms_treatments.py:497
msgid "Signature date after"
msgstr ""
-#: forms_treatments.py:278 forms_treatments.py:483
+#: forms_treatments.py:294 forms_treatments.py:499
msgid "Signature date before"
msgstr ""
-#: forms_treatments.py:280 forms_treatments.py:557
+#: forms_treatments.py:296 forms_treatments.py:573
msgid "Treatment name"
msgstr ""
-#: forms_treatments.py:281 forms_treatments.py:558
+#: forms_treatments.py:297 forms_treatments.py:574
msgid "Treatment year"
msgstr ""
-#: forms_treatments.py:282 forms_treatments.py:559
+#: forms_treatments.py:298 forms_treatments.py:575
msgid "Treatment index"
msgstr ""
-#: forms_treatments.py:284 forms_treatments.py:561
+#: forms_treatments.py:300 forms_treatments.py:577
msgid "Treatment internal reference"
msgstr ""
-#: forms_treatments.py:288 forms_treatments.py:495
+#: forms_treatments.py:304 forms_treatments.py:511
msgid "Modified by"
msgstr ""
-#: forms_treatments.py:338 forms_treatments.py:388 models_treatments.py:447
+#: forms_treatments.py:354 forms_treatments.py:404 models_treatments.py:463
msgid "Name"
msgstr ""
-#: forms_treatments.py:339 forms_treatments.py:395
+#: forms_treatments.py:355 forms_treatments.py:411
msgid "Internal ref."
msgstr ""
-#: forms_treatments.py:342 forms_treatments.py:399
-#: templates/ishtar/sheet_find.html:98 templates/ishtar/sheet_find.html:138
-#: templates/ishtar/sheet_find.html:216
+#: forms_treatments.py:358 forms_treatments.py:415
+#: templates/ishtar/sheet_find.html:97 templates/ishtar/sheet_find.html:137
+#: templates/ishtar/sheet_find.html:229
msgid "Type"
msgstr ""
-#: forms_treatments.py:344
+#: forms_treatments.py:360
msgid "In charge"
msgstr ""
-#: forms_treatments.py:350 forms_treatments.py:407 models_treatments.py:456
+#: forms_treatments.py:366 forms_treatments.py:423 models_treatments.py:472
#: templates/ishtar/sheet_treatmentfile.html:31
msgid "Applicant"
msgstr ""
-#: forms_treatments.py:356 forms_treatments.py:413 models_treatments.py:460
+#: forms_treatments.py:372 forms_treatments.py:429 models_treatments.py:476
#: templates/ishtar/sheet_treatmentfile.html:38
msgid "Applicant organisation"
msgstr ""
-#: forms_treatments.py:369 forms_treatments.py:549 views.py:463
+#: forms_treatments.py:385 forms_treatments.py:565 views.py:463
msgid "Treatment request search"
msgstr ""
-#: forms_treatments.py:423 models_treatments.py:466
+#: forms_treatments.py:439 models_treatments.py:482
msgid "Reception date"
msgstr ""
-#: forms_treatments.py:462
+#: forms_treatments.py:478
msgid "Another treatment request with this index exists for {}."
msgstr ""
-#: forms_treatments.py:468
+#: forms_treatments.py:484
msgid "Are you sure you want to delete this treatment request?"
msgstr ""
-#: forms_treatments.py:469
+#: forms_treatments.py:485
msgid "Would you like to delete this treatment request?"
msgstr ""
-#: forms_treatments.py:485 forms_treatments.py:581
+#: forms_treatments.py:501 forms_treatments.py:597
msgid "Treatment request name"
msgstr ""
-#: forms_treatments.py:487 forms_treatments.py:583
+#: forms_treatments.py:503 forms_treatments.py:599
msgid "Treatment request year"
msgstr ""
-#: forms_treatments.py:489 forms_treatments.py:585
+#: forms_treatments.py:505 forms_treatments.py:601
msgid "Treatment request index"
msgstr ""
-#: forms_treatments.py:491 forms_treatments.py:587
+#: forms_treatments.py:507 forms_treatments.py:603
msgid "Treatment request internal reference"
msgstr ""
-#: forms_treatments.py:492 forms_treatments.py:588 models_treatments.py:425
-#: models_treatments.py:449
+#: forms_treatments.py:508 forms_treatments.py:604 models_treatments.py:441
+#: models_treatments.py:465
msgid "Treatment request type"
msgstr ""
-#: forms_treatments.py:546
+#: forms_treatments.py:562
msgid "You should select a treatment."
msgstr ""
-#: forms_treatments.py:552
+#: forms_treatments.py:568
msgid "You should select a treatment request."
msgstr ""
@@ -554,12 +610,12 @@ msgstr ""
msgid "Documentation"
msgstr ""
-#: ishtar_menu.py:131 ishtar_menu.py:211 models_finds.py:802
+#: ishtar_menu.py:131 ishtar_menu.py:211 models_finds.py:816
msgid "Administrative act"
msgstr ""
-#: ishtar_menu.py:149 ishtar_menu.py:230 templates/ishtar/sheet_find.html:211
-#: templates/ishtar/sheet_find.html:213
+#: ishtar_menu.py:149 ishtar_menu.py:230 templates/ishtar/sheet_find.html:224
+#: templates/ishtar/sheet_find.html:226
msgid "Documents"
msgstr ""
@@ -567,8 +623,8 @@ msgstr ""
msgid "Source"
msgstr ""
-#: ishtar_menu.py:183 models_treatments.py:135 models_treatments.py:267
-#: models_treatments.py:540 templates/ishtar/sheet_treatment.html:5
+#: ishtar_menu.py:183 models_treatments.py:143 models_treatments.py:279
+#: models_treatments.py:556 templates/ishtar/sheet_treatment.html:5
msgid "Treatment"
msgstr ""
@@ -588,7 +644,7 @@ msgstr ""
msgid "Parent material"
msgstr ""
-#: models_finds.py:51 models_finds.py:397
+#: models_finds.py:51 models_finds.py:414
msgid "Material types"
msgstr ""
@@ -632,206 +688,206 @@ msgstr ""
msgid "Batch"
msgstr ""
-#: models_finds.py:128 models_finds.py:390 models_treatments.py:120
-#: models_treatments.py:445
+#: models_finds.py:128 models_finds.py:407 models_treatments.py:120
+#: models_treatments.py:461
msgid "External ID"
msgstr ""
-#: models_finds.py:130 models_finds.py:392
+#: models_finds.py:130 models_finds.py:409
msgid "External ID is set automatically"
msgstr ""
-#: models_finds.py:134
-msgid "Topographic localisation"
-msgstr ""
-
-#: models_finds.py:135
+#: models_finds.py:133
msgid "Special interest"
msgstr ""
-#: models_finds.py:139
+#: models_finds.py:137
msgid "Context Record"
msgstr ""
-#: models_finds.py:140
+#: models_finds.py:138
msgid "Discovery date"
msgstr ""
-#: models_finds.py:145
+#: models_finds.py:143
msgid "Material index"
msgstr ""
-#: models_finds.py:146
+#: models_finds.py:159
+msgid "Point (2D)"
+msgstr ""
+
+#: models_finds.py:160
msgid "Point"
msgstr ""
-#: models_finds.py:147
+#: models_finds.py:161
msgid "Line"
msgstr ""
-#: models_finds.py:148
+#: models_finds.py:162
msgid "Polygon"
msgstr ""
-#: models_finds.py:151 models_finds.py:154
+#: models_finds.py:165 models_finds.py:168
msgid "Cached value - do not edit"
msgstr ""
-#: models_finds.py:159 models_finds.py:388
+#: models_finds.py:173 models_finds.py:405
msgid "Base find"
msgstr ""
-#: models_finds.py:160
+#: models_finds.py:174
msgid "Base finds"
msgstr ""
-#: models_finds.py:162
+#: models_finds.py:176
msgid "Can view all Base finds"
msgstr ""
-#: models_finds.py:163
+#: models_finds.py:177
msgid "Can view own Base find"
msgstr ""
-#: models_finds.py:164
+#: models_finds.py:178
msgid "Can add own Base find"
msgstr ""
-#: models_finds.py:165
+#: models_finds.py:179
msgid "Can change own Base find"
msgstr ""
-#: models_finds.py:166
+#: models_finds.py:180
msgid "Can delete own Base find"
msgstr ""
-#: models_finds.py:276
+#: models_finds.py:293
msgid "g"
msgstr ""
-#: models_finds.py:277
+#: models_finds.py:294
msgid "kg"
msgstr ""
-#: models_finds.py:279
+#: models_finds.py:296
msgid "Not checked"
msgstr ""
-#: models_finds.py:280
+#: models_finds.py:297
msgid "Checked but incorrect"
msgstr ""
-#: models_finds.py:281
+#: models_finds.py:298
msgid "Checked and correct"
msgstr ""
-#: models_finds.py:315
+#: models_finds.py:332
msgid "Periods"
msgstr ""
-#: models_finds.py:316 models_finds.py:421 models_treatments.py:127
-#: models_treatments.py:279 templates/ishtar/sheet_find.html:101
-#: templates/ishtar/sheet_find.html:141
+#: models_finds.py:333 models_finds.py:438 models_treatments.py:127
+#: models_treatments.py:291 templates/ishtar/sheet_find.html:100
+#: templates/ishtar/sheet_find.html:140
msgid "Container"
msgstr ""
-#: models_finds.py:326
+#: models_finds.py:343
msgid "Base find - Short ID"
msgstr ""
-#: models_finds.py:327
+#: models_finds.py:344
msgid "Base find - Complete ID"
msgstr ""
-#: models_finds.py:328
+#: models_finds.py:345
msgid "Base find - Comment"
msgstr ""
-#: models_finds.py:329
+#: models_finds.py:346
msgid "Base find - Description"
msgstr ""
-#: models_finds.py:330
+#: models_finds.py:347
msgid "Base find - Topographic localisation"
msgstr ""
-#: models_finds.py:332
+#: models_finds.py:349
msgid "Base find - Special interest"
msgstr ""
-#: models_finds.py:333
+#: models_finds.py:350
msgid "Base find - Discovery date"
msgstr ""
-#: models_finds.py:393 models_treatments.py:40 models_treatments.py:271
+#: models_finds.py:410 models_treatments.py:40 models_treatments.py:283
msgid "Order"
msgstr ""
-#: models_finds.py:404
+#: models_finds.py:421
msgid "Type of preservation to consider"
msgstr ""
-#: models_finds.py:408
+#: models_finds.py:425
msgid "Weight unit"
msgstr ""
-#: models_finds.py:414 templates/ishtar/sheet_find.html:90
+#: models_finds.py:431 templates/ishtar/sheet_find.html:89
msgid "Upstream treatment"
msgstr ""
-#: models_finds.py:417 templates/ishtar/sheet_find.html:130
+#: models_finds.py:434 templates/ishtar/sheet_find.html:129
msgid "Downstream treatment"
msgstr ""
-#: models_finds.py:458
+#: models_finds.py:472
msgid "Collection"
msgstr ""
-#: models_finds.py:460 models_treatments.py:131 models_treatments.py:469
+#: models_finds.py:474 models_treatments.py:139 models_treatments.py:485
msgid "Cached name"
msgstr ""
-#: models_finds.py:469
+#: models_finds.py:483
msgid "Can view all Finds"
msgstr ""
-#: models_finds.py:470
+#: models_finds.py:484
msgid "Can view own Find"
msgstr ""
-#: models_finds.py:471
+#: models_finds.py:485
msgid "Can add own Find"
msgstr ""
-#: models_finds.py:472
+#: models_finds.py:486
msgid "Can change own Find"
msgstr ""
-#: models_finds.py:473
+#: models_finds.py:487
msgid "Can delete own Find"
msgstr ""
-#: models_finds.py:479
+#: models_finds.py:493
msgid "FIND"
msgstr ""
-#: models_finds.py:789
+#: models_finds.py:803
msgid "Find documentation"
msgstr ""
-#: models_finds.py:790
+#: models_finds.py:804
msgid "Find documentations"
msgstr ""
-#: models_finds.py:803
+#: models_finds.py:817
msgid "Person"
msgstr ""
-#: models_finds.py:809
+#: models_finds.py:823
msgid "Property"
msgstr ""
-#: models_finds.py:810
+#: models_finds.py:824
msgid "Properties"
msgstr ""
@@ -880,105 +936,121 @@ msgid "Location where the treatment is done. Target warehouse for a move."
msgstr ""
#: models_treatments.py:129
+msgid "Estimated cost"
+msgstr ""
+
+#: models_treatments.py:131
+msgid "Quoted cost"
+msgstr ""
+
+#: models_treatments.py:133
+msgid "Realized cost"
+msgstr ""
+
+#: models_treatments.py:135
+msgid "Insurance cost"
+msgstr ""
+
+#: models_treatments.py:137
msgid "Target a basket"
msgstr ""
-#: models_treatments.py:136 templates/ishtar/sheet_find.html:87
+#: models_treatments.py:144 templates/ishtar/sheet_find.html:86
#: templates/ishtar/sheet_treatmentfile.html:45
msgid "Treatments"
msgstr ""
-#: models_treatments.py:139
+#: models_treatments.py:147
msgid "Can view all Treatments"
msgstr ""
-#: models_treatments.py:140
+#: models_treatments.py:148
msgid "Can view own Treatment"
msgstr ""
-#: models_treatments.py:141
+#: models_treatments.py:149
msgid "Can add own Treatment"
msgstr ""
-#: models_treatments.py:142
+#: models_treatments.py:150
msgid "Can change own Treatment"
msgstr ""
-#: models_treatments.py:143
+#: models_treatments.py:151
msgid "Can delete own Treatment"
msgstr ""
-#: models_treatments.py:155
+#: models_treatments.py:163
msgid "TREATMENT"
msgstr ""
-#: models_treatments.py:280 templates/ishtar/sheet_find.html:100
-#: templates/ishtar/sheet_find.html:140
+#: models_treatments.py:292 templates/ishtar/sheet_find.html:99
+#: templates/ishtar/sheet_find.html:139
msgid "Doer"
msgstr ""
-#: models_treatments.py:281 models_treatments.py:282
-#: templates/ishtar/sheet_find.html:99 templates/ishtar/sheet_find.html:139
+#: models_treatments.py:293 models_treatments.py:294
+#: templates/ishtar/sheet_find.html:98 templates/ishtar/sheet_find.html:138
msgid "Related finds"
msgstr ""
-#: models_treatments.py:414
+#: models_treatments.py:430
msgid "Is upstream"
msgstr ""
-#: models_treatments.py:426
+#: models_treatments.py:442
msgid "Treatment request types"
msgstr ""
-#: models_treatments.py:443
+#: models_treatments.py:459
msgid "Internal reference"
msgstr ""
-#: models_treatments.py:452
+#: models_treatments.py:468
msgid "Person in charge"
msgstr ""
-#: models_treatments.py:464
+#: models_treatments.py:480
msgid "Creation date"
msgstr ""
-#: models_treatments.py:474
+#: models_treatments.py:490
msgid "Treatment requests"
msgstr ""
-#: models_treatments.py:478
+#: models_treatments.py:494
msgid "Can view all Treatment requests"
msgstr ""
-#: models_treatments.py:480
+#: models_treatments.py:496
msgid "Can view own Treatment request"
msgstr ""
-#: models_treatments.py:482
+#: models_treatments.py:498
msgid "Can add own Treatment request"
msgstr ""
-#: models_treatments.py:484
+#: models_treatments.py:500
msgid "Can change own Treatment request"
msgstr ""
-#: models_treatments.py:486
+#: models_treatments.py:502
msgid "Can delete own Treatment request"
msgstr ""
-#: models_treatments.py:546
+#: models_treatments.py:562
msgid "Treatment documentation"
msgstr ""
-#: models_treatments.py:547
+#: models_treatments.py:563
msgid "Treament documentations"
msgstr ""
-#: models_treatments.py:563
+#: models_treatments.py:579
msgid "Treatment request documentation"
msgstr ""
-#: models_treatments.py:564
+#: models_treatments.py:580
msgid "Treatment request documentations"
msgstr ""
@@ -1106,35 +1178,55 @@ msgstr ""
msgid "Operation"
msgstr ""
-#: templates/ishtar/sheet_find.html:79
+#: templates/ishtar/sheet_find.html:78
msgid "Warehouse"
msgstr ""
-#: templates/ishtar/sheet_find.html:96 templates/ishtar/sheet_find.html:136
+#: templates/ishtar/sheet_find.html:95 templates/ishtar/sheet_find.html:135
msgid "Year - index"
msgstr ""
-#: templates/ishtar/sheet_find.html:126
+#: templates/ishtar/sheet_find.html:125
msgid "Export as CSV"
msgstr ""
-#: templates/ishtar/sheet_find.html:126 templates/ishtar/sheet_find.html:167
+#: templates/ishtar/sheet_find.html:125 templates/ishtar/sheet_find.html:166
msgid "CSV"
msgstr ""
-#: templates/ishtar/sheet_find.html:172
+#: templates/ishtar/sheet_find.html:171
msgid "Associated base finds"
msgstr ""
-#: templates/ishtar/sheet_find.html:215
+#: templates/ishtar/sheet_find.html:205
+msgid "Coordinates:"
+msgstr ""
+
+#: templates/ishtar/sheet_find.html:207
+msgid "X:"
+msgstr ""
+
+#: templates/ishtar/sheet_find.html:208
+msgid "Y:"
+msgstr ""
+
+#: templates/ishtar/sheet_find.html:209
+msgid "Z:"
+msgstr ""
+
+#: templates/ishtar/sheet_find.html:212
+msgid "SRID:"
+msgstr ""
+
+#: templates/ishtar/sheet_find.html:228
msgid "Title"
msgstr ""
-#: templates/ishtar/sheet_find.html:217
+#: templates/ishtar/sheet_find.html:230
msgid "Authors"
msgstr ""
-#: templates/ishtar/sheet_find.html:218
+#: templates/ishtar/sheet_find.html:231
msgid "Link"
msgstr ""
@@ -1156,10 +1248,14 @@ msgctxt "Treatment"
msgid "Active"
msgstr ""
-#: templates/ishtar/sheet_treatment.html:47
+#: templates/ishtar/sheet_treatment.html:51
msgid "Downstream finds"
msgstr ""
+#: templates/ishtar/sheet_treatment.html:56
+msgid "Related operations"
+msgstr ""
+
#: templates/ishtar/sheet_treatmentfile.html:16
msgctxt "Treatment request"
msgid "Closed"
diff --git a/archaeological_finds/migrations/0017_fix_treatment_views.py b/archaeological_finds/migrations/0017_fix_treatment_views.py
new file mode 100644
index 000000000..ecc4b055e
--- /dev/null
+++ b/archaeological_finds/migrations/0017_fix_treatment_views.py
@@ -0,0 +1,1173 @@
+# -*- coding: utf-8 -*-
+import datetime
+from south.db import db
+from south.v2 import SchemaMigration
+from django.db import models
+from archaeological_finds.models_treatments import FindTreatments, \
+ FindDownstreamTreatments, FindUpstreamTreatments
+
+
+class Migration(SchemaMigration):
+
+ def forwards(self, orm):
+ sql = FindTreatments.DELETE_SQL
+ sql += FindUpstreamTreatments.DELETE_SQL
+ sql += FindDownstreamTreatments.DELETE_SQL
+ sql += FindUpstreamTreatments.CREATE_SQL
+ sql += FindDownstreamTreatments.CREATE_SQL
+ sql += FindTreatments.CREATE_SQL
+ db.execute(sql)
+
+ def backwards(self, orm):
+ pass
+
+ models = {
+ 'archaeological_context_records.activitytype': {
+ 'Meta': {'ordering': "('order',)", 'object_name': 'ActivityType'},
+ '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', [], {}),
+ 'txt_idx': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '100'})
+ },
+ 'archaeological_context_records.contextrecord': {
+ 'Meta': {'ordering': "('cached_label',)", 'object_name': 'ContextRecord'},
+ 'activity': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['archaeological_context_records.ActivityType']", 'null': 'True', 'blank': 'True'}),
+ 'auto_external_id': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
+ 'cached_label': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'closing_date': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'comment': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'datings': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['archaeological_context_records.Dating']", 'symmetrical': 'False'}),
+ 'datings_comment': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'depth': ('django.db.models.fields.FloatField', [], {'null': 'True', 'blank': 'True'}),
+ 'description': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'external_id': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'filling': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'has_furniture': ('django.db.models.fields.NullBooleanField', [], {'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'}),
+ 'identification': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['archaeological_context_records.IdentificationType']", 'null': 'True', 'blank': 'True'}),
+ 'image': ('django.db.models.fields.files.ImageField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'imports': ('django.db.models.fields.related.ManyToManyField', [], {'blank': 'True', 'related_name': "'imported_archaeological_context_records_contextrecord'", 'null': 'True', 'symmetrical': 'False', 'to': "orm['ishtar_common.Import']"}),
+ 'interpretation': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'label': ('django.db.models.fields.CharField', [], {'max_length': '200'}),
+ 'length': ('django.db.models.fields.FloatField', [], {'null': 'True', 'blank': 'True'}),
+ 'location': ('django.db.models.fields.CharField', [], {'max_length': '200', 'null': 'True', 'blank': 'True'}),
+ 'opening_date': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'operation': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'context_record'", 'to': "orm['archaeological_operations.Operation']"}),
+ 'parcel': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'context_record'", 'to': "orm['archaeological_operations.Parcel']"}),
+ 'point': ('django.contrib.gis.db.models.fields.PointField', [], {'dim': '3', 'null': 'True', 'blank': 'True'}),
+ 'polygon': ('django.contrib.gis.db.models.fields.PolygonField', [], {'null': 'True', 'blank': 'True'}),
+ 'related_context_records': ('django.db.models.fields.related.ManyToManyField', [], {'symmetrical': 'False', 'to': "orm['archaeological_context_records.ContextRecord']", 'null': 'True', 'through': "orm['archaeological_context_records.RecordRelations']", 'blank': 'True'}),
+ 'taq': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
+ 'taq_estimated': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
+ 'thickness': ('django.db.models.fields.FloatField', [], {'null': 'True', 'blank': 'True'}),
+ 'thumbnail': ('django.db.models.fields.files.ImageField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'tpq': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
+ 'tpq_estimated': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
+ 'unit': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'to': "orm['archaeological_context_records.Unit']"}),
+ 'width': ('django.db.models.fields.FloatField', [], {'null': 'True', 'blank': 'True'})
+ },
+ 'archaeological_context_records.dating': {
+ 'Meta': {'object_name': 'Dating'},
+ 'dating_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['archaeological_context_records.DatingType']", 'null': 'True', 'blank': 'True'}),
+ 'end_date': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'period': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['archaeological_operations.Period']"}),
+ 'precise_dating': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'quality': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['archaeological_context_records.DatingQuality']", 'null': 'True', 'blank': 'True'}),
+ 'start_date': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'})
+ },
+ 'archaeological_context_records.datingquality': {
+ 'Meta': {'ordering': "('label',)", 'object_name': 'DatingQuality'},
+ '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'})
+ },
+ 'archaeological_context_records.datingtype': {
+ 'Meta': {'ordering': "('label',)", 'object_name': 'DatingType'},
+ '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'})
+ },
+ 'archaeological_context_records.identificationtype': {
+ 'Meta': {'ordering': "('order', 'label')", 'object_name': 'IdentificationType'},
+ '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', [], {}),
+ 'txt_idx': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '100'})
+ },
+ 'archaeological_context_records.recordrelations': {
+ 'Meta': {'object_name': 'RecordRelations'},
+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'left_record': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'right_relations'", 'to': "orm['archaeological_context_records.ContextRecord']"}),
+ 'relation_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['archaeological_context_records.RelationType']"}),
+ 'right_record': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'left_relations'", 'to': "orm['archaeological_context_records.ContextRecord']"})
+ },
+ 'archaeological_context_records.relationtype': {
+ 'Meta': {'ordering': "('order', 'label')", 'object_name': 'RelationType'},
+ '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'}),
+ 'inverse_relation': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['archaeological_context_records.RelationType']", 'null': 'True', 'blank': 'True'}),
+ 'label': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
+ 'order': ('django.db.models.fields.IntegerField', [], {'default': '1'}),
+ 'symmetrical': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
+ 'tiny_label': ('django.db.models.fields.CharField', [], {'max_length': '50', 'null': 'True', 'blank': 'True'}),
+ 'txt_idx': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '100'})
+ },
+ 'archaeological_context_records.unit': {
+ 'Meta': {'ordering': "('order',)", 'object_name': 'Unit'},
+ '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', [], {}),
+ 'parent': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['archaeological_context_records.Unit']", 'null': 'True', 'blank': 'True'}),
+ 'txt_idx': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '100'})
+ },
+ 'archaeological_files.file': {
+ 'Meta': {'ordering': "('cached_label',)", 'object_name': 'File'},
+ 'address': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'auto_external_id': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
+ 'cached_label': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'cira_advised': ('django.db.models.fields.NullBooleanField', [], {'null': 'True', 'blank': 'True'}),
+ 'classified_area': ('django.db.models.fields.NullBooleanField', [], {'null': 'True', 'blank': 'True'}),
+ 'comment': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'corporation_general_contractor': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'general_contractor_files'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['ishtar_common.Organization']"}),
+ 'creation_date': ('django.db.models.fields.DateField', [], {'default': 'datetime.date.today', 'null': 'True', 'blank': 'True'}),
+ 'departments': ('django.db.models.fields.related.ManyToManyField', [], {'symmetrical': 'False', 'to': "orm['ishtar_common.Department']", 'null': 'True', 'blank': 'True'}),
+ 'end_date': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'external_id': ('django.db.models.fields.CharField', [], {'max_length': '120', 'null': 'True', 'blank': 'True'}),
+ 'file_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['archaeological_files.FileType']"}),
+ 'general_contractor': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'general_contractor_files'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['ishtar_common.Person']"}),
+ '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'}),
+ 'imported_line': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'imports': ('django.db.models.fields.related.ManyToManyField', [], {'blank': 'True', 'related_name': "'imported_archaeological_files_file'", 'null': 'True', 'symmetrical': 'False', 'to': "orm['ishtar_common.Import']"}),
+ 'in_charge': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'file_responsability'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['ishtar_common.Person']"}),
+ 'instruction_deadline': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'internal_reference': ('django.db.models.fields.CharField', [], {'max_length': '60', 'null': 'True', 'blank': 'True'}),
+ 'locality': ('django.db.models.fields.CharField', [], {'max_length': '100', 'null': 'True', 'blank': 'True'}),
+ 'main_town': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'file_main'", 'null': 'True', 'to': "orm['ishtar_common.Town']"}),
+ 'mh_listing': ('django.db.models.fields.NullBooleanField', [], {'null': 'True', 'blank': 'True'}),
+ 'mh_register': ('django.db.models.fields.NullBooleanField', [], {'null': 'True', 'blank': 'True'}),
+ 'name': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'numeric_reference': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
+ 'organization': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'files'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['ishtar_common.Organization']"}),
+ 'permit_reference': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'permit_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['archaeological_files.PermitType']", 'null': 'True', 'blank': 'True'}),
+ 'planning_service': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'planning_service_files'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['ishtar_common.Organization']"}),
+ 'postal_code': ('django.db.models.fields.CharField', [], {'max_length': '10', 'null': 'True', 'blank': 'True'}),
+ 'protected_area': ('django.db.models.fields.NullBooleanField', [], {'null': 'True', 'blank': 'True'}),
+ 'raw_general_contractor': ('django.db.models.fields.CharField', [], {'max_length': '200', 'null': 'True', 'blank': 'True'}),
+ 'raw_town_planning_service': ('django.db.models.fields.CharField', [], {'max_length': '200', 'null': 'True', 'blank': 'True'}),
+ 'reception_date': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'related_file': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['archaeological_files.File']", 'null': 'True', 'blank': 'True'}),
+ 'requested_operation_type': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'to': "orm['ishtar_common.OperationType']"}),
+ 'research_comment': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'responsible_town_planning_service': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'responsible_town_planning_service_files'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['ishtar_common.Person']"}),
+ 'saisine_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['archaeological_files.SaisineType']", 'null': 'True', 'blank': 'True'}),
+ 'scientist': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'scientist'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['ishtar_common.Person']"}),
+ 'total_developed_surface': ('django.db.models.fields.FloatField', [], {'null': 'True', 'blank': 'True'}),
+ 'total_surface': ('django.db.models.fields.FloatField', [], {'null': 'True', 'blank': 'True'}),
+ 'towns': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'file'", 'symmetrical': 'False', 'to': "orm['ishtar_common.Town']"}),
+ 'year': ('django.db.models.fields.IntegerField', [], {'default': '2017'})
+ },
+ 'archaeological_files.filetype': {
+ 'Meta': {'ordering': "('label',)", 'object_name': 'FileType'},
+ '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'})
+ },
+ 'archaeological_files.permittype': {
+ 'Meta': {'ordering': "('label',)", 'object_name': 'PermitType'},
+ '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'})
+ },
+ 'archaeological_files.saisinetype': {
+ 'Meta': {'ordering': "('label',)", 'object_name': 'SaisineType'},
+ 'available': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
+ 'comment': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'delay': ('django.db.models.fields.IntegerField', [], {'default': '30'}),
+ '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'})
+ },
+ 'archaeological_finds.basefind': {
+ 'Meta': {'object_name': 'BaseFind'},
+ 'auto_external_id': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
+ 'batch': ('django.db.models.fields.CharField', [], {'default': "'U'", 'max_length': '1'}),
+ 'cache_complete_id': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'cache_short_id': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'comment': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'context_record': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'base_finds'", 'to': "orm['archaeological_context_records.ContextRecord']"}),
+ 'description': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'discovery_date': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'external_id': ('django.db.models.fields.TextField', [], {'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_archaeological_finds_basefind'", 'null': 'True', 'symmetrical': 'False', 'to': "orm['ishtar_common.Import']"}),
+ 'index': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
+ 'label': ('django.db.models.fields.TextField', [], {}),
+ 'line': ('django.contrib.gis.db.models.fields.LineStringField', [], {'null': 'True', 'blank': 'True'}),
+ 'material_index': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
+ 'point': ('django.contrib.gis.db.models.fields.PointField', [], {'dim': '3', 'null': 'True', 'blank': 'True'}),
+ 'polygon': ('django.contrib.gis.db.models.fields.PolygonField', [], {'null': 'True', 'blank': 'True'}),
+ 'special_interest': ('django.db.models.fields.CharField', [], {'max_length': '120', 'null': 'True', 'blank': 'True'}),
+ 'topographic_localisation': ('django.db.models.fields.CharField', [], {'max_length': '120', 'null': 'True', 'blank': 'True'})
+ },
+ 'archaeological_finds.conservatorystate': {
+ 'Meta': {'ordering': "('label',)", 'object_name': 'ConservatoryState'},
+ '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'}),
+ 'parent': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['archaeological_finds.ConservatoryState']", 'null': 'True', 'blank': 'True'}),
+ 'txt_idx': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '100'})
+ },
+ 'archaeological_finds.find': {
+ 'Meta': {'ordering': "('cached_label',)", 'object_name': 'Find'},
+ 'auto_external_id': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
+ 'base_finds': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'find'", 'symmetrical': 'False', 'to': "orm['archaeological_finds.BaseFind']"}),
+ 'cached_label': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'check_date': ('django.db.models.fields.DateField', [], {'default': 'datetime.date.today'}),
+ 'checked': ('django.db.models.fields.CharField', [], {'default': "'NC'", 'max_length': '2'}),
+ 'collection': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'finds'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['archaeological_warehouse.Collection']"}),
+ 'comment': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'conservatory_comment': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'conservatory_state': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['archaeological_finds.ConservatoryState']", 'null': 'True', 'on_delete': 'models.SET_NULL', 'blank': 'True'}),
+ 'container': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'finds'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['archaeological_warehouse.Container']"}),
+ 'dating_comment': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'datings': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'find'", 'symmetrical': 'False', 'to': "orm['archaeological_context_records.Dating']"}),
+ 'description': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'diameter': ('django.db.models.fields.FloatField', [], {'null': 'True', 'blank': 'True'}),
+ 'dimensions_comment': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'downstream_treatment': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'upstream'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['archaeological_finds.Treatment']"}),
+ 'estimated_value': ('django.db.models.fields.FloatField', [], {'null': 'True', 'blank': 'True'}),
+ 'external_id': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'find_number': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
+ 'height': ('django.db.models.fields.FloatField', [], {'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'}),
+ 'image': ('django.db.models.fields.files.ImageField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'imports': ('django.db.models.fields.related.ManyToManyField', [], {'blank': 'True', 'related_name': "'imported_archaeological_finds_find'", 'null': 'True', 'symmetrical': 'False', 'to': "orm['ishtar_common.Import']"}),
+ 'index': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
+ 'integrities': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'find'", 'symmetrical': 'False', 'to': "orm['archaeological_finds.IntegrityType']"}),
+ 'is_complete': ('django.db.models.fields.NullBooleanField', [], {'null': 'True', 'blank': 'True'}),
+ 'label': ('django.db.models.fields.TextField', [], {}),
+ 'length': ('django.db.models.fields.FloatField', [], {'null': 'True', 'blank': 'True'}),
+ 'mark': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'material_types': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'finds'", 'symmetrical': 'False', 'to': "orm['archaeological_finds.MaterialType']"}),
+ 'min_number_of_individuals': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
+ 'object_types': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'find'", 'symmetrical': 'False', 'to': "orm['archaeological_finds.ObjectType']"}),
+ 'order': ('django.db.models.fields.IntegerField', [], {'default': '1'}),
+ 'preservation_to_considers': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'finds'", 'symmetrical': 'False', 'to': "orm['archaeological_finds.PreservationType']"}),
+ 'previous_id': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'remarkabilities': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'find'", 'symmetrical': 'False', 'to': "orm['archaeological_finds.RemarkabilityType']"}),
+ 'thickness': ('django.db.models.fields.FloatField', [], {'null': 'True', 'blank': 'True'}),
+ 'thumbnail': ('django.db.models.fields.files.ImageField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'topographic_reference_point': ('django.db.models.fields.CharField', [], {'max_length': '20', 'null': 'True', 'blank': 'True'}),
+ 'upstream_treatment': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'downstream'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['archaeological_finds.Treatment']"}),
+ 'volume': ('django.db.models.fields.FloatField', [], {'null': 'True', 'blank': 'True'}),
+ 'weight': ('django.db.models.fields.FloatField', [], {'null': 'True', 'blank': 'True'}),
+ 'weight_unit': ('django.db.models.fields.CharField', [], {'max_length': '4', 'null': 'True', 'blank': 'True'}),
+ 'width': ('django.db.models.fields.FloatField', [], {'null': 'True', 'blank': 'True'})
+ },
+ 'archaeological_finds.findbasket': {
+ 'Meta': {'unique_together': "(('label', 'user'),)", 'object_name': 'FindBasket'},
+ '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'}),
+ 'items': ('django.db.models.fields.related.ManyToManyField', [], {'blank': 'True', 'related_name': "'basket'", 'null': 'True', 'symmetrical': 'False', 'to': "orm['archaeological_finds.Find']"}),
+ 'label': ('django.db.models.fields.CharField', [], {'max_length': '1000'}),
+ 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['ishtar_common.IshtarUser']", 'null': 'True', 'blank': 'True'})
+ },
+ 'archaeological_finds.finddownstreamtreatments': {
+ 'Meta': {'ordering': "('find', '-treatment_nb')", 'unique_together': "(('find', 'treatment'),)", 'object_name': 'FindDownstreamTreatments', 'db_table': "'find_downtreatments'", 'managed': 'False'},
+ 'find': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'finddownstreamtreatments_related'", 'to': "orm['archaeological_finds.Find']"}),
+ 'treatment': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['archaeological_finds.Treatment']", 'primary_key': 'True'}),
+ 'treatment_nb': ('django.db.models.fields.IntegerField', [], {})
+ },
+ 'archaeological_finds.findsource': {
+ 'Meta': {'object_name': 'FindSource'},
+ 'additional_information': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'associated_url': ('django.db.models.fields.URLField', [], {'max_length': '200', 'null': 'True', 'blank': 'True'}),
+ 'authors': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'findsource_related'", 'symmetrical': 'False', 'to': "orm['ishtar_common.Author']"}),
+ 'comment': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'creation_date': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'description': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'duplicate': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
+ 'external_id': ('django.db.models.fields.CharField', [], {'max_length': '12', 'null': 'True', 'blank': 'True'}),
+ 'find': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'source'", 'to': "orm['archaeological_finds.Find']"}),
+ 'format_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['ishtar_common.Format']", 'null': 'True', 'blank': 'True'}),
+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'image': ('django.db.models.fields.files.ImageField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'internal_reference': ('django.db.models.fields.CharField', [], {'max_length': '100', 'null': 'True', 'blank': 'True'}),
+ 'item_number': ('django.db.models.fields.IntegerField', [], {'default': '1'}),
+ 'receipt_date': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'receipt_date_in_documentation': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'reference': ('django.db.models.fields.CharField', [], {'max_length': '100', 'null': 'True', 'blank': 'True'}),
+ 'scale': ('django.db.models.fields.CharField', [], {'max_length': '30', 'null': 'True', 'blank': 'True'}),
+ 'source_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['ishtar_common.SourceType']"}),
+ 'support_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['ishtar_common.SupportType']", 'null': 'True', 'blank': 'True'}),
+ 'thumbnail': ('django.db.models.fields.files.ImageField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'})
+ },
+ 'archaeological_finds.findtreatments': {
+ 'Meta': {'ordering': "('find', 'upstream', '-treatment_nb')", 'unique_together': "(('find', 'treatment'),)", 'object_name': 'FindTreatments', 'db_table': "'find_treatments'", 'managed': 'False'},
+ 'find': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'findtreatments_related'", 'to': "orm['archaeological_finds.Find']"}),
+ 'treatment': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['archaeological_finds.Treatment']", 'primary_key': 'True'}),
+ 'treatment_nb': ('django.db.models.fields.IntegerField', [], {}),
+ 'upstream': ('django.db.models.fields.BooleanField', [], {'default': 'False'})
+ },
+ 'archaeological_finds.findupstreamtreatments': {
+ 'Meta': {'ordering': "('find', '-treatment_nb')", 'unique_together': "(('find', 'treatment'),)", 'object_name': 'FindUpstreamTreatments', 'db_table': "'find_uptreatments'", 'managed': 'False'},
+ 'find': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'findupstreamtreatments_related'", 'to': "orm['archaeological_finds.Find']"}),
+ 'treatment': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['archaeological_finds.Treatment']", 'primary_key': 'True'}),
+ 'treatment_nb': ('django.db.models.fields.IntegerField', [], {})
+ },
+ 'archaeological_finds.historicalbasefind': {
+ 'Meta': {'ordering': "('-history_date', '-history_id')", 'object_name': 'HistoricalBaseFind'},
+ 'auto_external_id': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
+ 'batch': ('django.db.models.fields.CharField', [], {'default': "'U'", 'max_length': '1'}),
+ 'cache_complete_id': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'cache_short_id': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'comment': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'context_record_id': ('django.db.models.fields.IntegerField', [], {'db_index': 'True', 'null': 'True', 'blank': 'True'}),
+ 'description': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'discovery_date': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'external_id': ('django.db.models.fields.TextField', [], {'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'}),
+ 'index': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
+ 'label': ('django.db.models.fields.TextField', [], {}),
+ 'line': ('django.contrib.gis.db.models.fields.LineStringField', [], {'null': 'True', 'blank': 'True'}),
+ 'material_index': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
+ 'point': ('django.contrib.gis.db.models.fields.PointField', [], {'dim': '3', 'null': 'True', 'blank': 'True'}),
+ 'polygon': ('django.contrib.gis.db.models.fields.PolygonField', [], {'null': 'True', 'blank': 'True'}),
+ 'special_interest': ('django.db.models.fields.CharField', [], {'max_length': '120', 'null': 'True', 'blank': 'True'}),
+ 'topographic_localisation': ('django.db.models.fields.CharField', [], {'max_length': '120', 'null': 'True', 'blank': 'True'})
+ },
+ 'archaeological_finds.historicalfind': {
+ 'Meta': {'ordering': "('-history_date', '-history_id')", 'object_name': 'HistoricalFind'},
+ 'auto_external_id': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
+ 'cached_label': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'check_date': ('django.db.models.fields.DateField', [], {'default': 'datetime.date.today'}),
+ 'checked': ('django.db.models.fields.CharField', [], {'default': "'NC'", 'max_length': '2'}),
+ 'collection_id': ('django.db.models.fields.IntegerField', [], {'db_index': 'True', 'null': 'True', 'blank': 'True'}),
+ 'comment': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'conservatory_comment': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'conservatory_state_id': ('django.db.models.fields.IntegerField', [], {'db_index': 'True', 'null': 'True', 'blank': 'True'}),
+ 'container_id': ('django.db.models.fields.IntegerField', [], {'db_index': 'True', 'null': 'True', 'blank': 'True'}),
+ 'dating_comment': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'description': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'diameter': ('django.db.models.fields.FloatField', [], {'null': 'True', 'blank': 'True'}),
+ 'dimensions_comment': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'downstream_treatment_id': ('django.db.models.fields.IntegerField', [], {'db_index': 'True', 'null': 'True', 'blank': 'True'}),
+ 'estimated_value': ('django.db.models.fields.FloatField', [], {'null': 'True', 'blank': 'True'}),
+ 'external_id': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'find_number': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
+ 'height': ('django.db.models.fields.FloatField', [], {'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'}),
+ 'image': ('django.db.models.fields.files.ImageField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'index': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
+ 'is_complete': ('django.db.models.fields.NullBooleanField', [], {'null': 'True', 'blank': 'True'}),
+ 'label': ('django.db.models.fields.TextField', [], {}),
+ 'length': ('django.db.models.fields.FloatField', [], {'null': 'True', 'blank': 'True'}),
+ 'mark': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'min_number_of_individuals': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
+ 'order': ('django.db.models.fields.IntegerField', [], {'default': '1'}),
+ 'previous_id': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'thickness': ('django.db.models.fields.FloatField', [], {'null': 'True', 'blank': 'True'}),
+ 'thumbnail': ('django.db.models.fields.files.ImageField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'topographic_reference_point': ('django.db.models.fields.CharField', [], {'max_length': '20', 'null': 'True', 'blank': 'True'}),
+ 'upstream_treatment_id': ('django.db.models.fields.IntegerField', [], {'db_index': 'True', 'null': 'True', 'blank': 'True'}),
+ 'volume': ('django.db.models.fields.FloatField', [], {'null': 'True', 'blank': 'True'}),
+ 'weight': ('django.db.models.fields.FloatField', [], {'null': 'True', 'blank': 'True'}),
+ 'weight_unit': ('django.db.models.fields.CharField', [], {'max_length': '4', 'null': 'True', 'blank': 'True'}),
+ 'width': ('django.db.models.fields.FloatField', [], {'null': 'True', 'blank': 'True'})
+ },
+ 'archaeological_finds.historicaltreatment': {
+ 'Meta': {'ordering': "('-history_date', '-history_id')", 'object_name': 'HistoricalTreatment'},
+ 'cached_label': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'comment': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'container_id': ('django.db.models.fields.IntegerField', [], {'db_index': 'True', 'null': 'True', 'blank': 'True'}),
+ 'description': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'end_date': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'estimated_cost': ('django.db.models.fields.FloatField', [], {'null': 'True', 'blank': 'True'}),
+ 'external_id': ('django.db.models.fields.CharField', [], {'max_length': '200', 'null': 'True', 'blank': 'True'}),
+ 'file_id': ('django.db.models.fields.IntegerField', [], {'db_index': 'True', 'null': 'True', 'blank': 'True'}),
+ 'goal': ('django.db.models.fields.TextField', [], {'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'}),
+ 'image': ('django.db.models.fields.files.ImageField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'index': ('django.db.models.fields.IntegerField', [], {'default': '1'}),
+ 'insurance_cost': ('django.db.models.fields.FloatField', [], {'null': 'True', 'blank': 'True'}),
+ 'label': ('django.db.models.fields.CharField', [], {'max_length': '200', 'null': 'True', 'blank': 'True'}),
+ 'location_id': ('django.db.models.fields.IntegerField', [], {'db_index': 'True', 'null': 'True', 'blank': 'True'}),
+ 'organization_id': ('django.db.models.fields.IntegerField', [], {'db_index': 'True', 'null': 'True', 'blank': 'True'}),
+ 'other_reference': ('django.db.models.fields.CharField', [], {'max_length': '200', 'null': 'True', 'blank': 'True'}),
+ 'person_id': ('django.db.models.fields.IntegerField', [], {'db_index': 'True', 'null': 'True', 'blank': 'True'}),
+ 'quoted_cost': ('django.db.models.fields.FloatField', [], {'null': 'True', 'blank': 'True'}),
+ 'realized_cost': ('django.db.models.fields.FloatField', [], {'null': 'True', 'blank': 'True'}),
+ 'start_date': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'target_is_basket': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
+ 'thumbnail': ('django.db.models.fields.files.ImageField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'treatment_state_id': ('django.db.models.fields.IntegerField', [], {'db_index': 'True', 'null': 'True', 'blank': 'True'}),
+ 'year': ('django.db.models.fields.IntegerField', [], {'default': '2017'})
+ },
+ 'archaeological_finds.historicaltreatmentfile': {
+ 'Meta': {'ordering': "('-history_date', '-history_id')", 'object_name': 'HistoricalTreatmentFile'},
+ 'applicant_id': ('django.db.models.fields.IntegerField', [], {'db_index': 'True', 'null': 'True', 'blank': 'True'}),
+ 'applicant_organisation_id': ('django.db.models.fields.IntegerField', [], {'db_index': 'True', 'null': 'True', 'blank': 'True'}),
+ 'cached_label': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'comment': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'creation_date': ('django.db.models.fields.DateField', [], {'default': 'datetime.date.today', 'null': 'True', 'blank': 'True'}),
+ 'end_date': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'external_id': ('django.db.models.fields.CharField', [], {'max_length': '200', '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'}),
+ 'in_charge_id': ('django.db.models.fields.IntegerField', [], {'db_index': 'True', 'null': 'True', 'blank': 'True'}),
+ 'index': ('django.db.models.fields.IntegerField', [], {'default': '1'}),
+ 'internal_reference': ('django.db.models.fields.CharField', [], {'max_length': '200', 'null': 'True', 'blank': 'True'}),
+ 'name': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'reception_date': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'type_id': ('django.db.models.fields.IntegerField', [], {'db_index': 'True', 'null': 'True', 'blank': 'True'}),
+ 'year': ('django.db.models.fields.IntegerField', [], {'default': '2017'})
+ },
+ 'archaeological_finds.integritytype': {
+ 'Meta': {'ordering': "('label',)", 'object_name': 'IntegrityType'},
+ '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'})
+ },
+ 'archaeological_finds.materialtype': {
+ 'Meta': {'ordering': "('label',)", 'object_name': 'MaterialType'},
+ 'available': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
+ 'code': ('django.db.models.fields.CharField', [], {'max_length': '10', 'null': 'True', 'blank': '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'}),
+ 'parent': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['archaeological_finds.MaterialType']", 'null': 'True', 'blank': 'True'}),
+ 'recommendation': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'txt_idx': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '100'})
+ },
+ 'archaeological_finds.objecttype': {
+ 'Meta': {'ordering': "('parent__label', 'label')", 'object_name': 'ObjectType'},
+ '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'}),
+ 'parent': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['archaeological_finds.ObjectType']", 'null': 'True', 'blank': 'True'}),
+ 'txt_idx': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '100'})
+ },
+ 'archaeological_finds.preservationtype': {
+ 'Meta': {'ordering': "('label',)", 'object_name': 'PreservationType'},
+ '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'})
+ },
+ 'archaeological_finds.property': {
+ 'Meta': {'object_name': 'Property'},
+ 'administrative_act': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['archaeological_operations.AdministrativeAct']"}),
+ 'end_date': ('django.db.models.fields.DateField', [], {}),
+ 'find': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['archaeological_finds.Find']"}),
+ 'history_creator': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['auth.User']"}),
+ 'history_date': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
+ '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_archaeological_finds_property'", 'null': 'True', 'symmetrical': 'False', 'to': "orm['ishtar_common.Import']"}),
+ 'person': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'properties'", 'to': "orm['ishtar_common.Person']"}),
+ 'start_date': ('django.db.models.fields.DateField', [], {})
+ },
+ 'archaeological_finds.remarkabilitytype': {
+ 'Meta': {'ordering': "('label',)", 'object_name': 'RemarkabilityType'},
+ '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'})
+ },
+ 'archaeological_finds.treatment': {
+ 'Meta': {'unique_together': "(('year', 'index'),)", 'object_name': 'Treatment'},
+ 'cached_label': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'comment': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'container': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['archaeological_warehouse.Container']", 'null': 'True', 'blank': 'True'}),
+ 'description': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'end_date': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'estimated_cost': ('django.db.models.fields.FloatField', [], {'null': 'True', 'blank': 'True'}),
+ 'external_id': ('django.db.models.fields.CharField', [], {'max_length': '200', 'null': 'True', 'blank': 'True'}),
+ 'file': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'treatments'", 'null': 'True', 'to': "orm['archaeological_finds.TreatmentFile']"}),
+ 'goal': ('django.db.models.fields.TextField', [], {'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'}),
+ 'image': ('django.db.models.fields.files.ImageField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'imports': ('django.db.models.fields.related.ManyToManyField', [], {'blank': 'True', 'related_name': "'imported_archaeological_finds_treatment'", 'null': 'True', 'symmetrical': 'False', 'to': "orm['ishtar_common.Import']"}),
+ 'index': ('django.db.models.fields.IntegerField', [], {'default': '1'}),
+ 'insurance_cost': ('django.db.models.fields.FloatField', [], {'null': 'True', 'blank': 'True'}),
+ 'label': ('django.db.models.fields.CharField', [], {'max_length': '200', 'null': 'True', 'blank': 'True'}),
+ 'location': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['archaeological_warehouse.Warehouse']", 'null': 'True', 'blank': 'True'}),
+ 'organization': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'treatments'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['ishtar_common.Organization']"}),
+ 'other_reference': ('django.db.models.fields.CharField', [], {'max_length': '200', 'null': 'True', 'blank': 'True'}),
+ 'person': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'treatments'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['ishtar_common.Person']"}),
+ 'quoted_cost': ('django.db.models.fields.FloatField', [], {'null': 'True', 'blank': 'True'}),
+ 'realized_cost': ('django.db.models.fields.FloatField', [], {'null': 'True', 'blank': 'True'}),
+ 'start_date': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'target_is_basket': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
+ 'thumbnail': ('django.db.models.fields.files.ImageField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'treatment_state': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['archaeological_finds.TreatmentState']", 'null': 'True', 'blank': 'True'}),
+ 'treatment_types': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['archaeological_finds.TreatmentType']", 'symmetrical': 'False'}),
+ 'year': ('django.db.models.fields.IntegerField', [], {'default': '2017'})
+ },
+ 'archaeological_finds.treatmentfile': {
+ 'Meta': {'ordering': "('cached_label',)", 'unique_together': "(('year', 'index'),)", 'object_name': 'TreatmentFile'},
+ 'applicant': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'treatmentfile_applicant'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['ishtar_common.Person']"}),
+ 'applicant_organisation': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'treatmentfile_applicant'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['ishtar_common.Organization']"}),
+ 'cached_label': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'comment': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'creation_date': ('django.db.models.fields.DateField', [], {'default': 'datetime.date.today', 'null': 'True', 'blank': 'True'}),
+ 'end_date': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'external_id': ('django.db.models.fields.CharField', [], {'max_length': '200', '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_archaeological_finds_treatmentfile'", 'null': 'True', 'symmetrical': 'False', 'to': "orm['ishtar_common.Import']"}),
+ 'in_charge': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'treatmentfile_responsability'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['ishtar_common.Person']"}),
+ 'index': ('django.db.models.fields.IntegerField', [], {'default': '1'}),
+ 'internal_reference': ('django.db.models.fields.CharField', [], {'max_length': '200', 'null': 'True', 'blank': 'True'}),
+ 'name': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'reception_date': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['archaeological_finds.TreatmentFileType']"}),
+ 'year': ('django.db.models.fields.IntegerField', [], {'default': '2017'})
+ },
+ 'archaeological_finds.treatmentfilesource': {
+ 'Meta': {'object_name': 'TreatmentFileSource'},
+ 'additional_information': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'associated_url': ('django.db.models.fields.URLField', [], {'max_length': '200', 'null': 'True', 'blank': 'True'}),
+ 'authors': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'treatmentfilesource_related'", 'symmetrical': 'False', 'to': "orm['ishtar_common.Author']"}),
+ 'comment': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'creation_date': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'description': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'duplicate': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
+ 'external_id': ('django.db.models.fields.CharField', [], {'max_length': '12', 'null': 'True', 'blank': 'True'}),
+ 'format_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['ishtar_common.Format']", 'null': 'True', 'blank': 'True'}),
+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'image': ('django.db.models.fields.files.ImageField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'internal_reference': ('django.db.models.fields.CharField', [], {'max_length': '100', 'null': 'True', 'blank': 'True'}),
+ 'item_number': ('django.db.models.fields.IntegerField', [], {'default': '1'}),
+ 'receipt_date': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'receipt_date_in_documentation': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'reference': ('django.db.models.fields.CharField', [], {'max_length': '100', 'null': 'True', 'blank': 'True'}),
+ 'scale': ('django.db.models.fields.CharField', [], {'max_length': '30', 'null': 'True', 'blank': 'True'}),
+ 'source_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['ishtar_common.SourceType']"}),
+ 'support_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['ishtar_common.SupportType']", 'null': 'True', 'blank': 'True'}),
+ 'thumbnail': ('django.db.models.fields.files.ImageField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}),
+ 'treatment_file': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'source'", 'to': "orm['archaeological_finds.TreatmentFile']"})
+ },
+ 'archaeological_finds.treatmentfiletype': {
+ 'Meta': {'ordering': "('label',)", 'object_name': 'TreatmentFileType'},
+ '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'})
+ },
+ 'archaeological_finds.treatmentsource': {
+ 'Meta': {'object_name': 'TreatmentSource'},
+ 'additional_information': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'associated_url': ('django.db.models.fields.URLField', [], {'max_length': '200', 'null': 'True', 'blank': 'True'}),
+ 'authors': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'treatmentsource_related'", 'symmetrical': 'False', 'to': "orm['ishtar_common.Author']"}),
+ 'comment': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'creation_date': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'description': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'duplicate': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
+ 'external_id': ('django.db.models.fields.CharField', [], {'max_length': '12', 'null': 'True', 'blank': 'True'}),
+ 'format_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['ishtar_common.Format']", 'null': 'True', 'blank': 'True'}),
+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'image': ('django.db.models.fields.files.ImageField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'internal_reference': ('django.db.models.fields.CharField', [], {'max_length': '100', 'null': 'True', 'blank': 'True'}),
+ 'item_number': ('django.db.models.fields.IntegerField', [], {'default': '1'}),
+ 'receipt_date': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'receipt_date_in_documentation': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'reference': ('django.db.models.fields.CharField', [], {'max_length': '100', 'null': 'True', 'blank': 'True'}),
+ 'scale': ('django.db.models.fields.CharField', [], {'max_length': '30', 'null': 'True', 'blank': 'True'}),
+ 'source_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['ishtar_common.SourceType']"}),
+ 'support_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['ishtar_common.SupportType']", 'null': 'True', 'blank': 'True'}),
+ 'thumbnail': ('django.db.models.fields.files.ImageField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}),
+ 'treatment': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'source'", 'to': "orm['archaeological_finds.Treatment']"})
+ },
+ 'archaeological_finds.treatmentstate': {
+ 'Meta': {'ordering': "('label',)", 'object_name': 'TreatmentState'},
+ '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'})
+ },
+ 'archaeological_finds.treatmenttype': {
+ 'Meta': {'ordering': "('label',)", 'object_name': 'TreatmentType'},
+ 'available': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
+ 'comment': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'downstream_is_many': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
+ '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'}),
+ 'parent': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['archaeological_finds.TreatmentType']", 'null': 'True', 'blank': 'True'}),
+ 'txt_idx': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '100'}),
+ 'upstream_is_many': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
+ 'virtual': ('django.db.models.fields.BooleanField', [], {'default': 'False'})
+ },
+ 'archaeological_operations.acttype': {
+ 'Meta': {'ordering': "('label',)", 'object_name': 'ActType'},
+ 'associated_template': ('django.db.models.fields.related.ManyToManyField', [], {'blank': 'True', 'related_name': "'acttypes'", 'null': 'True', 'symmetrical': 'False', 'to': "orm['ishtar_common.DocumentTemplate']"}),
+ 'available': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
+ 'code': ('django.db.models.fields.CharField', [], {'max_length': '10', 'null': 'True', 'blank': 'True'}),
+ 'comment': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'indexed': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
+ 'intented_to': ('django.db.models.fields.CharField', [], {'max_length': '2'}),
+ 'label': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
+ 'txt_idx': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '100'})
+ },
+ 'archaeological_operations.administrativeact': {
+ 'Meta': {'ordering': "('year', 'signature_date', 'index', 'act_type')", 'object_name': 'AdministrativeAct'},
+ 'act_object': ('django.db.models.fields.TextField', [], {'max_length': '300', 'null': 'True', 'blank': 'True'}),
+ 'act_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['archaeological_operations.ActType']"}),
+ 'associated_file': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'administrative_act'", 'null': 'True', 'to': "orm['archaeological_files.File']"}),
+ 'departments_label': ('django.db.models.fields.TextField', [], {'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_archaeological_operations_administrativeact'", 'null': 'True', 'symmetrical': 'False', 'to': "orm['ishtar_common.Import']"}),
+ 'in_charge': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'adminact_operation_in_charge'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['ishtar_common.Person']"}),
+ 'index': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
+ 'operation': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'administrative_act'", 'null': 'True', 'to': "orm['archaeological_operations.Operation']"}),
+ 'operator': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'adminact_operator'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['ishtar_common.Organization']"}),
+ 'ref_sra': ('django.db.models.fields.CharField', [], {'max_length': '15', 'null': 'True', 'blank': 'True'}),
+ 'scientist': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'adminact_scientist'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['ishtar_common.Person']"}),
+ 'signatory': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'signatory'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['ishtar_common.Person']"}),
+ 'signature_date': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'towns_label': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'treatment': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'administrative_act'", 'null': 'True', 'to': "orm['archaeological_finds.Treatment']"}),
+ 'treatment_file': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'administrative_act'", 'null': 'True', 'to': "orm['archaeological_finds.TreatmentFile']"}),
+ 'year': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'})
+ },
+ 'archaeological_operations.archaeologicalsite': {
+ 'Meta': {'object_name': 'ArchaeologicalSite'},
+ '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_archaeological_operations_archaeologicalsite'", 'null': 'True', 'symmetrical': 'False', 'to': "orm['ishtar_common.Import']"}),
+ 'name': ('django.db.models.fields.CharField', [], {'max_length': '200', 'null': 'True', 'blank': 'True'}),
+ 'periods': ('django.db.models.fields.related.ManyToManyField', [], {'symmetrical': 'False', 'to': "orm['archaeological_operations.Period']", 'null': 'True', 'blank': 'True'}),
+ 'reference': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '20'}),
+ 'remains': ('django.db.models.fields.related.ManyToManyField', [], {'symmetrical': 'False', 'to': "orm['archaeological_operations.RemainType']", 'null': 'True', 'blank': 'True'})
+ },
+ 'archaeological_operations.operation': {
+ 'Meta': {'ordering': "('cached_label',)", 'object_name': 'Operation'},
+ 'abstract': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'archaeological_sites': ('django.db.models.fields.related.ManyToManyField', [], {'symmetrical': 'False', 'to': "orm['archaeological_operations.ArchaeologicalSite']", 'null': 'True', 'blank': 'True'}),
+ 'associated_file': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'operations'", 'null': 'True', 'to': "orm['archaeological_files.File']"}),
+ 'cached_label': ('django.db.models.fields.CharField', [], {'max_length': '500', 'null': 'True', 'blank': 'True'}),
+ 'cira_date': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'cira_rapporteur': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'cira_rapporteur'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['ishtar_common.Person']"}),
+ 'code_patriarche': ('django.db.models.fields.IntegerField', [], {'unique': 'True', 'null': 'True', 'blank': 'True'}),
+ 'comment': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'common_name': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'cost': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
+ 'creation_date': ('django.db.models.fields.DateField', [], {'default': 'datetime.date.today'}),
+ 'documentation_deadline': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'documentation_received': ('django.db.models.fields.NullBooleanField', [], {'null': 'True', 'blank': 'True'}),
+ 'eas_number': ('django.db.models.fields.CharField', [], {'max_length': '20', 'null': 'True', 'blank': 'True'}),
+ 'effective_man_days': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
+ 'end_date': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'excavation_end_date': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'finds_deadline': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'finds_received': ('django.db.models.fields.NullBooleanField', [], {'null': 'True', 'blank': 'True'}),
+ 'fnap_cost': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
+ 'fnap_financing': ('django.db.models.fields.FloatField', [], {'null': 'True', 'blank': 'True'}),
+ 'geoarchaeological_context_prescription': ('django.db.models.fields.NullBooleanField', [], {'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'}),
+ 'image': ('django.db.models.fields.files.ImageField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'imports': ('django.db.models.fields.related.ManyToManyField', [], {'blank': 'True', 'related_name': "'imported_archaeological_operations_operation'", 'null': 'True', 'symmetrical': 'False', 'to': "orm['ishtar_common.Import']"}),
+ 'in_charge': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'operation_responsability'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['ishtar_common.Person']"}),
+ 'large_area_prescription': ('django.db.models.fields.NullBooleanField', [], {'null': 'True', 'blank': 'True'}),
+ 'multi_polygon': ('django.contrib.gis.db.models.fields.MultiPolygonField', [], {'null': 'True', 'blank': 'True'}),
+ 'negative_result': ('django.db.models.fields.NullBooleanField', [], {'null': 'True', 'blank': 'True'}),
+ 'old_code': ('django.db.models.fields.CharField', [], {'max_length': '200', 'null': 'True', 'blank': 'True'}),
+ 'operation_code': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
+ 'operation_type': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'to': "orm['ishtar_common.OperationType']"}),
+ 'operator': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'operator'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['ishtar_common.Organization']"}),
+ 'operator_reference': ('django.db.models.fields.CharField', [], {'max_length': '20', 'null': 'True', 'blank': 'True'}),
+ 'optional_man_days': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
+ 'periods': ('django.db.models.fields.related.ManyToManyField', [], {'symmetrical': 'False', 'to': "orm['archaeological_operations.Period']", 'null': 'True', 'blank': 'True'}),
+ 'point': ('django.contrib.gis.db.models.fields.PointField', [], {'null': 'True', 'blank': 'True'}),
+ 'record_quality': ('django.db.models.fields.CharField', [], {'max_length': '2', 'null': 'True', 'blank': 'True'}),
+ 'remains': ('django.db.models.fields.related.ManyToManyField', [], {'symmetrical': 'False', 'to': "orm['archaeological_operations.RemainType']", 'null': 'True', 'blank': 'True'}),
+ 'report_delivery_date': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'report_processing': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['archaeological_operations.ReportState']", 'null': 'True', 'blank': 'True'}),
+ 'scheduled_man_days': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
+ 'scientific_documentation_comment': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'scientist': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'operation_scientist_responsability'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['ishtar_common.Person']"}),
+ 'start_date': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'surface': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
+ 'thumbnail': ('django.db.models.fields.files.ImageField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'towns': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'operations'", 'symmetrical': 'False', 'to': "orm['ishtar_common.Town']"}),
+ 'virtual_operation': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
+ 'year': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
+ 'zoning_prescription': ('django.db.models.fields.NullBooleanField', [], {'null': 'True', 'blank': 'True'})
+ },
+ 'archaeological_operations.parcel': {
+ 'Meta': {'ordering': "('year', 'section', 'parcel_number')", 'object_name': 'Parcel'},
+ 'address': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'associated_file': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'parcels'", 'null': 'True', 'to': "orm['archaeological_files.File']"}),
+ 'auto_external_id': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
+ 'external_id': ('django.db.models.fields.CharField', [], {'max_length': '100', '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_date': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
+ '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_archaeological_operations_parcel'", 'null': 'True', 'symmetrical': 'False', 'to': "orm['ishtar_common.Import']"}),
+ 'operation': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'parcels'", 'null': 'True', 'to': "orm['archaeological_operations.Operation']"}),
+ 'parcel_number': ('django.db.models.fields.CharField', [], {'max_length': '6', 'null': 'True', 'blank': 'True'}),
+ 'public_domain': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
+ 'section': ('django.db.models.fields.CharField', [], {'max_length': '4', 'null': 'True', 'blank': 'True'}),
+ 'town': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'parcels'", 'to': "orm['ishtar_common.Town']"}),
+ 'year': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'})
+ },
+ 'archaeological_operations.period': {
+ 'Meta': {'ordering': "('order',)", 'object_name': 'Period'},
+ 'available': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
+ 'comment': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'end_date': ('django.db.models.fields.IntegerField', [], {}),
+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'label': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
+ 'order': ('django.db.models.fields.IntegerField', [], {}),
+ 'parent': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['archaeological_operations.Period']", 'null': 'True', 'blank': 'True'}),
+ 'start_date': ('django.db.models.fields.IntegerField', [], {}),
+ 'txt_idx': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '100'})
+ },
+ 'archaeological_operations.remaintype': {
+ 'Meta': {'ordering': "('label',)", 'object_name': 'RemainType'},
+ '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'})
+ },
+ 'archaeological_operations.reportstate': {
+ 'Meta': {'ordering': "('order',)", 'object_name': 'ReportState'},
+ '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', [], {}),
+ 'txt_idx': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '100'})
+ },
+ 'archaeological_warehouse.collection': {
+ 'Meta': {'ordering': "('name',)", 'object_name': 'Collection'},
+ 'description': ('django.db.models.fields.TextField', [], {'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_date': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
+ '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_archaeological_warehouse_collection'", 'null': 'True', 'symmetrical': 'False', 'to': "orm['ishtar_common.Import']"}),
+ 'name': ('django.db.models.fields.CharField', [], {'max_length': '200', 'null': 'True', 'blank': 'True'}),
+ 'warehouse': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'collections'", 'to': "orm['archaeological_warehouse.Warehouse']"})
+ },
+ 'archaeological_warehouse.container': {
+ 'Meta': {'ordering': "('cached_label',)", 'unique_together': "(('index', 'location'),)", 'object_name': 'Container'},
+ 'cached_label': ('django.db.models.fields.CharField', [], {'max_length': '500', 'null': 'True', 'blank': 'True'}),
+ 'cached_location': ('django.db.models.fields.CharField', [], {'max_length': '500', 'null': 'True', 'blank': 'True'}),
+ 'comment': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'container_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['archaeological_warehouse.ContainerType']"}),
+ 'history_creator': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['auth.User']"}),
+ 'history_date': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
+ '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_archaeological_warehouse_container'", 'null': 'True', 'symmetrical': 'False', 'to': "orm['ishtar_common.Import']"}),
+ 'index': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
+ 'location': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'containers'", 'to': "orm['archaeological_warehouse.Warehouse']"}),
+ 'reference': ('django.db.models.fields.CharField', [], {'max_length': '40'}),
+ 'responsible': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'owned_containers'", 'to': "orm['archaeological_warehouse.Warehouse']"})
+ },
+ 'archaeological_warehouse.containertype': {
+ 'Meta': {'ordering': "('label',)", 'object_name': 'ContainerType'},
+ 'available': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
+ 'comment': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'height': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'label': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
+ 'length': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
+ 'reference': ('django.db.models.fields.CharField', [], {'max_length': '30'}),
+ 'txt_idx': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '100'}),
+ 'volume': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
+ 'width': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'})
+ },
+ 'archaeological_warehouse.warehouse': {
+ 'Meta': {'object_name': 'Warehouse'},
+ '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'}),
+ 'associated_divisions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['archaeological_warehouse.WarehouseDivision']", 'symmetrical': 'False', 'through': "orm['archaeological_warehouse.WarehouseDivisionLink']", 'blank': 'True'}),
+ 'comment': ('django.db.models.fields.TextField', [], {'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_archaeological_warehouse_warehouse'", 'null': 'True', 'symmetrical': 'False', 'to': "orm['ishtar_common.Import']"}),
+ 'mobile_phone': ('django.db.models.fields.CharField', [], {'max_length': '18', 'null': 'True', 'blank': 'True'}),
+ 'name': ('django.db.models.fields.CharField', [], {'max_length': '200'}),
+ 'person_in_charge': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'warehouse_in_charge'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['ishtar_common.Person']"}),
+ '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'}),
+ 'warehouse_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['archaeological_warehouse.WarehouseType']"})
+ },
+ 'archaeological_warehouse.warehousedivision': {
+ 'Meta': {'object_name': 'WarehouseDivision'},
+ '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'})
+ },
+ 'archaeological_warehouse.warehousedivisionlink': {
+ 'Meta': {'ordering': "('warehouse', 'order')", 'unique_together': "(('warehouse', 'division'),)", 'object_name': 'WarehouseDivisionLink'},
+ 'division': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['archaeological_warehouse.WarehouseDivision']"}),
+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'order': ('django.db.models.fields.IntegerField', [], {'default': '10'}),
+ 'warehouse': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['archaeological_warehouse.Warehouse']"})
+ },
+ 'archaeological_warehouse.warehousetype': {
+ 'Meta': {'ordering': "('label',)", 'object_name': 'WarehouseType'},
+ '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'})
+ },
+ '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', [], {'related_name': "'author'", 'to': "orm['ishtar_common.Person']"})
+ },
+ 'ishtar_common.authortype': {
+ 'Meta': {'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'}),
+ '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': {'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.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': '100', 'null': 'True', 'blank': 'True'}),
+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'imported_file': ('django.db.models.fields.files.FileField', [], {'max_length': '100'}),
+ 'imported_images': ('django.db.models.fields.files.FileField', [], {'max_length': '100', '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': '100', 'null': 'True', 'blank': 'True'}),
+ 'result_file': ('django.db.models.fields.files.FileField', [], {'max_length': '100', '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.importertype': {
+ 'Meta': {'object_name': 'ImporterType'},
+ 'associated_models': ('django.db.models.fields.CharField', [], {'max_length': '200'}),
+ '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.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.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.sourcetype': {
+ 'Meta': {'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.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.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 = ['archaeological_finds']
diff --git a/archaeological_finds/migrations/0018_auto__del_field_find_topographic_reference_point__add_field_basefind_x.py b/archaeological_finds/migrations/0018_auto__del_field_find_topographic_reference_point__add_field_basefind_x.py
new file mode 100644
index 000000000..0e1a30653
--- /dev/null
+++ b/archaeological_finds/migrations/0018_auto__del_field_find_topographic_reference_point__add_field_basefind_x.py
@@ -0,0 +1,1335 @@
+# -*- coding: utf-8 -*-
+import datetime
+from south.db import db
+from south.v2 import SchemaMigration
+from django.db import models
+
+
+class Migration(SchemaMigration):
+ depends_on = (
+ ('ishtar_common',
+ '0018_auto__add_spatialreferencesystem__add_field_ishtarsiteprofile_mapping.py'),
+ )
+
+ def forwards(self, orm):
+ # Deleting field 'Find.topographic_reference_point'
+ db.delete_column('archaeological_finds_find', 'topographic_reference_point')
+
+ # Adding field 'BaseFind.x'
+ db.add_column('archaeological_finds_basefind', 'x',
+ self.gf('django.db.models.fields.FloatField')(null=True, blank=True),
+ keep_default=False)
+
+ # Adding field 'BaseFind.y'
+ db.add_column('archaeological_finds_basefind', 'y',
+ self.gf('django.db.models.fields.FloatField')(null=True, blank=True),
+ keep_default=False)
+
+ # Adding field 'BaseFind.z'
+ db.add_column('archaeological_finds_basefind', 'z',
+ self.gf('django.db.models.fields.FloatField')(null=True, blank=True),
+ keep_default=False)
+
+ # Adding field 'BaseFind.estimated_error_x'
+ db.add_column('archaeological_finds_basefind', 'estimated_error_x',
+ self.gf('django.db.models.fields.FloatField')(null=True, blank=True),
+ keep_default=False)
+
+ # Adding field 'BaseFind.estimated_error_y'
+ db.add_column('archaeological_finds_basefind', 'estimated_error_y',
+ self.gf('django.db.models.fields.FloatField')(null=True, blank=True),
+ keep_default=False)
+
+ # Adding field 'BaseFind.estimated_error_z'
+ db.add_column('archaeological_finds_basefind', 'estimated_error_z',
+ self.gf('django.db.models.fields.FloatField')(null=True, blank=True),
+ keep_default=False)
+
+ # Adding field 'BaseFind.spatial_reference_system'
+ db.add_column('archaeological_finds_basefind', 'spatial_reference_system',
+ self.gf('django.db.models.fields.related.ForeignKey')(to=orm['ishtar_common.SpatialReferenceSystem'], null=True, blank=True),
+ keep_default=False)
+
+ # Adding field 'BaseFind.point_2d'
+ db.add_column('archaeological_finds_basefind', 'point_2d',
+ self.gf('django.contrib.gis.db.models.fields.PointField')(null=True, blank=True),
+ keep_default=False)
+
+ # Deleting field 'HistoricalFind.topographic_reference_point'
+ db.delete_column('archaeological_finds_historicalfind', 'topographic_reference_point')
+
+ # Adding field 'HistoricalBaseFind.x'
+ db.add_column('archaeological_finds_historicalbasefind', 'x',
+ self.gf('django.db.models.fields.FloatField')(null=True, blank=True),
+ keep_default=False)
+
+ # Adding field 'HistoricalBaseFind.y'
+ db.add_column('archaeological_finds_historicalbasefind', 'y',
+ self.gf('django.db.models.fields.FloatField')(null=True, blank=True),
+ keep_default=False)
+
+ # Adding field 'HistoricalBaseFind.z'
+ db.add_column('archaeological_finds_historicalbasefind', 'z',
+ self.gf('django.db.models.fields.FloatField')(null=True, blank=True),
+ keep_default=False)
+
+ # Adding field 'HistoricalBaseFind.estimated_error_x'
+ db.add_column('archaeological_finds_historicalbasefind', 'estimated_error_x',
+ self.gf('django.db.models.fields.FloatField')(null=True, blank=True),
+ keep_default=False)
+
+ # Adding field 'HistoricalBaseFind.estimated_error_y'
+ db.add_column('archaeological_finds_historicalbasefind', 'estimated_error_y',
+ self.gf('django.db.models.fields.FloatField')(null=True, blank=True),
+ keep_default=False)
+
+ # Adding field 'HistoricalBaseFind.estimated_error_z'
+ db.add_column('archaeological_finds_historicalbasefind', 'estimated_error_z',
+ self.gf('django.db.models.fields.FloatField')(null=True, blank=True),
+ keep_default=False)
+
+ # Adding field 'HistoricalBaseFind.spatial_reference_system_id'
+ db.add_column('archaeological_finds_historicalbasefind', 'spatial_reference_system_id',
+ self.gf('django.db.models.fields.IntegerField')(db_index=True, null=True, blank=True),
+ keep_default=False)
+
+ # Adding field 'HistoricalBaseFind.point_2d'
+ db.add_column('archaeological_finds_historicalbasefind', 'point_2d',
+ self.gf('django.contrib.gis.db.models.fields.PointField')(null=True, blank=True),
+ keep_default=False)
+
+
+ def backwards(self, orm):
+ # Adding field 'Find.topographic_reference_point'
+ db.add_column('archaeological_finds_find', 'topographic_reference_point',
+ self.gf('django.db.models.fields.CharField')(max_length=20, null=True, blank=True),
+ keep_default=False)
+
+ # Deleting field 'BaseFind.x'
+ db.delete_column('archaeological_finds_basefind', 'x')
+
+ # Deleting field 'BaseFind.y'
+ db.delete_column('archaeological_finds_basefind', 'y')
+
+ # Deleting field 'BaseFind.z'
+ db.delete_column('archaeological_finds_basefind', 'z')
+
+ # Deleting field 'BaseFind.estimated_error_x'
+ db.delete_column('archaeological_finds_basefind', 'estimated_error_x')
+
+ # Deleting field 'BaseFind.estimated_error_y'
+ db.delete_column('archaeological_finds_basefind', 'estimated_error_y')
+
+ # Deleting field 'BaseFind.estimated_error_z'
+ db.delete_column('archaeological_finds_basefind', 'estimated_error_z')
+
+ # Deleting field 'BaseFind.spatial_reference_system'
+ db.delete_column('archaeological_finds_basefind', 'spatial_reference_system_id')
+
+ # Deleting field 'BaseFind.point_2d'
+ db.delete_column('archaeological_finds_basefind', 'point_2d')
+
+ # Adding field 'HistoricalFind.topographic_reference_point'
+ db.add_column('archaeological_finds_historicalfind', 'topographic_reference_point',
+ self.gf('django.db.models.fields.CharField')(max_length=20, null=True, blank=True),
+ keep_default=False)
+
+ # Deleting field 'HistoricalBaseFind.x'
+ db.delete_column('archaeological_finds_historicalbasefind', 'x')
+
+ # Deleting field 'HistoricalBaseFind.y'
+ db.delete_column('archaeological_finds_historicalbasefind', 'y')
+
+ # Deleting field 'HistoricalBaseFind.z'
+ db.delete_column('archaeological_finds_historicalbasefind', 'z')
+
+ # Deleting field 'HistoricalBaseFind.estimated_error_x'
+ db.delete_column('archaeological_finds_historicalbasefind', 'estimated_error_x')
+
+ # Deleting field 'HistoricalBaseFind.estimated_error_y'
+ db.delete_column('archaeological_finds_historicalbasefind', 'estimated_error_y')
+
+ # Deleting field 'HistoricalBaseFind.estimated_error_z'
+ db.delete_column('archaeological_finds_historicalbasefind', 'estimated_error_z')
+
+ # Deleting field 'HistoricalBaseFind.spatial_reference_system_id'
+ db.delete_column('archaeological_finds_historicalbasefind', 'spatial_reference_system_id')
+
+ # Deleting field 'HistoricalBaseFind.point_2d'
+ db.delete_column('archaeological_finds_historicalbasefind', 'point_2d')
+
+
+ models = {
+ 'archaeological_context_records.activitytype': {
+ 'Meta': {'ordering': "('order',)", 'object_name': 'ActivityType'},
+ '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', [], {}),
+ 'txt_idx': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '100'})
+ },
+ 'archaeological_context_records.contextrecord': {
+ 'Meta': {'ordering': "('cached_label',)", 'object_name': 'ContextRecord'},
+ 'activity': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['archaeological_context_records.ActivityType']", 'null': 'True', 'blank': 'True'}),
+ 'auto_external_id': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
+ 'cached_label': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'closing_date': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'comment': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'datings': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['archaeological_context_records.Dating']", 'symmetrical': 'False'}),
+ 'datings_comment': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'depth': ('django.db.models.fields.FloatField', [], {'null': 'True', 'blank': 'True'}),
+ 'description': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'external_id': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'filling': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'has_furniture': ('django.db.models.fields.NullBooleanField', [], {'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'}),
+ 'identification': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['archaeological_context_records.IdentificationType']", 'null': 'True', 'blank': 'True'}),
+ 'image': ('django.db.models.fields.files.ImageField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'imports': ('django.db.models.fields.related.ManyToManyField', [], {'blank': 'True', 'related_name': "'imported_archaeological_context_records_contextrecord'", 'null': 'True', 'symmetrical': 'False', 'to': "orm['ishtar_common.Import']"}),
+ 'interpretation': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'label': ('django.db.models.fields.CharField', [], {'max_length': '200'}),
+ 'length': ('django.db.models.fields.FloatField', [], {'null': 'True', 'blank': 'True'}),
+ 'location': ('django.db.models.fields.CharField', [], {'max_length': '200', 'null': 'True', 'blank': 'True'}),
+ 'opening_date': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'operation': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'context_record'", 'to': "orm['archaeological_operations.Operation']"}),
+ 'parcel': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'context_record'", 'to': "orm['archaeological_operations.Parcel']"}),
+ 'point': ('django.contrib.gis.db.models.fields.PointField', [], {'dim': '3', 'null': 'True', 'blank': 'True'}),
+ 'polygon': ('django.contrib.gis.db.models.fields.PolygonField', [], {'null': 'True', 'blank': 'True'}),
+ 'related_context_records': ('django.db.models.fields.related.ManyToManyField', [], {'symmetrical': 'False', 'to': "orm['archaeological_context_records.ContextRecord']", 'null': 'True', 'through': "orm['archaeological_context_records.RecordRelations']", 'blank': 'True'}),
+ 'taq': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
+ 'taq_estimated': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
+ 'thickness': ('django.db.models.fields.FloatField', [], {'null': 'True', 'blank': 'True'}),
+ 'thumbnail': ('django.db.models.fields.files.ImageField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'tpq': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
+ 'tpq_estimated': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
+ 'unit': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'to': "orm['archaeological_context_records.Unit']"}),
+ 'width': ('django.db.models.fields.FloatField', [], {'null': 'True', 'blank': 'True'})
+ },
+ 'archaeological_context_records.dating': {
+ 'Meta': {'object_name': 'Dating'},
+ 'dating_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['archaeological_context_records.DatingType']", 'null': 'True', 'blank': 'True'}),
+ 'end_date': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'period': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['archaeological_operations.Period']"}),
+ 'precise_dating': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'quality': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['archaeological_context_records.DatingQuality']", 'null': 'True', 'blank': 'True'}),
+ 'start_date': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'})
+ },
+ 'archaeological_context_records.datingquality': {
+ 'Meta': {'ordering': "('label',)", 'object_name': 'DatingQuality'},
+ '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'})
+ },
+ 'archaeological_context_records.datingtype': {
+ 'Meta': {'ordering': "('label',)", 'object_name': 'DatingType'},
+ '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'})
+ },
+ 'archaeological_context_records.identificationtype': {
+ 'Meta': {'ordering': "('order', 'label')", 'object_name': 'IdentificationType'},
+ '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', [], {}),
+ 'txt_idx': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '100'})
+ },
+ 'archaeological_context_records.recordrelations': {
+ 'Meta': {'object_name': 'RecordRelations'},
+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'left_record': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'right_relations'", 'to': "orm['archaeological_context_records.ContextRecord']"}),
+ 'relation_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['archaeological_context_records.RelationType']"}),
+ 'right_record': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'left_relations'", 'to': "orm['archaeological_context_records.ContextRecord']"})
+ },
+ 'archaeological_context_records.relationtype': {
+ 'Meta': {'ordering': "('order', 'label')", 'object_name': 'RelationType'},
+ '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'}),
+ 'inverse_relation': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['archaeological_context_records.RelationType']", 'null': 'True', 'blank': 'True'}),
+ 'label': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
+ 'order': ('django.db.models.fields.IntegerField', [], {'default': '1'}),
+ 'symmetrical': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
+ 'tiny_label': ('django.db.models.fields.CharField', [], {'max_length': '50', 'null': 'True', 'blank': 'True'}),
+ 'txt_idx': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '100'})
+ },
+ 'archaeological_context_records.unit': {
+ 'Meta': {'ordering': "('order',)", 'object_name': 'Unit'},
+ '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', [], {}),
+ 'parent': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['archaeological_context_records.Unit']", 'null': 'True', 'blank': 'True'}),
+ 'txt_idx': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '100'})
+ },
+ 'archaeological_files.file': {
+ 'Meta': {'ordering': "('cached_label',)", 'object_name': 'File'},
+ 'address': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'auto_external_id': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
+ 'cached_label': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'cira_advised': ('django.db.models.fields.NullBooleanField', [], {'null': 'True', 'blank': 'True'}),
+ 'classified_area': ('django.db.models.fields.NullBooleanField', [], {'null': 'True', 'blank': 'True'}),
+ 'comment': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'corporation_general_contractor': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'general_contractor_files'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['ishtar_common.Organization']"}),
+ 'creation_date': ('django.db.models.fields.DateField', [], {'default': 'datetime.date.today', 'null': 'True', 'blank': 'True'}),
+ 'departments': ('django.db.models.fields.related.ManyToManyField', [], {'symmetrical': 'False', 'to': "orm['ishtar_common.Department']", 'null': 'True', 'blank': 'True'}),
+ 'end_date': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'external_id': ('django.db.models.fields.CharField', [], {'max_length': '120', 'null': 'True', 'blank': 'True'}),
+ 'file_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['archaeological_files.FileType']"}),
+ 'general_contractor': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'general_contractor_files'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['ishtar_common.Person']"}),
+ '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'}),
+ 'imported_line': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'imports': ('django.db.models.fields.related.ManyToManyField', [], {'blank': 'True', 'related_name': "'imported_archaeological_files_file'", 'null': 'True', 'symmetrical': 'False', 'to': "orm['ishtar_common.Import']"}),
+ 'in_charge': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'file_responsability'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['ishtar_common.Person']"}),
+ 'instruction_deadline': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'internal_reference': ('django.db.models.fields.CharField', [], {'max_length': '60', 'null': 'True', 'blank': 'True'}),
+ 'locality': ('django.db.models.fields.CharField', [], {'max_length': '100', 'null': 'True', 'blank': 'True'}),
+ 'main_town': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'file_main'", 'null': 'True', 'to': "orm['ishtar_common.Town']"}),
+ 'mh_listing': ('django.db.models.fields.NullBooleanField', [], {'null': 'True', 'blank': 'True'}),
+ 'mh_register': ('django.db.models.fields.NullBooleanField', [], {'null': 'True', 'blank': 'True'}),
+ 'name': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'numeric_reference': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
+ 'organization': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'files'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['ishtar_common.Organization']"}),
+ 'permit_reference': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'permit_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['archaeological_files.PermitType']", 'null': 'True', 'blank': 'True'}),
+ 'planning_service': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'planning_service_files'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['ishtar_common.Organization']"}),
+ 'postal_code': ('django.db.models.fields.CharField', [], {'max_length': '10', 'null': 'True', 'blank': 'True'}),
+ 'protected_area': ('django.db.models.fields.NullBooleanField', [], {'null': 'True', 'blank': 'True'}),
+ 'raw_general_contractor': ('django.db.models.fields.CharField', [], {'max_length': '200', 'null': 'True', 'blank': 'True'}),
+ 'raw_town_planning_service': ('django.db.models.fields.CharField', [], {'max_length': '200', 'null': 'True', 'blank': 'True'}),
+ 'reception_date': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'related_file': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['archaeological_files.File']", 'null': 'True', 'blank': 'True'}),
+ 'requested_operation_type': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'to': "orm['ishtar_common.OperationType']"}),
+ 'research_comment': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'responsible_town_planning_service': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'responsible_town_planning_service_files'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['ishtar_common.Person']"}),
+ 'saisine_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['archaeological_files.SaisineType']", 'null': 'True', 'blank': 'True'}),
+ 'scientist': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'scientist'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['ishtar_common.Person']"}),
+ 'total_developed_surface': ('django.db.models.fields.FloatField', [], {'null': 'True', 'blank': 'True'}),
+ 'total_surface': ('django.db.models.fields.FloatField', [], {'null': 'True', 'blank': 'True'}),
+ 'towns': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'file'", 'symmetrical': 'False', 'to': "orm['ishtar_common.Town']"}),
+ 'year': ('django.db.models.fields.IntegerField', [], {'default': '2017'})
+ },
+ 'archaeological_files.filetype': {
+ 'Meta': {'ordering': "('label',)", 'object_name': 'FileType'},
+ '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'})
+ },
+ 'archaeological_files.permittype': {
+ 'Meta': {'ordering': "('label',)", 'object_name': 'PermitType'},
+ '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'})
+ },
+ 'archaeological_files.saisinetype': {
+ 'Meta': {'ordering': "('label',)", 'object_name': 'SaisineType'},
+ 'available': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
+ 'comment': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'delay': ('django.db.models.fields.IntegerField', [], {'default': '30'}),
+ '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'})
+ },
+ 'archaeological_finds.basefind': {
+ 'Meta': {'object_name': 'BaseFind'},
+ 'auto_external_id': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
+ 'batch': ('django.db.models.fields.CharField', [], {'default': "'U'", 'max_length': '1'}),
+ 'cache_complete_id': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'cache_short_id': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'comment': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'context_record': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'base_finds'", 'to': "orm['archaeological_context_records.ContextRecord']"}),
+ 'description': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'discovery_date': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'estimated_error_x': ('django.db.models.fields.FloatField', [], {'null': 'True', 'blank': 'True'}),
+ 'estimated_error_y': ('django.db.models.fields.FloatField', [], {'null': 'True', 'blank': 'True'}),
+ 'estimated_error_z': ('django.db.models.fields.FloatField', [], {'null': 'True', 'blank': 'True'}),
+ 'external_id': ('django.db.models.fields.TextField', [], {'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_archaeological_finds_basefind'", 'null': 'True', 'symmetrical': 'False', 'to': "orm['ishtar_common.Import']"}),
+ 'index': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
+ 'label': ('django.db.models.fields.TextField', [], {}),
+ 'line': ('django.contrib.gis.db.models.fields.LineStringField', [], {'null': 'True', 'blank': 'True'}),
+ 'material_index': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
+ 'point': ('django.contrib.gis.db.models.fields.PointField', [], {'dim': '3', 'null': 'True', 'blank': 'True'}),
+ 'point_2d': ('django.contrib.gis.db.models.fields.PointField', [], {'null': 'True', 'blank': 'True'}),
+ 'polygon': ('django.contrib.gis.db.models.fields.PolygonField', [], {'null': 'True', 'blank': 'True'}),
+ 'spatial_reference_system': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['ishtar_common.SpatialReferenceSystem']", 'null': 'True', 'blank': 'True'}),
+ 'special_interest': ('django.db.models.fields.CharField', [], {'max_length': '120', 'null': 'True', 'blank': 'True'}),
+ 'topographic_localisation': ('django.db.models.fields.CharField', [], {'max_length': '120', 'null': 'True', 'blank': 'True'}),
+ 'x': ('django.db.models.fields.FloatField', [], {'null': 'True', 'blank': 'True'}),
+ 'y': ('django.db.models.fields.FloatField', [], {'null': 'True', 'blank': 'True'}),
+ 'z': ('django.db.models.fields.FloatField', [], {'null': 'True', 'blank': 'True'})
+ },
+ 'archaeological_finds.conservatorystate': {
+ 'Meta': {'ordering': "('label',)", 'object_name': 'ConservatoryState'},
+ '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'}),
+ 'parent': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['archaeological_finds.ConservatoryState']", 'null': 'True', 'blank': 'True'}),
+ 'txt_idx': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '100'})
+ },
+ 'archaeological_finds.find': {
+ 'Meta': {'ordering': "('cached_label',)", 'object_name': 'Find'},
+ 'auto_external_id': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
+ 'base_finds': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'find'", 'symmetrical': 'False', 'to': "orm['archaeological_finds.BaseFind']"}),
+ 'cached_label': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'check_date': ('django.db.models.fields.DateField', [], {'default': 'datetime.date.today'}),
+ 'checked': ('django.db.models.fields.CharField', [], {'default': "'NC'", 'max_length': '2'}),
+ 'collection': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'finds'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['archaeological_warehouse.Collection']"}),
+ 'comment': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'conservatory_comment': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'conservatory_state': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['archaeological_finds.ConservatoryState']", 'null': 'True', 'on_delete': 'models.SET_NULL', 'blank': 'True'}),
+ 'container': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'finds'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['archaeological_warehouse.Container']"}),
+ 'dating_comment': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'datings': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'find'", 'symmetrical': 'False', 'to': "orm['archaeological_context_records.Dating']"}),
+ 'description': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'diameter': ('django.db.models.fields.FloatField', [], {'null': 'True', 'blank': 'True'}),
+ 'dimensions_comment': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'downstream_treatment': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'upstream'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['archaeological_finds.Treatment']"}),
+ 'estimated_value': ('django.db.models.fields.FloatField', [], {'null': 'True', 'blank': 'True'}),
+ 'external_id': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'find_number': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
+ 'height': ('django.db.models.fields.FloatField', [], {'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'}),
+ 'image': ('django.db.models.fields.files.ImageField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'imports': ('django.db.models.fields.related.ManyToManyField', [], {'blank': 'True', 'related_name': "'imported_archaeological_finds_find'", 'null': 'True', 'symmetrical': 'False', 'to': "orm['ishtar_common.Import']"}),
+ 'index': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
+ 'integrities': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'find'", 'symmetrical': 'False', 'to': "orm['archaeological_finds.IntegrityType']"}),
+ 'is_complete': ('django.db.models.fields.NullBooleanField', [], {'null': 'True', 'blank': 'True'}),
+ 'label': ('django.db.models.fields.TextField', [], {}),
+ 'length': ('django.db.models.fields.FloatField', [], {'null': 'True', 'blank': 'True'}),
+ 'mark': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'material_types': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'finds'", 'symmetrical': 'False', 'to': "orm['archaeological_finds.MaterialType']"}),
+ 'min_number_of_individuals': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
+ 'object_types': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'find'", 'symmetrical': 'False', 'to': "orm['archaeological_finds.ObjectType']"}),
+ 'order': ('django.db.models.fields.IntegerField', [], {'default': '1'}),
+ 'preservation_to_considers': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'finds'", 'symmetrical': 'False', 'to': "orm['archaeological_finds.PreservationType']"}),
+ 'previous_id': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'remarkabilities': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'find'", 'symmetrical': 'False', 'to': "orm['archaeological_finds.RemarkabilityType']"}),
+ 'thickness': ('django.db.models.fields.FloatField', [], {'null': 'True', 'blank': 'True'}),
+ 'thumbnail': ('django.db.models.fields.files.ImageField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'upstream_treatment': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'downstream'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['archaeological_finds.Treatment']"}),
+ 'volume': ('django.db.models.fields.FloatField', [], {'null': 'True', 'blank': 'True'}),
+ 'weight': ('django.db.models.fields.FloatField', [], {'null': 'True', 'blank': 'True'}),
+ 'weight_unit': ('django.db.models.fields.CharField', [], {'max_length': '4', 'null': 'True', 'blank': 'True'}),
+ 'width': ('django.db.models.fields.FloatField', [], {'null': 'True', 'blank': 'True'})
+ },
+ 'archaeological_finds.findbasket': {
+ 'Meta': {'unique_together': "(('label', 'user'),)", 'object_name': 'FindBasket'},
+ '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'}),
+ 'items': ('django.db.models.fields.related.ManyToManyField', [], {'blank': 'True', 'related_name': "'basket'", 'null': 'True', 'symmetrical': 'False', 'to': "orm['archaeological_finds.Find']"}),
+ 'label': ('django.db.models.fields.CharField', [], {'max_length': '1000'}),
+ 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['ishtar_common.IshtarUser']", 'null': 'True', 'blank': 'True'})
+ },
+ 'archaeological_finds.finddownstreamtreatments': {
+ 'Meta': {'ordering': "('find', '-treatment_nb')", 'unique_together': "(('find', 'treatment'),)", 'object_name': 'FindDownstreamTreatments', 'db_table': "'find_downtreatments'", 'managed': 'False'},
+ 'find': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'finddownstreamtreatments_related'", 'to': "orm['archaeological_finds.Find']"}),
+ 'treatment': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['archaeological_finds.Treatment']", 'primary_key': 'True'}),
+ 'treatment_nb': ('django.db.models.fields.IntegerField', [], {})
+ },
+ 'archaeological_finds.findsource': {
+ 'Meta': {'object_name': 'FindSource'},
+ 'additional_information': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'associated_url': ('django.db.models.fields.URLField', [], {'max_length': '200', 'null': 'True', 'blank': 'True'}),
+ 'authors': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'findsource_related'", 'symmetrical': 'False', 'to': "orm['ishtar_common.Author']"}),
+ 'comment': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'creation_date': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'description': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'duplicate': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
+ 'external_id': ('django.db.models.fields.CharField', [], {'max_length': '12', 'null': 'True', 'blank': 'True'}),
+ 'find': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'source'", 'to': "orm['archaeological_finds.Find']"}),
+ 'format_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['ishtar_common.Format']", 'null': 'True', 'blank': 'True'}),
+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'image': ('django.db.models.fields.files.ImageField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'internal_reference': ('django.db.models.fields.CharField', [], {'max_length': '100', 'null': 'True', 'blank': 'True'}),
+ 'item_number': ('django.db.models.fields.IntegerField', [], {'default': '1'}),
+ 'receipt_date': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'receipt_date_in_documentation': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'reference': ('django.db.models.fields.CharField', [], {'max_length': '100', 'null': 'True', 'blank': 'True'}),
+ 'scale': ('django.db.models.fields.CharField', [], {'max_length': '30', 'null': 'True', 'blank': 'True'}),
+ 'source_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['ishtar_common.SourceType']"}),
+ 'support_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['ishtar_common.SupportType']", 'null': 'True', 'blank': 'True'}),
+ 'thumbnail': ('django.db.models.fields.files.ImageField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'})
+ },
+ 'archaeological_finds.findtreatments': {
+ 'Meta': {'ordering': "('find', 'upstream', '-treatment_nb')", 'unique_together': "(('find', 'treatment'),)", 'object_name': 'FindTreatments', 'db_table': "'find_treatments'", 'managed': 'False'},
+ 'find': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'findtreatments_related'", 'to': "orm['archaeological_finds.Find']"}),
+ 'treatment': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['archaeological_finds.Treatment']", 'primary_key': 'True'}),
+ 'treatment_nb': ('django.db.models.fields.IntegerField', [], {}),
+ 'upstream': ('django.db.models.fields.BooleanField', [], {'default': 'False'})
+ },
+ 'archaeological_finds.findupstreamtreatments': {
+ 'Meta': {'ordering': "('find', '-treatment_nb')", 'unique_together': "(('find', 'treatment'),)", 'object_name': 'FindUpstreamTreatments', 'db_table': "'find_uptreatments'", 'managed': 'False'},
+ 'find': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'findupstreamtreatments_related'", 'to': "orm['archaeological_finds.Find']"}),
+ 'treatment': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['archaeological_finds.Treatment']", 'primary_key': 'True'}),
+ 'treatment_nb': ('django.db.models.fields.IntegerField', [], {})
+ },
+ 'archaeological_finds.historicalbasefind': {
+ 'Meta': {'ordering': "('-history_date', '-history_id')", 'object_name': 'HistoricalBaseFind'},
+ 'auto_external_id': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
+ 'batch': ('django.db.models.fields.CharField', [], {'default': "'U'", 'max_length': '1'}),
+ 'cache_complete_id': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'cache_short_id': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'comment': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'context_record_id': ('django.db.models.fields.IntegerField', [], {'db_index': 'True', 'null': 'True', 'blank': 'True'}),
+ 'description': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'discovery_date': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'estimated_error_x': ('django.db.models.fields.FloatField', [], {'null': 'True', 'blank': 'True'}),
+ 'estimated_error_y': ('django.db.models.fields.FloatField', [], {'null': 'True', 'blank': 'True'}),
+ 'estimated_error_z': ('django.db.models.fields.FloatField', [], {'null': 'True', 'blank': 'True'}),
+ 'external_id': ('django.db.models.fields.TextField', [], {'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'}),
+ 'index': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
+ 'label': ('django.db.models.fields.TextField', [], {}),
+ 'line': ('django.contrib.gis.db.models.fields.LineStringField', [], {'null': 'True', 'blank': 'True'}),
+ 'material_index': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
+ 'point': ('django.contrib.gis.db.models.fields.PointField', [], {'dim': '3', 'null': 'True', 'blank': 'True'}),
+ 'point_2d': ('django.contrib.gis.db.models.fields.PointField', [], {'null': 'True', 'blank': 'True'}),
+ 'polygon': ('django.contrib.gis.db.models.fields.PolygonField', [], {'null': 'True', 'blank': 'True'}),
+ 'spatial_reference_system_id': ('django.db.models.fields.IntegerField', [], {'db_index': 'True', 'null': 'True', 'blank': 'True'}),
+ 'special_interest': ('django.db.models.fields.CharField', [], {'max_length': '120', 'null': 'True', 'blank': 'True'}),
+ 'topographic_localisation': ('django.db.models.fields.CharField', [], {'max_length': '120', 'null': 'True', 'blank': 'True'}),
+ 'x': ('django.db.models.fields.FloatField', [], {'null': 'True', 'blank': 'True'}),
+ 'y': ('django.db.models.fields.FloatField', [], {'null': 'True', 'blank': 'True'}),
+ 'z': ('django.db.models.fields.FloatField', [], {'null': 'True', 'blank': 'True'})
+ },
+ 'archaeological_finds.historicalfind': {
+ 'Meta': {'ordering': "('-history_date', '-history_id')", 'object_name': 'HistoricalFind'},
+ 'auto_external_id': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
+ 'cached_label': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'check_date': ('django.db.models.fields.DateField', [], {'default': 'datetime.date.today'}),
+ 'checked': ('django.db.models.fields.CharField', [], {'default': "'NC'", 'max_length': '2'}),
+ 'collection_id': ('django.db.models.fields.IntegerField', [], {'db_index': 'True', 'null': 'True', 'blank': 'True'}),
+ 'comment': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'conservatory_comment': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'conservatory_state_id': ('django.db.models.fields.IntegerField', [], {'db_index': 'True', 'null': 'True', 'blank': 'True'}),
+ 'container_id': ('django.db.models.fields.IntegerField', [], {'db_index': 'True', 'null': 'True', 'blank': 'True'}),
+ 'dating_comment': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'description': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'diameter': ('django.db.models.fields.FloatField', [], {'null': 'True', 'blank': 'True'}),
+ 'dimensions_comment': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'downstream_treatment_id': ('django.db.models.fields.IntegerField', [], {'db_index': 'True', 'null': 'True', 'blank': 'True'}),
+ 'estimated_value': ('django.db.models.fields.FloatField', [], {'null': 'True', 'blank': 'True'}),
+ 'external_id': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'find_number': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
+ 'height': ('django.db.models.fields.FloatField', [], {'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'}),
+ 'image': ('django.db.models.fields.files.ImageField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'index': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
+ 'is_complete': ('django.db.models.fields.NullBooleanField', [], {'null': 'True', 'blank': 'True'}),
+ 'label': ('django.db.models.fields.TextField', [], {}),
+ 'length': ('django.db.models.fields.FloatField', [], {'null': 'True', 'blank': 'True'}),
+ 'mark': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'min_number_of_individuals': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
+ 'order': ('django.db.models.fields.IntegerField', [], {'default': '1'}),
+ 'previous_id': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'thickness': ('django.db.models.fields.FloatField', [], {'null': 'True', 'blank': 'True'}),
+ 'thumbnail': ('django.db.models.fields.files.ImageField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'upstream_treatment_id': ('django.db.models.fields.IntegerField', [], {'db_index': 'True', 'null': 'True', 'blank': 'True'}),
+ 'volume': ('django.db.models.fields.FloatField', [], {'null': 'True', 'blank': 'True'}),
+ 'weight': ('django.db.models.fields.FloatField', [], {'null': 'True', 'blank': 'True'}),
+ 'weight_unit': ('django.db.models.fields.CharField', [], {'max_length': '4', 'null': 'True', 'blank': 'True'}),
+ 'width': ('django.db.models.fields.FloatField', [], {'null': 'True', 'blank': 'True'})
+ },
+ 'archaeological_finds.historicaltreatment': {
+ 'Meta': {'ordering': "('-history_date', '-history_id')", 'object_name': 'HistoricalTreatment'},
+ 'cached_label': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'comment': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'container_id': ('django.db.models.fields.IntegerField', [], {'db_index': 'True', 'null': 'True', 'blank': 'True'}),
+ 'description': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'end_date': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'estimated_cost': ('django.db.models.fields.FloatField', [], {'null': 'True', 'blank': 'True'}),
+ 'external_id': ('django.db.models.fields.CharField', [], {'max_length': '200', 'null': 'True', 'blank': 'True'}),
+ 'file_id': ('django.db.models.fields.IntegerField', [], {'db_index': 'True', 'null': 'True', 'blank': 'True'}),
+ 'goal': ('django.db.models.fields.TextField', [], {'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'}),
+ 'image': ('django.db.models.fields.files.ImageField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'index': ('django.db.models.fields.IntegerField', [], {'default': '1'}),
+ 'insurance_cost': ('django.db.models.fields.FloatField', [], {'null': 'True', 'blank': 'True'}),
+ 'label': ('django.db.models.fields.CharField', [], {'max_length': '200', 'null': 'True', 'blank': 'True'}),
+ 'location_id': ('django.db.models.fields.IntegerField', [], {'db_index': 'True', 'null': 'True', 'blank': 'True'}),
+ 'organization_id': ('django.db.models.fields.IntegerField', [], {'db_index': 'True', 'null': 'True', 'blank': 'True'}),
+ 'other_reference': ('django.db.models.fields.CharField', [], {'max_length': '200', 'null': 'True', 'blank': 'True'}),
+ 'person_id': ('django.db.models.fields.IntegerField', [], {'db_index': 'True', 'null': 'True', 'blank': 'True'}),
+ 'quoted_cost': ('django.db.models.fields.FloatField', [], {'null': 'True', 'blank': 'True'}),
+ 'realized_cost': ('django.db.models.fields.FloatField', [], {'null': 'True', 'blank': 'True'}),
+ 'start_date': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'target_is_basket': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
+ 'thumbnail': ('django.db.models.fields.files.ImageField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'treatment_state_id': ('django.db.models.fields.IntegerField', [], {'db_index': 'True', 'null': 'True', 'blank': 'True'}),
+ 'year': ('django.db.models.fields.IntegerField', [], {'default': '2017'})
+ },
+ 'archaeological_finds.historicaltreatmentfile': {
+ 'Meta': {'ordering': "('-history_date', '-history_id')", 'object_name': 'HistoricalTreatmentFile'},
+ 'applicant_id': ('django.db.models.fields.IntegerField', [], {'db_index': 'True', 'null': 'True', 'blank': 'True'}),
+ 'applicant_organisation_id': ('django.db.models.fields.IntegerField', [], {'db_index': 'True', 'null': 'True', 'blank': 'True'}),
+ 'cached_label': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'comment': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'creation_date': ('django.db.models.fields.DateField', [], {'default': 'datetime.date.today', 'null': 'True', 'blank': 'True'}),
+ 'end_date': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'external_id': ('django.db.models.fields.CharField', [], {'max_length': '200', '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'}),
+ 'in_charge_id': ('django.db.models.fields.IntegerField', [], {'db_index': 'True', 'null': 'True', 'blank': 'True'}),
+ 'index': ('django.db.models.fields.IntegerField', [], {'default': '1'}),
+ 'internal_reference': ('django.db.models.fields.CharField', [], {'max_length': '200', 'null': 'True', 'blank': 'True'}),
+ 'name': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'reception_date': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'type_id': ('django.db.models.fields.IntegerField', [], {'db_index': 'True', 'null': 'True', 'blank': 'True'}),
+ 'year': ('django.db.models.fields.IntegerField', [], {'default': '2017'})
+ },
+ 'archaeological_finds.integritytype': {
+ 'Meta': {'ordering': "('label',)", 'object_name': 'IntegrityType'},
+ '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'})
+ },
+ 'archaeological_finds.materialtype': {
+ 'Meta': {'ordering': "('label',)", 'object_name': 'MaterialType'},
+ 'available': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
+ 'code': ('django.db.models.fields.CharField', [], {'max_length': '10', 'null': 'True', 'blank': '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'}),
+ 'parent': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['archaeological_finds.MaterialType']", 'null': 'True', 'blank': 'True'}),
+ 'recommendation': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'txt_idx': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '100'})
+ },
+ 'archaeological_finds.objecttype': {
+ 'Meta': {'ordering': "('parent__label', 'label')", 'object_name': 'ObjectType'},
+ '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'}),
+ 'parent': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['archaeological_finds.ObjectType']", 'null': 'True', 'blank': 'True'}),
+ 'txt_idx': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '100'})
+ },
+ 'archaeological_finds.preservationtype': {
+ 'Meta': {'ordering': "('label',)", 'object_name': 'PreservationType'},
+ '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'})
+ },
+ 'archaeological_finds.property': {
+ 'Meta': {'object_name': 'Property'},
+ 'administrative_act': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['archaeological_operations.AdministrativeAct']"}),
+ 'end_date': ('django.db.models.fields.DateField', [], {}),
+ 'find': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['archaeological_finds.Find']"}),
+ 'history_creator': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['auth.User']"}),
+ 'history_date': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
+ '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_archaeological_finds_property'", 'null': 'True', 'symmetrical': 'False', 'to': "orm['ishtar_common.Import']"}),
+ 'person': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'properties'", 'to': "orm['ishtar_common.Person']"}),
+ 'start_date': ('django.db.models.fields.DateField', [], {})
+ },
+ 'archaeological_finds.remarkabilitytype': {
+ 'Meta': {'ordering': "('label',)", 'object_name': 'RemarkabilityType'},
+ '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'})
+ },
+ 'archaeological_finds.treatment': {
+ 'Meta': {'unique_together': "(('year', 'index'),)", 'object_name': 'Treatment'},
+ 'cached_label': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'comment': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'container': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['archaeological_warehouse.Container']", 'null': 'True', 'blank': 'True'}),
+ 'description': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'end_date': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'estimated_cost': ('django.db.models.fields.FloatField', [], {'null': 'True', 'blank': 'True'}),
+ 'external_id': ('django.db.models.fields.CharField', [], {'max_length': '200', 'null': 'True', 'blank': 'True'}),
+ 'file': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'treatments'", 'null': 'True', 'to': "orm['archaeological_finds.TreatmentFile']"}),
+ 'goal': ('django.db.models.fields.TextField', [], {'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'}),
+ 'image': ('django.db.models.fields.files.ImageField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'imports': ('django.db.models.fields.related.ManyToManyField', [], {'blank': 'True', 'related_name': "'imported_archaeological_finds_treatment'", 'null': 'True', 'symmetrical': 'False', 'to': "orm['ishtar_common.Import']"}),
+ 'index': ('django.db.models.fields.IntegerField', [], {'default': '1'}),
+ 'insurance_cost': ('django.db.models.fields.FloatField', [], {'null': 'True', 'blank': 'True'}),
+ 'label': ('django.db.models.fields.CharField', [], {'max_length': '200', 'null': 'True', 'blank': 'True'}),
+ 'location': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['archaeological_warehouse.Warehouse']", 'null': 'True', 'blank': 'True'}),
+ 'organization': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'treatments'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['ishtar_common.Organization']"}),
+ 'other_reference': ('django.db.models.fields.CharField', [], {'max_length': '200', 'null': 'True', 'blank': 'True'}),
+ 'person': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'treatments'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['ishtar_common.Person']"}),
+ 'quoted_cost': ('django.db.models.fields.FloatField', [], {'null': 'True', 'blank': 'True'}),
+ 'realized_cost': ('django.db.models.fields.FloatField', [], {'null': 'True', 'blank': 'True'}),
+ 'start_date': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'target_is_basket': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
+ 'thumbnail': ('django.db.models.fields.files.ImageField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'treatment_state': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['archaeological_finds.TreatmentState']", 'null': 'True', 'blank': 'True'}),
+ 'treatment_types': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['archaeological_finds.TreatmentType']", 'symmetrical': 'False'}),
+ 'year': ('django.db.models.fields.IntegerField', [], {'default': '2017'})
+ },
+ 'archaeological_finds.treatmentfile': {
+ 'Meta': {'ordering': "('cached_label',)", 'unique_together': "(('year', 'index'),)", 'object_name': 'TreatmentFile'},
+ 'applicant': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'treatmentfile_applicant'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['ishtar_common.Person']"}),
+ 'applicant_organisation': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'treatmentfile_applicant'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['ishtar_common.Organization']"}),
+ 'cached_label': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'comment': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'creation_date': ('django.db.models.fields.DateField', [], {'default': 'datetime.date.today', 'null': 'True', 'blank': 'True'}),
+ 'end_date': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'external_id': ('django.db.models.fields.CharField', [], {'max_length': '200', '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_archaeological_finds_treatmentfile'", 'null': 'True', 'symmetrical': 'False', 'to': "orm['ishtar_common.Import']"}),
+ 'in_charge': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'treatmentfile_responsability'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['ishtar_common.Person']"}),
+ 'index': ('django.db.models.fields.IntegerField', [], {'default': '1'}),
+ 'internal_reference': ('django.db.models.fields.CharField', [], {'max_length': '200', 'null': 'True', 'blank': 'True'}),
+ 'name': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'reception_date': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['archaeological_finds.TreatmentFileType']"}),
+ 'year': ('django.db.models.fields.IntegerField', [], {'default': '2017'})
+ },
+ 'archaeological_finds.treatmentfilesource': {
+ 'Meta': {'object_name': 'TreatmentFileSource'},
+ 'additional_information': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'associated_url': ('django.db.models.fields.URLField', [], {'max_length': '200', 'null': 'True', 'blank': 'True'}),
+ 'authors': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'treatmentfilesource_related'", 'symmetrical': 'False', 'to': "orm['ishtar_common.Author']"}),
+ 'comment': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'creation_date': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'description': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'duplicate': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
+ 'external_id': ('django.db.models.fields.CharField', [], {'max_length': '12', 'null': 'True', 'blank': 'True'}),
+ 'format_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['ishtar_common.Format']", 'null': 'True', 'blank': 'True'}),
+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'image': ('django.db.models.fields.files.ImageField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'internal_reference': ('django.db.models.fields.CharField', [], {'max_length': '100', 'null': 'True', 'blank': 'True'}),
+ 'item_number': ('django.db.models.fields.IntegerField', [], {'default': '1'}),
+ 'receipt_date': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'receipt_date_in_documentation': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'reference': ('django.db.models.fields.CharField', [], {'max_length': '100', 'null': 'True', 'blank': 'True'}),
+ 'scale': ('django.db.models.fields.CharField', [], {'max_length': '30', 'null': 'True', 'blank': 'True'}),
+ 'source_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['ishtar_common.SourceType']"}),
+ 'support_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['ishtar_common.SupportType']", 'null': 'True', 'blank': 'True'}),
+ 'thumbnail': ('django.db.models.fields.files.ImageField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}),
+ 'treatment_file': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'source'", 'to': "orm['archaeological_finds.TreatmentFile']"})
+ },
+ 'archaeological_finds.treatmentfiletype': {
+ 'Meta': {'ordering': "('label',)", 'object_name': 'TreatmentFileType'},
+ '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'})
+ },
+ 'archaeological_finds.treatmentsource': {
+ 'Meta': {'object_name': 'TreatmentSource'},
+ 'additional_information': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'associated_url': ('django.db.models.fields.URLField', [], {'max_length': '200', 'null': 'True', 'blank': 'True'}),
+ 'authors': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'treatmentsource_related'", 'symmetrical': 'False', 'to': "orm['ishtar_common.Author']"}),
+ 'comment': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'creation_date': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'description': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'duplicate': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
+ 'external_id': ('django.db.models.fields.CharField', [], {'max_length': '12', 'null': 'True', 'blank': 'True'}),
+ 'format_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['ishtar_common.Format']", 'null': 'True', 'blank': 'True'}),
+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'image': ('django.db.models.fields.files.ImageField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'internal_reference': ('django.db.models.fields.CharField', [], {'max_length': '100', 'null': 'True', 'blank': 'True'}),
+ 'item_number': ('django.db.models.fields.IntegerField', [], {'default': '1'}),
+ 'receipt_date': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'receipt_date_in_documentation': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'reference': ('django.db.models.fields.CharField', [], {'max_length': '100', 'null': 'True', 'blank': 'True'}),
+ 'scale': ('django.db.models.fields.CharField', [], {'max_length': '30', 'null': 'True', 'blank': 'True'}),
+ 'source_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['ishtar_common.SourceType']"}),
+ 'support_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['ishtar_common.SupportType']", 'null': 'True', 'blank': 'True'}),
+ 'thumbnail': ('django.db.models.fields.files.ImageField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}),
+ 'treatment': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'source'", 'to': "orm['archaeological_finds.Treatment']"})
+ },
+ 'archaeological_finds.treatmentstate': {
+ 'Meta': {'ordering': "('label',)", 'object_name': 'TreatmentState'},
+ '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'})
+ },
+ 'archaeological_finds.treatmenttype': {
+ 'Meta': {'ordering': "('label',)", 'object_name': 'TreatmentType'},
+ 'available': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
+ 'comment': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'downstream_is_many': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
+ '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'}),
+ 'parent': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['archaeological_finds.TreatmentType']", 'null': 'True', 'blank': 'True'}),
+ 'txt_idx': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '100'}),
+ 'upstream_is_many': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
+ 'virtual': ('django.db.models.fields.BooleanField', [], {'default': 'False'})
+ },
+ 'archaeological_operations.acttype': {
+ 'Meta': {'ordering': "('label',)", 'object_name': 'ActType'},
+ 'associated_template': ('django.db.models.fields.related.ManyToManyField', [], {'blank': 'True', 'related_name': "'acttypes'", 'null': 'True', 'symmetrical': 'False', 'to': "orm['ishtar_common.DocumentTemplate']"}),
+ 'available': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
+ 'code': ('django.db.models.fields.CharField', [], {'max_length': '10', 'null': 'True', 'blank': 'True'}),
+ 'comment': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'indexed': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
+ 'intented_to': ('django.db.models.fields.CharField', [], {'max_length': '2'}),
+ 'label': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
+ 'txt_idx': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '100'})
+ },
+ 'archaeological_operations.administrativeact': {
+ 'Meta': {'ordering': "('year', 'signature_date', 'index', 'act_type')", 'object_name': 'AdministrativeAct'},
+ 'act_object': ('django.db.models.fields.TextField', [], {'max_length': '300', 'null': 'True', 'blank': 'True'}),
+ 'act_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['archaeological_operations.ActType']"}),
+ 'associated_file': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'administrative_act'", 'null': 'True', 'to': "orm['archaeological_files.File']"}),
+ 'departments_label': ('django.db.models.fields.TextField', [], {'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_archaeological_operations_administrativeact'", 'null': 'True', 'symmetrical': 'False', 'to': "orm['ishtar_common.Import']"}),
+ 'in_charge': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'adminact_operation_in_charge'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['ishtar_common.Person']"}),
+ 'index': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
+ 'operation': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'administrative_act'", 'null': 'True', 'to': "orm['archaeological_operations.Operation']"}),
+ 'operator': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'adminact_operator'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['ishtar_common.Organization']"}),
+ 'ref_sra': ('django.db.models.fields.CharField', [], {'max_length': '15', 'null': 'True', 'blank': 'True'}),
+ 'scientist': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'adminact_scientist'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['ishtar_common.Person']"}),
+ 'signatory': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'signatory'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['ishtar_common.Person']"}),
+ 'signature_date': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'towns_label': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'treatment': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'administrative_act'", 'null': 'True', 'to': "orm['archaeological_finds.Treatment']"}),
+ 'treatment_file': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'administrative_act'", 'null': 'True', 'to': "orm['archaeological_finds.TreatmentFile']"}),
+ 'year': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'})
+ },
+ 'archaeological_operations.archaeologicalsite': {
+ 'Meta': {'object_name': 'ArchaeologicalSite'},
+ '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_archaeological_operations_archaeologicalsite'", 'null': 'True', 'symmetrical': 'False', 'to': "orm['ishtar_common.Import']"}),
+ 'name': ('django.db.models.fields.CharField', [], {'max_length': '200', 'null': 'True', 'blank': 'True'}),
+ 'periods': ('django.db.models.fields.related.ManyToManyField', [], {'symmetrical': 'False', 'to': "orm['archaeological_operations.Period']", 'null': 'True', 'blank': 'True'}),
+ 'reference': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '20'}),
+ 'remains': ('django.db.models.fields.related.ManyToManyField', [], {'symmetrical': 'False', 'to': "orm['archaeological_operations.RemainType']", 'null': 'True', 'blank': 'True'})
+ },
+ 'archaeological_operations.operation': {
+ 'Meta': {'ordering': "('cached_label',)", 'object_name': 'Operation'},
+ 'abstract': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'archaeological_sites': ('django.db.models.fields.related.ManyToManyField', [], {'symmetrical': 'False', 'to': "orm['archaeological_operations.ArchaeologicalSite']", 'null': 'True', 'blank': 'True'}),
+ 'associated_file': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'operations'", 'null': 'True', 'to': "orm['archaeological_files.File']"}),
+ 'cached_label': ('django.db.models.fields.CharField', [], {'max_length': '500', 'null': 'True', 'blank': 'True'}),
+ 'cira_date': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'cira_rapporteur': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'cira_rapporteur'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['ishtar_common.Person']"}),
+ 'code_patriarche': ('django.db.models.fields.IntegerField', [], {'unique': 'True', 'null': 'True', 'blank': 'True'}),
+ 'comment': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'common_name': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'cost': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
+ 'creation_date': ('django.db.models.fields.DateField', [], {'default': 'datetime.date.today'}),
+ 'documentation_deadline': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'documentation_received': ('django.db.models.fields.NullBooleanField', [], {'null': 'True', 'blank': 'True'}),
+ 'eas_number': ('django.db.models.fields.CharField', [], {'max_length': '20', 'null': 'True', 'blank': 'True'}),
+ 'effective_man_days': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
+ 'end_date': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'excavation_end_date': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'finds_deadline': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'finds_received': ('django.db.models.fields.NullBooleanField', [], {'null': 'True', 'blank': 'True'}),
+ 'fnap_cost': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
+ 'fnap_financing': ('django.db.models.fields.FloatField', [], {'null': 'True', 'blank': 'True'}),
+ 'geoarchaeological_context_prescription': ('django.db.models.fields.NullBooleanField', [], {'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'}),
+ 'image': ('django.db.models.fields.files.ImageField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'imports': ('django.db.models.fields.related.ManyToManyField', [], {'blank': 'True', 'related_name': "'imported_archaeological_operations_operation'", 'null': 'True', 'symmetrical': 'False', 'to': "orm['ishtar_common.Import']"}),
+ 'in_charge': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'operation_responsability'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['ishtar_common.Person']"}),
+ 'large_area_prescription': ('django.db.models.fields.NullBooleanField', [], {'null': 'True', 'blank': 'True'}),
+ 'multi_polygon': ('django.contrib.gis.db.models.fields.MultiPolygonField', [], {'null': 'True', 'blank': 'True'}),
+ 'negative_result': ('django.db.models.fields.NullBooleanField', [], {'null': 'True', 'blank': 'True'}),
+ 'old_code': ('django.db.models.fields.CharField', [], {'max_length': '200', 'null': 'True', 'blank': 'True'}),
+ 'operation_code': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
+ 'operation_type': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'to': "orm['ishtar_common.OperationType']"}),
+ 'operator': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'operator'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['ishtar_common.Organization']"}),
+ 'operator_reference': ('django.db.models.fields.CharField', [], {'max_length': '20', 'null': 'True', 'blank': 'True'}),
+ 'optional_man_days': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
+ 'periods': ('django.db.models.fields.related.ManyToManyField', [], {'symmetrical': 'False', 'to': "orm['archaeological_operations.Period']", 'null': 'True', 'blank': 'True'}),
+ 'point': ('django.contrib.gis.db.models.fields.PointField', [], {'null': 'True', 'blank': 'True'}),
+ 'record_quality': ('django.db.models.fields.CharField', [], {'max_length': '2', 'null': 'True', 'blank': 'True'}),
+ 'remains': ('django.db.models.fields.related.ManyToManyField', [], {'symmetrical': 'False', 'to': "orm['archaeological_operations.RemainType']", 'null': 'True', 'blank': 'True'}),
+ 'report_delivery_date': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'report_processing': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['archaeological_operations.ReportState']", 'null': 'True', 'blank': 'True'}),
+ 'scheduled_man_days': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
+ 'scientific_documentation_comment': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'scientist': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'operation_scientist_responsability'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['ishtar_common.Person']"}),
+ 'start_date': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'surface': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
+ 'thumbnail': ('django.db.models.fields.files.ImageField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'towns': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'operations'", 'symmetrical': 'False', 'to': "orm['ishtar_common.Town']"}),
+ 'virtual_operation': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
+ 'year': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
+ 'zoning_prescription': ('django.db.models.fields.NullBooleanField', [], {'null': 'True', 'blank': 'True'})
+ },
+ 'archaeological_operations.parcel': {
+ 'Meta': {'ordering': "('year', 'section', 'parcel_number')", 'object_name': 'Parcel'},
+ 'address': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'associated_file': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'parcels'", 'null': 'True', 'to': "orm['archaeological_files.File']"}),
+ 'auto_external_id': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
+ 'external_id': ('django.db.models.fields.CharField', [], {'max_length': '100', '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_date': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
+ '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_archaeological_operations_parcel'", 'null': 'True', 'symmetrical': 'False', 'to': "orm['ishtar_common.Import']"}),
+ 'operation': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'parcels'", 'null': 'True', 'to': "orm['archaeological_operations.Operation']"}),
+ 'parcel_number': ('django.db.models.fields.CharField', [], {'max_length': '6', 'null': 'True', 'blank': 'True'}),
+ 'public_domain': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
+ 'section': ('django.db.models.fields.CharField', [], {'max_length': '4', 'null': 'True', 'blank': 'True'}),
+ 'town': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'parcels'", 'to': "orm['ishtar_common.Town']"}),
+ 'year': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'})
+ },
+ 'archaeological_operations.period': {
+ 'Meta': {'ordering': "('order',)", 'object_name': 'Period'},
+ 'available': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
+ 'comment': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'end_date': ('django.db.models.fields.IntegerField', [], {}),
+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'label': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
+ 'order': ('django.db.models.fields.IntegerField', [], {}),
+ 'parent': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['archaeological_operations.Period']", 'null': 'True', 'blank': 'True'}),
+ 'start_date': ('django.db.models.fields.IntegerField', [], {}),
+ 'txt_idx': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '100'})
+ },
+ 'archaeological_operations.remaintype': {
+ 'Meta': {'ordering': "('label',)", 'object_name': 'RemainType'},
+ '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'})
+ },
+ 'archaeological_operations.reportstate': {
+ 'Meta': {'ordering': "('order',)", 'object_name': 'ReportState'},
+ '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', [], {}),
+ 'txt_idx': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '100'})
+ },
+ 'archaeological_warehouse.collection': {
+ 'Meta': {'ordering': "('name',)", 'object_name': 'Collection'},
+ 'description': ('django.db.models.fields.TextField', [], {'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_date': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
+ '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_archaeological_warehouse_collection'", 'null': 'True', 'symmetrical': 'False', 'to': "orm['ishtar_common.Import']"}),
+ 'name': ('django.db.models.fields.CharField', [], {'max_length': '200', 'null': 'True', 'blank': 'True'}),
+ 'warehouse': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'collections'", 'to': "orm['archaeological_warehouse.Warehouse']"})
+ },
+ 'archaeological_warehouse.container': {
+ 'Meta': {'ordering': "('cached_label',)", 'unique_together': "(('index', 'location'),)", 'object_name': 'Container'},
+ 'cached_label': ('django.db.models.fields.CharField', [], {'max_length': '500', 'null': 'True', 'blank': 'True'}),
+ 'cached_location': ('django.db.models.fields.CharField', [], {'max_length': '500', 'null': 'True', 'blank': 'True'}),
+ 'comment': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'container_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['archaeological_warehouse.ContainerType']"}),
+ 'history_creator': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['auth.User']"}),
+ 'history_date': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
+ '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_archaeological_warehouse_container'", 'null': 'True', 'symmetrical': 'False', 'to': "orm['ishtar_common.Import']"}),
+ 'index': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
+ 'location': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'containers'", 'to': "orm['archaeological_warehouse.Warehouse']"}),
+ 'reference': ('django.db.models.fields.CharField', [], {'max_length': '40'}),
+ 'responsible': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'owned_containers'", 'to': "orm['archaeological_warehouse.Warehouse']"})
+ },
+ 'archaeological_warehouse.containertype': {
+ 'Meta': {'ordering': "('label',)", 'object_name': 'ContainerType'},
+ 'available': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
+ 'comment': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'height': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'label': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
+ 'length': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
+ 'reference': ('django.db.models.fields.CharField', [], {'max_length': '30'}),
+ 'txt_idx': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '100'}),
+ 'volume': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
+ 'width': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'})
+ },
+ 'archaeological_warehouse.warehouse': {
+ 'Meta': {'object_name': 'Warehouse'},
+ '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'}),
+ 'associated_divisions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['archaeological_warehouse.WarehouseDivision']", 'symmetrical': 'False', 'through': "orm['archaeological_warehouse.WarehouseDivisionLink']", 'blank': 'True'}),
+ 'comment': ('django.db.models.fields.TextField', [], {'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_archaeological_warehouse_warehouse'", 'null': 'True', 'symmetrical': 'False', 'to': "orm['ishtar_common.Import']"}),
+ 'mobile_phone': ('django.db.models.fields.CharField', [], {'max_length': '18', 'null': 'True', 'blank': 'True'}),
+ 'name': ('django.db.models.fields.CharField', [], {'max_length': '200'}),
+ 'person_in_charge': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'warehouse_in_charge'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['ishtar_common.Person']"}),
+ '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'}),
+ 'warehouse_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['archaeological_warehouse.WarehouseType']"})
+ },
+ 'archaeological_warehouse.warehousedivision': {
+ 'Meta': {'object_name': 'WarehouseDivision'},
+ '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'})
+ },
+ 'archaeological_warehouse.warehousedivisionlink': {
+ 'Meta': {'ordering': "('warehouse', 'order')", 'unique_together': "(('warehouse', 'division'),)", 'object_name': 'WarehouseDivisionLink'},
+ 'division': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['archaeological_warehouse.WarehouseDivision']"}),
+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'order': ('django.db.models.fields.IntegerField', [], {'default': '10'}),
+ 'warehouse': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['archaeological_warehouse.Warehouse']"})
+ },
+ 'archaeological_warehouse.warehousetype': {
+ 'Meta': {'ordering': "('label',)", 'object_name': 'WarehouseType'},
+ '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'})
+ },
+ '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', [], {'related_name': "'author'", 'to': "orm['ishtar_common.Person']"})
+ },
+ 'ishtar_common.authortype': {
+ 'Meta': {'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'}),
+ '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': {'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.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': '100', 'null': 'True', 'blank': 'True'}),
+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'imported_file': ('django.db.models.fields.files.FileField', [], {'max_length': '100'}),
+ 'imported_images': ('django.db.models.fields.files.FileField', [], {'max_length': '100', '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': '100', 'null': 'True', 'blank': 'True'}),
+ 'result_file': ('django.db.models.fields.files.FileField', [], {'max_length': '100', '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.importertype': {
+ 'Meta': {'object_name': 'ImporterType'},
+ 'associated_models': ('django.db.models.fields.CharField', [], {'max_length': '200'}),
+ '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.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.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.sourcetype': {
+ 'Meta': {'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'},
+ '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.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 = ['archaeological_finds']
diff --git a/archaeological_finds/models_finds.py b/archaeological_finds/models_finds.py
index e29669773..93bed4ab3 100644
--- a/archaeological_finds/models_finds.py
+++ b/archaeological_finds/models_finds.py
@@ -26,7 +26,7 @@ from django.db.models import Max, Q
from django.db.models.signals import m2m_changed, post_save, post_delete
from django.utils.translation import ugettext_lazy as _, ugettext
-from ishtar_common.utils import cached_label_changed
+from ishtar_common.utils import cached_label_changed, post_save_point
from ishtar_common.models import GeneralType, ImageModel, BaseHistorizedItem, \
ShortMenuItem, LightHistorizedItem, HistoricalRecords, OwnPerms, Source, \
@@ -35,7 +35,7 @@ from ishtar_common.models import GeneralType, ImageModel, BaseHistorizedItem, \
from archaeological_operations.models import AdministrativeAct
from archaeological_context_records.models import ContextRecord, Dating
-from ishtar_common.models import PRIVATE_FIELDS
+from ishtar_common.models import PRIVATE_FIELDS, SpatialReferenceSystem
from archaeological_warehouse.models import Container, Collection
@@ -130,8 +130,6 @@ class BaseFind(BaseHistorizedItem, OwnPerms):
_(u"External ID is set automatically"), default=False)
description = models.TextField(_(u"Description"), blank=True, null=True)
comment = models.TextField(_(u"Comment"), blank=True, null=True)
- topographic_localisation = models.CharField(
- _(u"Topographic localisation"), blank=True, null=True, max_length=120)
special_interest = models.CharField(_(u"Special interest"), blank=True,
null=True, max_length=120)
context_record = models.ForeignKey(
@@ -143,6 +141,22 @@ class BaseFind(BaseHistorizedItem, OwnPerms):
choices=IS_ISOLATED_CHOICES)
index = models.IntegerField(u"Index", default=0)
material_index = models.IntegerField(_(u"Material index"), default=0)
+ topographic_localisation = models.CharField(
+ _(u"Point of topographic reference"), blank=True, null=True,
+ max_length=120)
+ x = models.FloatField(_(u'X'), blank=True, null=True)
+ y = models.FloatField(_(u'Y'), blank=True, null=True)
+ z = models.FloatField(_(u'Z'), blank=True, null=True)
+ estimated_error_x = models.FloatField(_(u'Estimated error for X'),
+ blank=True, null=True)
+ estimated_error_y = models.FloatField(_(u'Estimated error for Y'),
+ blank=True, null=True)
+ estimated_error_z = models.FloatField(_(u'Estimated error for Z'),
+ blank=True, null=True)
+ spatial_reference_system = models.ForeignKey(
+ SpatialReferenceSystem, verbose_name=_(u"Spatial Reference System"),
+ blank=True, null=True)
+ point_2d = models.PointField(_(u"Point (2D)"), blank=True, null=True)
point = models.PointField(_(u"Point"), blank=True, null=True, dim=3)
line = models.LineStringField(_(u"Line"), blank=True, null=True)
polygon = models.PolygonField(_(u"Polygon"), blank=True, null=True)
@@ -273,6 +287,9 @@ class BaseFind(BaseHistorizedItem, OwnPerms):
self.save()
return returned
+post_save.connect(post_save_point, sender=BaseFind)
+
+
WEIGHT_UNIT = (('g', _(u"g")),
('kg', _(u"kg")),)
@@ -437,9 +454,6 @@ class Find(BaseHistorizedItem, ImageModel, OwnPerms, ShortMenuItem):
height = models.FloatField(_(u"Height (cm)"), blank=True, null=True)
diameter = models.FloatField(_(u"Diameter (cm)"), blank=True, null=True)
thickness = models.FloatField(_(u"Thickness (cm)"), blank=True, null=True)
- topographic_reference_point = models.CharField(
- _(u"Point of topographic reference"), max_length=20,
- blank=True, null=True)
dimensions_comment = models.TextField(_(u"Dimensions comment"),
blank=True, null=True)
mark = models.TextField(_(u"Mark"), blank=True, null=True)
diff --git a/archaeological_finds/models_treatments.py b/archaeological_finds/models_treatments.py
index 5054d0da1..90badcd35 100644
--- a/archaeological_finds/models_treatments.py
+++ b/archaeological_finds/models_treatments.py
@@ -318,6 +318,8 @@ class FindUpstreamTreatments(AbsFindTreatments):
FROM archaeological_finds_find c
JOIN rel_tree p
ON c.upstream_treatment_id = p.downstream_treatment_id
+ AND c.upstream_treatment_id !=
+ ALL(p.path_info[0:array_upper(p.path_info, 1)-1])
)
SELECT DISTINCT find_id, path_info, level
FROM rel_tree ORDER BY find_id;
@@ -370,6 +372,8 @@ class FindDownstreamTreatments(AbsFindTreatments):
FROM archaeological_finds_find c
JOIN rel_tree p
ON c.downstream_treatment_id = p.upstream_treatment_id
+ AND c.downstream_treatment_id !=
+ ALL(p.path_info[0:array_upper(p.path_info, 1)-1])
)
SELECT DISTINCT find_id, path_info, level
FROM rel_tree ORDER BY find_id;
diff --git a/archaeological_finds/templates/ishtar/sheet_find.html b/archaeological_finds/templates/ishtar/sheet_find.html
index 05a796a9f..40ccdd713 100644
--- a/archaeological_finds/templates/ishtar/sheet_find.html
+++ b/archaeological_finds/templates/ishtar/sheet_find.html
@@ -55,7 +55,6 @@
{% field_li "Find number" item.find_number %}
{% field_li "Minimum number of individuals (MNI)" item.min_number_of_individuals %}
-{% field_li "Point of topographic reference" item.topographic_reference_point %}
{% field_li "Conservatory state" item.conservatory_state %}
{% if item.conservatory_comment %}
</ul>
@@ -111,7 +110,7 @@
</a>
</td>
<td class='string'>{{ treatment.year }} - {{treatment.index}}</td>
- <td class='string'>{{ treatment.label }}</td>
+ <td class='string'>{{ treatment.label|default_if_none:"-" }}</td>
<td class='string'>{{ treatment.treatment_types_lbl }}</td>
<td class='item-list'>{% for item in items %}<span>{{item}} {{ item|link_to_window}}</span>{% endfor %}</td>
<td class='string'>{{ treatment.person|default_if_none:"-" }}</td>
@@ -200,6 +199,20 @@
{% field_li "Town" base_find.context_record.parcel.town %}
{% field_li "Parcel" base_find.context_record.parcel %}
{% field_li_detail "Operation" base_find.context_record.operation %}
+{% field_li "Point of topographic reference" base_find.topographic_localisation %}
+
+{% if base_find.x or base_find.y %}
+ <li><label>{% trans "Coordinates:" %}</label>
+ <span class="value">
+ {% trans "X:"%} {{base_find.x|default_if_none:"-"}},
+ {% trans "Y:"%} {{base_find.y|default_if_none:"-"}},
+ {% trans "Z:"%} {{base_find.z|default_if_none:"-"}}
+ {% if base_find.spatial_reference_system %}
+ ({{base_find.spatial_reference_system.label}}{% if base_find.spatial_reference_system.srid %} -
+ {% trans "SRID:"%} {{base_find.spatial_reference_system.srid}}{% endif %})
+ {% endif %}
+ </span>
+{% endif %}
</ul>
{% field "Description" base_find.description "<pre>" "</pre>" %}
diff --git a/archaeological_operations/locale/django.pot b/archaeological_operations/locale/django.pot
index 5db1dc5d5..ffcb3c355 100644
--- a/archaeological_operations/locale/django.pot
+++ b/archaeological_operations/locale/django.pot
@@ -10,12 +10,12 @@ msgid ""
msgstr ""
#: forms.py:69 forms.py:371 forms.py:1009 forms.py:1031 forms.py:1035
-#: models.py:1213 templates/ishtar/sheet_operation.html:144
+#: models.py:1216 templates/ishtar/sheet_operation.html:144
#: templates/ishtar/blocks/window_tables/parcels.html:10
msgid "Parcels"
msgstr ""
-#: forms.py:72 forms.py:205 forms.py:985 models.py:1199
+#: forms.py:72 forms.py:205 forms.py:985 models.py:1202
#: templates/ishtar/blocks/window_tables/parcels.html:7
#: templates/ishtar/dashboards/dashboard_operation.html:432
#: templates/ishtar/dashboards/dashboard_operation.html:446
@@ -24,22 +24,22 @@ msgstr ""
msgid "Town"
msgstr ""
-#: forms.py:74 forms.py:455 forms.py:752 forms.py:1255 models.py:271
-#: models.py:1005 models.py:1197
+#: forms.py:74 forms.py:455 forms.py:752 forms.py:1255 models.py:274
+#: models.py:1008 models.py:1200
#: templates/ishtar/blocks/window_tables/parcels.html:8
msgid "Year"
msgstr ""
-#: forms.py:77 models.py:1200
+#: forms.py:77 models.py:1203
#: templates/ishtar/blocks/window_tables/parcels.html:9
msgid "Section"
msgstr ""
-#: forms.py:80 models.py:1202
+#: forms.py:80 models.py:1205
msgid "Parcel number"
msgstr ""
-#: forms.py:82 models.py:1204 models.py:1221 models.py:1270
+#: forms.py:82 models.py:1207 models.py:1224 models.py:1273
msgid "Public domain"
msgstr ""
@@ -75,8 +75,8 @@ msgstr ""
msgid "Relation type"
msgstr ""
-#: forms.py:383 ishtar_menu.py:30 models.py:366 models.py:826 models.py:856
-#: models.py:884 models.py:987 models.py:1196 wizards.py:344 wizards.py:355
+#: forms.py:383 ishtar_menu.py:30 models.py:369 models.py:829 models.py:859
+#: models.py:887 models.py:990 models.py:1199 wizards.py:344 wizards.py:355
#: templates/ishtar/sheet_operation.html:4
msgid "Operation"
msgstr ""
@@ -105,7 +105,7 @@ msgstr ""
msgid "Relations"
msgstr ""
-#: forms.py:456 forms.py:1226 models.py:272
+#: forms.py:456 forms.py:1226 models.py:275
msgid "Numeric reference"
msgstr ""
@@ -113,7 +113,7 @@ msgstr ""
msgid "Parcel (section/number/public domain)"
msgstr ""
-#: forms.py:465 forms.py:1269 models.py:827
+#: forms.py:465 forms.py:1269 models.py:830
#: templates/ishtar/dashboards/dashboard_operation.html:390
#: templates/ishtar/dashboards/dashboard_operation.html:411
#: templates/ishtar/dashboards/dashboard_operation.html:643
@@ -127,7 +127,7 @@ msgstr ""
msgid "Name"
msgstr ""
-#: forms.py:468 forms.py:672 forms.py:750 forms.py:1232 models.py:279
+#: forms.py:468 forms.py:672 forms.py:750 forms.py:1232 models.py:282
msgid "Operation type"
msgstr ""
@@ -135,24 +135,24 @@ msgstr ""
msgid "Is open?"
msgstr ""
-#: forms.py:478 forms.py:782 models.py:268
+#: forms.py:478 forms.py:782 models.py:271
msgid "In charge"
msgstr ""
-#: forms.py:485 models.py:981
+#: forms.py:485 models.py:984
msgid "Scientist in charge"
msgstr ""
-#: forms.py:487 forms.py:674 forms.py:772 models.py:266
+#: forms.py:487 forms.py:674 forms.py:772 models.py:269
msgid "Operator"
msgstr ""
-#: forms.py:496 forms.py:1102 models.py:89 models.py:281
+#: forms.py:496 forms.py:1102 models.py:89 models.py:284
#: templates/ishtar/blocks/window_tables/archaeologicalsites.html:10
msgid "Remains"
msgstr ""
-#: forms.py:497 forms.py:1080 forms.py:1099 models.py:87 models.py:287
+#: forms.py:497 forms.py:1080 forms.py:1099 models.py:87 models.py:290
#: templates/ishtar/blocks/window_tables/archaeologicalsites.html:9
msgid "Periods"
msgstr ""
@@ -185,19 +185,19 @@ msgstr ""
msgid "Abstract (full text search)"
msgstr ""
-#: forms.py:512 forms.py:840 models.py:335
+#: forms.py:512 forms.py:840 models.py:338
msgid "Comment about scientific documentation"
msgstr ""
-#: forms.py:513 forms.py:842 models.py:347
+#: forms.py:513 forms.py:842 models.py:350
msgid "Record quality"
msgstr ""
-#: forms.py:514 forms.py:807 models.py:299
+#: forms.py:514 forms.py:807 models.py:302
msgid "Report processing"
msgstr ""
-#: forms.py:516 forms.py:845 models.py:342
+#: forms.py:516 forms.py:845 models.py:345
msgid "Virtual operation"
msgstr ""
@@ -221,7 +221,7 @@ msgstr ""
msgid "Documentation deadline after"
msgstr ""
-#: forms.py:541 forms.py:830 models.py:354
+#: forms.py:541 forms.py:830 models.py:357
msgid "Documentation received"
msgstr ""
@@ -233,7 +233,7 @@ msgstr ""
msgid "Finds deadline after"
msgstr ""
-#: forms.py:547 forms.py:835 models.py:358
+#: forms.py:547 forms.py:835 models.py:361
msgid "Finds received"
msgstr ""
@@ -245,12 +245,12 @@ msgstr ""
msgid "Associated file"
msgstr ""
-#: forms.py:640 forms.py:933 models.py:493 models.py:883 models.py:992
+#: forms.py:640 forms.py:933 models.py:496 models.py:886 models.py:995
#: wizards.py:80
msgid "Archaeological file"
msgstr ""
-#: forms.py:647 forms.py:649 models.py:349
+#: forms.py:647 forms.py:649 models.py:352
msgid "Abstract"
msgstr ""
@@ -262,7 +262,7 @@ msgstr ""
msgid "years"
msgstr ""
-#: forms.py:654 models.py:252
+#: forms.py:654 models.py:255
msgid "Creation date"
msgstr ""
@@ -319,11 +319,11 @@ msgstr ""
msgid "General"
msgstr ""
-#: forms.py:748 models.py:332
+#: forms.py:748 models.py:335
msgid "Generic name"
msgstr ""
-#: forms.py:757 models.py:301
+#: forms.py:757 models.py:304
msgid "Old code"
msgstr ""
@@ -331,7 +331,7 @@ msgstr ""
msgid "Head scientist"
msgstr ""
-#: forms.py:779 models.py:331
+#: forms.py:779 models.py:334
msgid "Operator reference"
msgstr ""
@@ -339,23 +339,23 @@ msgstr ""
msgid "Total surface (m2)"
msgstr ""
-#: forms.py:800 models.py:53 models.py:255 models.py:1386
+#: forms.py:800 models.py:53 models.py:258 models.py:1389
msgid "Start date"
msgstr ""
-#: forms.py:802 models.py:257
+#: forms.py:802 models.py:260
msgid "Excavation end date"
msgstr ""
-#: forms.py:805 models.py:258
+#: forms.py:805 models.py:261
msgid "Report delivery date"
msgstr ""
-#: forms.py:827 models.py:351
+#: forms.py:827 models.py:354
msgid "Deadline for submission of the documentation"
msgstr ""
-#: forms.py:832 models.py:356
+#: forms.py:832 models.py:359
msgid "Deadline for submission of the finds"
msgstr ""
@@ -390,7 +390,7 @@ msgstr ""
msgid "Bad operation code"
msgstr ""
-#: forms.py:929 models.py:508
+#: forms.py:929 models.py:511
msgid "Operation code"
msgstr ""
@@ -398,20 +398,20 @@ msgstr ""
msgid "Preventive informations - excavation"
msgstr ""
-#: forms.py:956 models.py:285
+#: forms.py:956 models.py:288
#: templates/ishtar/dashboards/dashboard_operation.html:701
msgid "Cost (euros)"
msgstr ""
-#: forms.py:957 models.py:290
+#: forms.py:957 models.py:293
msgid "Scheduled man-days"
msgstr ""
-#: forms.py:959 models.py:293
+#: forms.py:959 models.py:296
msgid "Optional man-days"
msgstr ""
-#: forms.py:961 models.py:296
+#: forms.py:961 models.py:299
msgid "Effective man-days"
msgstr ""
@@ -419,23 +419,23 @@ msgstr ""
msgid "Preventive informations - diagnostic"
msgstr ""
-#: forms.py:974 models.py:315
+#: forms.py:974 models.py:318
msgid "Prescription on zoning"
msgstr ""
-#: forms.py:976 models.py:318
+#: forms.py:976 models.py:321
msgid "Prescription on large area"
msgstr ""
-#: forms.py:979 models.py:320
+#: forms.py:979 models.py:323
msgid "Prescription on geoarchaeological context"
msgstr ""
-#: forms.py:983 forms.py:1005 models.py:283 models.py:1015
+#: forms.py:983 forms.py:1005 models.py:286 models.py:1018
msgid "Towns"
msgstr ""
-#: forms.py:1012 models.py:1212 models.py:1384
+#: forms.py:1012 models.py:1215 models.py:1387
msgid "Parcel"
msgstr ""
@@ -460,7 +460,7 @@ msgstr ""
msgid "This reference already exists."
msgstr ""
-#: forms.py:1157 models.py:94 models.py:339
+#: forms.py:1157 models.py:94 models.py:342
#: templates/ishtar/sheet_operation.html:94
msgid "Archaeological sites"
msgstr ""
@@ -481,7 +481,7 @@ msgstr ""
msgid "Would you like to delete this operation?"
msgstr ""
-#: forms.py:1186 forms.py:1256 forms.py:1392 models.py:858 models.py:972
+#: forms.py:1186 forms.py:1256 forms.py:1392 models.py:861 models.py:975
msgid "Index"
msgstr ""
@@ -508,7 +508,7 @@ msgstr ""
msgid "You should select a document."
msgstr ""
-#: forms.py:1263 forms.py:1330 models.py:897 models.py:966
+#: forms.py:1263 forms.py:1330 models.py:900 models.py:969
msgid "Act type"
msgstr ""
@@ -516,7 +516,7 @@ msgstr ""
msgid "Indexed?"
msgstr ""
-#: forms.py:1270 forms.py:1335 models.py:1006
+#: forms.py:1270 forms.py:1335 models.py:1009
#: templates/ishtar/blocks/window_tables/administrativacts.html:10
msgid "Object"
msgstr ""
@@ -529,7 +529,7 @@ msgstr ""
msgid "You should select an administrative act."
msgstr ""
-#: forms.py:1338 models.py:1003
+#: forms.py:1338 models.py:1006
msgid "Signature date"
msgstr ""
@@ -585,7 +585,7 @@ msgstr ""
msgid "Deletion"
msgstr ""
-#: ishtar_menu.py:58 models.py:1022
+#: ishtar_menu.py:58 models.py:1025
#: templates/ishtar/sheet_administrativeact.html:4
msgid "Administrative act"
msgstr ""
@@ -610,16 +610,16 @@ msgstr ""
msgid "General informations"
msgstr ""
-#: ishtar_menu.py:136 models.py:367
+#: ishtar_menu.py:136 models.py:370
#: templates/ishtar/dashboards/dashboard_operation.html:8
msgid "Operations"
msgstr ""
-#: models.py:52 models.py:70 models.py:1848
+#: models.py:52 models.py:70 models.py:1851
msgid "Order"
msgstr ""
-#: models.py:54 models.py:1387
+#: models.py:54 models.py:1390
msgid "End date"
msgstr ""
@@ -675,369 +675,369 @@ msgstr ""
msgid "Reliable"
msgstr ""
-#: models.py:230
+#: models.py:233
msgid "Year - Index"
msgstr ""
-#: models.py:231
+#: models.py:234
msgid "Associated file (label)"
msgstr ""
-#: models.py:232
+#: models.py:235
msgid "Operator name"
msgstr ""
-#: models.py:233
+#: models.py:236
msgid "Scientist (full name)"
msgstr ""
-#: models.py:234
+#: models.py:237
msgid "Associated file (external ID)"
msgstr ""
-#: models.py:235
+#: models.py:238
msgid "Scientist (title)"
msgstr ""
-#: models.py:236
+#: models.py:239
msgid "Scientist (surname)"
msgstr ""
-#: models.py:237
+#: models.py:240
msgid "Scientist (name)"
msgstr ""
-#: models.py:238
+#: models.py:241
msgid "Scientist - Organization (name)"
msgstr ""
-#: models.py:239
+#: models.py:242
msgid "In charge (title)"
msgstr ""
-#: models.py:240
+#: models.py:243
msgid "In charge (surname)"
msgstr ""
-#: models.py:241
+#: models.py:244
msgid "In charge (name)"
msgstr ""
-#: models.py:242
+#: models.py:245
msgid "In charge - Organization (name)"
msgstr ""
-#: models.py:247
+#: models.py:250
msgid "Archaeological sites (reference)"
msgstr ""
-#: models.py:254
+#: models.py:257
msgid "Closing date"
msgstr ""
-#: models.py:261
+#: models.py:264
msgid "In charge scientist"
msgstr ""
-#: models.py:276 models.py:1192
+#: models.py:279 models.py:1195
msgid "File"
msgstr ""
-#: models.py:280
+#: models.py:283
msgid "Surface (m2)"
msgstr ""
-#: models.py:333
+#: models.py:336
msgid "General comment"
msgstr ""
-#: models.py:336
+#: models.py:339
msgid "Cached name"
msgstr ""
-#: models.py:344
+#: models.py:347
msgid ""
"If checked, it means that this operation have not been officialy registered."
msgstr ""
-#: models.py:360
+#: models.py:363
msgid "Point"
msgstr ""
-#: models.py:361
+#: models.py:364
msgid "Multi polygon"
msgstr ""
-#: models.py:369
+#: models.py:372
msgid "Can view all Operations"
msgstr ""
-#: models.py:370
+#: models.py:373
msgid "Can view own Operation"
msgstr ""
-#: models.py:371
+#: models.py:374
msgid "Can add own Operation"
msgstr ""
-#: models.py:372
+#: models.py:375
msgid "Can change own Operation"
msgstr ""
-#: models.py:373
+#: models.py:376
msgid "Can delete own Operation"
msgstr ""
-#: models.py:374
+#: models.py:377
msgid "Can close Operation"
msgstr ""
-#: models.py:402
+#: models.py:405
msgid "OPE"
msgstr ""
-#: models.py:462
+#: models.py:465
msgid "Intercommunal"
msgstr ""
-#: models.py:494
+#: models.py:497
msgid "Code patriarche"
msgstr ""
-#: models.py:534
+#: models.py:537
msgid "This operation code already exists for this year"
msgstr ""
-#: models.py:567
+#: models.py:570
msgid "Number of parcels"
msgstr ""
-#: models.py:585
+#: models.py:588
msgid "Number of administrative acts"
msgstr ""
-#: models.py:593
+#: models.py:596
msgid "Number of indexed administrative acts"
msgstr ""
-#: models.py:601
+#: models.py:604
msgid "Number of context records"
msgstr ""
-#: models.py:637
+#: models.py:640
msgid "Number of finds"
msgstr ""
-#: models.py:682
+#: models.py:685
msgid "No type"
msgstr ""
-#: models.py:713
+#: models.py:716
msgid "Number of sources"
msgstr ""
-#: models.py:755 templates/ishtar/dashboards/dashboard_operation.html:309
+#: models.py:758 templates/ishtar/dashboards/dashboard_operation.html:309
#: templates/ishtar/dashboards/dashboard_operation.html:575
#: templates/ishtar/dashboards/dashboard_operation.html:611
msgid "Mean"
msgstr ""
-#: models.py:797
+#: models.py:800
msgid "Inverse relation"
msgstr ""
-#: models.py:801
+#: models.py:804
msgid "Operation relation type"
msgstr ""
-#: models.py:802
+#: models.py:805
msgid "Operation relation types"
msgstr ""
-#: models.py:815
+#: models.py:818
msgid "Operation record relation"
msgstr ""
-#: models.py:816
+#: models.py:819
msgid "Operation record relations"
msgstr ""
-#: models.py:862
+#: models.py:865
msgid "Operation documentation"
msgstr ""
-#: models.py:863
+#: models.py:866
msgid "Operation documentations"
msgstr ""
-#: models.py:866
+#: models.py:869
msgid "Can view all Operation sources"
msgstr ""
-#: models.py:868
+#: models.py:871
msgid "Can view own Operation source"
msgstr ""
-#: models.py:870
+#: models.py:873
msgid "Can add own Operation source"
msgstr ""
-#: models.py:872
+#: models.py:875
msgid "Can change own Operation source"
msgstr ""
-#: models.py:874
+#: models.py:877
msgid "Can delete own Operation source"
msgstr ""
-#: models.py:885 models.py:997
+#: models.py:888 models.py:1000
msgid "Treatment request"
msgstr ""
-#: models.py:886 models.py:1002
+#: models.py:889 models.py:1005
msgid "Treatment"
msgstr ""
-#: models.py:888
+#: models.py:891
msgid "Intended to"
msgstr ""
-#: models.py:890
+#: models.py:893
msgid "Code"
msgstr ""
-#: models.py:893
+#: models.py:896
msgid "Associated template"
msgstr ""
-#: models.py:894
+#: models.py:897
msgid "Indexed"
msgstr ""
-#: models.py:898
+#: models.py:901
msgid "Act types"
msgstr ""
-#: models.py:970
+#: models.py:973
msgid "Person in charge of the operation"
msgstr ""
-#: models.py:976
+#: models.py:979
msgid "Archaeological preventive operator"
msgstr ""
-#: models.py:984
+#: models.py:987
msgid "Signatory"
msgstr ""
-#: models.py:1012
+#: models.py:1015
msgid "Departments"
msgstr ""
-#: models.py:1013
+#: models.py:1016
msgid "Cached values get from associated departments"
msgstr ""
-#: models.py:1016
+#: models.py:1019
msgid "Cached values get from associated towns"
msgstr ""
-#: models.py:1023 templates/ishtar/sheet_operation.html:102
+#: models.py:1026 templates/ishtar/sheet_operation.html:102
#: templates/ishtar/sheet_operation.html:138
msgid "Administrative acts"
msgstr ""
-#: models.py:1026
+#: models.py:1029
msgid "Can view all Administrative acts"
msgstr ""
-#: models.py:1028
+#: models.py:1031
msgid "Can view own Administrative act"
msgstr ""
-#: models.py:1030
+#: models.py:1033
msgid "Can add own Administrative act"
msgstr ""
-#: models.py:1032
+#: models.py:1035
msgid "Can change own Administrative act"
msgstr ""
-#: models.py:1034
+#: models.py:1037
msgid "Can delete own Administrative act"
msgstr ""
-#: models.py:1043
+#: models.py:1046
#: templates/ishtar/blocks/window_tables/administrativacts.html:7
#: templates/ishtar/blocks/window_tables/archaeologicalsites.html:7
msgid "Ref."
msgstr ""
-#: models.py:1137
+#: models.py:1140
msgid "This index already exists for this year"
msgstr ""
-#: models.py:1205
+#: models.py:1208
msgid "External ID"
msgstr ""
-#: models.py:1208
+#: models.py:1211
msgid "External ID is set automatically"
msgstr ""
-#: models.py:1209
+#: models.py:1212
msgid "Address - Locality"
msgstr ""
-#: models.py:1382
+#: models.py:1385
msgid "Owner"
msgstr ""
-#: models.py:1390
+#: models.py:1393
msgid "Parcel owner"
msgstr ""
-#: models.py:1391
+#: models.py:1394
msgid "Parcel owners"
msgstr ""
-#: models.py:1417
+#: models.py:1420
msgid "Recorded"
msgstr ""
-#: models.py:1418
+#: models.py:1421
msgid "Effective"
msgstr ""
-#: models.py:1419
+#: models.py:1422
msgid "Active"
msgstr ""
-#: models.py:1420
+#: models.py:1423
msgid "Field completed"
msgstr ""
-#: models.py:1421
+#: models.py:1424
msgid "Associated report"
msgstr ""
-#: models.py:1422
+#: models.py:1425
msgid "Closed"
msgstr ""
-#: models.py:1423
+#: models.py:1426
msgid "Documented and closed"
msgstr ""
-#: models.py:1849
+#: models.py:1852
msgid "Is preventive"
msgstr ""
-#: models.py:1852
+#: models.py:1855
msgid "Operation type old"
msgstr ""
-#: models.py:1853
+#: models.py:1856
msgid "Operation types old"
msgstr ""
diff --git a/archaeological_warehouse/locale/django.pot b/archaeological_warehouse/locale/django.pot
index 82deac273..42adb9633 100644
--- a/archaeological_warehouse/locale/django.pot
+++ b/archaeological_warehouse/locale/django.pot
@@ -12,7 +12,7 @@ msgstr ""
msgid "Warehouse"
msgstr ""
-#: forms.py:44 forms.py:49 models.py:234
+#: forms.py:44 forms.py:49 models.py:239
msgid "Division"
msgstr ""
@@ -76,16 +76,16 @@ msgstr ""
msgid "Would you like to delete this warehouse?"
msgstr ""
-#: forms.py:150 models.py:173 models.py:232
+#: forms.py:150 models.py:173 models.py:237
#: templates/ishtar/sheet_container.html:4
msgid "Container"
msgstr ""
-#: forms.py:154 forms.py:220 models.py:127
+#: forms.py:154 forms.py:221 models.py:127
msgid "Ref."
msgstr ""
-#: forms.py:155 forms.py:219 models.py:130 models.py:163
+#: forms.py:155 forms.py:220 models.py:130 models.py:163
msgid "Container type"
msgstr ""
@@ -97,47 +97,47 @@ msgstr ""
msgid "Responsible warehouse"
msgstr ""
-#: forms.py:194
+#: forms.py:195
msgid "Index"
msgstr ""
-#: forms.py:212
+#: forms.py:213
msgid "This ID already exists for this warehouse."
msgstr ""
-#: forms.py:230 forms.py:236 views.py:127
+#: forms.py:231 forms.py:237 views.py:127
msgid "Container search"
msgstr ""
-#: forms.py:232 forms.py:238
+#: forms.py:233 forms.py:239
msgid "You should select a container."
msgstr ""
-#: forms.py:233
+#: forms.py:234
msgid "Add a new container"
msgstr ""
-#: forms.py:243 ishtar_menu.py:35 views.py:93
+#: forms.py:244 ishtar_menu.py:35 views.py:93
msgid "Packaging"
msgstr ""
-#: forms.py:249
+#: forms.py:250
msgid "Packager"
msgstr ""
-#: forms.py:255
+#: forms.py:256
msgid "Date"
msgstr ""
-#: forms.py:259
+#: forms.py:260
msgid "Packaged finds"
msgstr ""
-#: forms.py:263 models.py:166
+#: forms.py:264 models.py:166
msgid "Localisation"
msgstr ""
-#: forms.py:287 forms.py:288
+#: forms.py:288 forms.py:289
msgid "Would you like to delete this container?"
msgstr ""
@@ -253,15 +253,15 @@ msgstr ""
msgid "Cached location"
msgstr ""
-#: models.py:235
+#: models.py:240
msgid "Reference"
msgstr ""
-#: models.py:238
+#: models.py:243
msgid "Container localisation"
msgstr ""
-#: models.py:239
+#: models.py:244
msgid "Container localisations"
msgstr ""
@@ -277,15 +277,15 @@ msgstr ""
msgid "Warehouse deletion"
msgstr ""
-#: views.py:135
+#: views.py:138
msgid "Container creation"
msgstr ""
-#: views.py:144
+#: views.py:147
msgid "Container modification"
msgstr ""
-#: views.py:151
+#: views.py:154
msgid "Container deletion"
msgstr ""
diff --git a/archaeological_warehouse/migrations/0004_auto__chg_field_container_responsible.py b/archaeological_warehouse/migrations/0004_auto__chg_field_container_responsible.py
index 2bca69c9a..65df3991b 100644
--- a/archaeological_warehouse/migrations/0004_auto__chg_field_container_responsible.py
+++ b/archaeological_warehouse/migrations/0004_auto__chg_field_container_responsible.py
@@ -8,9 +8,10 @@ from django.db import models
class Migration(SchemaMigration):
def forwards(self, orm):
+ db.start_transaction()
sql = "update archaeological_warehouse_container set responsible_id = location_id;"
db.execute(sql)
-
+ db.commit_transaction()
# Changing field 'Container.responsible'
db.alter_column('archaeological_warehouse_container', 'responsible_id', self.gf('django.db.models.fields.related.ForeignKey')(default=1, to=orm['archaeological_warehouse.Warehouse']))
diff --git a/ishtar_common/admin.py b/ishtar_common/admin.py
index aa04a7b1c..efb452e74 100644
--- a/ishtar_common/admin.py
+++ b/ishtar_common/admin.py
@@ -235,6 +235,12 @@ class OperationTypeAdmin(GeneralTypeAdmin):
admin.site.register(models.OperationType, OperationTypeAdmin)
+class SpatialReferenceSystemAdmin(GeneralTypeAdmin):
+ list_display = GeneralTypeAdmin.list_display + ['order', 'srid']
+ model = models.SpatialReferenceSystem
+admin.site.register(models.SpatialReferenceSystem, SpatialReferenceSystemAdmin)
+
+
class IshtarUserAdmin(admin.ModelAdmin):
readonly_fields = ('password',)
diff --git a/ishtar_common/locale/django.pot b/ishtar_common/locale/django.pot
index 2a60902e5..42440b19a 100644
--- a/ishtar_common/locale/django.pot
+++ b/ishtar_common/locale/django.pot
@@ -156,12 +156,12 @@ msgstr ""
msgid "Add a new item"
msgstr ""
-#: forms.py:262 models.py:1367
+#: forms.py:262 models.py:1368
msgid "Template"
msgstr ""
#: forms_common.py:41 forms_common.py:59 forms_common.py:182
-#: forms_common.py:406 models.py:1433 models.py:2825
+#: forms_common.py:406 models.py:1434 models.py:2826
#: templates/blocks/JQueryAdvancedTown.html:19
#: templates/ishtar/sheet_organization.html:13
msgid "Town"
@@ -177,8 +177,8 @@ msgid ""
"french town Saint-Denis in the Seine-Saint-Denis department.</p>"
msgstr ""
-#: forms_common.py:68 forms_common.py:855 ishtar_menu.py:47 models.py:1606
-#: models.py:2452 models.py:2634 models.py:2695
+#: forms_common.py:68 forms_common.py:855 ishtar_menu.py:47 models.py:1607
+#: models.py:2453 models.py:2635 models.py:2696
#: templates/ishtar/sheet_person.html:4
msgid "Person"
msgstr ""
@@ -190,63 +190,63 @@ msgid ""
msgstr ""
#: forms_common.py:170 forms_common.py:327 forms_common.py:451
-#: ishtar_menu.py:75 models.py:1607 models.py:2338
+#: ishtar_menu.py:75 models.py:1608 models.py:2339
#: templates/ishtar/sheet_organization.html:4
msgid "Organization"
msgstr ""
#: forms_common.py:173 forms_common.py:210 forms_common.py:322
-#: forms_common.py:376 forms_common.py:446 models.py:1034 models.py:1366
-#: models.py:1652 models.py:1871 models.py:2332 models.py:2438 models.py:2811
+#: forms_common.py:376 forms_common.py:446 models.py:1034 models.py:1367
+#: models.py:1653 models.py:1872 models.py:2333 models.py:2439 models.py:2812
#: templates/ishtar/sheet_organization.html:8
#: templates/ishtar/sheet_organization.html:21
msgid "Name"
msgstr ""
-#: forms_common.py:174 models.py:1588 models.py:2002
+#: forms_common.py:174 models.py:1589 models.py:2003
msgid "Organization type"
msgstr ""
-#: forms_common.py:176 forms_common.py:400 models.py:1428
+#: forms_common.py:176 forms_common.py:400 models.py:1429
#: templates/ishtar/sheet_organization.html:10
msgid "Address"
msgstr ""
-#: forms_common.py:178 forms_common.py:403 models.py:1429
+#: forms_common.py:178 forms_common.py:403 models.py:1430
#: templates/ishtar/sheet_organization.html:11
msgid "Address complement"
msgstr ""
-#: forms_common.py:180 forms_common.py:404 models.py:1431
+#: forms_common.py:180 forms_common.py:404 models.py:1432
#: templates/ishtar/sheet_organization.html:12
msgid "Postal code"
msgstr ""
-#: forms_common.py:183 forms_common.py:407 models.py:1434
+#: forms_common.py:183 forms_common.py:407 models.py:1435
msgid "Country"
msgstr ""
#: forms_common.py:185 forms_common.py:324 forms_common.py:380
-#: forms_common.py:448 forms_common.py:572 models.py:1461
+#: forms_common.py:448 forms_common.py:572 models.py:1462
msgid "Email"
msgstr ""
-#: forms_common.py:186 forms_common.py:383 models.py:1446
+#: forms_common.py:186 forms_common.py:383 models.py:1447
#: templates/ishtar/sheet_organization.html:14
#: templates/ishtar/sheet_person.html:19
#: templates/ishtar/wizard/wizard_person.html:17
msgid "Phone"
msgstr ""
-#: forms_common.py:187 forms_common.py:392 models.py:1458
+#: forms_common.py:187 forms_common.py:392 models.py:1459
#: templates/ishtar/sheet_organization.html:15
#: templates/ishtar/sheet_person.html:37
#: templates/ishtar/wizard/wizard_person.html:35
msgid "Mobile phone"
msgstr ""
-#: forms_common.py:211 forms_common.py:325 forms_common.py:449 models.py:2032
-#: models.py:2334 models.py:2746 templates/sheet_ope.html:85
+#: forms_common.py:211 forms_common.py:325 forms_common.py:449 models.py:2033
+#: models.py:2335 models.py:2747 templates/sheet_ope.html:85
#: templates/sheet_ope.html.py:105 templates/sheet_ope.html:126
#: templates/ishtar/import_list.html:13
#: templates/ishtar/sheet_organization.html:23
@@ -270,7 +270,7 @@ msgstr ""
msgid "Organization to merge"
msgstr ""
-#: forms_common.py:323 forms_common.py:374 forms_common.py:447 models.py:2436
+#: forms_common.py:323 forms_common.py:374 forms_common.py:447 models.py:2437
#: templates/ishtar/sheet_organization.html:22
msgid "Surname"
msgstr ""
@@ -288,25 +288,25 @@ msgstr ""
msgid "Identity"
msgstr ""
-#: forms_common.py:371 forms_common.py:773 forms_common.py:822 models.py:2003
-#: models.py:2430 models.py:2432 models.py:2743 templates/sheet_ope.html:104
+#: forms_common.py:371 forms_common.py:773 forms_common.py:822 models.py:2004
+#: models.py:2431 models.py:2433 models.py:2744 templates/sheet_ope.html:104
#: templates/ishtar/blocks/window_tables/documents.html:7
msgid "Title"
msgstr ""
-#: forms_common.py:372 models.py:2434
+#: forms_common.py:372 models.py:2435
msgid "Salutation"
msgstr ""
-#: forms_common.py:378 models.py:2440
+#: forms_common.py:378 models.py:2441
msgid "Raw name"
msgstr ""
-#: forms_common.py:381 models.py:1447
+#: forms_common.py:381 models.py:1448
msgid "Phone description"
msgstr ""
-#: forms_common.py:384 models.py:1449 models.py:1451
+#: forms_common.py:384 models.py:1450 models.py:1452
msgid "Phone description 2"
msgstr ""
@@ -314,11 +314,11 @@ msgstr ""
msgid "Phone 2"
msgstr ""
-#: forms_common.py:388 models.py:1455
+#: forms_common.py:388 models.py:1456
msgid "Phone description 3"
msgstr ""
-#: forms_common.py:390 models.py:1453
+#: forms_common.py:390 models.py:1454
msgid "Phone 3"
msgstr ""
@@ -326,23 +326,23 @@ msgstr ""
msgid "Current organization"
msgstr ""
-#: forms_common.py:409 models.py:1436
+#: forms_common.py:409 models.py:1437
msgid "Other address: address"
msgstr ""
-#: forms_common.py:412 models.py:1439
+#: forms_common.py:412 models.py:1440
msgid "Other address: address complement"
msgstr ""
-#: forms_common.py:414 models.py:1440
+#: forms_common.py:414 models.py:1441
msgid "Other address: postal code"
msgstr ""
-#: forms_common.py:416 models.py:1442
+#: forms_common.py:416 models.py:1443
msgid "Other address: town"
msgstr ""
-#: forms_common.py:418 models.py:1444
+#: forms_common.py:418 models.py:1445
msgid "Other address: country"
msgstr ""
@@ -358,7 +358,7 @@ msgstr ""
msgid "Account search"
msgstr ""
-#: forms_common.py:510 forms_common.py:550 forms_common.py:554 models.py:2386
+#: forms_common.py:510 forms_common.py:550 forms_common.py:554 models.py:2387
msgid "Person type"
msgstr ""
@@ -390,7 +390,7 @@ msgstr ""
msgid "Send the new password by email?"
msgstr ""
-#: forms_common.py:628 forms_common.py:641 models.py:2826
+#: forms_common.py:628 forms_common.py:641 models.py:2827
msgid "Towns"
msgstr ""
@@ -406,7 +406,7 @@ msgstr ""
msgid "Documentation informations"
msgstr ""
-#: forms_common.py:775 forms_common.py:823 models.py:2004 models.py:2720
+#: forms_common.py:775 forms_common.py:823 models.py:2005 models.py:2721
msgid "Source type"
msgstr ""
@@ -418,37 +418,37 @@ msgstr ""
msgid "Internal reference"
msgstr ""
-#: forms_common.py:783 models.py:2757
+#: forms_common.py:783 models.py:2758
msgid "Numerical ressource (web address)"
msgstr ""
-#: forms_common.py:784 models.py:2759
+#: forms_common.py:784 models.py:2760
msgid "Receipt date"
msgstr ""
-#: forms_common.py:786 models.py:2161 models.py:2761
+#: forms_common.py:786 models.py:2162 models.py:2762
msgid "Creation date"
msgstr ""
-#: forms_common.py:789 models.py:2764
+#: forms_common.py:789 models.py:2765
msgid "Receipt date in documentation"
msgstr ""
#: forms_common.py:791 forms_common.py:827 models.py:323 models.py:634
-#: models.py:1898 models.py:2444 models.py:2771
+#: models.py:1899 models.py:2445 models.py:2772
msgid "Comment"
msgstr ""
-#: forms_common.py:793 forms_common.py:826 models.py:1036 models.py:1656
-#: models.py:1830 models.py:1872 models.py:2770 templates/sheet_ope.html:128
+#: forms_common.py:793 forms_common.py:826 models.py:1036 models.py:1657
+#: models.py:1831 models.py:1873 models.py:2771 templates/sheet_ope.html:128
msgid "Description"
msgstr ""
-#: forms_common.py:796 models.py:2772
+#: forms_common.py:796 models.py:2773
msgid "Additional information"
msgstr ""
-#: forms_common.py:798 forms_common.py:830 models.py:2774
+#: forms_common.py:798 forms_common.py:830 models.py:2775
msgid "Has a duplicate"
msgstr ""
@@ -463,7 +463,7 @@ msgid ""
"p>"
msgstr ""
-#: forms_common.py:819 forms_common.py:848 forms_common.py:882 models.py:2700
+#: forms_common.py:819 forms_common.py:848 forms_common.py:882 models.py:2701
#: templates/ishtar/wizard/wizard_person_deletion.html:124
msgid "Author"
msgstr ""
@@ -476,7 +476,7 @@ msgstr ""
msgid "Would you like to delete this documentation?"
msgstr ""
-#: forms_common.py:856 models.py:2005 models.py:2688 models.py:2697
+#: forms_common.py:856 models.py:2006 models.py:2689 models.py:2698
msgid "Author type"
msgstr ""
@@ -488,7 +488,7 @@ msgstr ""
msgid "There are identical authors."
msgstr ""
-#: forms_common.py:893 models.py:2701 models.py:2753
+#: forms_common.py:893 models.py:2702 models.py:2754
#: templates/sheet_ope.html:106
#: templates/ishtar/blocks/window_tables/documents.html:9
msgid "Authors"
@@ -506,7 +506,7 @@ msgstr ""
msgid "Deletion"
msgstr ""
-#: ishtar_menu.py:39 models.py:1162 views.py:1530
+#: ishtar_menu.py:39 models.py:1163 views.py:1530
msgid "Global variables"
msgstr ""
@@ -534,7 +534,7 @@ msgstr ""
msgid "Manual merge"
msgstr ""
-#: ishtar_menu.py:109 models.py:2172
+#: ishtar_menu.py:109 models.py:2173
msgid "Imports"
msgstr ""
@@ -546,7 +546,7 @@ msgstr ""
msgid "Current imports"
msgstr ""
-#: ishtar_menu.py:120
+#: ishtar_menu.py:120 views.py:1588
msgid "Old imports"
msgstr ""
@@ -562,7 +562,7 @@ msgstr ""
msgid "This item already exists."
msgstr ""
-#: models.py:319 models.py:633 models.py:1401 models.py:1413 models.py:1827
+#: models.py:319 models.py:633 models.py:1402 models.py:1414 models.py:1828
msgid "Label"
msgstr ""
@@ -570,11 +570,11 @@ msgstr ""
msgid "Textual ID"
msgstr ""
-#: models.py:324 models.py:636 models.py:1370
+#: models.py:324 models.py:636 models.py:1371
msgid "Available"
msgstr ""
-#: models.py:655 models.py:1944
+#: models.py:655 models.py:1945
msgid "Key"
msgstr ""
@@ -590,7 +590,7 @@ msgstr ""
msgid "Creator"
msgstr ""
-#: models.py:898 models.py:2837
+#: models.py:898 models.py:2838 models.py:2894
msgid "Order"
msgstr ""
@@ -614,7 +614,7 @@ msgstr ""
msgid "US dollar"
msgstr ""
-#: models.py:1035 models.py:1654
+#: models.py:1035 models.py:1655
msgid "Slug"
msgstr ""
@@ -642,120 +642,124 @@ msgstr ""
msgid "Need finds module"
msgstr ""
-#: models.py:1046
-msgid "Home page"
+#: models.py:1045
+msgid "Mapping module"
msgstr ""
#: models.py:1047
+msgid "Home page"
+msgstr ""
+
+#: models.py:1048
#, python-brace-format
msgid ""
"Homepage of Ishtar - if not defined a default homepage will appear. Use the "
"markdown syntax. {random_image} can be used to display a random image."
msgstr ""
-#: models.py:1051
+#: models.py:1052
msgid "File external id"
msgstr ""
-#: models.py:1053
+#: models.py:1054
msgid ""
"Formula to manage file external ID. Change this with care. With incorrect "
"formula, the application might be unusable and import of external data can "
"be destructive."
msgstr ""
-#: models.py:1058
+#: models.py:1059
msgid "Parcel external id"
msgstr ""
-#: models.py:1061
+#: models.py:1062
msgid ""
"Formula to manage parcel external ID. Change this with care. With incorrect "
"formula, the application might be unusable and import of external data can "
"be destructive."
msgstr ""
-#: models.py:1066
+#: models.py:1067
msgid "Context record external id"
msgstr ""
-#: models.py:1068
+#: models.py:1069
msgid ""
"Formula to manage context record external ID. Change this with care. With "
"incorrect formula, the application might be unusable and import of external "
"data can be destructive."
msgstr ""
-#: models.py:1073
+#: models.py:1074
msgid "Base find external id"
msgstr ""
-#: models.py:1075
+#: models.py:1076
msgid ""
"Formula to manage base find external ID. Change this with care. With "
"incorrect formula, the application might be unusable and import of external "
"data can be destructive."
msgstr ""
-#: models.py:1080
+#: models.py:1081
msgid "Find external id"
msgstr ""
-#: models.py:1082
+#: models.py:1083
msgid ""
"Formula to manage find external ID. Change this with care. With incorrect "
"formula, the application might be unusable and import of external data can "
"be destructive."
msgstr ""
-#: models.py:1087
+#: models.py:1088
msgid "Raw name for person"
msgstr ""
-#: models.py:1089
+#: models.py:1090
msgid ""
"Formula to manage person raw_name. Change this with care. With incorrect "
"formula, the application might be unusable and import of external data can "
"be destructive."
msgstr ""
-#: models.py:1093
+#: models.py:1094
msgid "Current active"
msgstr ""
-#: models.py:1094
+#: models.py:1095
msgid "Currency"
msgstr ""
-#: models.py:1098
+#: models.py:1099
msgid "Ishtar site profile"
msgstr ""
-#: models.py:1099
+#: models.py:1100
msgid "Ishtar site profiles"
msgstr ""
-#: models.py:1155
+#: models.py:1156
msgid "Variable name"
msgstr ""
-#: models.py:1156
+#: models.py:1157
msgid "Description of the variable"
msgstr ""
-#: models.py:1158 models.py:1945
+#: models.py:1159 models.py:1946
msgid "Value"
msgstr ""
-#: models.py:1161
+#: models.py:1162
msgid "Global variable"
msgstr ""
-#: models.py:1271 models.py:1301
+#: models.py:1272 models.py:1302
msgid "Total"
msgstr ""
-#: models.py:1278 models.py:1402 models.py:1414
+#: models.py:1279 models.py:1403 models.py:1415
#: templates/ishtar/sheet_person.html:22
#: templates/ishtar/dashboards/dashboard_main_detail.html:141
#: templates/ishtar/dashboards/dashboard_main_detail_users.html:26
@@ -763,617 +767,629 @@ msgstr ""
msgid "Number"
msgstr ""
-#: models.py:1365
+#: models.py:1366
msgid "Administrative Act"
msgstr ""
-#: models.py:1369
+#: models.py:1370
msgid "Associated object"
msgstr ""
-#: models.py:1373
+#: models.py:1374
msgid "Document template"
msgstr ""
-#: models.py:1374
+#: models.py:1375
msgid "Document templates"
msgstr ""
-#: models.py:1405 models.py:1415 models.py:2156
+#: models.py:1406 models.py:1416 models.py:2157
msgid "State"
msgstr ""
-#: models.py:1419 templates/blocks/JQueryAdvancedTown.html:12
+#: models.py:1420 templates/blocks/JQueryAdvancedTown.html:12
msgid "Department"
msgstr ""
-#: models.py:1420
+#: models.py:1421
msgid "Departments"
msgstr ""
-#: models.py:1457
+#: models.py:1458
msgid "Raw phone"
msgstr ""
-#: models.py:1463
+#: models.py:1464
msgid "Alternative address is prefered"
msgstr ""
-#: models.py:1502
+#: models.py:1503
msgid "Tel: "
msgstr ""
-#: models.py:1506
+#: models.py:1507
msgid "Mobile: "
msgstr ""
-#: models.py:1510
+#: models.py:1511
msgid "Email: "
msgstr ""
-#: models.py:1515
+#: models.py:1516
msgid "Merge key"
msgstr ""
-#: models.py:1589
+#: models.py:1590
msgid "Organization types"
msgstr ""
-#: models.py:1608 views.py:237
+#: models.py:1609 views.py:237
msgid "Operation"
msgstr ""
-#: models.py:1610
+#: models.py:1611
msgid "Archaeological site"
msgstr ""
-#: models.py:1611
+#: models.py:1612
msgid "Parcels"
msgstr ""
-#: models.py:1613
+#: models.py:1614
msgid "Operation source"
msgstr ""
-#: models.py:1616 views.py:1346 views.py:1396
+#: models.py:1617 views.py:1346 views.py:1396
msgid "Archaeological files"
msgstr ""
-#: models.py:1618 views.py:1349 views.py:1404
+#: models.py:1619 views.py:1349 views.py:1404
msgid "Context records"
msgstr ""
-#: models.py:1620
+#: models.py:1621
msgid "Context record relations"
msgstr ""
-#: models.py:1622
+#: models.py:1623
msgid "Base finds"
msgstr ""
-#: models.py:1658 templates/ishtar/dashboards/dashboard_main.html:25
+#: models.py:1659 templates/ishtar/dashboards/dashboard_main.html:25
msgid "Users"
msgstr ""
-#: models.py:1660
+#: models.py:1661
msgid "Associated model"
msgstr ""
-#: models.py:1663
+#: models.py:1664
msgid "Is template"
msgstr ""
-#: models.py:1664
+#: models.py:1665
msgid "Unicity keys (separator \";\")"
msgstr ""
-#: models.py:1668
+#: models.py:1669
msgid "Importer - Type"
msgstr ""
-#: models.py:1669
+#: models.py:1670
msgid "Importer - Types"
msgstr ""
-#: models.py:1759
+#: models.py:1760
msgid "Importer - Default"
msgstr ""
-#: models.py:1760
+#: models.py:1761
msgid "Importer - Defaults"
msgstr ""
-#: models.py:1795
+#: models.py:1796
msgid "Importer - Default value"
msgstr ""
-#: models.py:1796
+#: models.py:1797
msgid "Importer - Default values"
msgstr ""
-#: models.py:1829
+#: models.py:1830
msgid "Column number"
msgstr ""
-#: models.py:1832
+#: models.py:1833
msgid "Required"
msgstr ""
-#: models.py:1835
+#: models.py:1836
msgid "Importer - Column"
msgstr ""
-#: models.py:1836
+#: models.py:1837
msgid "Importer - Columns"
msgstr ""
-#: models.py:1856
+#: models.py:1857
msgid "Field name"
msgstr ""
-#: models.py:1858 models.py:1892
+#: models.py:1859 models.py:1893
msgid "Force creation of new items"
msgstr ""
-#: models.py:1860 models.py:1894
+#: models.py:1861 models.py:1895
msgid "Concatenate with existing"
msgstr ""
-#: models.py:1862 models.py:1896
+#: models.py:1863 models.py:1897
msgid "Concatenate character"
msgstr ""
-#: models.py:1866
+#: models.py:1867
msgid "Importer - Duplicate field"
msgstr ""
-#: models.py:1867
+#: models.py:1868
msgid "Importer - Duplicate fields"
msgstr ""
-#: models.py:1874
+#: models.py:1875
msgid "Regular expression"
msgstr ""
-#: models.py:1877
+#: models.py:1878
msgid "Importer - Regular expression"
msgstr ""
-#: models.py:1878
+#: models.py:1879
msgid "Importer - Regular expressions"
msgstr ""
-#: models.py:1901
+#: models.py:1902
msgid "Importer - Target"
msgstr ""
-#: models.py:1902
+#: models.py:1903
msgid "Importer - Targets"
msgstr ""
-#: models.py:1926 views.py:536
+#: models.py:1927 views.py:536
msgid "True"
msgstr ""
-#: models.py:1927 views.py:538
+#: models.py:1928 views.py:538
msgid "False"
msgstr ""
-#: models.py:1946
+#: models.py:1947
msgid "Is set"
msgstr ""
-#: models.py:1953
+#: models.py:1954
msgid "Importer - Target key"
msgstr ""
-#: models.py:1954
+#: models.py:1955
msgid "Importer - Targets keys"
msgstr ""
-#: models.py:2006 models.py:2736 models.py:2749
+#: models.py:2007 models.py:2737 models.py:2750
msgid "Format"
msgstr ""
-#: models.py:2007 models.py:2841
+#: models.py:2008 models.py:2842
msgid "Operation type"
msgstr ""
-#: models.py:2008
+#: models.py:2009
msgid "Period"
msgstr ""
-#: models.py:2009
+#: models.py:2010
msgid "Report state"
msgstr ""
-#: models.py:2010
+#: models.py:2011
msgid "Remain type"
msgstr ""
-#: models.py:2011
+#: models.py:2012
msgid "Unit"
msgstr ""
-#: models.py:2012
+#: models.py:2013
msgid "Activity type"
msgstr ""
-#: models.py:2013
+#: models.py:2014
msgid "Material"
msgstr ""
-#: models.py:2015
+#: models.py:2016
msgid "Conservatory state"
msgstr ""
-#: models.py:2016
+#: models.py:2017
msgid "Preservation type"
msgstr ""
-#: models.py:2017
+#: models.py:2018
msgid "Object type"
msgstr ""
-#: models.py:2019
+#: models.py:2020
msgid "Identification type"
msgstr ""
-#: models.py:2021
+#: models.py:2022
msgid "Context record relation type"
msgstr ""
-#: models.py:2022 models.py:2728
+#: models.py:2023 models.py:2729
msgid "Support type"
msgstr ""
-#: models.py:2028
+#: models.py:2029
msgid "Integer"
msgstr ""
-#: models.py:2029
+#: models.py:2030
msgid "Float"
msgstr ""
-#: models.py:2030
+#: models.py:2031
msgid "String"
msgstr ""
-#: models.py:2031 templates/sheet_ope.html:86
+#: models.py:2032 templates/sheet_ope.html:86
msgid "Date"
msgstr ""
-#: models.py:2033 templates/sheet_ope.html:61 templates/sheet_ope.html.py:83
+#: models.py:2034 templates/sheet_ope.html:61 templates/sheet_ope.html.py:83
#: templates/ishtar/dashboards/dashboard_main_detail.html:126
msgid "Year"
msgstr ""
-#: models.py:2034
+#: models.py:2035
msgid "String to boolean"
msgstr ""
-#: models.py:2035
+#: models.py:2036
msgctxt "filesystem"
msgid "File"
msgstr ""
-#: models.py:2036
+#: models.py:2037
msgid "Unknow type"
msgstr ""
-#: models.py:2052
+#: models.py:2053
msgid "4 digit year. e.g.: \"2015\""
msgstr ""
-#: models.py:2053
+#: models.py:2054
msgid "4 digit year/month/day. e.g.: \"2015/02/04\""
msgstr ""
-#: models.py:2054
+#: models.py:2055
msgid "Day/month/4 digit year. e.g.: \"04/02/2015\""
msgstr ""
-#: models.py:2064
+#: models.py:2065
msgid "Options"
msgstr ""
-#: models.py:2066
+#: models.py:2067
msgid "Split character(s)"
msgstr ""
-#: models.py:2070
+#: models.py:2071
msgid "Importer - Formater type"
msgstr ""
-#: models.py:2071
+#: models.py:2072
msgid "Importer - Formater types"
msgstr ""
-#: models.py:2120 templates/ishtar/dashboards/dashboard_main_detail.html:63
+#: models.py:2121 templates/ishtar/dashboards/dashboard_main_detail.html:63
msgid "Created"
msgstr ""
-#: models.py:2121
+#: models.py:2122
msgid "Analyse in progress"
msgstr ""
-#: models.py:2122
+#: models.py:2123
msgid "Analysed"
msgstr ""
-#: models.py:2123
+#: models.py:2124
msgid "Import pending"
msgstr ""
-#: models.py:2124
+#: models.py:2125
msgid "Import in progress"
msgstr ""
-#: models.py:2125
+#: models.py:2126
msgid "Finished with errors"
msgstr ""
-#: models.py:2126
+#: models.py:2127
msgid "Finished"
msgstr ""
-#: models.py:2127
+#: models.py:2128
msgid "Archived"
msgstr ""
-#: models.py:2139
+#: models.py:2140
msgid "Imported file"
msgstr ""
-#: models.py:2142
+#: models.py:2143
msgid "Associated images (zip file)"
msgstr ""
-#: models.py:2144
+#: models.py:2145
msgid "Encoding"
msgstr ""
-#: models.py:2146
+#: models.py:2147
msgid "Skip lines"
msgstr ""
-#: models.py:2147 templates/ishtar/import_list.html:47
+#: models.py:2148 templates/ishtar/import_list.html:47
msgid "Error file"
msgstr ""
-#: models.py:2150
+#: models.py:2151
msgid "Result file"
msgstr ""
-#: models.py:2153 templates/ishtar/import_list.html:53
+#: models.py:2154 templates/ishtar/import_list.html:53
msgid "Match file"
msgstr ""
-#: models.py:2159
+#: models.py:2160
msgid "Conservative import"
msgstr ""
-#: models.py:2164
+#: models.py:2165
msgid "End date"
msgstr ""
-#: models.py:2166
+#: models.py:2167
msgid "Remaining seconds"
msgstr ""
-#: models.py:2171
+#: models.py:2172
msgid "Import"
msgstr ""
-#: models.py:2188
+#: models.py:2189
msgid "Analyse"
msgstr ""
-#: models.py:2190 models.py:2193
+#: models.py:2191 models.py:2194
msgid "Re-analyse"
msgstr ""
-#: models.py:2191
+#: models.py:2192
msgid "Launch import"
msgstr ""
-#: models.py:2194
+#: models.py:2195
msgid "Re-import"
msgstr ""
-#: models.py:2195
+#: models.py:2196
msgid "Archive"
msgstr ""
-#: models.py:2197
+#: models.py:2198
msgid "Unarchive"
msgstr ""
-#: models.py:2198 widgets.py:129 templates/ishtar/form_delete.html:11
+#: models.py:2199 widgets.py:130 templates/ishtar/form_delete.html:11
msgid "Delete"
msgstr ""
-#: models.py:2339
+#: models.py:2340
msgid "Organizations"
msgstr ""
-#: models.py:2341
+#: models.py:2342
msgid "Can view all Organizations"
msgstr ""
-#: models.py:2342
+#: models.py:2343
msgid "Can view own Organization"
msgstr ""
-#: models.py:2343
+#: models.py:2344
msgid "Can add own Organization"
msgstr ""
-#: models.py:2345
+#: models.py:2346
msgid "Can change own Organization"
msgstr ""
-#: models.py:2347
+#: models.py:2348
msgid "Can delete own Organization"
msgstr ""
-#: models.py:2382
+#: models.py:2383
msgid "Groups"
msgstr ""
-#: models.py:2387
+#: models.py:2388
msgid "Person types"
msgstr ""
-#: models.py:2398
+#: models.py:2399
msgid "Title type"
msgstr ""
-#: models.py:2399
+#: models.py:2400
msgid "Title types"
msgstr ""
-#: models.py:2408
+#: models.py:2409
msgid "Mr"
msgstr ""
-#: models.py:2409
+#: models.py:2410
msgid "Miss"
msgstr ""
-#: models.py:2410
+#: models.py:2411
msgid "Mr and Mrs"
msgstr ""
-#: models.py:2411
+#: models.py:2412
msgid "Mrs"
msgstr ""
-#: models.py:2412
+#: models.py:2413
msgid "Doctor"
msgstr ""
-#: models.py:2442
+#: models.py:2443
msgid "Contact type"
msgstr ""
-#: models.py:2445 models.py:2509
+#: models.py:2446 models.py:2510
msgid "Types"
msgstr ""
-#: models.py:2448
+#: models.py:2449
msgid "Is attached to"
msgstr ""
-#: models.py:2453
+#: models.py:2454
msgid "Persons"
msgstr ""
-#: models.py:2455
+#: models.py:2456
msgid "Can view all Persons"
msgstr ""
-#: models.py:2456
+#: models.py:2457
msgid "Can view own Person"
msgstr ""
-#: models.py:2457
+#: models.py:2458
msgid "Can add own Person"
msgstr ""
-#: models.py:2458
+#: models.py:2459
msgid "Can change own Person"
msgstr ""
-#: models.py:2459
+#: models.py:2460
msgid "Can delete own Person"
msgstr ""
-#: models.py:2637
+#: models.py:2638
msgid "Advanced shortcut menu"
msgstr ""
-#: models.py:2640
+#: models.py:2641
msgid "Ishtar user"
msgstr ""
-#: models.py:2641
+#: models.py:2642
msgid "Ishtar users"
msgstr ""
-#: models.py:2683
+#: models.py:2684
msgid "To modify the password use the form in Auth > User"
msgstr ""
-#: models.py:2689
+#: models.py:2690
msgid "Author types"
msgstr ""
-#: models.py:2721
+#: models.py:2722
msgid "Source types"
msgstr ""
-#: models.py:2729
+#: models.py:2730
msgid "Support types"
msgstr ""
-#: models.py:2737
+#: models.py:2738
msgid "Formats"
msgstr ""
-#: models.py:2744
+#: models.py:2745
msgid "External ID"
msgstr ""
-#: models.py:2747
+#: models.py:2748
msgid "Support"
msgstr ""
-#: models.py:2751
+#: models.py:2752
msgid "Scale"
msgstr ""
-#: models.py:2765
+#: models.py:2766
msgid "Item number"
msgstr ""
-#: models.py:2766
+#: models.py:2767
msgid "Ref."
msgstr ""
-#: models.py:2769
+#: models.py:2770
msgid "Internal ref."
msgstr ""
-#: models.py:2812
+#: models.py:2813
msgid "Surface (m2)"
msgstr ""
-#: models.py:2813 templates/sheet_ope.html:46 templates/sheet_ope.html.py:107
+#: models.py:2814 templates/sheet_ope.html:46 templates/sheet_ope.html.py:107
msgid "Localisation"
msgstr ""
-#: models.py:2838
+#: models.py:2839
msgid "Is preventive"
msgstr ""
-#: models.py:2842
+#: models.py:2843
msgid "Operation types"
msgstr ""
-#: models.py:2871
+#: models.py:2872
msgid "Preventive"
msgstr ""
-#: models.py:2872
+#: models.py:2873
msgid "Research"
msgstr ""
-#: utils.py:81
+#: models.py:2895
+msgid "SRID"
+msgstr ""
+
+#: models.py:2898
+msgid "Spatial reference system"
+msgstr ""
+
+#: models.py:2899
+msgid "Spatial reference systems"
+msgstr ""
+
+#: utils.py:83
msgid " (...)"
msgstr ""
-#: utils.py:114
+#: utils.py:116
msgid "Load another random image?"
msgstr ""
@@ -1446,47 +1462,47 @@ msgstr ""
msgid "Finds"
msgstr ""
-#: views.py:1599 templates/ishtar/import_list.html:43
+#: views.py:1600 templates/ishtar/import_list.html:43
msgid "Link unmatched items"
msgstr ""
-#: views.py:1614
+#: views.py:1615
msgid "Delete import"
msgstr ""
-#: views.py:1653
+#: views.py:1654
msgid "Merge persons"
msgstr ""
-#: views.py:1677
+#: views.py:1678
msgid "Select the main person"
msgstr ""
-#: views.py:1686
+#: views.py:1687
msgid "Merge organization"
msgstr ""
-#: views.py:1696
+#: views.py:1697
msgid "Select the main organization"
msgstr ""
-#: views.py:1736 views.py:1752
+#: views.py:1737 views.py:1753
msgid "Corporation manager"
msgstr ""
-#: widgets.py:258 widgets.py:365 widgets.py:480
+#: widgets.py:259 widgets.py:366 widgets.py:481
msgid "Search..."
msgstr ""
-#: widgets.py:670 templatetags/window_tables.py:91
+#: widgets.py:671 templatetags/window_tables.py:91
msgid "No results"
msgstr ""
-#: widgets.py:671 templatetags/window_tables.py:92
+#: widgets.py:672 templatetags/window_tables.py:92
msgid "Loading..."
msgstr ""
-#: widgets.py:672
+#: widgets.py:673
msgid "Remove"
msgstr ""
diff --git a/ishtar_common/migrations/0018_auto__add_spatialreferencesystem__add_field_ishtarsiteprofile_mapping.py b/ishtar_common/migrations/0018_auto__add_spatialreferencesystem__add_field_ishtarsiteprofile_mapping.py
new file mode 100644
index 000000000..2c1dc8a49
--- /dev/null
+++ b/ishtar_common/migrations/0018_auto__add_spatialreferencesystem__add_field_ishtarsiteprofile_mapping.py
@@ -0,0 +1,491 @@
+# -*- 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 'SpatialReferenceSystem'
+ db.create_table('ishtar_common_spatialreferencesystem', (
+ ('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=100)),
+ ('comment', self.gf('django.db.models.fields.TextField')(null=True, blank=True)),
+ ('available', self.gf('django.db.models.fields.BooleanField')(default=True)),
+ ('order', self.gf('django.db.models.fields.IntegerField')(default=10)),
+ ('srid', self.gf('django.db.models.fields.IntegerField')()),
+ ))
+ db.send_create_signal('ishtar_common', ['SpatialReferenceSystem'])
+
+ # Adding field 'IshtarSiteProfile.mapping'
+ db.add_column('ishtar_common_ishtarsiteprofile', 'mapping',
+ self.gf('django.db.models.fields.BooleanField')(default=False),
+ keep_default=False)
+
+
+ def backwards(self, orm):
+ # Deleting model 'SpatialReferenceSystem'
+ db.delete_table('ishtar_common_spatialreferencesystem')
+
+ # Deleting field 'IshtarSiteProfile.mapping'
+ db.delete_column('ishtar_common_ishtarsiteprofile', 'mapping')
+
+
+ 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', [], {'related_name': "'author'", 'to': "orm['ishtar_common.Person']"})
+ },
+ 'ishtar_common.authortype': {
+ 'Meta': {'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'}),
+ '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': {'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': '100', 'null': 'True', 'blank': 'True'}),
+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'imported_file': ('django.db.models.fields.files.FileField', [], {'max_length': '100'}),
+ 'imported_images': ('django.db.models.fields.files.FileField', [], {'max_length': '100', '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': '100', 'null': 'True', 'blank': 'True'}),
+ 'result_file': ('django.db.models.fields.files.FileField', [], {'max_length': '100', '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'}),
+ '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.importertype': {
+ 'Meta': {'object_name': 'ImporterType'},
+ 'associated_models': ('django.db.models.fields.CharField', [], {'max_length': '200'}),
+ '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_find_external_id': ('django.db.models.fields.TextField', [], {'default': "'{context_record__external_id}-{label}'"}),
+ 'context_record': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
+ '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'}),
+ 'find': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
+ 'find_external_id': ('django.db.models.fields.TextField', [], {'default': "'{get_first_base_find__context_record__external_id}-{label}'"}),
+ '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'}),
+ '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'})
+ },
+ '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': {'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'},
+ '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/models.py b/ishtar_common/models.py
index ccb817adc..7451d9b33 100644
--- a/ishtar_common/models.py
+++ b/ishtar_common/models.py
@@ -1042,6 +1042,7 @@ class IshtarSiteProfile(models.Model, Cached):
warehouse = models.BooleanField(
_(u"Warehouses module"), default=False,
help_text=_(u"Need finds module"))
+ mapping = models.BooleanField(_(u"Mapping module"), default=False)
homepage = models.TextField(
_(u"Home page"), null=True, blank=True,
help_text=_(u"Homepage of Ishtar - if not defined a default homepage "
@@ -2887,3 +2888,15 @@ class OperationType(GeneralType):
return key == op_type.txt_idx
post_save.connect(post_save_cache, sender=OperationType)
post_delete.connect(post_save_cache, sender=OperationType)
+
+
+class SpatialReferenceSystem(GeneralType):
+ order = models.IntegerField(_(u"Order"), default=10)
+ srid = models.IntegerField(_(u"SRID"))
+
+ class Meta:
+ verbose_name = _(u"Spatial reference system")
+ verbose_name_plural = _(u"Spatial reference systems")
+ ordering = ('label',)
+post_save.connect(post_save_cache, sender=SpatialReferenceSystem)
+post_delete.connect(post_save_cache, sender=SpatialReferenceSystem)
diff --git a/ishtar_common/utils.py b/ishtar_common/utils.py
index 9b3c85694..ddd9268ce 100644
--- a/ishtar_common/utils.py
+++ b/ishtar_common/utils.py
@@ -20,7 +20,9 @@
import hashlib
import random
+from django import forms
from django.conf import settings
+from django.contrib.gis.geos import GEOSGeometry
from django.core.cache import cache
from django.core.urlresolvers import reverse
from django.utils.safestring import mark_safe
@@ -151,3 +153,39 @@ def get_random_item_image_link(request):
image_nb - ope_image_nb - cr_image_nb])
# should never happen except in case of deletion during the excution
return ''
+
+
+def convert_coordinates_to_point(x, y, z=None, srid=4326):
+ if z:
+ geom = GEOSGeometry('POINT({} {} {})'.format(x, y, z), srid=srid)
+ else:
+ geom = GEOSGeometry('POINT({} {})'.format(x, y), srid=srid)
+ if not geom.valid:
+ raise forms.ValidationError(geom.valid_reason)
+ return geom
+
+
+def post_save_point(sender, **kwargs):
+ """
+ Convert raw x, y, z point to real geo field
+ """
+ if not kwargs.get('instance'):
+ return
+ instance = kwargs.get('instance')
+ point = None
+ point_2d = None
+ if instance.x and instance.y and \
+ instance.spatial_reference_system and \
+ instance.spatial_reference_system.srid != 0:
+ point_2d = convert_coordinates_to_point(
+ instance.x, instance.y, srid=instance.spatial_reference_system.srid)
+ if instance.z:
+ point = convert_coordinates_to_point(
+ instance.x, instance.y, instance.z,
+ srid=instance.spatial_reference_system.srid)
+ if point_2d != instance.point_2d or point != instance.point:
+ instance.point = point
+ instance.point_2d = point_2d
+ instance.skip_history_when_saving = True
+ instance.save()
+ return
diff --git a/ishtar_common/views.py b/ishtar_common/views.py
index d827ae065..c4525b18b 100644
--- a/ishtar_common/views.py
+++ b/ishtar_common/views.py
@@ -1585,6 +1585,7 @@ class ImportListView(IshtarMixin, LoginRequiredMixin, ListView):
class ImportOldListView(ImportListView):
+ page_name = _(u"Old imports")
current_url = 'old_imports'
def get_queryset(self):
diff --git a/translations/de/ishtar_common.po b/translations/de/ishtar_common.po
index e281d0e4f..db0d1594e 100644
--- a/translations/de/ishtar_common.po
+++ b/translations/de/ishtar_common.po
@@ -158,12 +158,12 @@ msgstr ""
msgid "Add a new item"
msgstr ""
-#: forms.py:262 models.py:1367
+#: forms.py:262 models.py:1368
msgid "Template"
msgstr ""
#: forms_common.py:41 forms_common.py:59 forms_common.py:182
-#: forms_common.py:406 models.py:1433 models.py:2825
+#: forms_common.py:406 models.py:1434 models.py:2826
#: templates/blocks/JQueryAdvancedTown.html:19
#: templates/ishtar/sheet_organization.html:13
msgid "Town"
@@ -179,8 +179,8 @@ msgid ""
"french town Saint-Denis in the Seine-Saint-Denis department.</p>"
msgstr ""
-#: forms_common.py:68 forms_common.py:855 ishtar_menu.py:47 models.py:1606
-#: models.py:2452 models.py:2634 models.py:2695
+#: forms_common.py:68 forms_common.py:855 ishtar_menu.py:47 models.py:1607
+#: models.py:2453 models.py:2635 models.py:2696
#: templates/ishtar/sheet_person.html:4
msgid "Person"
msgstr ""
@@ -192,63 +192,63 @@ msgid ""
msgstr ""
#: forms_common.py:170 forms_common.py:327 forms_common.py:451
-#: ishtar_menu.py:75 models.py:1607 models.py:2338
+#: ishtar_menu.py:75 models.py:1608 models.py:2339
#: templates/ishtar/sheet_organization.html:4
msgid "Organization"
msgstr ""
#: forms_common.py:173 forms_common.py:210 forms_common.py:322
-#: forms_common.py:376 forms_common.py:446 models.py:1034 models.py:1366
-#: models.py:1652 models.py:1871 models.py:2332 models.py:2438 models.py:2811
+#: forms_common.py:376 forms_common.py:446 models.py:1034 models.py:1367
+#: models.py:1653 models.py:1872 models.py:2333 models.py:2439 models.py:2812
#: templates/ishtar/sheet_organization.html:8
#: templates/ishtar/sheet_organization.html:21
msgid "Name"
msgstr ""
-#: forms_common.py:174 models.py:1588 models.py:2002
+#: forms_common.py:174 models.py:1589 models.py:2003
msgid "Organization type"
msgstr ""
-#: forms_common.py:176 forms_common.py:400 models.py:1428
+#: forms_common.py:176 forms_common.py:400 models.py:1429
#: templates/ishtar/sheet_organization.html:10
msgid "Address"
msgstr ""
-#: forms_common.py:178 forms_common.py:403 models.py:1429
+#: forms_common.py:178 forms_common.py:403 models.py:1430
#: templates/ishtar/sheet_organization.html:11
msgid "Address complement"
msgstr ""
-#: forms_common.py:180 forms_common.py:404 models.py:1431
+#: forms_common.py:180 forms_common.py:404 models.py:1432
#: templates/ishtar/sheet_organization.html:12
msgid "Postal code"
msgstr ""
-#: forms_common.py:183 forms_common.py:407 models.py:1434
+#: forms_common.py:183 forms_common.py:407 models.py:1435
msgid "Country"
msgstr ""
#: forms_common.py:185 forms_common.py:324 forms_common.py:380
-#: forms_common.py:448 forms_common.py:572 models.py:1461
+#: forms_common.py:448 forms_common.py:572 models.py:1462
msgid "Email"
msgstr ""
-#: forms_common.py:186 forms_common.py:383 models.py:1446
+#: forms_common.py:186 forms_common.py:383 models.py:1447
#: templates/ishtar/sheet_organization.html:14
#: templates/ishtar/sheet_person.html:19
#: templates/ishtar/wizard/wizard_person.html:17
msgid "Phone"
msgstr ""
-#: forms_common.py:187 forms_common.py:392 models.py:1458
+#: forms_common.py:187 forms_common.py:392 models.py:1459
#: templates/ishtar/sheet_organization.html:15
#: templates/ishtar/sheet_person.html:37
#: templates/ishtar/wizard/wizard_person.html:35
msgid "Mobile phone"
msgstr ""
-#: forms_common.py:211 forms_common.py:325 forms_common.py:449 models.py:2032
-#: models.py:2334 models.py:2746 templates/sheet_ope.html:85
+#: forms_common.py:211 forms_common.py:325 forms_common.py:449 models.py:2033
+#: models.py:2335 models.py:2747 templates/sheet_ope.html:85
#: templates/sheet_ope.html.py:105 templates/sheet_ope.html:126
#: templates/ishtar/import_list.html:13
#: templates/ishtar/sheet_organization.html:23
@@ -272,7 +272,7 @@ msgstr ""
msgid "Organization to merge"
msgstr ""
-#: forms_common.py:323 forms_common.py:374 forms_common.py:447 models.py:2436
+#: forms_common.py:323 forms_common.py:374 forms_common.py:447 models.py:2437
#: templates/ishtar/sheet_organization.html:22
msgid "Surname"
msgstr ""
@@ -290,25 +290,25 @@ msgstr ""
msgid "Identity"
msgstr ""
-#: forms_common.py:371 forms_common.py:773 forms_common.py:822 models.py:2003
-#: models.py:2430 models.py:2432 models.py:2743 templates/sheet_ope.html:104
+#: forms_common.py:371 forms_common.py:773 forms_common.py:822 models.py:2004
+#: models.py:2431 models.py:2433 models.py:2744 templates/sheet_ope.html:104
#: templates/ishtar/blocks/window_tables/documents.html:7
msgid "Title"
msgstr ""
-#: forms_common.py:372 models.py:2434
+#: forms_common.py:372 models.py:2435
msgid "Salutation"
msgstr ""
-#: forms_common.py:378 models.py:2440
+#: forms_common.py:378 models.py:2441
msgid "Raw name"
msgstr ""
-#: forms_common.py:381 models.py:1447
+#: forms_common.py:381 models.py:1448
msgid "Phone description"
msgstr ""
-#: forms_common.py:384 models.py:1449 models.py:1451
+#: forms_common.py:384 models.py:1450 models.py:1452
msgid "Phone description 2"
msgstr ""
@@ -316,11 +316,11 @@ msgstr ""
msgid "Phone 2"
msgstr ""
-#: forms_common.py:388 models.py:1455
+#: forms_common.py:388 models.py:1456
msgid "Phone description 3"
msgstr ""
-#: forms_common.py:390 models.py:1453
+#: forms_common.py:390 models.py:1454
msgid "Phone 3"
msgstr ""
@@ -328,23 +328,23 @@ msgstr ""
msgid "Current organization"
msgstr ""
-#: forms_common.py:409 models.py:1436
+#: forms_common.py:409 models.py:1437
msgid "Other address: address"
msgstr ""
-#: forms_common.py:412 models.py:1439
+#: forms_common.py:412 models.py:1440
msgid "Other address: address complement"
msgstr ""
-#: forms_common.py:414 models.py:1440
+#: forms_common.py:414 models.py:1441
msgid "Other address: postal code"
msgstr ""
-#: forms_common.py:416 models.py:1442
+#: forms_common.py:416 models.py:1443
msgid "Other address: town"
msgstr ""
-#: forms_common.py:418 models.py:1444
+#: forms_common.py:418 models.py:1445
msgid "Other address: country"
msgstr ""
@@ -360,7 +360,7 @@ msgstr ""
msgid "Account search"
msgstr ""
-#: forms_common.py:510 forms_common.py:550 forms_common.py:554 models.py:2386
+#: forms_common.py:510 forms_common.py:550 forms_common.py:554 models.py:2387
msgid "Person type"
msgstr ""
@@ -392,7 +392,7 @@ msgstr ""
msgid "Send the new password by email?"
msgstr ""
-#: forms_common.py:628 forms_common.py:641 models.py:2826
+#: forms_common.py:628 forms_common.py:641 models.py:2827
msgid "Towns"
msgstr ""
@@ -408,7 +408,7 @@ msgstr ""
msgid "Documentation informations"
msgstr ""
-#: forms_common.py:775 forms_common.py:823 models.py:2004 models.py:2720
+#: forms_common.py:775 forms_common.py:823 models.py:2005 models.py:2721
msgid "Source type"
msgstr ""
@@ -420,37 +420,37 @@ msgstr ""
msgid "Internal reference"
msgstr ""
-#: forms_common.py:783 models.py:2757
+#: forms_common.py:783 models.py:2758
msgid "Numerical ressource (web address)"
msgstr ""
-#: forms_common.py:784 models.py:2759
+#: forms_common.py:784 models.py:2760
msgid "Receipt date"
msgstr ""
-#: forms_common.py:786 models.py:2161 models.py:2761
+#: forms_common.py:786 models.py:2162 models.py:2762
msgid "Creation date"
msgstr ""
-#: forms_common.py:789 models.py:2764
+#: forms_common.py:789 models.py:2765
msgid "Receipt date in documentation"
msgstr ""
#: forms_common.py:791 forms_common.py:827 models.py:323 models.py:634
-#: models.py:1898 models.py:2444 models.py:2771
+#: models.py:1899 models.py:2445 models.py:2772
msgid "Comment"
msgstr ""
-#: forms_common.py:793 forms_common.py:826 models.py:1036 models.py:1656
-#: models.py:1830 models.py:1872 models.py:2770 templates/sheet_ope.html:128
+#: forms_common.py:793 forms_common.py:826 models.py:1036 models.py:1657
+#: models.py:1831 models.py:1873 models.py:2771 templates/sheet_ope.html:128
msgid "Description"
msgstr ""
-#: forms_common.py:796 models.py:2772
+#: forms_common.py:796 models.py:2773
msgid "Additional information"
msgstr ""
-#: forms_common.py:798 forms_common.py:830 models.py:2774
+#: forms_common.py:798 forms_common.py:830 models.py:2775
msgid "Has a duplicate"
msgstr ""
@@ -465,7 +465,7 @@ msgid ""
"p>"
msgstr ""
-#: forms_common.py:819 forms_common.py:848 forms_common.py:882 models.py:2700
+#: forms_common.py:819 forms_common.py:848 forms_common.py:882 models.py:2701
#: templates/ishtar/wizard/wizard_person_deletion.html:124
msgid "Author"
msgstr ""
@@ -478,7 +478,7 @@ msgstr ""
msgid "Would you like to delete this documentation?"
msgstr ""
-#: forms_common.py:856 models.py:2005 models.py:2688 models.py:2697
+#: forms_common.py:856 models.py:2006 models.py:2689 models.py:2698
msgid "Author type"
msgstr ""
@@ -490,7 +490,7 @@ msgstr ""
msgid "There are identical authors."
msgstr ""
-#: forms_common.py:893 models.py:2701 models.py:2753
+#: forms_common.py:893 models.py:2702 models.py:2754
#: templates/sheet_ope.html:106
#: templates/ishtar/blocks/window_tables/documents.html:9
msgid "Authors"
@@ -508,7 +508,7 @@ msgstr ""
msgid "Deletion"
msgstr ""
-#: ishtar_menu.py:39 models.py:1162 views.py:1530
+#: ishtar_menu.py:39 models.py:1163 views.py:1530
msgid "Global variables"
msgstr ""
@@ -536,7 +536,7 @@ msgstr ""
msgid "Manual merge"
msgstr ""
-#: ishtar_menu.py:109 models.py:2172
+#: ishtar_menu.py:109 models.py:2173
msgid "Imports"
msgstr ""
@@ -548,7 +548,7 @@ msgstr ""
msgid "Current imports"
msgstr ""
-#: ishtar_menu.py:120
+#: ishtar_menu.py:120 views.py:1588
msgid "Old imports"
msgstr ""
@@ -564,7 +564,7 @@ msgstr ""
msgid "This item already exists."
msgstr ""
-#: models.py:319 models.py:633 models.py:1401 models.py:1413 models.py:1827
+#: models.py:319 models.py:633 models.py:1402 models.py:1414 models.py:1828
msgid "Label"
msgstr ""
@@ -572,11 +572,11 @@ msgstr ""
msgid "Textual ID"
msgstr ""
-#: models.py:324 models.py:636 models.py:1370
+#: models.py:324 models.py:636 models.py:1371
msgid "Available"
msgstr ""
-#: models.py:655 models.py:1944
+#: models.py:655 models.py:1945
msgid "Key"
msgstr ""
@@ -592,7 +592,7 @@ msgstr ""
msgid "Creator"
msgstr ""
-#: models.py:898 models.py:2837
+#: models.py:898 models.py:2838 models.py:2894
msgid "Order"
msgstr ""
@@ -616,7 +616,7 @@ msgstr ""
msgid "US dollar"
msgstr ""
-#: models.py:1035 models.py:1654
+#: models.py:1035 models.py:1655
msgid "Slug"
msgstr ""
@@ -644,120 +644,124 @@ msgstr ""
msgid "Need finds module"
msgstr ""
-#: models.py:1046
-msgid "Home page"
+#: models.py:1045
+msgid "Mapping module"
msgstr ""
#: models.py:1047
+msgid "Home page"
+msgstr ""
+
+#: models.py:1048
#, python-brace-format
msgid ""
"Homepage of Ishtar - if not defined a default homepage will appear. Use the "
"markdown syntax. {random_image} can be used to display a random image."
msgstr ""
-#: models.py:1051
+#: models.py:1052
msgid "File external id"
msgstr ""
-#: models.py:1053
+#: models.py:1054
msgid ""
"Formula to manage file external ID. Change this with care. With incorrect "
"formula, the application might be unusable and import of external data can "
"be destructive."
msgstr ""
-#: models.py:1058
+#: models.py:1059
msgid "Parcel external id"
msgstr ""
-#: models.py:1061
+#: models.py:1062
msgid ""
"Formula to manage parcel external ID. Change this with care. With incorrect "
"formula, the application might be unusable and import of external data can "
"be destructive."
msgstr ""
-#: models.py:1066
+#: models.py:1067
msgid "Context record external id"
msgstr ""
-#: models.py:1068
+#: models.py:1069
msgid ""
"Formula to manage context record external ID. Change this with care. With "
"incorrect formula, the application might be unusable and import of external "
"data can be destructive."
msgstr ""
-#: models.py:1073
+#: models.py:1074
msgid "Base find external id"
msgstr ""
-#: models.py:1075
+#: models.py:1076
msgid ""
"Formula to manage base find external ID. Change this with care. With "
"incorrect formula, the application might be unusable and import of external "
"data can be destructive."
msgstr ""
-#: models.py:1080
+#: models.py:1081
msgid "Find external id"
msgstr ""
-#: models.py:1082
+#: models.py:1083
msgid ""
"Formula to manage find external ID. Change this with care. With incorrect "
"formula, the application might be unusable and import of external data can "
"be destructive."
msgstr ""
-#: models.py:1087
+#: models.py:1088
msgid "Raw name for person"
msgstr ""
-#: models.py:1089
+#: models.py:1090
msgid ""
"Formula to manage person raw_name. Change this with care. With incorrect "
"formula, the application might be unusable and import of external data can "
"be destructive."
msgstr ""
-#: models.py:1093
+#: models.py:1094
msgid "Current active"
msgstr ""
-#: models.py:1094
+#: models.py:1095
msgid "Currency"
msgstr ""
-#: models.py:1098
+#: models.py:1099
msgid "Ishtar site profile"
msgstr ""
-#: models.py:1099
+#: models.py:1100
msgid "Ishtar site profiles"
msgstr ""
-#: models.py:1155
+#: models.py:1156
msgid "Variable name"
msgstr ""
-#: models.py:1156
+#: models.py:1157
msgid "Description of the variable"
msgstr ""
-#: models.py:1158 models.py:1945
+#: models.py:1159 models.py:1946
msgid "Value"
msgstr ""
-#: models.py:1161
+#: models.py:1162
msgid "Global variable"
msgstr ""
-#: models.py:1271 models.py:1301
+#: models.py:1272 models.py:1302
msgid "Total"
msgstr ""
-#: models.py:1278 models.py:1402 models.py:1414
+#: models.py:1279 models.py:1403 models.py:1415
#: templates/ishtar/sheet_person.html:22
#: templates/ishtar/dashboards/dashboard_main_detail.html:141
#: templates/ishtar/dashboards/dashboard_main_detail_users.html:26
@@ -765,617 +769,629 @@ msgstr ""
msgid "Number"
msgstr ""
-#: models.py:1365
+#: models.py:1366
msgid "Administrative Act"
msgstr ""
-#: models.py:1369
+#: models.py:1370
msgid "Associated object"
msgstr ""
-#: models.py:1373
+#: models.py:1374
msgid "Document template"
msgstr ""
-#: models.py:1374
+#: models.py:1375
msgid "Document templates"
msgstr ""
-#: models.py:1405 models.py:1415 models.py:2156
+#: models.py:1406 models.py:1416 models.py:2157
msgid "State"
msgstr ""
-#: models.py:1419 templates/blocks/JQueryAdvancedTown.html:12
+#: models.py:1420 templates/blocks/JQueryAdvancedTown.html:12
msgid "Department"
msgstr ""
-#: models.py:1420
+#: models.py:1421
msgid "Departments"
msgstr ""
-#: models.py:1457
+#: models.py:1458
msgid "Raw phone"
msgstr ""
-#: models.py:1463
+#: models.py:1464
msgid "Alternative address is prefered"
msgstr ""
-#: models.py:1502
+#: models.py:1503
msgid "Tel: "
msgstr ""
-#: models.py:1506
+#: models.py:1507
msgid "Mobile: "
msgstr ""
-#: models.py:1510
+#: models.py:1511
msgid "Email: "
msgstr ""
-#: models.py:1515
+#: models.py:1516
msgid "Merge key"
msgstr ""
-#: models.py:1589
+#: models.py:1590
msgid "Organization types"
msgstr ""
-#: models.py:1608 views.py:237
+#: models.py:1609 views.py:237
msgid "Operation"
msgstr ""
-#: models.py:1610
+#: models.py:1611
msgid "Archaeological site"
msgstr ""
-#: models.py:1611
+#: models.py:1612
msgid "Parcels"
msgstr ""
-#: models.py:1613
+#: models.py:1614
msgid "Operation source"
msgstr ""
-#: models.py:1616 views.py:1346 views.py:1396
+#: models.py:1617 views.py:1346 views.py:1396
msgid "Archaeological files"
msgstr ""
-#: models.py:1618 views.py:1349 views.py:1404
+#: models.py:1619 views.py:1349 views.py:1404
msgid "Context records"
msgstr ""
-#: models.py:1620
+#: models.py:1621
msgid "Context record relations"
msgstr ""
-#: models.py:1622
+#: models.py:1623
msgid "Base finds"
msgstr ""
-#: models.py:1658 templates/ishtar/dashboards/dashboard_main.html:25
+#: models.py:1659 templates/ishtar/dashboards/dashboard_main.html:25
msgid "Users"
msgstr ""
-#: models.py:1660
+#: models.py:1661
msgid "Associated model"
msgstr ""
-#: models.py:1663
+#: models.py:1664
msgid "Is template"
msgstr ""
-#: models.py:1664
+#: models.py:1665
msgid "Unicity keys (separator \";\")"
msgstr ""
-#: models.py:1668
+#: models.py:1669
msgid "Importer - Type"
msgstr ""
-#: models.py:1669
+#: models.py:1670
msgid "Importer - Types"
msgstr ""
-#: models.py:1759
+#: models.py:1760
msgid "Importer - Default"
msgstr ""
-#: models.py:1760
+#: models.py:1761
msgid "Importer - Defaults"
msgstr ""
-#: models.py:1795
+#: models.py:1796
msgid "Importer - Default value"
msgstr ""
-#: models.py:1796
+#: models.py:1797
msgid "Importer - Default values"
msgstr ""
-#: models.py:1829
+#: models.py:1830
msgid "Column number"
msgstr ""
-#: models.py:1832
+#: models.py:1833
msgid "Required"
msgstr ""
-#: models.py:1835
+#: models.py:1836
msgid "Importer - Column"
msgstr ""
-#: models.py:1836
+#: models.py:1837
msgid "Importer - Columns"
msgstr ""
-#: models.py:1856
+#: models.py:1857
msgid "Field name"
msgstr ""
-#: models.py:1858 models.py:1892
+#: models.py:1859 models.py:1893
msgid "Force creation of new items"
msgstr ""
-#: models.py:1860 models.py:1894
+#: models.py:1861 models.py:1895
msgid "Concatenate with existing"
msgstr ""
-#: models.py:1862 models.py:1896
+#: models.py:1863 models.py:1897
msgid "Concatenate character"
msgstr ""
-#: models.py:1866
+#: models.py:1867
msgid "Importer - Duplicate field"
msgstr ""
-#: models.py:1867
+#: models.py:1868
msgid "Importer - Duplicate fields"
msgstr ""
-#: models.py:1874
+#: models.py:1875
msgid "Regular expression"
msgstr ""
-#: models.py:1877
+#: models.py:1878
msgid "Importer - Regular expression"
msgstr ""
-#: models.py:1878
+#: models.py:1879
msgid "Importer - Regular expressions"
msgstr ""
-#: models.py:1901
+#: models.py:1902
msgid "Importer - Target"
msgstr ""
-#: models.py:1902
+#: models.py:1903
msgid "Importer - Targets"
msgstr ""
-#: models.py:1926 views.py:536
+#: models.py:1927 views.py:536
msgid "True"
msgstr ""
-#: models.py:1927 views.py:538
+#: models.py:1928 views.py:538
msgid "False"
msgstr ""
-#: models.py:1946
+#: models.py:1947
msgid "Is set"
msgstr ""
-#: models.py:1953
+#: models.py:1954
msgid "Importer - Target key"
msgstr ""
-#: models.py:1954
+#: models.py:1955
msgid "Importer - Targets keys"
msgstr ""
-#: models.py:2006 models.py:2736 models.py:2749
+#: models.py:2007 models.py:2737 models.py:2750
msgid "Format"
msgstr ""
-#: models.py:2007 models.py:2841
+#: models.py:2008 models.py:2842
msgid "Operation type"
msgstr ""
-#: models.py:2008
+#: models.py:2009
msgid "Period"
msgstr ""
-#: models.py:2009
+#: models.py:2010
msgid "Report state"
msgstr ""
-#: models.py:2010
+#: models.py:2011
msgid "Remain type"
msgstr ""
-#: models.py:2011
+#: models.py:2012
msgid "Unit"
msgstr ""
-#: models.py:2012
+#: models.py:2013
msgid "Activity type"
msgstr ""
-#: models.py:2013
+#: models.py:2014
msgid "Material"
msgstr ""
-#: models.py:2015
+#: models.py:2016
msgid "Conservatory state"
msgstr ""
-#: models.py:2016
+#: models.py:2017
msgid "Preservation type"
msgstr ""
-#: models.py:2017
+#: models.py:2018
msgid "Object type"
msgstr ""
-#: models.py:2019
+#: models.py:2020
msgid "Identification type"
msgstr ""
-#: models.py:2021
+#: models.py:2022
msgid "Context record relation type"
msgstr ""
-#: models.py:2022 models.py:2728
+#: models.py:2023 models.py:2729
msgid "Support type"
msgstr ""
-#: models.py:2028
+#: models.py:2029
msgid "Integer"
msgstr ""
-#: models.py:2029
+#: models.py:2030
msgid "Float"
msgstr ""
-#: models.py:2030
+#: models.py:2031
msgid "String"
msgstr ""
-#: models.py:2031 templates/sheet_ope.html:86
+#: models.py:2032 templates/sheet_ope.html:86
msgid "Date"
msgstr ""
-#: models.py:2033 templates/sheet_ope.html:61 templates/sheet_ope.html.py:83
+#: models.py:2034 templates/sheet_ope.html:61 templates/sheet_ope.html.py:83
#: templates/ishtar/dashboards/dashboard_main_detail.html:126
msgid "Year"
msgstr ""
-#: models.py:2034
+#: models.py:2035
msgid "String to boolean"
msgstr ""
-#: models.py:2035
+#: models.py:2036
msgctxt "filesystem"
msgid "File"
msgstr ""
-#: models.py:2036
+#: models.py:2037
msgid "Unknow type"
msgstr ""
-#: models.py:2052
+#: models.py:2053
msgid "4 digit year. e.g.: \"2015\""
msgstr ""
-#: models.py:2053
+#: models.py:2054
msgid "4 digit year/month/day. e.g.: \"2015/02/04\""
msgstr ""
-#: models.py:2054
+#: models.py:2055
msgid "Day/month/4 digit year. e.g.: \"04/02/2015\""
msgstr ""
-#: models.py:2064
+#: models.py:2065
msgid "Options"
msgstr ""
-#: models.py:2066
+#: models.py:2067
msgid "Split character(s)"
msgstr ""
-#: models.py:2070
+#: models.py:2071
msgid "Importer - Formater type"
msgstr ""
-#: models.py:2071
+#: models.py:2072
msgid "Importer - Formater types"
msgstr ""
-#: models.py:2120 templates/ishtar/dashboards/dashboard_main_detail.html:63
+#: models.py:2121 templates/ishtar/dashboards/dashboard_main_detail.html:63
msgid "Created"
msgstr ""
-#: models.py:2121
+#: models.py:2122
msgid "Analyse in progress"
msgstr ""
-#: models.py:2122
+#: models.py:2123
msgid "Analysed"
msgstr ""
-#: models.py:2123
+#: models.py:2124
msgid "Import pending"
msgstr ""
-#: models.py:2124
+#: models.py:2125
msgid "Import in progress"
msgstr ""
-#: models.py:2125
+#: models.py:2126
msgid "Finished with errors"
msgstr ""
-#: models.py:2126
+#: models.py:2127
msgid "Finished"
msgstr ""
-#: models.py:2127
+#: models.py:2128
msgid "Archived"
msgstr ""
-#: models.py:2139
+#: models.py:2140
msgid "Imported file"
msgstr ""
-#: models.py:2142
+#: models.py:2143
msgid "Associated images (zip file)"
msgstr ""
-#: models.py:2144
+#: models.py:2145
msgid "Encoding"
msgstr ""
-#: models.py:2146
+#: models.py:2147
msgid "Skip lines"
msgstr ""
-#: models.py:2147 templates/ishtar/import_list.html:47
+#: models.py:2148 templates/ishtar/import_list.html:47
msgid "Error file"
msgstr ""
-#: models.py:2150
+#: models.py:2151
msgid "Result file"
msgstr ""
-#: models.py:2153 templates/ishtar/import_list.html:53
+#: models.py:2154 templates/ishtar/import_list.html:53
msgid "Match file"
msgstr ""
-#: models.py:2159
+#: models.py:2160
msgid "Conservative import"
msgstr ""
-#: models.py:2164
+#: models.py:2165
msgid "End date"
msgstr ""
-#: models.py:2166
+#: models.py:2167
msgid "Remaining seconds"
msgstr ""
-#: models.py:2171
+#: models.py:2172
msgid "Import"
msgstr ""
-#: models.py:2188
+#: models.py:2189
msgid "Analyse"
msgstr ""
-#: models.py:2190 models.py:2193
+#: models.py:2191 models.py:2194
msgid "Re-analyse"
msgstr ""
-#: models.py:2191
+#: models.py:2192
msgid "Launch import"
msgstr ""
-#: models.py:2194
+#: models.py:2195
msgid "Re-import"
msgstr ""
-#: models.py:2195
+#: models.py:2196
msgid "Archive"
msgstr ""
-#: models.py:2197
+#: models.py:2198
msgid "Unarchive"
msgstr ""
-#: models.py:2198 widgets.py:129 templates/ishtar/form_delete.html:11
+#: models.py:2199 widgets.py:130 templates/ishtar/form_delete.html:11
msgid "Delete"
msgstr ""
-#: models.py:2339
+#: models.py:2340
msgid "Organizations"
msgstr ""
-#: models.py:2341
+#: models.py:2342
msgid "Can view all Organizations"
msgstr ""
-#: models.py:2342
+#: models.py:2343
msgid "Can view own Organization"
msgstr ""
-#: models.py:2343
+#: models.py:2344
msgid "Can add own Organization"
msgstr ""
-#: models.py:2345
+#: models.py:2346
msgid "Can change own Organization"
msgstr ""
-#: models.py:2347
+#: models.py:2348
msgid "Can delete own Organization"
msgstr ""
-#: models.py:2382
+#: models.py:2383
msgid "Groups"
msgstr ""
-#: models.py:2387
+#: models.py:2388
msgid "Person types"
msgstr ""
-#: models.py:2398
+#: models.py:2399
msgid "Title type"
msgstr ""
-#: models.py:2399
+#: models.py:2400
msgid "Title types"
msgstr ""
-#: models.py:2408
+#: models.py:2409
msgid "Mr"
msgstr ""
-#: models.py:2409
+#: models.py:2410
msgid "Miss"
msgstr ""
-#: models.py:2410
+#: models.py:2411
msgid "Mr and Mrs"
msgstr ""
-#: models.py:2411
+#: models.py:2412
msgid "Mrs"
msgstr ""
-#: models.py:2412
+#: models.py:2413
msgid "Doctor"
msgstr ""
-#: models.py:2442
+#: models.py:2443
msgid "Contact type"
msgstr ""
-#: models.py:2445 models.py:2509
+#: models.py:2446 models.py:2510
msgid "Types"
msgstr ""
-#: models.py:2448
+#: models.py:2449
msgid "Is attached to"
msgstr ""
-#: models.py:2453
+#: models.py:2454
msgid "Persons"
msgstr ""
-#: models.py:2455
+#: models.py:2456
msgid "Can view all Persons"
msgstr ""
-#: models.py:2456
+#: models.py:2457
msgid "Can view own Person"
msgstr ""
-#: models.py:2457
+#: models.py:2458
msgid "Can add own Person"
msgstr ""
-#: models.py:2458
+#: models.py:2459
msgid "Can change own Person"
msgstr ""
-#: models.py:2459
+#: models.py:2460
msgid "Can delete own Person"
msgstr ""
-#: models.py:2637
+#: models.py:2638
msgid "Advanced shortcut menu"
msgstr ""
-#: models.py:2640
+#: models.py:2641
msgid "Ishtar user"
msgstr ""
-#: models.py:2641
+#: models.py:2642
msgid "Ishtar users"
msgstr ""
-#: models.py:2683
+#: models.py:2684
msgid "To modify the password use the form in Auth > User"
msgstr ""
-#: models.py:2689
+#: models.py:2690
msgid "Author types"
msgstr ""
-#: models.py:2721
+#: models.py:2722
msgid "Source types"
msgstr ""
-#: models.py:2729
+#: models.py:2730
msgid "Support types"
msgstr ""
-#: models.py:2737
+#: models.py:2738
msgid "Formats"
msgstr ""
-#: models.py:2744
+#: models.py:2745
msgid "External ID"
msgstr ""
-#: models.py:2747
+#: models.py:2748
msgid "Support"
msgstr ""
-#: models.py:2751
+#: models.py:2752
msgid "Scale"
msgstr ""
-#: models.py:2765
+#: models.py:2766
msgid "Item number"
msgstr ""
-#: models.py:2766
+#: models.py:2767
msgid "Ref."
msgstr ""
-#: models.py:2769
+#: models.py:2770
msgid "Internal ref."
msgstr ""
-#: models.py:2812
+#: models.py:2813
msgid "Surface (m2)"
msgstr ""
-#: models.py:2813 templates/sheet_ope.html:46 templates/sheet_ope.html.py:107
+#: models.py:2814 templates/sheet_ope.html:46 templates/sheet_ope.html.py:107
msgid "Localisation"
msgstr ""
-#: models.py:2838
+#: models.py:2839
msgid "Is preventive"
msgstr ""
-#: models.py:2842
+#: models.py:2843
msgid "Operation types"
msgstr ""
-#: models.py:2871
+#: models.py:2872
msgid "Preventive"
msgstr ""
-#: models.py:2872
+#: models.py:2873
msgid "Research"
msgstr ""
-#: utils.py:81
+#: models.py:2895
+msgid "SRID"
+msgstr ""
+
+#: models.py:2898
+msgid "Spatial reference system"
+msgstr ""
+
+#: models.py:2899
+msgid "Spatial reference systems"
+msgstr ""
+
+#: utils.py:83
msgid " (...)"
msgstr ""
-#: utils.py:114
+#: utils.py:116
msgid "Load another random image?"
msgstr ""
@@ -1448,47 +1464,47 @@ msgstr ""
msgid "Finds"
msgstr ""
-#: views.py:1599 templates/ishtar/import_list.html:43
+#: views.py:1600 templates/ishtar/import_list.html:43
msgid "Link unmatched items"
msgstr ""
-#: views.py:1614
+#: views.py:1615
msgid "Delete import"
msgstr ""
-#: views.py:1653
+#: views.py:1654
msgid "Merge persons"
msgstr ""
-#: views.py:1677
+#: views.py:1678
msgid "Select the main person"
msgstr ""
-#: views.py:1686
+#: views.py:1687
msgid "Merge organization"
msgstr ""
-#: views.py:1696
+#: views.py:1697
msgid "Select the main organization"
msgstr ""
-#: views.py:1736 views.py:1752
+#: views.py:1737 views.py:1753
msgid "Corporation manager"
msgstr ""
-#: widgets.py:258 widgets.py:365 widgets.py:480
+#: widgets.py:259 widgets.py:366 widgets.py:481
msgid "Search..."
msgstr ""
-#: widgets.py:670 templatetags/window_tables.py:91
+#: widgets.py:671 templatetags/window_tables.py:91
msgid "No results"
msgstr ""
-#: widgets.py:671 templatetags/window_tables.py:92
+#: widgets.py:672 templatetags/window_tables.py:92
msgid "Loading..."
msgstr ""
-#: widgets.py:672
+#: widgets.py:673
msgid "Remove"
msgstr ""
diff --git a/translations/fr/archaeological_finds.po b/translations/fr/archaeological_finds.po
index 58106a58b..3268bbb38 100644
--- a/translations/fr/archaeological_finds.po
+++ b/translations/fr/archaeological_finds.po
@@ -4,153 +4,182 @@
# Étienne Loks <etienne.loks at peacefrogs net>, 2010-2015.
# Valérie-Emma Leroux <emma@iggdrasil.net>, 2016. #zanata
# Valérie-Emma Leroux <emma@iggdrasil.net>, 2017. #zanata
+# Étienne Loks <etienne.loks@iggdrasil.net>, 2017. #zanata
msgid ""
msgstr ""
"MIME-Version: 1.0\n"
"Content-Transfer-Encoding: 8bit\n"
"Content-Type: text/plain; charset=UTF-8\n"
-"PO-Revision-Date: 2017-01-09 05:41-0500\n"
-"Last-Translator: Valérie-Emma Leroux <emma@iggdrasil.net>\n"
+"PO-Revision-Date: 2017-01-12 04:02-0500\n"
+"Last-Translator: Étienne Loks <etienne.loks@iggdrasil.net>\n"
"Language-Team: \n"
"Language: fr\n"
"Plural-Forms: nplurals=2; plural=n>1;\n"
"X-Generator: Zanata 3.9.6\n"
-#: forms.py:88 forms.py:92 wizards.py:64
+#: forms.py:90 forms.py:94 wizards.py:64
msgid "Context record"
msgstr "Unité d'Enregistrement"
-#: forms.py:121 ishtar_menu.py:32 models_finds.py:466 models_finds.py:791
-#: models_finds.py:800 models_treatments.py:265
+#: forms.py:123 ishtar_menu.py:32 models_finds.py:480 models_finds.py:805
+#: models_finds.py:814 models_treatments.py:277
#: templates/ishtar/sheet_find.html:5
msgid "Find"
msgstr "Mobilier"
-#: forms.py:132 forms.py:263 forms.py:487 models_finds.py:127
-#: models_finds.py:394
+#: forms.py:136 forms.py:321 forms.py:545 models_finds.py:127
+#: models_finds.py:411
msgid "Free ID"
msgstr "ID libre"
-#: forms.py:134 models_finds.py:449
+#: forms.py:138 models_finds.py:463
msgid "Previous ID"
msgstr "Identifiant précédent"
-#: forms.py:135 forms.py:295 forms_treatments.py:133 models_finds.py:131
-#: models_finds.py:395 models_treatments.py:123
+#: forms.py:139 forms.py:353 forms_treatments.py:134 models_finds.py:131
+#: models_finds.py:412 models_treatments.py:123
msgid "Description"
msgstr "Description"
-#: forms.py:138 forms.py:297 models_finds.py:142
+#: forms.py:142 forms.py:355 models_finds.py:140
msgid "Batch/object"
msgstr "Lot/objet"
-#: forms.py:140 models_finds.py:423
+#: forms.py:144 models_finds.py:440
msgid "Is complete?"
msgstr "Est complet ?"
-#: forms.py:143 forms.py:285 forms.py:491 models_finds.py:50
+#: forms.py:147 forms.py:343 forms.py:549 models_finds.py:50
msgid "Material type"
msgstr "Type de matériau"
-#: forms.py:144 forms.py:289 models_finds.py:62 models_finds.py:399
+#: forms.py:148 forms.py:347 models_finds.py:62 models_finds.py:416
msgid "Conservatory state"
msgstr "État sanitaire"
-#: forms.py:147 models_finds.py:401
+#: forms.py:151 models_finds.py:418
msgid "Conservatory comment"
msgstr "Commentaire relatif à la conservation"
-#: forms.py:150 models_finds.py:102 models_finds.py:426
+#: forms.py:154 models_finds.py:102 models_finds.py:443
msgid "Object types"
msgstr "Types d'objet"
-#: forms.py:152 forms.py:288 models_finds.py:71
+#: forms.py:156 forms.py:346 models_finds.py:71
msgid "Preservation type"
msgstr "Type de conservation"
-#: forms.py:155 forms.py:291 models_finds.py:428
+#: forms.py:159 forms.py:349 models_finds.py:445
msgid "Integrity / interest"
msgstr "Intégrité / intérêt"
-#: forms.py:158 forms.py:293 models_finds.py:431
+#: forms.py:162 forms.py:351 models_finds.py:448
msgid "Remarkability"
msgstr "Remarquabilité"
-#: forms.py:161 models_finds.py:441
+#: forms.py:165 models_finds.py:145
msgid "Point of topographic reference"
msgstr "Point de référence topographique"
-#: forms.py:164 models_finds.py:435
+#: forms.py:168 models_finds.py:147
+msgid "X"
+msgstr "X"
+
+#: forms.py:170 models_finds.py:150
+msgid "Estimated error for X"
+msgstr "Erreur estimée pour X"
+
+#: forms.py:171 models_finds.py:148
+msgid "Y"
+msgstr "Y"
+
+#: forms.py:173 models_finds.py:152
+msgid "Estimated error for Y"
+msgstr "Erreur estimée pour Y"
+
+#: forms.py:174 models_finds.py:149
+msgid "Z"
+msgstr "Z"
+
+#: forms.py:176 models_finds.py:154
+msgid "Estimated error for Z"
+msgstr "Erreur estimée pour Z"
+
+#: forms.py:178 models_finds.py:157
+msgid "Spatial Reference System"
+msgstr "Système de référence spatiale"
+
+#: forms.py:180 models_finds.py:452
msgid "Length (cm)"
msgstr "Longueur (cm)"
-#: forms.py:165 models_finds.py:436
+#: forms.py:181 models_finds.py:453
msgid "Width (cm)"
msgstr "Largeur (cm)"
-#: forms.py:166 models_finds.py:437
+#: forms.py:182 models_finds.py:454
msgid "Height (cm)"
msgstr "Hauteur (cm)"
-#: forms.py:167 models_finds.py:438
+#: forms.py:183 models_finds.py:455
msgid "Diameter (cm)"
msgstr "Diamètre (cm)"
-#: forms.py:168 models_finds.py:439
+#: forms.py:184 models_finds.py:456
msgid "Thickness (cm)"
msgstr "Épaisseur (cm)"
-#: forms.py:169 forms.py:492 models_finds.py:406
+#: forms.py:185 forms.py:550 models_finds.py:423
msgid "Volume (l)"
msgstr "Volume (l)"
-#: forms.py:170 forms.py:493 models_finds.py:407
+#: forms.py:186 forms.py:551 models_finds.py:424
msgid "Weight (g)"
msgstr "Poids (g)"
-#: forms.py:172 models_finds.py:443
+#: forms.py:188 models_finds.py:457
msgid "Dimensions comment"
msgstr "Commentaire concernant les dimensions"
-#: forms.py:173 forms.py:494 models_finds.py:410
+#: forms.py:189 forms.py:552 models_finds.py:427
msgid "Find number"
msgstr "Mobilier (en nombre)"
-#: forms.py:175 models_finds.py:434
+#: forms.py:191 models_finds.py:451
msgid "Minimum number of individuals (MNI)"
msgstr "Nombre minimum d'individus (NMI)"
-#: forms.py:176 models_finds.py:445
+#: forms.py:192 models_finds.py:459
msgid "Mark"
msgstr "Marque"
-#: forms.py:177 forms.py:299 models_finds.py:451
+#: forms.py:193 forms.py:357 models_finds.py:465
msgid "Check"
msgstr "Vérification"
-#: forms.py:179 models_finds.py:453
+#: forms.py:195 models_finds.py:467
msgid "Check date"
msgstr "Date de vérification"
-#: forms.py:180 forms_treatments.py:131 forms_treatments.py:418
-#: models_finds.py:132 models_finds.py:446 models_treatments.py:122
-#: models_treatments.py:468
+#: forms.py:196 forms_treatments.py:132 forms_treatments.py:434
+#: models_finds.py:132 models_finds.py:460 models_treatments.py:122
+#: models_treatments.py:484
msgid "Comment"
msgstr "Commentaires"
-#: forms.py:183 models_finds.py:447
+#: forms.py:199 models_finds.py:461
msgid "Comment on dating"
msgstr "Commentaire général sur les datations"
-#: forms.py:184 models_finds.py:455
+#: forms.py:200 models_finds.py:469
msgid "Estimated value"
msgstr "Valeur estimée"
-#: forms.py:186 forms_treatments.py:142
+#: forms.py:202 forms_treatments.py:151
msgid "Image"
msgstr "Image"
-#: forms.py:187 forms_treatments.py:143
+#: forms.py:203 forms_treatments.py:152
#, python-format
msgid ""
"<p>Heavy images are resized to: %(width)dx%(height)d (ratio is preserved).</"
@@ -159,227 +188,261 @@ msgstr ""
"<p>Les images trop grandes sont retaillées en : %(width)dx%(height)d (le "
"ratio est conservé).</p>"
-#: forms.py:226 forms.py:257 models_finds.py:418
+#: forms.py:269
+msgid ""
+"You should at least provide X, Y and the spatial reference system used."
+msgstr ""
+"Vous devez au minimum fournir X, Y et le système de référence spatiale "
+"utilisé."
+
+#: forms.py:278
+msgid ""
+"Coordinates are not relevant for the spatial reference system used: {}."
+msgstr ""
+"Les coordonnées ne sont pas pertinentes pour le système de référence "
+"spatiale utilisé : {}."
+
+#: forms.py:284 forms.py:315 models_finds.py:435
msgid "Dating"
msgstr "Datation"
-#: forms.py:231 forms.py:283
+#: forms.py:289 forms.py:341
msgid "Period"
msgstr "Période"
-#: forms.py:232 forms_treatments.py:137 forms_treatments.py:420
-#: models_finds.py:805 models_treatments.py:125 models_treatments.py:276
-#: templates/ishtar/sheet_find.html:102 templates/ishtar/sheet_find.html:142
+#: forms.py:290 forms_treatments.py:138 forms_treatments.py:436
+#: models_finds.py:819 models_treatments.py:125 models_treatments.py:288
+#: templates/ishtar/sheet_find.html:101 templates/ishtar/sheet_find.html:141
msgid "Start date"
msgstr "Date de début"
-#: forms.py:234 models_finds.py:806 models_treatments.py:277
-#: templates/ishtar/sheet_find.html:103 templates/ishtar/sheet_find.html:143
+#: forms.py:292 models_finds.py:820 models_treatments.py:289
+#: templates/ishtar/sheet_find.html:102 templates/ishtar/sheet_find.html:142
msgid "End date"
msgstr "Date de fin"
-#: forms.py:235
+#: forms.py:293
msgid "Quality"
msgstr "Qualité"
-#: forms.py:237
+#: forms.py:295
msgid "Dating type"
msgstr "Type de datation"
-#: forms.py:239
+#: forms.py:297
msgid "Precise dating"
msgstr "Datation précise"
-#: forms.py:261 models_finds.py:150
+#: forms.py:319 models_finds.py:164
msgid "Short ID"
msgstr "ID court"
-#: forms.py:262 models_finds.py:153
+#: forms.py:320 models_finds.py:167
msgid "Complete ID"
msgstr "ID complet"
-#: forms.py:266 forms_treatments.py:53 forms_treatments.py:95
-#: forms_treatments.py:268 forms_treatments.py:340 forms_treatments.py:390
-#: forms_treatments.py:473 models_treatments.py:98 models_treatments.py:440
+#: forms.py:324 forms_treatments.py:54 forms_treatments.py:96
+#: forms_treatments.py:284 forms_treatments.py:356 forms_treatments.py:406
+#: forms_treatments.py:489 models_treatments.py:98 models_treatments.py:456
msgid "Year"
msgstr "Année"
-#: forms.py:268
+#: forms.py:326
msgid "Operation's number (index by year)"
msgstr "Numéro de l'opération (index par année)"
-#: forms.py:271
+#: forms.py:329
msgid "Code PATRIARCHE"
msgstr "Code PATRIARCHE"
-#: forms.py:275
+#: forms.py:333
msgid "Archaeological site"
msgstr "Entité archéologique"
-#: forms.py:281
+#: forms.py:339
msgid "Search within related operations"
msgstr "Rechercher parmi les opérations liées"
-#: forms.py:286 models_finds.py:101
+#: forms.py:344 models_finds.py:101
msgid "Object type"
msgstr "Type d'objet"
-#: forms.py:300 forms_treatments.py:56
+#: forms.py:358 forms_treatments.py:57
msgid "Has an image?"
msgstr "Dispose d'une image ?"
-#: forms.py:342 forms.py:355 views.py:129
+#: forms.py:400 forms.py:413 views.py:129
msgid "Find search"
msgstr "Rechercher un mobilier"
-#: forms.py:369 templates/ishtar/sheet_treatment.html:42
+#: forms.py:427 templates/ishtar/sheet_treatment.html:46
msgid "Upstream finds"
msgstr "Mobilier amont"
-#: forms.py:371 models_finds.py:467
+#: forms.py:429 models_finds.py:481
msgid "Finds"
msgstr "Mobilier"
-#: forms.py:381
+#: forms.py:439
msgid "You should at least select one archaeological find."
msgstr "Vous devez sélectionner au moins un mobilier archéologique."
-#: forms.py:484
+#: forms.py:542
msgid "Resulting find"
msgstr "Mobilier résultant"
-#: forms.py:489
+#: forms.py:547
msgid "Precise description"
msgstr "Description précise"
-#: forms.py:504
+#: forms.py:562
msgid "Resulting finds"
msgstr "Mobiliers résultants"
-#: forms.py:509
+#: forms.py:567
msgid "Would you like to delete this find?"
msgstr "Voulez-vous supprimer ce mobilier ?"
-#: forms.py:513 models_treatments.py:90
+#: forms.py:571 models_treatments.py:90
msgid "Upstream find"
msgstr "Mobilier amont"
-#: forms.py:526
+#: forms.py:584
msgid "Archaeological find search"
msgstr "Rechercher un mobilier"
-#: forms.py:528
+#: forms.py:586
msgid "You should select an archaeological find."
msgstr "Vous devez sélectionner du mobilier."
-#: forms.py:533
+#: forms.py:591
msgid "Year of the operation"
msgstr "Année de l'opération"
-#: forms.py:535
+#: forms.py:593
msgid "Numeric reference"
msgstr "Référence numérique"
-#: forms.py:542
+#: forms.py:600
msgid "Period of the archaeological find"
msgstr "Période du mobilier"
-#: forms.py:544
+#: forms.py:602
msgid "Material type of the archaeological find"
msgstr "Type de matériau du mobilier"
-#: forms.py:546
+#: forms.py:604
msgid "Description of the archaeological find"
msgstr "Description du mobilier"
-#: forms.py:558 forms_treatments.py:574 forms_treatments.py:600
+#: forms.py:616 forms_treatments.py:590 forms_treatments.py:616
msgid "Documentation search"
msgstr "Rechercher une documentation"
-#: forms.py:560 forms_treatments.py:576 forms_treatments.py:602
+#: forms.py:618 forms_treatments.py:592 forms_treatments.py:618
msgid "You should select a document."
msgstr "Vous devez sélectionner un document."
-#: forms.py:577
+#: forms.py:635
msgid "Another basket already exists with this name."
msgstr "Un autre panier existant utilise déjà ce nom."
-#: forms.py:587 forms.py:591 forms_treatments.py:159 ishtar_menu.py:56
+#: forms.py:645 forms.py:649 forms_treatments.py:175 ishtar_menu.py:56
msgid "Basket"
msgstr "Panier"
-#: forms_treatments.py:51 forms_treatments.py:91 models_treatments.py:94
-#: templates/ishtar/sheet_find.html:97 templates/ishtar/sheet_find.html:137
+#: forms_treatments.py:52 forms_treatments.py:92 models_treatments.py:94
+#: templates/ishtar/sheet_find.html:96 templates/ishtar/sheet_find.html:136
msgid "Label"
msgstr "Intitulé"
-#: forms_treatments.py:52 forms_treatments.py:94 models_treatments.py:96
+#: forms_treatments.py:53 forms_treatments.py:95 models_treatments.py:96
msgid "Other ref."
msgstr "Autre réf."
-#: forms_treatments.py:54 forms_treatments.py:221 forms_treatments.py:269
-#: forms_treatments.py:332 forms_treatments.py:341 forms_treatments.py:443
-#: forms_treatments.py:474 forms_treatments.py:541 models_treatments.py:100
-#: models_treatments.py:442
+#: forms_treatments.py:55 forms_treatments.py:237 forms_treatments.py:285
+#: forms_treatments.py:348 forms_treatments.py:357 forms_treatments.py:459
+#: forms_treatments.py:490 forms_treatments.py:557 models_treatments.py:100
+#: models_treatments.py:458
msgid "Index"
msgstr "Index"
-#: forms_treatments.py:55 forms_treatments.py:100 forms_treatments.py:285
-#: forms_treatments.py:562 models_treatments.py:56 models_treatments.py:105
-#: models_treatments.py:275
+#: forms_treatments.py:56 forms_treatments.py:101 forms_treatments.py:301
+#: forms_treatments.py:578 models_treatments.py:56 models_treatments.py:105
+#: models_treatments.py:287
msgid "Treatment type"
msgstr "Type de traitement"
-#: forms_treatments.py:67 forms_treatments.py:544 views.py:359
+#: forms_treatments.py:68 forms_treatments.py:560 views.py:359
msgid "Treatment search"
msgstr "Rechercher un traitement"
-#: forms_treatments.py:79
+#: forms_treatments.py:80
msgid "Base treatment"
msgstr "Traitement de base"
-#: forms_treatments.py:102 models_treatments.py:107
+#: forms_treatments.py:103 models_treatments.py:107
msgid "State"
msgstr "État"
-#: forms_treatments.py:104
+#: forms_treatments.py:105
msgid "Target"
msgstr "Destination"
-#: forms_treatments.py:106 forms_treatments.py:401 models_treatments.py:115
+#: forms_treatments.py:107 forms_treatments.py:417 models_treatments.py:115
msgid "Responsible"
msgstr "Responsable"
-#: forms_treatments.py:112 models_treatments.py:118
+#: forms_treatments.py:113 models_treatments.py:118
msgid "Organization"
msgstr "Organisation"
-#: forms_treatments.py:118 models_treatments.py:110 models_treatments.py:278
+#: forms_treatments.py:119 models_treatments.py:110 models_treatments.py:290
msgid "Location"
msgstr "Lieu"
-#: forms_treatments.py:124
+#: forms_treatments.py:125
msgid "Container (relevant for packaging)"
msgstr "Contenant (pertinent dans le cadre du conditionnement)"
-#: forms_treatments.py:130 forms_treatments.py:397
+#: forms_treatments.py:131 forms_treatments.py:413
msgid "External ref."
msgstr "Réf. externe"
-#: forms_treatments.py:135 models_treatments.py:124
+#: forms_treatments.py:136 models_treatments.py:124
msgid "Goal"
msgstr "But"
-#: forms_treatments.py:139 forms_treatments.py:426 models_treatments.py:126
-#: models_treatments.py:462
+#: forms_treatments.py:140 forms_treatments.py:442 models_treatments.py:126
+#: models_treatments.py:478
msgid "Closing date"
msgstr "Date de clôture"
-#: forms_treatments.py:159
+#: forms_treatments.py:142
+#, python-brace-format
+msgid "Estimated cost ({currency})"
+msgstr "Coût estimé ({currency})"
+
+#: forms_treatments.py:144
+#, python-brace-format
+msgid "Quoted cost ({currency})"
+msgstr "Coût devisé ({currency})"
+
+#: forms_treatments.py:146
+#, python-brace-format
+msgid "Realized cost ({currency})"
+msgstr "Coût réalisé ({currency})"
+
+#: forms_treatments.py:148
+#, python-brace-format
+msgid "Insurance cost ({currency})"
+msgstr "Coût d'assurance ({currency})"
+
+#: forms_treatments.py:175
msgid "Single find"
msgstr "Mobilier isolé"
-#: forms_treatments.py:193
+#: forms_treatments.py:209
msgid ""
"The container field is attached to the treatment. If no packaging treatment "
"is done it is not relevant."
@@ -387,30 +450,30 @@ msgstr ""
"Le champ concernant le contenant est rattaché au traitement. Si aucun "
"conditionnement n'est réalisé, il n'est pas pertinent."
-#: forms_treatments.py:198
+#: forms_treatments.py:214
msgid "If a packaging treatment is done, the container field must be filled."
msgstr ""
"Si un conditionnement est fait, le champ du contenant doit être rempli."
-#: forms_treatments.py:202
+#: forms_treatments.py:218
msgid "A responsible or an organization must be defined."
msgstr "Un responsable ou une organisation doit être défini."
-#: forms_treatments.py:240
+#: forms_treatments.py:256
msgid "Another treatment with this index exists for {}."
msgstr "Un autre traitement avec cet index existe pour {}."
-#: forms_treatments.py:246 models_treatments.py:103
+#: forms_treatments.py:262 models_treatments.py:103
msgid "Associated request"
msgstr "Demande associée"
-#: forms_treatments.py:250 forms_treatments.py:381 ishtar_menu.py:107
-#: models_treatments.py:473 models_treatments.py:495 models_treatments.py:556
+#: forms_treatments.py:266 forms_treatments.py:397 ishtar_menu.py:107
+#: models_treatments.py:489 models_treatments.py:511 models_treatments.py:572
#: wizards.py:183 templates/ishtar/sheet_treatmentfile.html:5
msgid "Treatment request"
msgstr "Demande de traitement"
-#: forms_treatments.py:259
+#: forms_treatments.py:275
msgid ""
"Are you sure you want to delete this treatment? All changes made to the "
"associated finds since this treatment record will be lost!"
@@ -419,125 +482,125 @@ msgstr ""
"sur le mobilier associé réalisées depuis l'enregistrement de ce traitement "
"seront perdues !"
-#: forms_treatments.py:262
+#: forms_treatments.py:278
msgid "Would you like to delete this treatment?"
msgstr "Voulez-vous supprimer ce traitement ?"
-#: forms_treatments.py:270 forms_treatments.py:318 forms_treatments.py:475
-#: forms_treatments.py:526
+#: forms_treatments.py:286 forms_treatments.py:334 forms_treatments.py:491
+#: forms_treatments.py:542
msgid "Act type"
msgstr "Type d'acte"
-#: forms_treatments.py:271 forms_treatments.py:476
+#: forms_treatments.py:287 forms_treatments.py:492
msgid "Indexed?"
msgstr "Indexé ?"
-#: forms_treatments.py:272 forms_treatments.py:477 models_finds.py:120
+#: forms_treatments.py:288 forms_treatments.py:493 models_finds.py:120
msgid "Object"
msgstr "Objet"
-#: forms_treatments.py:276 forms_treatments.py:481
+#: forms_treatments.py:292 forms_treatments.py:497
msgid "Signature date after"
msgstr "Date de signature après"
-#: forms_treatments.py:278 forms_treatments.py:483
+#: forms_treatments.py:294 forms_treatments.py:499
msgid "Signature date before"
msgstr "Date de signature avant"
-#: forms_treatments.py:280 forms_treatments.py:557
+#: forms_treatments.py:296 forms_treatments.py:573
msgid "Treatment name"
msgstr "Nom du traitement"
-#: forms_treatments.py:281 forms_treatments.py:558
+#: forms_treatments.py:297 forms_treatments.py:574
msgid "Treatment year"
msgstr "Année du traitement"
-#: forms_treatments.py:282 forms_treatments.py:559
+#: forms_treatments.py:298 forms_treatments.py:575
msgid "Treatment index"
msgstr "Index du traitement"
-#: forms_treatments.py:284 forms_treatments.py:561
+#: forms_treatments.py:300 forms_treatments.py:577
msgid "Treatment internal reference"
msgstr "Référence interne du traitement"
-#: forms_treatments.py:288 forms_treatments.py:495
+#: forms_treatments.py:304 forms_treatments.py:511
msgid "Modified by"
msgstr "Modifié par"
-#: forms_treatments.py:338 forms_treatments.py:388 models_treatments.py:447
+#: forms_treatments.py:354 forms_treatments.py:404 models_treatments.py:463
msgid "Name"
msgstr "Nom"
-#: forms_treatments.py:339 forms_treatments.py:395
+#: forms_treatments.py:355 forms_treatments.py:411
msgid "Internal ref."
msgstr "Réf. interne"
-#: forms_treatments.py:342 forms_treatments.py:399
-#: templates/ishtar/sheet_find.html:98 templates/ishtar/sheet_find.html:138
-#: templates/ishtar/sheet_find.html:216
+#: forms_treatments.py:358 forms_treatments.py:415
+#: templates/ishtar/sheet_find.html:97 templates/ishtar/sheet_find.html:137
+#: templates/ishtar/sheet_find.html:229
msgid "Type"
msgstr "Type"
-#: forms_treatments.py:344
+#: forms_treatments.py:360
msgid "In charge"
msgstr "Responsable"
-#: forms_treatments.py:350 forms_treatments.py:407 models_treatments.py:456
+#: forms_treatments.py:366 forms_treatments.py:423 models_treatments.py:472
#: templates/ishtar/sheet_treatmentfile.html:31
msgid "Applicant"
msgstr "Demandeur"
-#: forms_treatments.py:356 forms_treatments.py:413 models_treatments.py:460
+#: forms_treatments.py:372 forms_treatments.py:429 models_treatments.py:476
#: templates/ishtar/sheet_treatmentfile.html:38
msgid "Applicant organisation"
msgstr "Organisation du demandeur"
-#: forms_treatments.py:369 forms_treatments.py:549 views.py:463
+#: forms_treatments.py:385 forms_treatments.py:565 views.py:463
msgid "Treatment request search"
msgstr "Rechercher une demande de traitement"
-#: forms_treatments.py:423 models_treatments.py:466
+#: forms_treatments.py:439 models_treatments.py:482
msgid "Reception date"
msgstr "Date de réception"
-#: forms_treatments.py:462
+#: forms_treatments.py:478
msgid "Another treatment request with this index exists for {}."
msgstr "Une autre demande de traitement avec cet index existe pour {}."
-#: forms_treatments.py:468
+#: forms_treatments.py:484
msgid "Are you sure you want to delete this treatment request?"
msgstr "Êtes-vous sûr de vouloir supprimer cette demande de traitement ? "
-#: forms_treatments.py:469
+#: forms_treatments.py:485
msgid "Would you like to delete this treatment request?"
msgstr "Voulez-vous supprimer cette demande de traitement ?"
-#: forms_treatments.py:485 forms_treatments.py:581
+#: forms_treatments.py:501 forms_treatments.py:597
msgid "Treatment request name"
msgstr "Nom du dossier de traitement"
-#: forms_treatments.py:487 forms_treatments.py:583
+#: forms_treatments.py:503 forms_treatments.py:599
msgid "Treatment request year"
msgstr "Année du dossier de traitement"
-#: forms_treatments.py:489 forms_treatments.py:585
+#: forms_treatments.py:505 forms_treatments.py:601
msgid "Treatment request index"
msgstr "Index de la demande de traitement"
-#: forms_treatments.py:491 forms_treatments.py:587
+#: forms_treatments.py:507 forms_treatments.py:603
msgid "Treatment request internal reference"
msgstr "Référence interne de la demande de traitement"
-#: forms_treatments.py:492 forms_treatments.py:588 models_treatments.py:425
-#: models_treatments.py:449
+#: forms_treatments.py:508 forms_treatments.py:604 models_treatments.py:441
+#: models_treatments.py:465
msgid "Treatment request type"
msgstr "Type de demande de traitement"
-#: forms_treatments.py:546
+#: forms_treatments.py:562
msgid "You should select a treatment."
msgstr "Vous devez sélectionner un traitement."
-#: forms_treatments.py:552
+#: forms_treatments.py:568
msgid "You should select a treatment request."
msgstr "Vous devez sélectionner une demande de traitement."
@@ -571,12 +634,12 @@ msgstr "Gestion des éléments"
msgid "Documentation"
msgstr "Documentation"
-#: ishtar_menu.py:131 ishtar_menu.py:211 models_finds.py:802
+#: ishtar_menu.py:131 ishtar_menu.py:211 models_finds.py:816
msgid "Administrative act"
msgstr "Acte administratif"
-#: ishtar_menu.py:149 ishtar_menu.py:230 templates/ishtar/sheet_find.html:211
-#: templates/ishtar/sheet_find.html:213
+#: ishtar_menu.py:149 ishtar_menu.py:230 templates/ishtar/sheet_find.html:224
+#: templates/ishtar/sheet_find.html:226
msgid "Documents"
msgstr "Documents"
@@ -584,8 +647,8 @@ msgstr "Documents"
msgid "Source"
msgstr "Documentation"
-#: ishtar_menu.py:183 models_treatments.py:135 models_treatments.py:267
-#: models_treatments.py:540 templates/ishtar/sheet_treatment.html:5
+#: ishtar_menu.py:183 models_treatments.py:143 models_treatments.py:279
+#: models_treatments.py:556 templates/ishtar/sheet_treatment.html:5
msgid "Treatment"
msgstr "Traitement"
@@ -605,7 +668,7 @@ msgstr "Recommandation"
msgid "Parent material"
msgstr "Matériau parent"
-#: models_finds.py:51 models_finds.py:397
+#: models_finds.py:51 models_finds.py:414
msgid "Material types"
msgstr "Types de matériau"
@@ -649,206 +712,206 @@ msgstr "Inconnu"
msgid "Batch"
msgstr "Lot"
-#: models_finds.py:128 models_finds.py:390 models_treatments.py:120
-#: models_treatments.py:445
+#: models_finds.py:128 models_finds.py:407 models_treatments.py:120
+#: models_treatments.py:461
msgid "External ID"
msgstr "ID externe"
-#: models_finds.py:130 models_finds.py:392
+#: models_finds.py:130 models_finds.py:409
msgid "External ID is set automatically"
msgstr "L'identifiant externe est configuré automatiquement"
-#: models_finds.py:134
-msgid "Topographic localisation"
-msgstr "Localisation topogaphique"
-
-#: models_finds.py:135
+#: models_finds.py:133
msgid "Special interest"
msgstr "Intérêt spécifique"
-#: models_finds.py:139
+#: models_finds.py:137
msgid "Context Record"
msgstr "Unité d'Enregistrement"
-#: models_finds.py:140
+#: models_finds.py:138
msgid "Discovery date"
msgstr "Date de découverte"
-#: models_finds.py:145
+#: models_finds.py:143
msgid "Material index"
msgstr "Index matériel"
-#: models_finds.py:146
+#: models_finds.py:159
+msgid "Point (2D)"
+msgstr "Point (2D)"
+
+#: models_finds.py:160
msgid "Point"
msgstr "Point"
-#: models_finds.py:147
+#: models_finds.py:161
msgid "Line"
msgstr "Ligne"
-#: models_finds.py:148
+#: models_finds.py:162
msgid "Polygon"
msgstr "Polygon"
-#: models_finds.py:151 models_finds.py:154
+#: models_finds.py:165 models_finds.py:168
msgid "Cached value - do not edit"
msgstr "Valeur en cache - ne pas éditer"
-#: models_finds.py:159 models_finds.py:388
+#: models_finds.py:173 models_finds.py:405
msgid "Base find"
msgstr "Mobilier de base"
-#: models_finds.py:160
+#: models_finds.py:174
msgid "Base finds"
msgstr "Mobilier de base"
-#: models_finds.py:162
+#: models_finds.py:176
msgid "Can view all Base finds"
msgstr "Peut voir tout le Mobilier de base"
-#: models_finds.py:163
+#: models_finds.py:177
msgid "Can view own Base find"
msgstr "Peut voir son propre Mobilier de base"
-#: models_finds.py:164
+#: models_finds.py:178
msgid "Can add own Base find"
msgstr "Peut ajouter son propre Mobilier de base"
-#: models_finds.py:165
+#: models_finds.py:179
msgid "Can change own Base find"
msgstr "Peut modifier son propre Mobilier de base"
-#: models_finds.py:166
+#: models_finds.py:180
msgid "Can delete own Base find"
msgstr "Peut supprimer son propre Mobilier de base"
-#: models_finds.py:276
+#: models_finds.py:293
msgid "g"
msgstr "g"
-#: models_finds.py:277
+#: models_finds.py:294
msgid "kg"
msgstr "kg"
-#: models_finds.py:279
+#: models_finds.py:296
msgid "Not checked"
msgstr "Non vérifié"
-#: models_finds.py:280
+#: models_finds.py:297
msgid "Checked but incorrect"
msgstr "Vérifié mais incorrect"
-#: models_finds.py:281
+#: models_finds.py:298
msgid "Checked and correct"
msgstr "Vérifié et correct"
-#: models_finds.py:315
+#: models_finds.py:332
msgid "Periods"
msgstr "Périodes"
-#: models_finds.py:316 models_finds.py:421 models_treatments.py:127
-#: models_treatments.py:279 templates/ishtar/sheet_find.html:101
-#: templates/ishtar/sheet_find.html:141
+#: models_finds.py:333 models_finds.py:438 models_treatments.py:127
+#: models_treatments.py:291 templates/ishtar/sheet_find.html:100
+#: templates/ishtar/sheet_find.html:140
msgid "Container"
msgstr "Contenant"
-#: models_finds.py:326
+#: models_finds.py:343
msgid "Base find - Short ID"
msgstr "Mobilier de base - ID court"
-#: models_finds.py:327
+#: models_finds.py:344
msgid "Base find - Complete ID"
msgstr "Mobilier de base - ID complet"
-#: models_finds.py:328
+#: models_finds.py:345
msgid "Base find - Comment"
msgstr "Mobilier de base - Commentaires"
-#: models_finds.py:329
+#: models_finds.py:346
msgid "Base find - Description"
msgstr "Mobilier de base - Description"
-#: models_finds.py:330
+#: models_finds.py:347
msgid "Base find - Topographic localisation"
msgstr "Mobilier de base - Localisation topographique"
-#: models_finds.py:332
+#: models_finds.py:349
msgid "Base find - Special interest"
msgstr "Mobilier de base - Intérêt spécifique"
-#: models_finds.py:333
+#: models_finds.py:350
msgid "Base find - Discovery date"
msgstr "Mobilier de base - Date de découverte"
-#: models_finds.py:393 models_treatments.py:40 models_treatments.py:271
+#: models_finds.py:410 models_treatments.py:40 models_treatments.py:283
msgid "Order"
msgstr "Ordre"
-#: models_finds.py:404
+#: models_finds.py:421
msgid "Type of preservation to consider"
msgstr "Mesures de conservation à envisager"
-#: models_finds.py:408
+#: models_finds.py:425
msgid "Weight unit"
msgstr "Unité de poids"
-#: models_finds.py:414 templates/ishtar/sheet_find.html:90
+#: models_finds.py:431 templates/ishtar/sheet_find.html:89
msgid "Upstream treatment"
msgstr "Traitement amont"
-#: models_finds.py:417 templates/ishtar/sheet_find.html:130
+#: models_finds.py:434 templates/ishtar/sheet_find.html:129
msgid "Downstream treatment"
msgstr "Traitement aval"
-#: models_finds.py:458
+#: models_finds.py:472
msgid "Collection"
msgstr "Collection"
-#: models_finds.py:460 models_treatments.py:131 models_treatments.py:469
+#: models_finds.py:474 models_treatments.py:139 models_treatments.py:485
msgid "Cached name"
msgstr "Nom en cache"
-#: models_finds.py:469
+#: models_finds.py:483
msgid "Can view all Finds"
msgstr "Peut voir tout le Mobilier"
-#: models_finds.py:470
+#: models_finds.py:484
msgid "Can view own Find"
msgstr "Peut voir son propre Mobilier"
-#: models_finds.py:471
+#: models_finds.py:485
msgid "Can add own Find"
msgstr "Peut ajouter son propre Mobilier"
-#: models_finds.py:472
+#: models_finds.py:486
msgid "Can change own Find"
msgstr "Peut modifier son propre Mobilier"
-#: models_finds.py:473
+#: models_finds.py:487
msgid "Can delete own Find"
msgstr "Peut supprimer son propre Mobilier"
-#: models_finds.py:479
+#: models_finds.py:493
msgid "FIND"
msgstr "MOBILIER"
-#: models_finds.py:789
+#: models_finds.py:803
msgid "Find documentation"
msgstr "Documentation de mobilier"
-#: models_finds.py:790
+#: models_finds.py:804
msgid "Find documentations"
msgstr "Documentations de mobilier"
-#: models_finds.py:803
+#: models_finds.py:817
msgid "Person"
msgstr "Individu"
-#: models_finds.py:809
+#: models_finds.py:823
msgid "Property"
msgstr "Propriété"
-#: models_finds.py:810
+#: models_finds.py:824
msgid "Properties"
msgstr "Propriétés"
@@ -903,105 +966,121 @@ msgstr ""
"pour un déplacement."
#: models_treatments.py:129
+msgid "Estimated cost"
+msgstr "Coût estimé"
+
+#: models_treatments.py:131
+msgid "Quoted cost"
+msgstr "Coût devisé"
+
+#: models_treatments.py:133
+msgid "Realized cost"
+msgstr "Coût réalisé"
+
+#: models_treatments.py:135
+msgid "Insurance cost"
+msgstr "Coût d'assurance"
+
+#: models_treatments.py:137
msgid "Target a basket"
msgstr "Cibler un panier"
-#: models_treatments.py:136 templates/ishtar/sheet_find.html:87
+#: models_treatments.py:144 templates/ishtar/sheet_find.html:86
#: templates/ishtar/sheet_treatmentfile.html:45
msgid "Treatments"
msgstr "Traitements"
-#: models_treatments.py:139
+#: models_treatments.py:147
msgid "Can view all Treatments"
msgstr "Peut voir tous les Traitements"
-#: models_treatments.py:140
+#: models_treatments.py:148
msgid "Can view own Treatment"
msgstr "Peut voir son propre Traitement"
-#: models_treatments.py:141
+#: models_treatments.py:149
msgid "Can add own Treatment"
msgstr "Peut ajouter son propre Traitement"
-#: models_treatments.py:142
+#: models_treatments.py:150
msgid "Can change own Treatment"
msgstr "Peut modifier son propre Traitement"
-#: models_treatments.py:143
+#: models_treatments.py:151
msgid "Can delete own Treatment"
msgstr "Peut supprimer son propre Traitement"
-#: models_treatments.py:155
+#: models_treatments.py:163
msgid "TREATMENT"
msgstr "TRAITEMENT"
-#: models_treatments.py:280 templates/ishtar/sheet_find.html:100
-#: templates/ishtar/sheet_find.html:140
+#: models_treatments.py:292 templates/ishtar/sheet_find.html:99
+#: templates/ishtar/sheet_find.html:139
msgid "Doer"
msgstr "Opérateur"
-#: models_treatments.py:281 models_treatments.py:282
-#: templates/ishtar/sheet_find.html:99 templates/ishtar/sheet_find.html:139
+#: models_treatments.py:293 models_treatments.py:294
+#: templates/ishtar/sheet_find.html:98 templates/ishtar/sheet_find.html:138
msgid "Related finds"
msgstr "Mobilier associé"
-#: models_treatments.py:414
+#: models_treatments.py:430
msgid "Is upstream"
msgstr "Est en amont"
-#: models_treatments.py:426
+#: models_treatments.py:442
msgid "Treatment request types"
msgstr "Types de demande de traitement"
-#: models_treatments.py:443
+#: models_treatments.py:459
msgid "Internal reference"
msgstr "Référence interne"
-#: models_treatments.py:452
+#: models_treatments.py:468
msgid "Person in charge"
msgstr "Personne responsable"
-#: models_treatments.py:464
+#: models_treatments.py:480
msgid "Creation date"
msgstr "Date de création"
-#: models_treatments.py:474
+#: models_treatments.py:490
msgid "Treatment requests"
msgstr "Demandes de traitement"
-#: models_treatments.py:478
+#: models_treatments.py:494
msgid "Can view all Treatment requests"
msgstr "Peut voir toutes les Demandes de traitement"
-#: models_treatments.py:480
+#: models_treatments.py:496
msgid "Can view own Treatment request"
msgstr "Peut voir sa propre Demande de traitement"
-#: models_treatments.py:482
+#: models_treatments.py:498
msgid "Can add own Treatment request"
msgstr "Peut ajouter sa propre Demande de traitement"
-#: models_treatments.py:484
+#: models_treatments.py:500
msgid "Can change own Treatment request"
msgstr "Peut modifier sa propre Demande de traitement"
-#: models_treatments.py:486
+#: models_treatments.py:502
msgid "Can delete own Treatment request"
msgstr "Peut supprimer sa propre Demande de traitement"
-#: models_treatments.py:546
+#: models_treatments.py:562
msgid "Treatment documentation"
msgstr "Documentation de traitement"
-#: models_treatments.py:547
+#: models_treatments.py:563
msgid "Treament documentations"
msgstr "Documentations de traitement"
-#: models_treatments.py:563
+#: models_treatments.py:579
msgid "Treatment request documentation"
msgstr "Documentation de demande de traitement"
-#: models_treatments.py:564
+#: models_treatments.py:580
msgid "Treatment request documentations"
msgstr "Documentations de demande de traitement"
@@ -1129,35 +1208,55 @@ msgstr "Demande de traitement : supprimer une documentation associée"
msgid "Operation"
msgstr "Opération"
-#: templates/ishtar/sheet_find.html:79
+#: templates/ishtar/sheet_find.html:78
msgid "Warehouse"
msgstr "Dépôt"
-#: templates/ishtar/sheet_find.html:96 templates/ishtar/sheet_find.html:136
+#: templates/ishtar/sheet_find.html:95 templates/ishtar/sheet_find.html:135
msgid "Year - index"
msgstr "Année - index"
-#: templates/ishtar/sheet_find.html:126
+#: templates/ishtar/sheet_find.html:125
msgid "Export as CSV"
msgstr "Export en CSV"
-#: templates/ishtar/sheet_find.html:126 templates/ishtar/sheet_find.html:167
+#: templates/ishtar/sheet_find.html:125 templates/ishtar/sheet_find.html:166
msgid "CSV"
msgstr "CSV"
-#: templates/ishtar/sheet_find.html:172
+#: templates/ishtar/sheet_find.html:171
msgid "Associated base finds"
msgstr "Mobilier de base associé"
-#: templates/ishtar/sheet_find.html:215
+#: templates/ishtar/sheet_find.html:205
+msgid "Coordinates:"
+msgstr "Cordonnées :"
+
+#: templates/ishtar/sheet_find.html:207
+msgid "X:"
+msgstr "X :"
+
+#: templates/ishtar/sheet_find.html:208
+msgid "Y:"
+msgstr "Y :"
+
+#: templates/ishtar/sheet_find.html:209
+msgid "Z:"
+msgstr "Z :"
+
+#: templates/ishtar/sheet_find.html:212
+msgid "SRID:"
+msgstr "SRID :"
+
+#: templates/ishtar/sheet_find.html:228
msgid "Title"
msgstr "Titre"
-#: templates/ishtar/sheet_find.html:217
+#: templates/ishtar/sheet_find.html:230
msgid "Authors"
msgstr "Auteurs"
-#: templates/ishtar/sheet_find.html:218
+#: templates/ishtar/sheet_find.html:231
msgid "Link"
msgstr "Lien"
@@ -1179,10 +1278,14 @@ msgctxt "Treatment"
msgid "Active"
msgstr "Actif"
-#: templates/ishtar/sheet_treatment.html:47
+#: templates/ishtar/sheet_treatment.html:51
msgid "Downstream finds"
msgstr "Mobilier aval"
+#: templates/ishtar/sheet_treatment.html:56
+msgid "Related operations"
+msgstr "Opérations concernées"
+
#: templates/ishtar/sheet_treatmentfile.html:16
msgctxt "Treatment request"
msgid "Closed"
diff --git a/translations/fr/archaeological_operations.po b/translations/fr/archaeological_operations.po
index 91f73bdd2..e80671558 100644
--- a/translations/fr/archaeological_operations.po
+++ b/translations/fr/archaeological_operations.po
@@ -19,12 +19,12 @@ msgstr ""
"X-Generator: Zanata 3.9.6\n"
#: forms.py:69 forms.py:371 forms.py:1009 forms.py:1031 forms.py:1035
-#: models.py:1213 templates/ishtar/sheet_operation.html:144
+#: models.py:1216 templates/ishtar/sheet_operation.html:144
#: templates/ishtar/blocks/window_tables/parcels.html:10
msgid "Parcels"
msgstr "Parcelles"
-#: forms.py:72 forms.py:205 forms.py:985 models.py:1199
+#: forms.py:72 forms.py:205 forms.py:985 models.py:1202
#: templates/ishtar/blocks/window_tables/parcels.html:7
#: templates/ishtar/dashboards/dashboard_operation.html:432
#: templates/ishtar/dashboards/dashboard_operation.html:446
@@ -33,22 +33,22 @@ msgstr "Parcelles"
msgid "Town"
msgstr "Commune"
-#: forms.py:74 forms.py:455 forms.py:752 forms.py:1255 models.py:271
-#: models.py:1005 models.py:1197
+#: forms.py:74 forms.py:455 forms.py:752 forms.py:1255 models.py:274
+#: models.py:1008 models.py:1200
#: templates/ishtar/blocks/window_tables/parcels.html:8
msgid "Year"
msgstr "Année"
-#: forms.py:77 models.py:1200
+#: forms.py:77 models.py:1203
#: templates/ishtar/blocks/window_tables/parcels.html:9
msgid "Section"
msgstr "Section"
-#: forms.py:80 models.py:1202
+#: forms.py:80 models.py:1205
msgid "Parcel number"
msgstr "Numéro de parcelle"
-#: forms.py:82 models.py:1204 models.py:1221 models.py:1270
+#: forms.py:82 models.py:1207 models.py:1224 models.py:1273
msgid "Public domain"
msgstr "Domaine public"
@@ -84,8 +84,8 @@ msgstr "Il y a des parcelles identiques."
msgid "Relation type"
msgstr "Type de relation"
-#: forms.py:383 ishtar_menu.py:30 models.py:366 models.py:826 models.py:856
-#: models.py:884 models.py:987 models.py:1196 wizards.py:344 wizards.py:355
+#: forms.py:383 ishtar_menu.py:30 models.py:369 models.py:829 models.py:859
+#: models.py:887 models.py:990 models.py:1199 wizards.py:344 wizards.py:355
#: templates/ishtar/sheet_operation.html:4
msgid "Operation"
msgstr "Opération"
@@ -114,7 +114,7 @@ msgstr "Relations supprimées"
msgid "Relations"
msgstr "Relations"
-#: forms.py:456 forms.py:1226 models.py:272
+#: forms.py:456 forms.py:1226 models.py:275
msgid "Numeric reference"
msgstr "Identifiant numérique"
@@ -122,7 +122,7 @@ msgstr "Identifiant numérique"
msgid "Parcel (section/number/public domain)"
msgstr "Parcelle (section/numéro/domaine public)"
-#: forms.py:465 forms.py:1269 models.py:827
+#: forms.py:465 forms.py:1269 models.py:830
#: templates/ishtar/dashboards/dashboard_operation.html:390
#: templates/ishtar/dashboards/dashboard_operation.html:411
#: templates/ishtar/dashboards/dashboard_operation.html:643
@@ -136,7 +136,7 @@ msgstr "Département"
msgid "Name"
msgstr "Nom"
-#: forms.py:468 forms.py:672 forms.py:750 forms.py:1232 models.py:279
+#: forms.py:468 forms.py:672 forms.py:750 forms.py:1232 models.py:282
msgid "Operation type"
msgstr "Type d'opération"
@@ -144,24 +144,24 @@ msgstr "Type d'opération"
msgid "Is open?"
msgstr "Est ouvert ?"
-#: forms.py:478 forms.py:782 models.py:268
+#: forms.py:478 forms.py:782 models.py:271
msgid "In charge"
msgstr "Responsable"
-#: forms.py:485 models.py:981
+#: forms.py:485 models.py:984
msgid "Scientist in charge"
msgstr "Responsable scientifique"
-#: forms.py:487 forms.py:674 forms.py:772 models.py:266
+#: forms.py:487 forms.py:674 forms.py:772 models.py:269
msgid "Operator"
msgstr "Opérateur"
-#: forms.py:496 forms.py:1102 models.py:89 models.py:281
+#: forms.py:496 forms.py:1102 models.py:89 models.py:284
#: templates/ishtar/blocks/window_tables/archaeologicalsites.html:10
msgid "Remains"
msgstr "Vestiges"
-#: forms.py:497 forms.py:1080 forms.py:1099 models.py:87 models.py:287
+#: forms.py:497 forms.py:1080 forms.py:1099 models.py:87 models.py:290
#: templates/ishtar/blocks/window_tables/archaeologicalsites.html:9
msgid "Periods"
msgstr "Périodes"
@@ -194,19 +194,19 @@ msgstr "Commentaire"
msgid "Abstract (full text search)"
msgstr "Résumé (recherche texte intégral)"
-#: forms.py:512 forms.py:840 models.py:335
+#: forms.py:512 forms.py:840 models.py:338
msgid "Comment about scientific documentation"
msgstr "Commentaire concernant la documentation scientifique"
-#: forms.py:513 forms.py:842 models.py:347
+#: forms.py:513 forms.py:842 models.py:350
msgid "Record quality"
msgstr "Qualité d'enregistrement"
-#: forms.py:514 forms.py:807 models.py:299
+#: forms.py:514 forms.py:807 models.py:302
msgid "Report processing"
msgstr "Traitement du rapport"
-#: forms.py:516 forms.py:845 models.py:342
+#: forms.py:516 forms.py:845 models.py:345
msgid "Virtual operation"
msgstr "Opération virtuelle"
@@ -230,7 +230,7 @@ msgstr "Date limite de rendu de la documentation avant"
msgid "Documentation deadline after"
msgstr "Date limite de rendu de la documentation après"
-#: forms.py:541 forms.py:830 models.py:354
+#: forms.py:541 forms.py:830 models.py:357
msgid "Documentation received"
msgstr "Documentation reçue"
@@ -242,7 +242,7 @@ msgstr "Date limite de rendu du mobilier avant"
msgid "Finds deadline after"
msgstr "Date limite de rendu du mobilier après"
-#: forms.py:547 forms.py:835 models.py:358
+#: forms.py:547 forms.py:835 models.py:361
msgid "Finds received"
msgstr "Mobilier reçu"
@@ -254,12 +254,12 @@ msgstr "Rechercher une opération"
msgid "Associated file"
msgstr "Dossier associé"
-#: forms.py:640 forms.py:933 models.py:493 models.py:883 models.py:992
+#: forms.py:640 forms.py:933 models.py:496 models.py:886 models.py:995
#: wizards.py:80
msgid "Archaeological file"
msgstr "Dossier archéologique"
-#: forms.py:647 forms.py:649 models.py:349
+#: forms.py:647 forms.py:649 models.py:352
msgid "Abstract"
msgstr "Résumé"
@@ -271,7 +271,7 @@ msgstr "mois"
msgid "years"
msgstr "années"
-#: forms.py:654 models.py:252
+#: forms.py:654 models.py:255
msgid "Creation date"
msgstr "Date de création"
@@ -328,11 +328,11 @@ msgstr "Avec du mobilier"
msgid "General"
msgstr "Général"
-#: forms.py:748 models.py:332
+#: forms.py:748 models.py:335
msgid "Generic name"
msgstr "Nom générique"
-#: forms.py:757 models.py:301
+#: forms.py:757 models.py:304
msgid "Old code"
msgstr "Ancien code"
@@ -340,7 +340,7 @@ msgstr "Ancien code"
msgid "Head scientist"
msgstr "Responsable scientifique"
-#: forms.py:779 models.py:331
+#: forms.py:779 models.py:334
msgid "Operator reference"
msgstr "Référence de l'opérateur"
@@ -348,23 +348,23 @@ msgstr "Référence de l'opérateur"
msgid "Total surface (m2)"
msgstr "Surface totale (m2)"
-#: forms.py:800 models.py:53 models.py:255 models.py:1386
+#: forms.py:800 models.py:53 models.py:258 models.py:1389
msgid "Start date"
msgstr "Date de début"
-#: forms.py:802 models.py:257
+#: forms.py:802 models.py:260
msgid "Excavation end date"
msgstr "Date de fin de chantier"
-#: forms.py:805 models.py:258
+#: forms.py:805 models.py:261
msgid "Report delivery date"
msgstr "Date de livraison du rapport"
-#: forms.py:827 models.py:351
+#: forms.py:827 models.py:354
msgid "Deadline for submission of the documentation"
msgstr "Date limite de rendu de la documentation"
-#: forms.py:832 models.py:356
+#: forms.py:832 models.py:359
msgid "Deadline for submission of the finds"
msgstr "Date limite de rendu du mobilier"
@@ -406,7 +406,7 @@ msgstr ""
msgid "Bad operation code"
msgstr "Mauvais code d'opération"
-#: forms.py:929 models.py:508
+#: forms.py:929 models.py:511
msgid "Operation code"
msgstr "Code de l'opération"
@@ -414,20 +414,20 @@ msgstr "Code de l'opération"
msgid "Preventive informations - excavation"
msgstr "Information archéologie préventive - fouille"
-#: forms.py:956 models.py:285
+#: forms.py:956 models.py:288
#: templates/ishtar/dashboards/dashboard_operation.html:701
msgid "Cost (euros)"
msgstr "Coût (euros)"
-#: forms.py:957 models.py:290
+#: forms.py:957 models.py:293
msgid "Scheduled man-days"
msgstr "Jours-hommes prévus"
-#: forms.py:959 models.py:293
+#: forms.py:959 models.py:296
msgid "Optional man-days"
msgstr "Jours-hommes optionnels"
-#: forms.py:961 models.py:296
+#: forms.py:961 models.py:299
msgid "Effective man-days"
msgstr "Jours-hommes effectifs"
@@ -435,23 +435,23 @@ msgstr "Jours-hommes effectifs"
msgid "Preventive informations - diagnostic"
msgstr "Information archéologie préventive - diagnostic"
-#: forms.py:974 models.py:315
+#: forms.py:974 models.py:318
msgid "Prescription on zoning"
msgstr "Prescription sur zonage"
-#: forms.py:976 models.py:318
+#: forms.py:976 models.py:321
msgid "Prescription on large area"
msgstr "Prescription sur une vaste surface"
-#: forms.py:979 models.py:320
+#: forms.py:979 models.py:323
msgid "Prescription on geoarchaeological context"
msgstr "Prescription sur un contexte géoarchéologique"
-#: forms.py:983 forms.py:1005 models.py:283 models.py:1015
+#: forms.py:983 forms.py:1005 models.py:286 models.py:1018
msgid "Towns"
msgstr "Communes"
-#: forms.py:1012 models.py:1212 models.py:1384
+#: forms.py:1012 models.py:1215 models.py:1387
msgid "Parcel"
msgstr "Parcelle"
@@ -476,7 +476,7 @@ msgstr "Référence"
msgid "This reference already exists."
msgstr "Cette référence existe déjà."
-#: forms.py:1157 models.py:94 models.py:339
+#: forms.py:1157 models.py:94 models.py:342
#: templates/ishtar/sheet_operation.html:94
msgid "Archaeological sites"
msgstr "Entités archéologiques"
@@ -497,7 +497,7 @@ msgstr "Voulez-vous clore cette opération ?"
msgid "Would you like to delete this operation?"
msgstr "Voulez-vous supprimer cette opération ?"
-#: forms.py:1186 forms.py:1256 forms.py:1392 models.py:858 models.py:972
+#: forms.py:1186 forms.py:1256 forms.py:1392 models.py:861 models.py:975
msgid "Index"
msgstr "Index"
@@ -526,7 +526,7 @@ msgstr "Rechercher une documentation"
msgid "You should select a document."
msgstr "Vous devez sélectionner un document."
-#: forms.py:1263 forms.py:1330 models.py:897 models.py:966
+#: forms.py:1263 forms.py:1330 models.py:900 models.py:969
msgid "Act type"
msgstr "Type d'acte"
@@ -534,7 +534,7 @@ msgstr "Type d'acte"
msgid "Indexed?"
msgstr "Indexé ?"
-#: forms.py:1270 forms.py:1335 models.py:1006
+#: forms.py:1270 forms.py:1335 models.py:1009
#: templates/ishtar/blocks/window_tables/administrativacts.html:10
msgid "Object"
msgstr "Objet"
@@ -547,7 +547,7 @@ msgstr "Rechercher un acte administratif"
msgid "You should select an administrative act."
msgstr "Vous devez sélectionner un acte administratif."
-#: forms.py:1338 models.py:1003
+#: forms.py:1338 models.py:1006
msgid "Signature date"
msgstr "Date de signature"
@@ -605,7 +605,7 @@ msgstr "Clôture"
msgid "Deletion"
msgstr "Suppression"
-#: ishtar_menu.py:58 models.py:1022
+#: ishtar_menu.py:58 models.py:1025
#: templates/ishtar/sheet_administrativeact.html:4
msgid "Administrative act"
msgstr "Acte administratif"
@@ -630,16 +630,16 @@ msgstr "Tableau de bord"
msgid "General informations"
msgstr "Informations générales"
-#: ishtar_menu.py:136 models.py:367
+#: ishtar_menu.py:136 models.py:370
#: templates/ishtar/dashboards/dashboard_operation.html:8
msgid "Operations"
msgstr "Opérations"
-#: models.py:52 models.py:70 models.py:1848
+#: models.py:52 models.py:70 models.py:1851
msgid "Order"
msgstr "Ordre"
-#: models.py:54 models.py:1387
+#: models.py:54 models.py:1390
msgid "End date"
msgstr "Date de fin"
@@ -695,371 +695,371 @@ msgstr "Arbitraire"
msgid "Reliable"
msgstr "Fiable"
-#: models.py:230
+#: models.py:233
msgid "Year - Index"
msgstr "Année - Index"
-#: models.py:231
+#: models.py:234
msgid "Associated file (label)"
msgstr "Fichier associé (nom)"
-#: models.py:232
+#: models.py:235
msgid "Operator name"
msgstr "Nom de l'opérateur"
-#: models.py:233
+#: models.py:236
msgid "Scientist (full name)"
msgstr "Responsable scientifique (nom complet)"
-#: models.py:234
+#: models.py:237
msgid "Associated file (external ID)"
msgstr "Fichier associé (identifiant externe)"
-#: models.py:235
+#: models.py:238
msgid "Scientist (title)"
msgstr "Responsable scientifique (titre)"
-#: models.py:236
+#: models.py:239
msgid "Scientist (surname)"
msgstr "Responsable scientifique (nom)"
-#: models.py:237
+#: models.py:240
msgid "Scientist (name)"
msgstr "Scientifique (nom)"
-#: models.py:238
+#: models.py:241
msgid "Scientist - Organization (name)"
msgstr "Scientifique - Organisation (nom)"
-#: models.py:239
+#: models.py:242
msgid "In charge (title)"
msgstr "Responsable (titre)"
-#: models.py:240
+#: models.py:243
msgid "In charge (surname)"
msgstr "Responsable (prénom)"
-#: models.py:241
+#: models.py:244
msgid "In charge (name)"
msgstr "Responsable (nom)"
-#: models.py:242
+#: models.py:245
msgid "In charge - Organization (name)"
msgstr "Responsable - Organisation (nom)"
-#: models.py:247
+#: models.py:250
msgid "Archaeological sites (reference)"
msgstr "Entités archéologiques (référence)"
-#: models.py:254
+#: models.py:257
msgid "Closing date"
msgstr "Date de clôture"
-#: models.py:261
+#: models.py:264
msgid "In charge scientist"
msgstr "Responsable scientifique"
-#: models.py:276 models.py:1192
+#: models.py:279 models.py:1195
msgid "File"
msgstr "Dossier"
-#: models.py:280
+#: models.py:283
msgid "Surface (m2)"
msgstr "Surface (m2)"
-#: models.py:333
+#: models.py:336
msgid "General comment"
msgstr "Commentaire général"
-#: models.py:336
+#: models.py:339
msgid "Cached name"
msgstr "Nom en cache"
-#: models.py:344
+#: models.py:347
msgid ""
"If checked, it means that this operation have not been officialy registered."
msgstr ""
"Si coché, cela signifie que cette opération n'a pas été officiellement "
"enregistrée."
-#: models.py:360
+#: models.py:363
msgid "Point"
msgstr "Point"
-#: models.py:361
+#: models.py:364
msgid "Multi polygon"
msgstr "Polygones multi-parties"
-#: models.py:369
+#: models.py:372
msgid "Can view all Operations"
msgstr "Peut voir toutes les Opérations"
-#: models.py:370
+#: models.py:373
msgid "Can view own Operation"
msgstr "Peut voir sa propre Opération"
-#: models.py:371
+#: models.py:374
msgid "Can add own Operation"
msgstr "Peut ajouter sa propre Opération"
-#: models.py:372
+#: models.py:375
msgid "Can change own Operation"
msgstr "Peut modifier sa propre Opération"
-#: models.py:373
+#: models.py:376
msgid "Can delete own Operation"
msgstr "Peut supprimer sa propre Opération"
-#: models.py:374
+#: models.py:377
msgid "Can close Operation"
msgstr "Peut fermer une Opération"
-#: models.py:402
+#: models.py:405
msgid "OPE"
msgstr "OPE"
-#: models.py:462
+#: models.py:465
msgid "Intercommunal"
msgstr "Intercommunal"
-#: models.py:494
+#: models.py:497
msgid "Code patriarche"
msgstr "Code patriarche"
-#: models.py:534
+#: models.py:537
msgid "This operation code already exists for this year"
msgstr "Ce code d'opération existe déjà pour cette année."
-#: models.py:567
+#: models.py:570
msgid "Number of parcels"
msgstr "Nombre de parcelles"
-#: models.py:585
+#: models.py:588
msgid "Number of administrative acts"
msgstr "Nombre d'actes administratifs"
-#: models.py:593
+#: models.py:596
msgid "Number of indexed administrative acts"
msgstr "Nombre d'actes administratifs indexés"
-#: models.py:601
+#: models.py:604
msgid "Number of context records"
msgstr "Nombre d'Unités d'Enregistrement"
-#: models.py:637
+#: models.py:640
msgid "Number of finds"
msgstr "Nombre d'éléments de mobilier"
-#: models.py:682
+#: models.py:685
msgid "No type"
msgstr "Pas de type"
-#: models.py:713
+#: models.py:716
msgid "Number of sources"
msgstr "Nombre de documents"
-#: models.py:755 templates/ishtar/dashboards/dashboard_operation.html:309
+#: models.py:758 templates/ishtar/dashboards/dashboard_operation.html:309
#: templates/ishtar/dashboards/dashboard_operation.html:575
#: templates/ishtar/dashboards/dashboard_operation.html:611
msgid "Mean"
msgstr "Moyenne"
-#: models.py:797
+#: models.py:800
msgid "Inverse relation"
msgstr "Relation inverse"
-#: models.py:801
+#: models.py:804
msgid "Operation relation type"
msgstr "Type de relation entre opérations"
-#: models.py:802
+#: models.py:805
msgid "Operation relation types"
msgstr "Types de relation entre opérations"
-#: models.py:815
+#: models.py:818
msgid "Operation record relation"
msgstr "Relation entre opérations"
-#: models.py:816
+#: models.py:819
msgid "Operation record relations"
msgstr "Relations entre opérations"
-#: models.py:862
+#: models.py:865
msgid "Operation documentation"
msgstr "Documentation d'une opération"
-#: models.py:863
+#: models.py:866
msgid "Operation documentations"
msgstr "Documentations des opérations"
-#: models.py:866
+#: models.py:869
msgid "Can view all Operation sources"
msgstr "Peut voir toutes les Documentations d'opération"
-#: models.py:868
+#: models.py:871
msgid "Can view own Operation source"
msgstr "Peut voir sa propre Documentation d'opération"
-#: models.py:870
+#: models.py:873
msgid "Can add own Operation source"
msgstr "Peut ajouter sa propre Documentation d'opération"
-#: models.py:872
+#: models.py:875
msgid "Can change own Operation source"
msgstr "Peut modifier sa propre Documentation d'opération"
-#: models.py:874
+#: models.py:877
msgid "Can delete own Operation source"
msgstr "Peut supprimer sa propre Documentation d'opération"
-#: models.py:885 models.py:997
+#: models.py:888 models.py:1000
msgid "Treatment request"
msgstr "Demande de traitement"
-#: models.py:886 models.py:1002
+#: models.py:889 models.py:1005
msgid "Treatment"
msgstr "Traitement"
-#: models.py:888
+#: models.py:891
msgid "Intended to"
msgstr "Destiné à"
-#: models.py:890
+#: models.py:893
msgid "Code"
msgstr "Code"
-#: models.py:893
+#: models.py:896
msgid "Associated template"
msgstr "Patron associé"
-#: models.py:894
+#: models.py:897
msgid "Indexed"
msgstr "Indexé"
-#: models.py:898
+#: models.py:901
msgid "Act types"
msgstr "Types d'acte"
-#: models.py:970
+#: models.py:973
msgid "Person in charge of the operation"
msgstr "Responsable d'opération"
-#: models.py:976
+#: models.py:979
msgid "Archaeological preventive operator"
msgstr "Opérateur d'archéologie préventive"
-#: models.py:984
+#: models.py:987
msgid "Signatory"
msgstr "Signataire"
-#: models.py:1012
+#: models.py:1015
msgid "Departments"
msgstr "Départements"
-#: models.py:1013
+#: models.py:1016
msgid "Cached values get from associated departments"
msgstr "Valeur en cache des départements associés"
-#: models.py:1016
+#: models.py:1019
msgid "Cached values get from associated towns"
msgstr "Valeur en cache des communes associées"
-#: models.py:1023 templates/ishtar/sheet_operation.html:102
+#: models.py:1026 templates/ishtar/sheet_operation.html:102
#: templates/ishtar/sheet_operation.html:138
msgid "Administrative acts"
msgstr "Actes administratifs"
-#: models.py:1026
+#: models.py:1029
msgid "Can view all Administrative acts"
msgstr "Peut voir tous les Actes administratifs"
-#: models.py:1028
+#: models.py:1031
msgid "Can view own Administrative act"
msgstr "Peut voir son propre Acte administratif"
-#: models.py:1030
+#: models.py:1033
msgid "Can add own Administrative act"
msgstr "Peut ajouter son propre Acte administratif"
-#: models.py:1032
+#: models.py:1035
msgid "Can change own Administrative act"
msgstr "Peut modifier son propre Acte administratif"
-#: models.py:1034
+#: models.py:1037
msgid "Can delete own Administrative act"
msgstr "Peut supprimer son propre Acte administratif"
-#: models.py:1043
+#: models.py:1046
#: templates/ishtar/blocks/window_tables/administrativacts.html:7
#: templates/ishtar/blocks/window_tables/archaeologicalsites.html:7
msgid "Ref."
msgstr "Réf."
-#: models.py:1137
+#: models.py:1140
msgid "This index already exists for this year"
msgstr "Cet index existe déjà pour cette année."
-#: models.py:1205
+#: models.py:1208
msgid "External ID"
msgstr "ID externe"
-#: models.py:1208
+#: models.py:1211
msgid "External ID is set automatically"
msgstr "L'identifiant externe est configuré automatiquement"
-#: models.py:1209
+#: models.py:1212
msgid "Address - Locality"
msgstr "Adresse - Lieu-dit"
-#: models.py:1382
+#: models.py:1385
msgid "Owner"
msgstr "Propriétaire"
-#: models.py:1390
+#: models.py:1393
msgid "Parcel owner"
msgstr "Propriétaire de parcelle"
-#: models.py:1391
+#: models.py:1394
msgid "Parcel owners"
msgstr "Propriétaires de parcelle"
-#: models.py:1417
+#: models.py:1420
msgid "Recorded"
msgstr "Enregistré"
-#: models.py:1418
+#: models.py:1421
msgid "Effective"
msgstr "Effectif"
-#: models.py:1419
+#: models.py:1422
msgid "Active"
msgstr "Actif"
-#: models.py:1420
+#: models.py:1423
msgid "Field completed"
msgstr "Terrain achevé"
-#: models.py:1421
+#: models.py:1424
msgid "Associated report"
msgstr "Rapport associé"
-#: models.py:1422
+#: models.py:1425
msgid "Closed"
msgstr "Clos"
-#: models.py:1423
+#: models.py:1426
msgid "Documented and closed"
msgstr "Documenté et clos"
-#: models.py:1849
+#: models.py:1852
msgid "Is preventive"
msgstr "Préventif"
-#: models.py:1852
+#: models.py:1855
msgid "Operation type old"
msgstr "Type d'opération - ancien"
-#: models.py:1853
+#: models.py:1856
msgid "Operation types old"
msgstr "Types d'opération - ancien"
diff --git a/translations/fr/archaeological_warehouse.po b/translations/fr/archaeological_warehouse.po
index 4f32658d1..3e2110836 100644
--- a/translations/fr/archaeological_warehouse.po
+++ b/translations/fr/archaeological_warehouse.po
@@ -21,7 +21,7 @@ msgstr ""
msgid "Warehouse"
msgstr "Dépôt"
-#: forms.py:44 forms.py:49 models.py:234
+#: forms.py:44 forms.py:49 models.py:239
msgid "Division"
msgstr "Division"
@@ -85,16 +85,16 @@ msgstr "Téléphone mobile"
msgid "Would you like to delete this warehouse?"
msgstr "Voulez-vous supprimer ce dépôt ?"
-#: forms.py:150 models.py:173 models.py:232
+#: forms.py:150 models.py:173 models.py:237
#: templates/ishtar/sheet_container.html:4
msgid "Container"
msgstr "Contenant"
-#: forms.py:154 forms.py:220 models.py:127
+#: forms.py:154 forms.py:221 models.py:127
msgid "Ref."
msgstr "Réf."
-#: forms.py:155 forms.py:219 models.py:130 models.py:163
+#: forms.py:155 forms.py:220 models.py:130 models.py:163
msgid "Container type"
msgstr "Type de contenant"
@@ -106,47 +106,47 @@ msgstr "Lieu actuel (dépôt)"
msgid "Responsible warehouse"
msgstr "Dépôt responsable"
-#: forms.py:194
+#: forms.py:195
msgid "Index"
msgstr "Index"
-#: forms.py:212
+#: forms.py:213
msgid "This ID already exists for this warehouse."
msgstr "Cet identifiant existe déjà pour ce dépôt."
-#: forms.py:230 forms.py:236 views.py:127
+#: forms.py:231 forms.py:237 views.py:127
msgid "Container search"
msgstr "Rechercher un contenant"
-#: forms.py:232 forms.py:238
+#: forms.py:233 forms.py:239
msgid "You should select a container."
msgstr "Vous devez sélectionner un contenant."
-#: forms.py:233
+#: forms.py:234
msgid "Add a new container"
msgstr "Ajouter un nouveau contenant"
-#: forms.py:243 ishtar_menu.py:35 views.py:93
+#: forms.py:244 ishtar_menu.py:35 views.py:93
msgid "Packaging"
msgstr "Conditionnement"
-#: forms.py:249
+#: forms.py:250
msgid "Packager"
msgstr "Personne assurant le conditionnement"
-#: forms.py:255
+#: forms.py:256
msgid "Date"
msgstr "Date"
-#: forms.py:259
+#: forms.py:260
msgid "Packaged finds"
msgstr "Mobilier conditionné"
-#: forms.py:263 models.py:166
+#: forms.py:264 models.py:166
msgid "Localisation"
msgstr "Localisation"
-#: forms.py:287 forms.py:288
+#: forms.py:288 forms.py:289
msgid "Would you like to delete this container?"
msgstr "Voulez-vous supprimer ce contenant ?"
@@ -262,15 +262,15 @@ msgstr "Réf. du contenant"
msgid "Cached location"
msgstr "Lieu - en cache"
-#: models.py:235
+#: models.py:240
msgid "Reference"
msgstr "Référence"
-#: models.py:238
+#: models.py:243
msgid "Container localisation"
msgstr "Localisation de contenant"
-#: models.py:239
+#: models.py:244
msgid "Container localisations"
msgstr "Localisations de contenant"
@@ -286,15 +286,15 @@ msgstr "Modifier un dépôt"
msgid "Warehouse deletion"
msgstr "Supprimer un dépôt"
-#: views.py:135
+#: views.py:138
msgid "Container creation"
msgstr "Ajouter un contenant"
-#: views.py:144
+#: views.py:147
msgid "Container modification"
msgstr "Modifier un contenant"
-#: views.py:151
+#: views.py:154
msgid "Container deletion"
msgstr "Supprimer un contenant"
diff --git a/translations/fr/ishtar_common.po b/translations/fr/ishtar_common.po
index 269ddb6eb..c1bdcb0c2 100644
--- a/translations/fr/ishtar_common.po
+++ b/translations/fr/ishtar_common.po
@@ -6,13 +6,14 @@
# Valérie-Emma Leroux <emma@iggdrasil.net>, 2016. #zanata
# Étienne Loks <etienne.loks@iggdrasil.net>, 2016. #zanata
# Valérie-Emma Leroux <emma@iggdrasil.net>, 2017. #zanata
+# Étienne Loks <etienne.loks@iggdrasil.net>, 2017. #zanata
msgid ""
msgstr ""
"MIME-Version: 1.0\n"
"Content-Transfer-Encoding: 8bit\n"
"Content-Type: text/plain; charset=UTF-8\n"
-"PO-Revision-Date: 2017-01-09 05:43-0500\n"
-"Last-Translator: Valérie-Emma Leroux <emma@iggdrasil.net>\n"
+"PO-Revision-Date: 2017-01-12 04:03-0500\n"
+"Last-Translator: Étienne Loks <etienne.loks@iggdrasil.net>\n"
"Language-Team: \n"
"Language: fr\n"
"Plural-Forms: nplurals=2; plural=n>1;\n"
@@ -170,12 +171,12 @@ msgstr "Vous devez sélectionner un élément."
msgid "Add a new item"
msgstr "Ajouter un nouvel élément"
-#: forms.py:262 models.py:1367
+#: forms.py:262 models.py:1368
msgid "Template"
msgstr "Patron"
#: forms_common.py:41 forms_common.py:59 forms_common.py:182
-#: forms_common.py:406 models.py:1433 models.py:2825
+#: forms_common.py:406 models.py:1434 models.py:2826
#: templates/blocks/JQueryAdvancedTown.html:19
#: templates/ishtar/sheet_organization.html:13
msgid "Town"
@@ -198,8 +199,8 @@ msgstr ""
"<p class='example'>Par exemple tapez « saint denis 93 » pour obtenir la "
"commune Saint-Denis dans le département français de Seine-Saint-Denis.</p>"
-#: forms_common.py:68 forms_common.py:855 ishtar_menu.py:47 models.py:1606
-#: models.py:2452 models.py:2634 models.py:2695
+#: forms_common.py:68 forms_common.py:855 ishtar_menu.py:47 models.py:1607
+#: models.py:2453 models.py:2635 models.py:2696
#: templates/ishtar/sheet_person.html:4
msgid "Person"
msgstr "Personne"
@@ -213,63 +214,63 @@ msgstr ""
"pas possible."
#: forms_common.py:170 forms_common.py:327 forms_common.py:451
-#: ishtar_menu.py:75 models.py:1607 models.py:2338
+#: ishtar_menu.py:75 models.py:1608 models.py:2339
#: templates/ishtar/sheet_organization.html:4
msgid "Organization"
msgstr "Organisation"
#: forms_common.py:173 forms_common.py:210 forms_common.py:322
-#: forms_common.py:376 forms_common.py:446 models.py:1034 models.py:1366
-#: models.py:1652 models.py:1871 models.py:2332 models.py:2438 models.py:2811
+#: forms_common.py:376 forms_common.py:446 models.py:1034 models.py:1367
+#: models.py:1653 models.py:1872 models.py:2333 models.py:2439 models.py:2812
#: templates/ishtar/sheet_organization.html:8
#: templates/ishtar/sheet_organization.html:21
msgid "Name"
msgstr "Nom"
-#: forms_common.py:174 models.py:1588 models.py:2002
+#: forms_common.py:174 models.py:1589 models.py:2003
msgid "Organization type"
msgstr "Type d'organisation"
-#: forms_common.py:176 forms_common.py:400 models.py:1428
+#: forms_common.py:176 forms_common.py:400 models.py:1429
#: templates/ishtar/sheet_organization.html:10
msgid "Address"
msgstr "Adresse"
-#: forms_common.py:178 forms_common.py:403 models.py:1429
+#: forms_common.py:178 forms_common.py:403 models.py:1430
#: templates/ishtar/sheet_organization.html:11
msgid "Address complement"
msgstr "Complément d'adresse"
-#: forms_common.py:180 forms_common.py:404 models.py:1431
+#: forms_common.py:180 forms_common.py:404 models.py:1432
#: templates/ishtar/sheet_organization.html:12
msgid "Postal code"
msgstr "Code postal"
-#: forms_common.py:183 forms_common.py:407 models.py:1434
+#: forms_common.py:183 forms_common.py:407 models.py:1435
msgid "Country"
msgstr "Pays"
#: forms_common.py:185 forms_common.py:324 forms_common.py:380
-#: forms_common.py:448 forms_common.py:572 models.py:1461
+#: forms_common.py:448 forms_common.py:572 models.py:1462
msgid "Email"
msgstr "Courriel"
-#: forms_common.py:186 forms_common.py:383 models.py:1446
+#: forms_common.py:186 forms_common.py:383 models.py:1447
#: templates/ishtar/sheet_organization.html:14
#: templates/ishtar/sheet_person.html:19
#: templates/ishtar/wizard/wizard_person.html:17
msgid "Phone"
msgstr "Téléphone"
-#: forms_common.py:187 forms_common.py:392 models.py:1458
+#: forms_common.py:187 forms_common.py:392 models.py:1459
#: templates/ishtar/sheet_organization.html:15
#: templates/ishtar/sheet_person.html:37
#: templates/ishtar/wizard/wizard_person.html:35
msgid "Mobile phone"
msgstr "Téléphone portable"
-#: forms_common.py:211 forms_common.py:325 forms_common.py:449 models.py:2032
-#: models.py:2334 models.py:2746 templates/sheet_ope.html:85
+#: forms_common.py:211 forms_common.py:325 forms_common.py:449 models.py:2033
+#: models.py:2335 models.py:2747 templates/sheet_ope.html:85
#: templates/sheet_ope.html.py:105 templates/sheet_ope.html:126
#: templates/ishtar/import_list.html:13
#: templates/ishtar/sheet_organization.html:23
@@ -293,7 +294,7 @@ msgstr "Fusionner tous les éléments dans"
msgid "Organization to merge"
msgstr "Organisation à fusionner"
-#: forms_common.py:323 forms_common.py:374 forms_common.py:447 models.py:2436
+#: forms_common.py:323 forms_common.py:374 forms_common.py:447 models.py:2437
#: templates/ishtar/sheet_organization.html:22
msgid "Surname"
msgstr "Prénom"
@@ -311,25 +312,25 @@ msgstr "Personne à fusionner"
msgid "Identity"
msgstr "Identité"
-#: forms_common.py:371 forms_common.py:773 forms_common.py:822 models.py:2003
-#: models.py:2430 models.py:2432 models.py:2743 templates/sheet_ope.html:104
+#: forms_common.py:371 forms_common.py:773 forms_common.py:822 models.py:2004
+#: models.py:2431 models.py:2433 models.py:2744 templates/sheet_ope.html:104
#: templates/ishtar/blocks/window_tables/documents.html:7
msgid "Title"
msgstr "Titre"
-#: forms_common.py:372 models.py:2434
+#: forms_common.py:372 models.py:2435
msgid "Salutation"
msgstr "Formule d'appel"
-#: forms_common.py:378 models.py:2440
+#: forms_common.py:378 models.py:2441
msgid "Raw name"
msgstr "Nom brut"
-#: forms_common.py:381 models.py:1447
+#: forms_common.py:381 models.py:1448
msgid "Phone description"
msgstr "Type de téléphone"
-#: forms_common.py:384 models.py:1449 models.py:1451
+#: forms_common.py:384 models.py:1450 models.py:1452
msgid "Phone description 2"
msgstr "Type de téléphone 2"
@@ -337,11 +338,11 @@ msgstr "Type de téléphone 2"
msgid "Phone 2"
msgstr "Téléphone 2"
-#: forms_common.py:388 models.py:1455
+#: forms_common.py:388 models.py:1456
msgid "Phone description 3"
msgstr "Type de téléphone 3"
-#: forms_common.py:390 models.py:1453
+#: forms_common.py:390 models.py:1454
msgid "Phone 3"
msgstr "Téléphone 3"
@@ -349,23 +350,23 @@ msgstr "Téléphone 3"
msgid "Current organization"
msgstr "Organisation actuelle"
-#: forms_common.py:409 models.py:1436
+#: forms_common.py:409 models.py:1437
msgid "Other address: address"
msgstr "Autre adresse : adresse"
-#: forms_common.py:412 models.py:1439
+#: forms_common.py:412 models.py:1440
msgid "Other address: address complement"
msgstr "Autre adresse : complément d'adresse"
-#: forms_common.py:414 models.py:1440
+#: forms_common.py:414 models.py:1441
msgid "Other address: postal code"
msgstr "Autre adresse : code postal"
-#: forms_common.py:416 models.py:1442
+#: forms_common.py:416 models.py:1443
msgid "Other address: town"
msgstr "Autre adresse : ville"
-#: forms_common.py:418 models.py:1444
+#: forms_common.py:418 models.py:1445
msgid "Other address: country"
msgstr "Autre adresse : pays"
@@ -381,7 +382,7 @@ msgstr "Nom d'utilisateur"
msgid "Account search"
msgstr "Rechercher un compte"
-#: forms_common.py:510 forms_common.py:550 forms_common.py:554 models.py:2386
+#: forms_common.py:510 forms_common.py:550 forms_common.py:554 models.py:2387
msgid "Person type"
msgstr "Type de personne"
@@ -413,7 +414,7 @@ msgstr "Ce nom d'utilisateur existe déjà."
msgid "Send the new password by email?"
msgstr "Envoyer le nouveau mot de passe par courriel ?"
-#: forms_common.py:628 forms_common.py:641 models.py:2826
+#: forms_common.py:628 forms_common.py:641 models.py:2827
msgid "Towns"
msgstr "Communes"
@@ -429,7 +430,7 @@ msgstr "Seul un choix peut être coché."
msgid "Documentation informations"
msgstr "Information sur le document"
-#: forms_common.py:775 forms_common.py:823 models.py:2004 models.py:2720
+#: forms_common.py:775 forms_common.py:823 models.py:2005 models.py:2721
msgid "Source type"
msgstr "Type de document"
@@ -441,37 +442,37 @@ msgstr "Référence"
msgid "Internal reference"
msgstr "Référence interne"
-#: forms_common.py:783 models.py:2757
+#: forms_common.py:783 models.py:2758
msgid "Numerical ressource (web address)"
msgstr "Ressource numérique (adresse web)"
-#: forms_common.py:784 models.py:2759
+#: forms_common.py:784 models.py:2760
msgid "Receipt date"
msgstr "Date de réception"
-#: forms_common.py:786 models.py:2161 models.py:2761
+#: forms_common.py:786 models.py:2162 models.py:2762
msgid "Creation date"
msgstr "Date de création"
-#: forms_common.py:789 models.py:2764
+#: forms_common.py:789 models.py:2765
msgid "Receipt date in documentation"
msgstr "Date de réception en documentation"
#: forms_common.py:791 forms_common.py:827 models.py:323 models.py:634
-#: models.py:1898 models.py:2444 models.py:2771
+#: models.py:1899 models.py:2445 models.py:2772
msgid "Comment"
msgstr "Commentaire"
-#: forms_common.py:793 forms_common.py:826 models.py:1036 models.py:1656
-#: models.py:1830 models.py:1872 models.py:2770 templates/sheet_ope.html:128
+#: forms_common.py:793 forms_common.py:826 models.py:1036 models.py:1657
+#: models.py:1831 models.py:1873 models.py:2771 templates/sheet_ope.html:128
msgid "Description"
msgstr "Description"
-#: forms_common.py:796 models.py:2772
+#: forms_common.py:796 models.py:2773
msgid "Additional information"
msgstr "Informations supplémentaires"
-#: forms_common.py:798 forms_common.py:830 models.py:2774
+#: forms_common.py:798 forms_common.py:830 models.py:2775
msgid "Has a duplicate"
msgstr "Existe en doublon"
@@ -488,7 +489,7 @@ msgstr ""
"<p>Les images trop grandes sont retaillées en : %(width)dx%(height)d (le "
"ratio est conservé).</p>"
-#: forms_common.py:819 forms_common.py:848 forms_common.py:882 models.py:2700
+#: forms_common.py:819 forms_common.py:848 forms_common.py:882 models.py:2701
#: templates/ishtar/wizard/wizard_person_deletion.html:124
msgid "Author"
msgstr "Auteur"
@@ -501,7 +502,7 @@ msgstr "Informations complémentaires"
msgid "Would you like to delete this documentation?"
msgstr "Voulez-vous supprimer ce document ?"
-#: forms_common.py:856 models.py:2005 models.py:2688 models.py:2697
+#: forms_common.py:856 models.py:2006 models.py:2689 models.py:2698
msgid "Author type"
msgstr "Type d'auteur"
@@ -513,7 +514,7 @@ msgstr "Sélection d'auteur"
msgid "There are identical authors."
msgstr "Il y a des auteurs identiques."
-#: forms_common.py:893 models.py:2701 models.py:2753
+#: forms_common.py:893 models.py:2702 models.py:2754
#: templates/sheet_ope.html:106
#: templates/ishtar/blocks/window_tables/documents.html:9
msgid "Authors"
@@ -531,7 +532,7 @@ msgstr "Ajout/modification"
msgid "Deletion"
msgstr "Suppression"
-#: ishtar_menu.py:39 models.py:1162 views.py:1530
+#: ishtar_menu.py:39 models.py:1163 views.py:1530
msgid "Global variables"
msgstr "Variables globales"
@@ -559,7 +560,7 @@ msgstr "Fusion automatique"
msgid "Manual merge"
msgstr "Fusion manuelle"
-#: ishtar_menu.py:109 models.py:2172
+#: ishtar_menu.py:109 models.py:2173
msgid "Imports"
msgstr "Imports"
@@ -571,7 +572,7 @@ msgstr "Nouvel import"
msgid "Current imports"
msgstr "Imports en cours"
-#: ishtar_menu.py:120
+#: ishtar_menu.py:120 views.py:1588
msgid "Old imports"
msgstr "Anciens imports"
@@ -587,7 +588,7 @@ msgstr "Un élément sélectionné n'est pas valide."
msgid "This item already exists."
msgstr "Cet élément existe déjà."
-#: models.py:319 models.py:633 models.py:1401 models.py:1413 models.py:1827
+#: models.py:319 models.py:633 models.py:1402 models.py:1414 models.py:1828
msgid "Label"
msgstr "Libellé"
@@ -595,11 +596,11 @@ msgstr "Libellé"
msgid "Textual ID"
msgstr "Identifiant textuel"
-#: models.py:324 models.py:636 models.py:1370
+#: models.py:324 models.py:636 models.py:1371
msgid "Available"
msgstr "Disponible"
-#: models.py:655 models.py:1944
+#: models.py:655 models.py:1945
msgid "Key"
msgstr "Clé"
@@ -615,7 +616,7 @@ msgstr "Dernier éditeur"
msgid "Creator"
msgstr "Créateur"
-#: models.py:898 models.py:2837
+#: models.py:898 models.py:2838 models.py:2894
msgid "Order"
msgstr "Ordre"
@@ -639,7 +640,7 @@ msgstr "Euro"
msgid "US dollar"
msgstr "Dollars US"
-#: models.py:1035 models.py:1654
+#: models.py:1035 models.py:1655
msgid "Slug"
msgstr "Identifiant texte"
@@ -667,11 +668,15 @@ msgstr "Module Dépôts"
msgid "Need finds module"
msgstr "Nécessite le module mobilier"
-#: models.py:1046
+#: models.py:1045
+msgid "Mapping module"
+msgstr "Module cartographique"
+
+#: models.py:1047
msgid "Home page"
msgstr "Page d'accueil"
-#: models.py:1047
+#: models.py:1048
#, python-brace-format
msgid ""
"Homepage of Ishtar - if not defined a default homepage will appear. Use the "
@@ -681,11 +686,11 @@ msgstr ""
"défaut apparaît. Utiliser la syntaxe Markdown. {random_image} peut être "
"utilisé pour afficher une image au hasard."
-#: models.py:1051
+#: models.py:1052
msgid "File external id"
msgstr "Identifiant externe de fichier"
-#: models.py:1053
+#: models.py:1054
msgid ""
"Formula to manage file external ID. Change this with care. With incorrect "
"formula, the application might be unusable and import of external data can "
@@ -695,11 +700,11 @@ msgstr ""
"précaution. Une formule incorrecte peut rendre l'application inutilisable et "
"l'import de données externes peut alors être destructif."
-#: models.py:1058
+#: models.py:1059
msgid "Parcel external id"
msgstr "Identifiant externe de parcelle"
-#: models.py:1061
+#: models.py:1062
msgid ""
"Formula to manage parcel external ID. Change this with care. With incorrect "
"formula, the application might be unusable and import of external data can "
@@ -709,11 +714,11 @@ msgstr ""
"précaution. Une formule incorrecte peut rendre l'application inutilisable et "
"l'import de données externes peut alors être destructif."
-#: models.py:1066
+#: models.py:1067
msgid "Context record external id"
msgstr "Identifiant externe d'unité d'enregistrement"
-#: models.py:1068
+#: models.py:1069
msgid ""
"Formula to manage context record external ID. Change this with care. With "
"incorrect formula, the application might be unusable and import of external "
@@ -723,11 +728,11 @@ msgstr ""
"manipuler avec précaution. Une formule incorrecte peut rendre l'application "
"inutilisable et l'import de données externes peut alors être destructif."
-#: models.py:1073
+#: models.py:1074
msgid "Base find external id"
msgstr "Identifiant externe de mobilier de base"
-#: models.py:1075
+#: models.py:1076
msgid ""
"Formula to manage base find external ID. Change this with care. With "
"incorrect formula, the application might be unusable and import of external "
@@ -737,11 +742,11 @@ msgstr ""
"manipuler avec précaution. Une formule incorrecte peut rendre l'application "
"inutilisable et l'import de données externes peut alors être destructif."
-#: models.py:1080
+#: models.py:1081
msgid "Find external id"
msgstr "Identifiant externe de mobilier"
-#: models.py:1082
+#: models.py:1083
msgid ""
"Formula to manage find external ID. Change this with care. With incorrect "
"formula, the application might be unusable and import of external data can "
@@ -751,11 +756,11 @@ msgstr ""
"précaution. Une formule incorrecte peut rendre l'application inutilisable et "
"l'import de données externes peut alors être destructif."
-#: models.py:1087
+#: models.py:1088
msgid "Raw name for person"
msgstr "Nom brut pour une personne"
-#: models.py:1089
+#: models.py:1090
msgid ""
"Formula to manage person raw_name. Change this with care. With incorrect "
"formula, the application might be unusable and import of external data can "
@@ -765,43 +770,43 @@ msgstr ""
"Une formule incorrecte peut rendre l'application inutilisable et l'import de "
"données externes peut alors être destructif."
-#: models.py:1093
+#: models.py:1094
msgid "Current active"
msgstr "Actuellement utilisé"
-#: models.py:1094
+#: models.py:1095
msgid "Currency"
msgstr "Devise"
-#: models.py:1098
+#: models.py:1099
msgid "Ishtar site profile"
msgstr "Profil d'instance Ishtar"
-#: models.py:1099
+#: models.py:1100
msgid "Ishtar site profiles"
msgstr "Profils d'instance Ishtar"
-#: models.py:1155
+#: models.py:1156
msgid "Variable name"
msgstr "Nom de la variable"
-#: models.py:1156
+#: models.py:1157
msgid "Description of the variable"
msgstr "Description de la variable"
-#: models.py:1158 models.py:1945
+#: models.py:1159 models.py:1946
msgid "Value"
msgstr "Valeur"
-#: models.py:1161
+#: models.py:1162
msgid "Global variable"
msgstr "Variable globale"
-#: models.py:1271 models.py:1301
+#: models.py:1272 models.py:1302
msgid "Total"
msgstr "Total"
-#: models.py:1278 models.py:1402 models.py:1414
+#: models.py:1279 models.py:1403 models.py:1415
#: templates/ishtar/sheet_person.html:22
#: templates/ishtar/dashboards/dashboard_main_detail.html:141
#: templates/ishtar/dashboards/dashboard_main_detail_users.html:26
@@ -809,619 +814,631 @@ msgstr "Total"
msgid "Number"
msgstr "Nombre"
-#: models.py:1365
+#: models.py:1366
msgid "Administrative Act"
msgstr "Acte administratif"
-#: models.py:1369
+#: models.py:1370
msgid "Associated object"
msgstr "Objet associé"
-#: models.py:1373
+#: models.py:1374
msgid "Document template"
msgstr "Patron de document"
-#: models.py:1374
+#: models.py:1375
msgid "Document templates"
msgstr "Patrons de document"
-#: models.py:1405 models.py:1415 models.py:2156
+#: models.py:1406 models.py:1416 models.py:2157
msgid "State"
msgstr "État"
-#: models.py:1419 templates/blocks/JQueryAdvancedTown.html:12
+#: models.py:1420 templates/blocks/JQueryAdvancedTown.html:12
msgid "Department"
msgstr "Département"
-#: models.py:1420
+#: models.py:1421
msgid "Departments"
msgstr "Départements"
-#: models.py:1457
+#: models.py:1458
msgid "Raw phone"
msgstr "Téléphone brut"
-#: models.py:1463
+#: models.py:1464
msgid "Alternative address is prefered"
msgstr "L'adresse alternative est préférée"
-#: models.py:1502
+#: models.py:1503
msgid "Tel: "
msgstr "Tél :"
-#: models.py:1506
+#: models.py:1507
msgid "Mobile: "
msgstr "Mobile :"
-#: models.py:1510
+#: models.py:1511
msgid "Email: "
msgstr "Courriel :"
-#: models.py:1515
+#: models.py:1516
msgid "Merge key"
msgstr "Clé de fusion"
-#: models.py:1589
+#: models.py:1590
msgid "Organization types"
msgstr "Types d'organisation"
-#: models.py:1608 views.py:237
+#: models.py:1609 views.py:237
msgid "Operation"
msgstr "Opération"
-#: models.py:1610
+#: models.py:1611
msgid "Archaeological site"
msgstr "Entité Archéologique"
-#: models.py:1611
+#: models.py:1612
msgid "Parcels"
msgstr "Parcelles"
-#: models.py:1613
+#: models.py:1614
msgid "Operation source"
msgstr "Documentation de l'opération"
-#: models.py:1616 views.py:1346 views.py:1396
+#: models.py:1617 views.py:1346 views.py:1396
msgid "Archaeological files"
msgstr "Dossiers"
-#: models.py:1618 views.py:1349 views.py:1404
+#: models.py:1619 views.py:1349 views.py:1404
msgid "Context records"
msgstr "Unités d'Enregistrement"
-#: models.py:1620
+#: models.py:1621
msgid "Context record relations"
msgstr "Relations entre Unités d'Enregistrement"
-#: models.py:1622
+#: models.py:1623
msgid "Base finds"
msgstr "Mobilier de base"
-#: models.py:1658 templates/ishtar/dashboards/dashboard_main.html:25
+#: models.py:1659 templates/ishtar/dashboards/dashboard_main.html:25
msgid "Users"
msgstr "Utilisateurs"
-#: models.py:1660
+#: models.py:1661
msgid "Associated model"
msgstr "Modèle associé"
-#: models.py:1663
+#: models.py:1664
msgid "Is template"
msgstr "Est un patron"
-#: models.py:1664
+#: models.py:1665
msgid "Unicity keys (separator \";\")"
msgstr "Clés d'unicité (séparateur « ; »)"
-#: models.py:1668
+#: models.py:1669
msgid "Importer - Type"
msgstr "Importeur - Type"
-#: models.py:1669
+#: models.py:1670
msgid "Importer - Types"
msgstr "Importeur - Types"
-#: models.py:1759
+#: models.py:1760
msgid "Importer - Default"
msgstr "Importeur - Par défaut"
-#: models.py:1760
+#: models.py:1761
msgid "Importer - Defaults"
msgstr "Importeur - Par défaut"
-#: models.py:1795
+#: models.py:1796
msgid "Importer - Default value"
msgstr "Importeur - Valeur par défaut"
-#: models.py:1796
+#: models.py:1797
msgid "Importer - Default values"
msgstr "Importeur - Valeurs par défaut"
-#: models.py:1829
+#: models.py:1830
msgid "Column number"
msgstr "Numéro de colonne"
-#: models.py:1832
+#: models.py:1833
msgid "Required"
msgstr "Requis"
-#: models.py:1835
+#: models.py:1836
msgid "Importer - Column"
msgstr "Importeur - Colonne"
-#: models.py:1836
+#: models.py:1837
msgid "Importer - Columns"
msgstr "Importeur - Colonnes"
-#: models.py:1856
+#: models.py:1857
msgid "Field name"
msgstr "Nom du champ"
-#: models.py:1858 models.py:1892
+#: models.py:1859 models.py:1893
msgid "Force creation of new items"
msgstr "Forcer la création de nouveaux éléments"
-#: models.py:1860 models.py:1894
+#: models.py:1861 models.py:1895
msgid "Concatenate with existing"
msgstr "Concaténer avec l'existant"
-#: models.py:1862 models.py:1896
+#: models.py:1863 models.py:1897
msgid "Concatenate character"
msgstr "Caractère de concaténation"
-#: models.py:1866
+#: models.py:1867
msgid "Importer - Duplicate field"
msgstr "Importeur - Champ dupliqué"
-#: models.py:1867
+#: models.py:1868
msgid "Importer - Duplicate fields"
msgstr "Importeur - Champs dupliqués"
-#: models.py:1874
+#: models.py:1875
msgid "Regular expression"
msgstr "Expression régulière"
-#: models.py:1877
+#: models.py:1878
msgid "Importer - Regular expression"
msgstr "Importeur - Expression régulière"
-#: models.py:1878
+#: models.py:1879
msgid "Importer - Regular expressions"
msgstr "Importeur - Expressions régulières"
-#: models.py:1901
+#: models.py:1902
msgid "Importer - Target"
msgstr "Importeur - Cible"
-#: models.py:1902
+#: models.py:1903
msgid "Importer - Targets"
msgstr "Importeur - Cibles"
-#: models.py:1926 views.py:536
+#: models.py:1927 views.py:536
msgid "True"
msgstr "Oui"
-#: models.py:1927 views.py:538
+#: models.py:1928 views.py:538
msgid "False"
msgstr "Non"
-#: models.py:1946
+#: models.py:1947
msgid "Is set"
msgstr "Est défini"
-#: models.py:1953
+#: models.py:1954
msgid "Importer - Target key"
msgstr "Importeur - Clé de rapprochement"
-#: models.py:1954
+#: models.py:1955
msgid "Importer - Targets keys"
msgstr "Importeur - Clés de rapprochement"
-#: models.py:2006 models.py:2736 models.py:2749
+#: models.py:2007 models.py:2737 models.py:2750
msgid "Format"
msgstr "Format"
-#: models.py:2007 models.py:2841
+#: models.py:2008 models.py:2842
msgid "Operation type"
msgstr "Type d'opération"
-#: models.py:2008
+#: models.py:2009
msgid "Period"
msgstr "Périodes"
-#: models.py:2009
+#: models.py:2010
msgid "Report state"
msgstr "État de rapport"
-#: models.py:2010
+#: models.py:2011
msgid "Remain type"
msgstr "Type de vestige"
-#: models.py:2011
+#: models.py:2012
msgid "Unit"
msgstr "Unité"
-#: models.py:2012
+#: models.py:2013
msgid "Activity type"
msgstr "Type d'activité"
-#: models.py:2013
+#: models.py:2014
msgid "Material"
msgstr "Matériau"
-#: models.py:2015
+#: models.py:2016
msgid "Conservatory state"
msgstr "État de conservation"
-#: models.py:2016
+#: models.py:2017
msgid "Preservation type"
msgstr "Type de conservation"
-#: models.py:2017
+#: models.py:2018
msgid "Object type"
msgstr "Type d'objet"
-#: models.py:2019
+#: models.py:2020
msgid "Identification type"
msgstr "Type d'identification"
-#: models.py:2021
+#: models.py:2022
msgid "Context record relation type"
msgstr "Type de relations entre Unités d'Enregistrement"
-#: models.py:2022 models.py:2728
+#: models.py:2023 models.py:2729
msgid "Support type"
msgstr "Type de support"
-#: models.py:2028
+#: models.py:2029
msgid "Integer"
msgstr "Entier"
-#: models.py:2029
+#: models.py:2030
msgid "Float"
msgstr "Nombre à virgule"
-#: models.py:2030
+#: models.py:2031
msgid "String"
msgstr "Chaîne de caractères"
-#: models.py:2031 templates/sheet_ope.html:86
+#: models.py:2032 templates/sheet_ope.html:86
msgid "Date"
msgstr "Date"
-#: models.py:2033 templates/sheet_ope.html:61 templates/sheet_ope.html.py:83
+#: models.py:2034 templates/sheet_ope.html:61 templates/sheet_ope.html.py:83
#: templates/ishtar/dashboards/dashboard_main_detail.html:126
msgid "Year"
msgstr "Année"
-#: models.py:2034
+#: models.py:2035
msgid "String to boolean"
msgstr "Chaîne de caractères vers booléen"
-#: models.py:2035
+#: models.py:2036
msgctxt "filesystem"
msgid "File"
msgstr "Fichier"
-#: models.py:2036
+#: models.py:2037
msgid "Unknow type"
msgstr "Type inconnu"
-#: models.py:2052
+#: models.py:2053
msgid "4 digit year. e.g.: \"2015\""
msgstr "Année sur 4 chiffres. Exemple : « 2015 »"
-#: models.py:2053
+#: models.py:2054
msgid "4 digit year/month/day. e.g.: \"2015/02/04\""
msgstr "Année sur 4 chiffres/mois/jour. Exemple : « 2015/02/04 »"
-#: models.py:2054
+#: models.py:2055
msgid "Day/month/4 digit year. e.g.: \"04/02/2015\""
msgstr "Jour/mois/année sur 4 chiffres. Exemple : « 04/02/2015 »"
-#: models.py:2064
+#: models.py:2065
msgid "Options"
msgstr "Options"
-#: models.py:2066
+#: models.py:2067
msgid "Split character(s)"
msgstr "Caractère(s) de séparation"
-#: models.py:2070
+#: models.py:2071
msgid "Importer - Formater type"
msgstr "Importeur - Type de mise en forme"
-#: models.py:2071
+#: models.py:2072
msgid "Importer - Formater types"
msgstr "Importeur - Types de mise en forme"
-#: models.py:2120 templates/ishtar/dashboards/dashboard_main_detail.html:63
+#: models.py:2121 templates/ishtar/dashboards/dashboard_main_detail.html:63
msgid "Created"
msgstr "Créé"
-#: models.py:2121
+#: models.py:2122
msgid "Analyse in progress"
msgstr "Analyse en cours"
-#: models.py:2122
+#: models.py:2123
msgid "Analysed"
msgstr "Analysé"
-#: models.py:2123
+#: models.py:2124
msgid "Import pending"
msgstr "Import en attente"
-#: models.py:2124
+#: models.py:2125
msgid "Import in progress"
msgstr "Import en cours"
-#: models.py:2125
+#: models.py:2126
msgid "Finished with errors"
msgstr "Terminé avec des erreurs"
-#: models.py:2126
+#: models.py:2127
msgid "Finished"
msgstr "Terminé"
-#: models.py:2127
+#: models.py:2128
msgid "Archived"
msgstr "Archivé"
-#: models.py:2139
+#: models.py:2140
msgid "Imported file"
msgstr "Fichier importé"
-#: models.py:2142
+#: models.py:2143
msgid "Associated images (zip file)"
msgstr "Images associées (fichier zip)"
-#: models.py:2144
+#: models.py:2145
msgid "Encoding"
msgstr "Codage"
-#: models.py:2146
+#: models.py:2147
msgid "Skip lines"
msgstr "Nombre de lignes d'entête"
-#: models.py:2147 templates/ishtar/import_list.html:47
+#: models.py:2148 templates/ishtar/import_list.html:47
msgid "Error file"
msgstr "Fichier erreur"
-#: models.py:2150
+#: models.py:2151
msgid "Result file"
msgstr "Fichier résultant"
-#: models.py:2153 templates/ishtar/import_list.html:53
+#: models.py:2154 templates/ishtar/import_list.html:53
msgid "Match file"
msgstr "Fichier de correspondance"
-#: models.py:2159
+#: models.py:2160
msgid "Conservative import"
msgstr "Import conservateur"
-#: models.py:2164
+#: models.py:2165
msgid "End date"
msgstr "Date de fin"
-#: models.py:2166
+#: models.py:2167
msgid "Remaining seconds"
msgstr "Secondes restantes"
-#: models.py:2171
+#: models.py:2172
msgid "Import"
msgstr "Import"
-#: models.py:2188
+#: models.py:2189
msgid "Analyse"
msgstr "Analyser"
-#: models.py:2190 models.py:2193
+#: models.py:2191 models.py:2194
msgid "Re-analyse"
msgstr "Analyser de nouveau "
-#: models.py:2191
+#: models.py:2192
msgid "Launch import"
msgstr "Lancer l'import"
-#: models.py:2194
+#: models.py:2195
msgid "Re-import"
msgstr "Ré-importer"
-#: models.py:2195
+#: models.py:2196
msgid "Archive"
msgstr "Archiver"
-#: models.py:2197
+#: models.py:2198
msgid "Unarchive"
msgstr "Désarchiver"
-#: models.py:2198 widgets.py:129 templates/ishtar/form_delete.html:11
+#: models.py:2199 widgets.py:130 templates/ishtar/form_delete.html:11
msgid "Delete"
msgstr "Supprimer"
-#: models.py:2339
+#: models.py:2340
msgid "Organizations"
msgstr "Organisations"
-#: models.py:2341
+#: models.py:2342
msgid "Can view all Organizations"
msgstr "Peut voir toutes les Organisations"
-#: models.py:2342
+#: models.py:2343
msgid "Can view own Organization"
msgstr "Peut voir sa propre Organisation"
-#: models.py:2343
+#: models.py:2344
msgid "Can add own Organization"
msgstr "Peut ajouter sa propre Organisation"
-#: models.py:2345
+#: models.py:2346
msgid "Can change own Organization"
msgstr "Peut modifier sa propre Organisation"
-#: models.py:2347
+#: models.py:2348
msgid "Can delete own Organization"
msgstr "Peut supprimer sa propre Organisation"
-#: models.py:2382
+#: models.py:2383
msgid "Groups"
msgstr "Groupes"
-#: models.py:2387
+#: models.py:2388
msgid "Person types"
msgstr "Types de personne"
-#: models.py:2398
+#: models.py:2399
msgid "Title type"
msgstr "Type de titre"
-#: models.py:2399
+#: models.py:2400
msgid "Title types"
msgstr "Types de titre"
-#: models.py:2408
+#: models.py:2409
msgid "Mr"
msgstr "M."
-#: models.py:2409
+#: models.py:2410
msgid "Miss"
msgstr "Mlle"
-#: models.py:2410
+#: models.py:2411
msgid "Mr and Mrs"
msgstr "M. et Mme"
-#: models.py:2411
+#: models.py:2412
msgid "Mrs"
msgstr "Mme"
-#: models.py:2412
+#: models.py:2413
msgid "Doctor"
msgstr "Dr."
-#: models.py:2442
+#: models.py:2443
msgid "Contact type"
msgstr "Type de contact"
-#: models.py:2445 models.py:2509
+#: models.py:2446 models.py:2510
msgid "Types"
msgstr "Types"
-#: models.py:2448
+#: models.py:2449
msgid "Is attached to"
msgstr "Est rattaché à"
-#: models.py:2453
+#: models.py:2454
msgid "Persons"
msgstr "Personnes"
-#: models.py:2455
+#: models.py:2456
msgid "Can view all Persons"
msgstr "Peut voir toutes les Personnes"
-#: models.py:2456
+#: models.py:2457
msgid "Can view own Person"
msgstr "Peut voir sa propre Personne"
-#: models.py:2457
+#: models.py:2458
msgid "Can add own Person"
msgstr "Peut ajouter sa propre Personne"
-#: models.py:2458
+#: models.py:2459
msgid "Can change own Person"
msgstr "Peut modifier sa propre Personne"
-#: models.py:2459
+#: models.py:2460
msgid "Can delete own Person"
msgstr "Peut supprimer sa propre Personne"
-#: models.py:2637
+#: models.py:2638
msgid "Advanced shortcut menu"
msgstr "Menu de raccourci (avancé)"
-#: models.py:2640
+#: models.py:2641
msgid "Ishtar user"
msgstr "Utilisateur d'Ishtar"
-#: models.py:2641
+#: models.py:2642
msgid "Ishtar users"
msgstr "Utilisateurs d'Ishtar"
-#: models.py:2683
+#: models.py:2684
msgid "To modify the password use the form in Auth > User"
msgstr ""
"Pour modifier le mot de passe, utilisez le formulaire dans Authentification "
"> Utilisateurs"
-#: models.py:2689
+#: models.py:2690
msgid "Author types"
msgstr "Types d'auteur"
-#: models.py:2721
+#: models.py:2722
msgid "Source types"
msgstr "Types de document"
-#: models.py:2729
+#: models.py:2730
msgid "Support types"
msgstr "Types de support"
-#: models.py:2737
+#: models.py:2738
msgid "Formats"
msgstr "Formats"
-#: models.py:2744
+#: models.py:2745
msgid "External ID"
msgstr "Identifiant externe"
-#: models.py:2747
+#: models.py:2748
msgid "Support"
msgstr "Support"
-#: models.py:2751
+#: models.py:2752
msgid "Scale"
msgstr "Échelle"
-#: models.py:2765
+#: models.py:2766
msgid "Item number"
msgstr "Numéro d'élément"
-#: models.py:2766
+#: models.py:2767
msgid "Ref."
msgstr "Réf."
-#: models.py:2769
+#: models.py:2770
msgid "Internal ref."
msgstr "Réf. interne"
-#: models.py:2812
+#: models.py:2813
msgid "Surface (m2)"
msgstr "Surface (m2)"
-#: models.py:2813 templates/sheet_ope.html:46 templates/sheet_ope.html.py:107
+#: models.py:2814 templates/sheet_ope.html:46 templates/sheet_ope.html.py:107
msgid "Localisation"
msgstr "Localisation"
-#: models.py:2838
+#: models.py:2839
msgid "Is preventive"
msgstr "Est du préventif"
-#: models.py:2842
+#: models.py:2843
msgid "Operation types"
msgstr "Types d'opération"
-#: models.py:2871
+#: models.py:2872
msgid "Preventive"
msgstr "Préventif"
-#: models.py:2872
+#: models.py:2873
msgid "Research"
msgstr "Programmé"
-#: utils.py:81
+#: models.py:2895
+msgid "SRID"
+msgstr "SRID"
+
+#: models.py:2898
+msgid "Spatial reference system"
+msgstr "Système de référence spatiale"
+
+#: models.py:2899
+msgid "Spatial reference systems"
+msgstr "Systèmes de référence spatiale"
+
+#: utils.py:83
msgid " (...)"
msgstr " (...)"
-#: utils.py:114
+#: utils.py:116
msgid "Load another random image?"
msgstr "Charger une autre image au hasard ?"
@@ -1494,47 +1511,47 @@ msgstr "Opérations"
msgid "Finds"
msgstr "Mobilier"
-#: views.py:1599 templates/ishtar/import_list.html:43
+#: views.py:1600 templates/ishtar/import_list.html:43
msgid "Link unmatched items"
msgstr "Associer les éléments non rapprochés"
-#: views.py:1614
+#: views.py:1615
msgid "Delete import"
msgstr "Supprimer un import"
-#: views.py:1653
+#: views.py:1654
msgid "Merge persons"
msgstr "Fusionner des personnes"
-#: views.py:1677
+#: views.py:1678
msgid "Select the main person"
msgstr "Choisir la personne principale"
-#: views.py:1686
+#: views.py:1687
msgid "Merge organization"
msgstr "Fusionner des organisations"
-#: views.py:1696
+#: views.py:1697
msgid "Select the main organization"
msgstr "Sélectionner l'organisation principale"
-#: views.py:1736 views.py:1752
+#: views.py:1737 views.py:1753
msgid "Corporation manager"
msgstr "Représentant de la personne morale"
-#: widgets.py:258 widgets.py:365 widgets.py:480
+#: widgets.py:259 widgets.py:366 widgets.py:481
msgid "Search..."
msgstr "Recherche..."
-#: widgets.py:670 templatetags/window_tables.py:91
+#: widgets.py:671 templatetags/window_tables.py:91
msgid "No results"
msgstr "Pas de résultats"
-#: widgets.py:671 templatetags/window_tables.py:92
+#: widgets.py:672 templatetags/window_tables.py:92
msgid "Loading..."
msgstr "Chargement..."
-#: widgets.py:672
+#: widgets.py:673
msgid "Remove"
msgstr "Enlever"
diff --git a/version.py b/version.py
index 587208cee..0d66dac5d 100644
--- a/version.py
+++ b/version.py
@@ -1,4 +1,4 @@
-VERSION = (0, 99, 1)
+VERSION = (0, 99, 2)
def get_version():