From af6c0e034689c2fdfbd45ce3c9aa9723f09a62f4 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Fr=C3=A9d=C3=A9ric=20P=C3=A9ters?= Date: Sun, 17 May 2020 17:50:35 +0200 Subject: [PATCH] add model to store jingles for nonstop zones --- nonstop/admin.py | 11 +++++++- .../migrations/0020_nonstopzonesettings.py | 25 +++++++++++++++++++ .../0021_nonstopzonesettings_intro_jingle.py | 21 ++++++++++++++++ nonstop/models.py | 9 +++++++ 4 files changed, 65 insertions(+), 1 deletion(-) create mode 100644 nonstop/migrations/0020_nonstopzonesettings.py create mode 100644 nonstop/migrations/0021_nonstopzonesettings_intro_jingle.py diff --git a/nonstop/admin.py b/nonstop/admin.py index c694733..f8a7d0d 100644 --- a/nonstop/admin.py +++ b/nonstop/admin.py @@ -1,15 +1,24 @@ from django.contrib import admin -from .models import Jingle, Stream +from .models import Jingle, Stream, NonstopZoneSettings class JingleAdmin(admin.ModelAdmin): pass + admin.site.register(Jingle, JingleAdmin) class StreamAdmin(admin.ModelAdmin): pass + admin.site.register(Stream, StreamAdmin) + + +class NonstopZoneSettingsAdmin(admin.ModelAdmin): + pass + + +admin.site.register(NonstopZoneSettings, NonstopZoneSettingsAdmin) diff --git a/nonstop/migrations/0020_nonstopzonesettings.py b/nonstop/migrations/0020_nonstopzonesettings.py new file mode 100644 index 0000000..de27235 --- /dev/null +++ b/nonstop/migrations/0020_nonstopzonesettings.py @@ -0,0 +1,25 @@ +# -*- coding: utf-8 -*- +# Generated by Django 1.11.29 on 2020-05-17 17:43 +from __future__ import unicode_literals + +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + ('emissions', '0015_auto_20200404_1510'), + ('nonstop', '0019_auto_20200516_1034'), + ] + + operations = [ + migrations.CreateModel( + name='NonstopZoneSettings', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('jingles', models.ManyToManyField(blank=True, to='nonstop.Jingle')), + ('nonstop', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='emissions.Nonstop')), + ], + ), + ] diff --git a/nonstop/migrations/0021_nonstopzonesettings_intro_jingle.py b/nonstop/migrations/0021_nonstopzonesettings_intro_jingle.py new file mode 100644 index 0000000..c45d938 --- /dev/null +++ b/nonstop/migrations/0021_nonstopzonesettings_intro_jingle.py @@ -0,0 +1,21 @@ +# -*- coding: utf-8 -*- +# Generated by Django 1.11.29 on 2020-05-17 17:48 +from __future__ import unicode_literals + +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + ('nonstop', '0020_nonstopzonesettings'), + ] + + operations = [ + migrations.AddField( + model_name='nonstopzonesettings', + name='intro_jingle', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='+', to='nonstop.Jingle'), + ), + ] diff --git a/nonstop/models.py b/nonstop/models.py index 664e29f..3f5aa1d 100644 --- a/nonstop/models.py +++ b/nonstop/models.py @@ -245,6 +245,15 @@ class StreamedDiffusion(models.Model): return bool(self.stream_id) +class NonstopZoneSettings(models.Model): + nonstop = models.ForeignKey('emissions.Nonstop', on_delete=models.CASCADE) + intro_jingle = models.ForeignKey(Jingle, blank=True, null=True, related_name='+') + jingles = models.ManyToManyField(Jingle, blank=True) + + def __str__(self): + return str(self.nonstop) + + @receiver(post_delete) def remove_soundfile(sender, instance=None, **kwargs): from emissions.models import SoundFile -- 2.39.2