summaryrefslogtreecommitdiff
path: root/archaeological_operations
diff options
context:
space:
mode:
Diffstat (limited to 'archaeological_operations')
-rw-r--r--archaeological_operations/migrations/0042_auto_20181220_1539.py67
-rw-r--r--archaeological_operations/migrations/0043_migrate_main_image.py22
-rw-r--r--archaeological_operations/models.py14
3 files changed, 102 insertions, 1 deletions
diff --git a/archaeological_operations/migrations/0042_auto_20181220_1539.py b/archaeological_operations/migrations/0042_auto_20181220_1539.py
new file mode 100644
index 000000000..a9d9c786b
--- /dev/null
+++ b/archaeological_operations/migrations/0042_auto_20181220_1539.py
@@ -0,0 +1,67 @@
+# -*- coding: utf-8 -*-
+# Generated by Django 1.11.10 on 2018-12-20 15:39
+from __future__ import unicode_literals
+
+from django.db import migrations, models
+import django.db.models.deletion
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('ishtar_common', '0079_migrate-importers'),
+ ('archaeological_operations', '0041_auto_20181203_1442'),
+ ]
+
+ operations = [
+ migrations.AddField(
+ model_name='archaeologicalsite',
+ name='main_image',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='main_image_sites', to='ishtar_common.Document', verbose_name='Main image'),
+ ),
+ migrations.AddField(
+ model_name='historicalarchaeologicalsite',
+ name='main_image',
+ field=models.ForeignKey(blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name='+', to='ishtar_common.Document'),
+ ),
+ migrations.AddField(
+ model_name='historicaloperation',
+ name='main_image',
+ field=models.ForeignKey(blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name='+', to='ishtar_common.Document'),
+ ),
+ migrations.AddField(
+ model_name='operation',
+ name='main_image',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='main_image_operations', to='ishtar_common.Document', verbose_name='Main image'),
+ ),
+ migrations.AlterField(
+ model_name='archaeologicalsite',
+ name='affmar_number',
+ field=models.CharField(blank=True, max_length=100, null=True, verbose_name='AffMar number'),
+ ),
+ migrations.AlterField(
+ model_name='archaeologicalsite',
+ name='drassm_number',
+ field=models.CharField(blank=True, max_length=100, null=True, verbose_name='DRASSM number'),
+ ),
+ migrations.AlterField(
+ model_name='historicalarchaeologicalsite',
+ name='affmar_number',
+ field=models.CharField(blank=True, max_length=100, null=True, verbose_name='AffMar number'),
+ ),
+ migrations.AlterField(
+ model_name='historicalarchaeologicalsite',
+ name='drassm_number',
+ field=models.CharField(blank=True, max_length=100, null=True, verbose_name='DRASSM number'),
+ ),
+ migrations.AlterField(
+ model_name='historicaloperation',
+ name='drassm_code',
+ field=models.CharField(blank=True, max_length=100, null=True, verbose_name='DRASSM code'),
+ ),
+ migrations.AlterField(
+ model_name='operation',
+ name='drassm_code',
+ field=models.CharField(blank=True, max_length=100, null=True, verbose_name='DRASSM code'),
+ ),
+ ]
diff --git a/archaeological_operations/migrations/0043_migrate_main_image.py b/archaeological_operations/migrations/0043_migrate_main_image.py
new file mode 100644
index 000000000..a8eb7b969
--- /dev/null
+++ b/archaeological_operations/migrations/0043_migrate_main_image.py
@@ -0,0 +1,22 @@
+# -*- coding: utf-8 -*-
+# Generated by Django 1.11.10 on 2018-12-20 19:12
+from __future__ import unicode_literals
+
+from django.db import migrations
+from ishtar_common.utils_migrations import migrate_main_image
+
+
+def migrate_main_image_script(apps, schema):
+ migrate_main_image(apps, 'archaeological_operations', 'Operation')
+ migrate_main_image(apps, 'archaeological_operations', 'ArchaeologicalSite')
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('archaeological_operations', '0042_auto_20181220_1539'),
+ ]
+
+ operations = [
+ migrations.RunPython(migrate_main_image_script)
+ ]
diff --git a/archaeological_operations/models.py b/archaeological_operations/models.py
index d8233ba0f..0b506e12b 100644
--- a/archaeological_operations/models.py
+++ b/archaeological_operations/models.py
@@ -36,7 +36,8 @@ from ishtar_common.models import BaseHistorizedItem, Dashboard, \
HistoricalRecords, IshtarUser, LightHistorizedItem, \
OperationType, Organization, OwnPerms, Person, PersonType, \
post_delete_record_relation, post_save_cache, RelationItem, \
- ShortMenuItem, SourceType, Town, ValueGetter, get_current_profile
+ ShortMenuItem, SourceType, Town, ValueGetter, get_current_profile, \
+ document_attached_changed
from ishtar_common.utils import cached_label_changed, \
force_cached_label_changed, mode
@@ -267,6 +268,9 @@ class ArchaeologicalSite(BaseHistorizedItem, OwnPerms, ValueGetter,
documents = models.ManyToManyField(
Document, related_name="sites", verbose_name=_(u"Documents"),
blank=True)
+ main_image = models.ForeignKey(
+ Document, related_name='main_image_sites',
+ verbose_name=_(u"Main image"), blank=True, null=True)
cached_label = models.TextField(_(u"Cached name"),
null=True, blank=True, db_index=True)
@@ -420,6 +424,9 @@ class ArchaeologicalSite(BaseHistorizedItem, OwnPerms, ValueGetter,
post_save.connect(cached_label_changed, sender=ArchaeologicalSite)
+m2m_changed.connect(document_attached_changed,
+ sender=ArchaeologicalSite.documents.through)
+
def get_values_town_related(item, prefix, values):
values[prefix + 'parcellist'] = item.render_parcels()
@@ -845,6 +852,9 @@ class Operation(ClosedItem, BaseHistorizedItem, OwnPerms, ValueGetter,
documents = models.ManyToManyField(
Document, related_name='operations', verbose_name=_(u"Documents"),
blank=True)
+ main_image = models.ForeignKey(
+ Document, related_name='main_image_operations',
+ verbose_name=_(u"Main image"), blank=True, null=True)
cached_label = models.CharField(_(u"Cached name"), max_length=500,
null=True, blank=True, db_index=True)
archaeological_sites = models.ManyToManyField(
@@ -1386,6 +1396,8 @@ class Operation(ClosedItem, BaseHistorizedItem, OwnPerms, ValueGetter,
m2m_changed.connect(force_cached_label_changed, sender=Operation.towns.through)
+m2m_changed.connect(document_attached_changed,
+ sender=Operation.documents.through)
def operation_post_save(sender, **kwargs):