]> git.parisson.com Git - mezzo.git/commitdiff
Add event person and link inlines
authorGuillaume Pellerin <guillaume.pellerin@ircam.fr>
Fri, 23 Sep 2016 14:36:01 +0000 (16:36 +0200)
committerGuillaume Pellerin <guillaume.pellerin@ircam.fr>
Fri, 23 Sep 2016 14:36:01 +0000 (16:36 +0200)
app/organization/agenda/admin.py
app/organization/agenda/migrations/0003_eventlink_eventperson.py [new file with mode: 0644]
app/organization/agenda/models.py
lib/mezzanine-agenda

index b44b5dc2f355f4468be8011dd2845a9d6938801e..d14e8b8d09259703d59347dd756ed2f850fce4fe 100644 (file)
@@ -32,6 +32,16 @@ class EventDepartmentInline(StackedDynamicInlineAdmin):
     model = EventDepartment
 
 
+class EventPersonInline(StackedDynamicInlineAdmin):
+
+    model = EventPerson
+
+
+class EventLinkInline(StackedDynamicInlineAdmin):
+
+    model = EventLink
+
+
 class CustomEventAdmin(EventAdmin):
     """
     Admin class for events.
@@ -43,7 +53,7 @@ class CustomEventAdmin(EventAdmin):
     if settings.EVENT_USE_FEATURED_IMAGE:
         list_display.insert(0, "admin_thumb")
     list_filter = deepcopy(DisplayableAdmin.list_filter) + ("location", "category")
-    inlines = [EventBlockInline, EventImageInline, EventDepartmentInline]
+    inlines = [EventBlockInline, EventImageInline, EventDepartmentInline, EventPersonInline, EventLinkInline]
 
     def save_form(self, request, form, change):
         """
diff --git a/app/organization/agenda/migrations/0003_eventlink_eventperson.py b/app/organization/agenda/migrations/0003_eventlink_eventperson.py
new file mode 100644 (file)
index 0000000..35dde9b
--- /dev/null
@@ -0,0 +1,44 @@
+# -*- coding: utf-8 -*-
+# Generated by Django 1.9.7 on 2016-09-23 14:34
+from __future__ import unicode_literals
+
+from django.db import migrations, models
+import django.db.models.deletion
+
+
+class Migration(migrations.Migration):
+
+    dependencies = [
+        ('mezzanine_agenda', '0007_auto_20160923_1634'),
+        ('organization-core', '0004_auto_20160923_1141'),
+        ('organization-network', '0023_auto_20160921_2043'),
+        ('organization-agenda', '0002_eventdepartment'),
+    ]
+
+    operations = [
+        migrations.CreateModel(
+            name='EventLink',
+            fields=[
+                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
+                ('url', models.URLField(blank=True, max_length=512, verbose_name='URL')),
+                ('event', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='links', to='mezzanine_agenda.Event', verbose_name='event')),
+                ('link_type', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='organization-core.LinkType', verbose_name='link type')),
+            ],
+            options={
+                'verbose_name_plural': 'links',
+                'verbose_name': 'link',
+            },
+        ),
+        migrations.CreateModel(
+            name='EventPerson',
+            fields=[
+                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
+                ('event', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='persons', to='mezzanine_agenda.Event', verbose_name='event')),
+                ('person', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='events', to='organization-network.Person', verbose_name='person')),
+            ],
+            options={
+                'verbose_name_plural': 'persons',
+                'verbose_name': 'person',
+            },
+        ),
+    ]
index 521a0c3ca543ad37d6400eae31b5befb05dcf344..d62f1bddee5d85639138cbe6ae937f078b9021ee 100644 (file)
@@ -34,3 +34,22 @@ class EventDepartment(models.Model):
     class Meta:
         verbose_name = _("department")
         verbose_name_plural = _("departments")
+
+
+class EventPerson(models.Model):
+
+    event = models.ForeignKey(Event, verbose_name=_('event'), related_name='persons', blank=True, null=True, on_delete=models.SET_NULL)
+    person = models.ForeignKey(Person, verbose_name=_('person'), related_name='events', blank=True, null=True, on_delete=models.SET_NULL)
+
+    class Meta:
+        verbose_name = _("person")
+        verbose_name_plural = _("persons")
+
+
+class EventLink(Link):
+
+    event = models.ForeignKey(Event, verbose_name=_('event'), related_name='links', blank=True, null=True, on_delete=models.SET_NULL)
+
+    class Meta:
+        verbose_name = _("link")
+        verbose_name_plural = _("links")
index 07f1a336837a23c9901d23f6ac61e3b193f398d2..b17ba51f9ed419e69ef0bc55586411a32435636e 160000 (submodule)
@@ -1 +1 @@
-Subproject commit 07f1a336837a23c9901d23f6ac61e3b193f398d2
+Subproject commit b17ba51f9ed419e69ef0bc55586411a32435636e