def __init__(self, *args, **kwargs):
super(SoundFileEditForm, self).__init__(*args, **kwargs)
- self.fields.keyOrder = ['title', 'format', 'podcastable', 'fragment']
+ self.fields.keyOrder = ['title', 'format', 'podcastable', 'fragment', 'license']
class DiffusionForm(forms.ModelForm):
--- /dev/null
+# -*- coding: utf-8 -*-
+from __future__ import unicode_literals
+
+from django.db import migrations, models
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('emissions', '0009_auto_20170418_1525'),
+ ]
+
+ operations = [
+ migrations.AddField(
+ model_name='emission',
+ name='default_license',
+ field=models.CharField(default=b'', max_length=20, verbose_name='Default license for podcasts', blank=True, choices=[(b'', 'Unspecified'), (b'cc by', 'Creative Commons Attribution'), (b'cc by-sa', 'Creative Commons Attribution ShareAlike'), (b'cc by-nc', 'Creative Commons Attribution NonCommercial'), (b'cc by-nd', 'Creative Commons Attribution NoDerivs'), (b'cc by-nc-sa', 'Creative Commons Attribution NonCommercial ShareAlike'), (b'cc by-nc-nd', 'Creative Commons Attribution NonCommercial NoDerivs'), (b'cc0 / pd', 'Creative Commons Zero / Public Domain'), (b'artlibre', 'Art Libre')]),
+ ),
+ migrations.AddField(
+ model_name='soundfile',
+ name='license',
+ field=models.CharField(default=b'', max_length=20, verbose_name='License', blank=True, choices=[(b'', 'Unspecified'), (b'cc by', 'Creative Commons Attribution'), (b'cc by-sa', 'Creative Commons Attribution ShareAlike'), (b'cc by-nc', 'Creative Commons Attribution NonCommercial'), (b'cc by-nd', 'Creative Commons Attribution NoDerivs'), (b'cc by-nc-sa', 'Creative Commons Attribution NonCommercial ShareAlike'), (b'cc by-nc-nd', 'Creative Commons Attribution NonCommercial NoDerivs'), (b'cc0 / pd', 'Creative Commons Zero / Public Domain'), (b'artlibre', 'Art Libre')]),
+ ),
+ ]
from utils import maybe_resize
+LICENSES = (
+ ('', _('Unspecified')),
+ ('cc by', _('Creative Commons Attribution')),
+ ('cc by-sa', _('Creative Commons Attribution ShareAlike')),
+ ('cc by-nc', _('Creative Commons Attribution NonCommercial')),
+ ('cc by-nd', _('Creative Commons Attribution NoDerivs')),
+ ('cc by-nc-sa', _('Creative Commons Attribution NonCommercial ShareAlike')),
+ ('cc by-nc-nd', _('Creative Commons Attribution NonCommercial NoDerivs')),
+ ('cc0 / pd', _('Creative Commons Zero / Public Domain')),
+ ('artlibre', _('Art Libre')),
+)
+
+
class WeekdayMixin(object):
DAY_HOUR_START = 6
duration = models.IntegerField(_('Duration'), default=60,
help_text=_('In minutes'))
+ default_license = models.CharField(_('Default license for podcasts'),
+ max_length=20, blank=True, default='', choices=LICENSES)
email = models.EmailField(_('Email'), max_length=254, null=True, blank=True)
website = models.URLField(_('Website'), null=True, blank=True)
duration = models.IntegerField(_('Duration'), null=True, help_text=_('In seconds'))
format = models.ForeignKey('Format', verbose_name=_('Format'), null=True, blank=True)
+ license = models.CharField(_('License'), max_length=20, blank=True, default='', choices=LICENSES)
# denormalized from Focus
got_focus = models.DateTimeField(default=None, null=True, blank=True)
context['diffusions'] = Diffusion.objects.filter(episode=self.object.id)
context['soundfiles'] = SoundFile.objects.filter(episode=self.object.id)
context['add_soundfile_form'] = SoundFileForm(initial={
- 'episode': self.object, 'title': _('Record')})
+ 'episode': self.object,
+ 'title': _('Record'),
+ 'license': self.object.emission.default_license})
context['add_diffusion_form'] = DiffusionForm(initial={'episode': self.object})
try: