From c9409a943b624e05e4f136ce0c71d3a135e52f7c Mon Sep 17 00:00:00 2001
From: Jonathan Weth <git@jonathanweth.de>
Date: Sun, 25 Jul 2021 19:50:38 +0200
Subject: [PATCH] Make person field for PDFFile optional

(cherry picked from commit d4cc128a1c7d9f58bc023d9ac457feaa98e36b08)
---
 .../0020_pdf_file_person_optional.py          | 19 +++++++++++++++++++
 aleksis/core/models.py                        |  7 ++++++-
 2 files changed, 25 insertions(+), 1 deletion(-)
 create mode 100644 aleksis/core/migrations/0020_pdf_file_person_optional.py

diff --git a/aleksis/core/migrations/0020_pdf_file_person_optional.py b/aleksis/core/migrations/0020_pdf_file_person_optional.py
new file mode 100644
index 000000000..c98e5fda6
--- /dev/null
+++ b/aleksis/core/migrations/0020_pdf_file_person_optional.py
@@ -0,0 +1,19 @@
+# Generated by Django 3.2.4 on 2021-07-24 13:14
+
+from django.db import migrations, models
+import django.db.models.deletion
+
+
+class Migration(migrations.Migration):
+
+    dependencies = [
+        ('core', '0019_fix_uniqueness_per_site'),
+    ]
+
+    operations = [
+        migrations.AlterField(
+            model_name='pdffile',
+            name='person',
+            field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='pdf_files', to='core.person', verbose_name='Owner'),
+        ),
+    ]
diff --git a/aleksis/core/models.py b/aleksis/core/models.py
index 98dae260a..8fffbe122 100644
--- a/aleksis/core/models.py
+++ b/aleksis/core/models.py
@@ -1037,7 +1037,12 @@ class PDFFile(ExtensibleModel):
         return timezone.now() + timedelta(minutes=get_site_preferences()["general__pdf_expiration"])
 
     person = models.ForeignKey(
-        to=Person, on_delete=models.CASCADE, verbose_name=_("Owner"), related_name="pdf_files"
+        to=Person,
+        on_delete=models.CASCADE,
+        blank=True,
+        null=True,
+        verbose_name=_("Owner"),
+        related_name="pdf_files",
     )
     expires_at = models.DateTimeField(
         verbose_name=_("File expires at"), default=_get_default_expiration
-- 
GitLab