fix talks materials and video
This commit is contained in:
parent
5318b43160
commit
164396a978
|
@ -28,7 +28,6 @@ class TalkForm(forms.ModelForm):
|
|||
def __init__(self, *args, **kwargs):
|
||||
categories = kwargs.pop('categories')
|
||||
super().__init__(*args, **kwargs)
|
||||
self.fields['materials'].required = False
|
||||
if categories.exists():
|
||||
self.fields['category'].queryset = categories
|
||||
else:
|
||||
|
@ -36,7 +35,7 @@ class TalkForm(forms.ModelForm):
|
|||
|
||||
class Meta:
|
||||
model = Talk
|
||||
fields = ('category', 'title', 'description','notes')
|
||||
fields = ('category', 'title', 'description', 'notes')
|
||||
|
||||
|
||||
class TalkStaffForm(forms.ModelForm):
|
||||
|
@ -46,11 +45,12 @@ class TalkStaffForm(forms.ModelForm):
|
|||
self.fields['category'].queryset = TalkCategory.objects.filter(site=conference.site)
|
||||
self.fields['track'].queryset = Track.objects.filter(site=conference.site)
|
||||
self.fields['room'].queryset = Room.objects.filter(site=conference.site)
|
||||
self.fields['materials'].required = False
|
||||
if self.instance and self.instance.category and self.instance.category.duration:
|
||||
self.fields['duration'].help_text = _('Default duration: %(duration)d min') % {'duration': self.instance.duration}
|
||||
|
||||
class Meta(TalkForm.Meta):
|
||||
fields = ('category', 'track', 'title', 'description', 'notes', 'start_date', 'duration', 'room',)
|
||||
fields = ('category', 'track', 'title', 'description', 'notes', 'start_date', 'duration', 'room', 'materials', 'video',)
|
||||
labels = {
|
||||
'category': _('Category'),
|
||||
'title': _('Title'),
|
||||
|
|
|
@ -14,7 +14,7 @@ from colorful.fields import RGBColorField
|
|||
|
||||
import uuid
|
||||
from datetime import timedelta
|
||||
from os.path import join
|
||||
from os.path import join, basename
|
||||
|
||||
from ponyconf.utils import PonyConfModel
|
||||
from mailing.models import MessageThread
|
||||
|
@ -241,10 +241,6 @@ class TalkCategory(models.Model): # type of talk (conf 30min, 1h, stand, …)
|
|||
# return self.get_name()
|
||||
|
||||
|
||||
#def talk_materials_destination(talk, filename):
|
||||
# return join(talk.site.name, talk.slug, filename)
|
||||
|
||||
|
||||
class TalkManager(models.Manager):
|
||||
def get_queryset(self):
|
||||
qs = super().get_queryset()
|
||||
|
@ -325,9 +321,9 @@ class Talk(PonyConfModel):
|
|||
else:
|
||||
return None
|
||||
|
||||
#@property
|
||||
#def materials_name(self):
|
||||
# return basename(self.materials.name)
|
||||
@property
|
||||
def materials_name(self):
|
||||
return basename(self.materials.name)
|
||||
|
||||
class Meta:
|
||||
ordering = ('category__id', 'title',)
|
||||
|
|
|
@ -44,7 +44,8 @@
|
|||
{% if talk.registration_required %}
|
||||
<dt>{% trans "Registrations" %}</dt>
|
||||
<dd>{% if talk.attendees_limit %}{{ talk.attendees.count }} / {{ talk.attendees_limit }}{% else %}{% trans "required but unlimited" %}{% endif %}</dd>
|
||||
{% endif %}
|
||||
{% endif %
|
||||
{% endcomment %}
|
||||
{% if talk.materials %}
|
||||
<dt>{% trans "Materials" %}</dt>
|
||||
<dd><a href="{{ talk.materials.url }}">{{ talk.materials_name }}</a></dd>
|
||||
|
@ -53,7 +54,6 @@
|
|||
<dt>{% trans "Video" %}</dt>
|
||||
<dd><a href="{{ talk.video }}">{% trans "download" %}</a></dd>
|
||||
{% endif %}
|
||||
{% endcomment %}
|
||||
|
||||
</dl>
|
||||
|
||||
|
|
|
@ -8,6 +8,6 @@
|
|||
<h1>{% trans "Edit a talk" %}</h1>
|
||||
|
||||
{% url 'talk-details' talk.token as cancel_url %}
|
||||
{% include '_form.html' %}
|
||||
{% include '_form.html' with multipart=True %}
|
||||
|
||||
{% endblock %}
|
||||
|
|
|
@ -19,6 +19,8 @@
|
|||
{% bootstrap_field filter_form.vote layout="horizontal" %}
|
||||
{% bootstrap_field filter_form.scheduled layout="horizontal" %}
|
||||
{% bootstrap_field filter_form.room layout="horizontal" %}
|
||||
{% bootstrap_field filter_form.materials layout="horizontal" %}
|
||||
{% bootstrap_field filter_form.video layout="horizontal" %}
|
||||
</div>
|
||||
<div class="col-md-6 col-xs-6">
|
||||
{% bootstrap_field filter_form.track layout="horizontal" %}
|
||||
|
|
|
@ -10,7 +10,8 @@ register = template.Library()
|
|||
def staff(request):
|
||||
return is_staff(request, request.user)
|
||||
|
||||
@register.filter('duration_format')
|
||||
|
||||
@register.filter(name='duration_format')
|
||||
def duration_format(value):
|
||||
value = int(value)
|
||||
hours = int(value/60)
|
||||
|
|
Loading…
Reference in New Issue