From 6ef489dbfc706687ee9303fc3b6270222d0085b9 Mon Sep 17 00:00:00 2001
From: Benoit Alessandroni <benoit@happy-dev.fr>
Date: Mon, 11 Jan 2021 22:28:22 +0100
Subject: [PATCH] update: adding author reference to poll

---
 .../migrations/0012_auto_20210111_2125.py     | 20 +++++++++++++++++++
 djangoldp_polls/models.py                     |  5 ++++-
 2 files changed, 24 insertions(+), 1 deletion(-)
 create mode 100644 djangoldp_polls/migrations/0012_auto_20210111_2125.py

diff --git a/djangoldp_polls/migrations/0012_auto_20210111_2125.py b/djangoldp_polls/migrations/0012_auto_20210111_2125.py
new file mode 100644
index 0000000..3c872aa
--- /dev/null
+++ b/djangoldp_polls/migrations/0012_auto_20210111_2125.py
@@ -0,0 +1,20 @@
+# Generated by Django 2.2.16 on 2021-01-11 21:25
+
+from django.conf import settings
+from django.db import migrations, models
+import django.db.models.deletion
+
+
+class Migration(migrations.Migration):
+
+    dependencies = [
+        ('djangoldp_polls', '0011_auto_20200923_1355'),
+    ]
+
+    operations = [
+        migrations.AlterField(
+            model_name='poll',
+            name='author',
+            field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='polls', to=settings.AUTH_USER_MODEL),
+        ),
+    ]
diff --git a/djangoldp_polls/models.py b/djangoldp_polls/models.py
index e076e2b..d59433e 100644
--- a/djangoldp_polls/models.py
+++ b/djangoldp_polls/models.py
@@ -42,7 +42,7 @@ class PollOption (Model):
 
 class Poll (Model):
 	created_at = models.DateTimeField(auto_now_add=True)
-	author = models.ForeignKey(settings.AUTH_USER_MODEL, related_name='createdVotes', null=True, blank=True, on_delete=models.SET_NULL)
+	author = models.ForeignKey(settings.AUTH_USER_MODEL, related_name='polls', null=True, blank=True, on_delete=models.SET_NULL)
 	title = models.CharField(max_length=250,verbose_name="Title")
 	image = models.URLField(verbose_name="Illustration",default=settings.BASE_URL +"/media/defaultpoll.png")
 	hostingOrganisation = models.CharField(max_length=250,verbose_name="Name of the hosting organisation")
@@ -56,11 +56,14 @@ class Poll (Model):
 	circle = models.ForeignKey(Circle, null=True, related_name="polls", on_delete=models.SET_NULL)
 
 	class Meta(Model.Meta):
+		auto_author = 'author'
+		owner_field = 'author'
 		serializer_fields = ['@id','created_at','debate','pollOptions','votes','author','title','image','circle',\
 		                    'hostingOrganisation','startDate','endDate','shortDescription','longDescription','tags']
 		nested_fields = ['tags','votes','pollOptions','debate','circle']
 		anonymous_perms = ['view','add','change']
 		authenticated_perms = ['inherit','add']
+		owner_perms = ['inherit', 'change', 'control', 'delete']
 
 	def __str__(self):
 		return self.title
-- 
GitLab