summaryrefslogtreecommitdiff
path: root/archaeological_context_records
diff options
context:
space:
mode:
Diffstat (limited to 'archaeological_context_records')
-rw-r--r--archaeological_context_records/migrations/0034_auto_20181220_1539.py27
-rw-r--r--archaeological_context_records/migrations/0035_migrate_main_image.py22
-rw-r--r--archaeological_context_records/models.py9
3 files changed, 56 insertions, 2 deletions
diff --git a/archaeological_context_records/migrations/0034_auto_20181220_1539.py b/archaeological_context_records/migrations/0034_auto_20181220_1539.py
new file mode 100644
index 000000000..9574a5d6e
--- /dev/null
+++ b/archaeological_context_records/migrations/0034_auto_20181220_1539.py
@@ -0,0 +1,27 @@
+# -*- 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_context_records', '0033_auto_20181203_1442'),
+ ]
+
+ operations = [
+ migrations.AddField(
+ model_name='contextrecord',
+ name='main_image',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='main_image_context_records', to='ishtar_common.Document', verbose_name='Main image'),
+ ),
+ migrations.AddField(
+ model_name='historicalcontextrecord',
+ 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'),
+ ),
+ ]
diff --git a/archaeological_context_records/migrations/0035_migrate_main_image.py b/archaeological_context_records/migrations/0035_migrate_main_image.py
new file mode 100644
index 000000000..ba1adb074
--- /dev/null
+++ b/archaeological_context_records/migrations/0035_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_context_records', 'ContextRecord')
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('archaeological_context_records', '0034_auto_20181220_1539'),
+ ]
+
+ operations = [
+ migrations.RunPython(migrate_main_image_script)
+ ]
diff --git a/archaeological_context_records/models.py b/archaeological_context_records/models.py
index d7d7a618d..82527acb1 100644
--- a/archaeological_context_records/models.py
+++ b/archaeological_context_records/models.py
@@ -24,7 +24,7 @@ from django.contrib.gis.db import models
from django.core.urlresolvers import reverse
from django.db import connection, transaction
from django.db.models import Q
-from django.db.models.signals import post_delete, post_save
+from django.db.models.signals import post_delete, post_save, m2m_changed
from django.utils.translation import ugettext_lazy as _, pgettext, \
activate, pgettext_lazy, deactivate
from django.utils.text import slugify
@@ -35,7 +35,7 @@ from ishtar_common.models import Document, GeneralType, \
BaseHistorizedItem, HistoricalRecords, OwnPerms, ShortMenuItem, \
GeneralRelationType, GeneralRecordRelations, post_delete_record_relation,\
post_save_cache, ValueGetter, BulkUpdatedItem, ExternalIdManager, \
- RelationItem, Town, get_current_profile
+ RelationItem, Town, get_current_profile, document_attached_changed
from archaeological_operations.models import Operation, Period, Parcel, \
ArchaeologicalSite
@@ -429,6 +429,9 @@ class ContextRecord(BulkUpdatedItem, BaseHistorizedItem,
documents = models.ManyToManyField(
Document, related_name='context_records', verbose_name=_(u"Documents"),
blank=True)
+ main_image = models.ForeignKey(
+ Document, related_name='main_image_context_records',
+ verbose_name=_(u"Main image"), blank=True, null=True)
cached_label = models.TextField(_(u"Cached name"), null=True, blank=True,
db_index=True)
@@ -681,6 +684,8 @@ class ContextRecord(BulkUpdatedItem, BaseHistorizedItem,
post_save.connect(cached_label_changed, sender=ContextRecord)
+m2m_changed.connect(document_attached_changed,
+ sender=ContextRecord.documents.through)
class RelationType(GeneralRelationType):