From a24afd114eef50bdd1482ff68ff804d7237ae34e Mon Sep 17 00:00:00 2001 From: bkfox Date: Wed, 5 Oct 2022 19:52:47 +0200 Subject: [PATCH] add is_downloadable field --- aircox/admin/sound.py | 10 ++++++---- aircox/models/sound.py | 6 +++++- 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/aircox/admin/sound.py b/aircox/admin/sound.py index 1a4b515..3dc35b5 100644 --- a/aircox/admin/sound.py +++ b/aircox/admin/sound.py @@ -24,7 +24,8 @@ class SoundTrackInline(TrackInline): class SoundInline(admin.TabularInline): model = Sound - fields = ['type', 'name', 'audio', 'duration', 'is_good_quality', 'is_public'] + fields = ['type', 'name', 'audio', 'duration', 'is_good_quality', 'is_public', + 'is_downloadable'] readonly_fields = ['type', 'audio', 'duration', 'is_good_quality'] extra = 0 max_num = 0 @@ -42,14 +43,15 @@ class SoundAdmin(SortableAdminBase, admin.ModelAdmin): fields = None list_display = ['id', 'name', 'related', 'type', 'duration', 'is_public', 'is_good_quality', - 'audio'] + 'is_downloadable', 'audio'] list_filter = ('type', 'is_good_quality', 'is_public') - list_editable = ['name', 'type', 'is_public'] + list_editable = ['name', 'type', 'is_public', 'is_downloadable'] search_fields = ['name', 'program__title'] fieldsets = [ (None, {'fields': ['name', 'file', 'type', 'program', 'episode']}), - (None, {'fields': ['duration', 'is_public', 'is_good_quality', 'mtime']}), + (None, {'fields': ['duration', 'is_public', 'is_downloadable', + 'is_good_quality', 'mtime']}), ] readonly_fields = ('file', 'duration',) inlines = [SoundTrackInline] diff --git a/aircox/models/sound.py b/aircox/models/sound.py index 70a4637..d12e371 100644 --- a/aircox/models/sound.py +++ b/aircox/models/sound.py @@ -127,7 +127,11 @@ class Sound(models.Model): blank=True, null=True ) is_public = models.BooleanField( - _('public'), help_text=_('if it can be podcasted from the server'), + _('public'), help_text=_('whether it is publicly available as podcast'), + default=False, + ) + is_downloadable = models.BooleanField( + _('downloadable'), help_text=_('whether it can be publicly downloaded by visitors'), default=False, )