book/picture-only tags
[wolnelektury.git] / src / catalogue / migrations / 0019_auto_20171221_1107.py
diff --git a/src/catalogue/migrations/0019_auto_20171221_1107.py b/src/catalogue/migrations/0019_auto_20171221_1107.py
new file mode 100644 (file)
index 0000000..751e707
--- /dev/null
@@ -0,0 +1,35 @@
+# -*- coding: utf-8 -*-
+from __future__ import unicode_literals
+
+from django.db import migrations, models
+
+
+def init_tag_for_books_pictures(apps, schema_editor):
+    Tag = apps.get_model('catalogue', 'Tag')
+    db_alias = schema_editor.connection.alias
+    tag_objects = Tag.objects.using(db_alias).exclude(category='set')
+    tags_for_books = tag_objects.filter(items__content_type__model__in=('book', 'fragment')).distinct()
+    tags_for_books.update(for_books=True)
+    tags_for_pictures = tag_objects.filter(items__content_type__model__in=('picture', 'picturearea')).distinct()
+    tags_for_pictures.update(for_pictures=True)
+
+
+class Migration(migrations.Migration):
+
+    dependencies = [
+        ('catalogue', '0018_auto_20171221_1106'),
+    ]
+
+    operations = [
+        migrations.AddField(
+            model_name='tag',
+            name='for_books',
+            field=models.BooleanField(default=False),
+        ),
+        migrations.AddField(
+            model_name='tag',
+            name='for_pictures',
+            field=models.BooleanField(default=False),
+        ),
+        migrations.RunPython(init_tag_for_books_pictures, migrations.RunPython.noop)
+    ]