From 3946a1f3f46d7f901b37eb65f0e58daa0a6effa6 Mon Sep 17 00:00:00 2001
From: Jonathan Weth <git@jonathanweth.de>
Date: Thu, 2 Jul 2020 17:35:32 +0200
Subject: [PATCH] Fix migrations for validity range (wrong base, wrong unique
 index)

---
 .../migrations/0002_school_term_validity.py   |  2 +-
 .../0003_school_term_validity_fixes.py        | 27 +++++++++++++++++++
 aleksis/apps/chronos/models.py                |  2 +-
 3 files changed, 29 insertions(+), 2 deletions(-)
 create mode 100644 aleksis/apps/chronos/migrations/0003_school_term_validity_fixes.py

diff --git a/aleksis/apps/chronos/migrations/0002_school_term_validity.py b/aleksis/apps/chronos/migrations/0002_school_term_validity.py
index d43a7146..f890a222 100644
--- a/aleksis/apps/chronos/migrations/0002_school_term_validity.py
+++ b/aleksis/apps/chronos/migrations/0002_school_term_validity.py
@@ -42,7 +42,7 @@ def migrate_lesson(apps, schema_editor):
 
 class Migration(migrations.Migration):
     dependencies = [
-        ("core", "0003_auto_20200627_1600"),
+        ("core", "0002_school_term"),
         ("sites", "0002_alter_domain_unique"),
         ("chronos", "0001_initial"),
     ]
diff --git a/aleksis/apps/chronos/migrations/0003_school_term_validity_fixes.py b/aleksis/apps/chronos/migrations/0003_school_term_validity_fixes.py
new file mode 100644
index 00000000..04d07775
--- /dev/null
+++ b/aleksis/apps/chronos/migrations/0003_school_term_validity_fixes.py
@@ -0,0 +1,27 @@
+# Generated by Django 3.0.7 on 2020-06-30 10:46
+
+from django.db import migrations, models
+import django.db.models.deletion
+
+
+class Migration(migrations.Migration):
+
+    dependencies = [
+        ('chronos', '0002_school_term_validity'),
+    ]
+
+    operations = [
+        migrations.RemoveField(
+            model_name='break',
+            name='school_term',
+        ),
+        migrations.AddField(
+            model_name='break',
+            name='validity',
+            field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='+', to='chronos.ValidityRange', verbose_name='Linked validity range'),
+        ),
+        migrations.AlterUniqueTogether(
+            name='timeperiod',
+            unique_together={('weekday', 'period', 'validity')},
+        ),
+    ]
diff --git a/aleksis/apps/chronos/models.py b/aleksis/apps/chronos/models.py
index 0331ff3c..fc3b5854 100644
--- a/aleksis/apps/chronos/models.py
+++ b/aleksis/apps/chronos/models.py
@@ -253,7 +253,7 @@ class TimePeriod(ValidityRangeRelatedExtensibleModel):
         )
 
     class Meta:
-        unique_together = [["weekday", "period"]]
+        unique_together = [["weekday", "period", "validity"]]
         ordering = ["weekday", "period"]
         indexes = [models.Index(fields=["time_start", "time_end"])]
         verbose_name = _("Time period")
-- 
GitLab