diff --git a/accounts/admin.py b/accounts/admin.py index 063969b..11bd7e9 100644 --- a/accounts/admin.py +++ b/accounts/admin.py @@ -2,6 +2,7 @@ from django.contrib import admin from accounts.models import Participation, Profile, Transport, Connector + admin.site.register(Profile) # FIXME extend user admin admin.site.register(Participation) admin.site.register(Transport) diff --git a/proposals/admin.py b/proposals/admin.py index c120197..88883a2 100644 --- a/proposals/admin.py +++ b/proposals/admin.py @@ -8,7 +8,7 @@ class TalkAdmin(admin.ModelAdmin): # (it is easy to obtain incoherent data due to site framework) def has_add_permission(self, request): return False - # Filter for 'on site' tocpis and event + # Filter for 'on site' topics and event def get_form(self, request, obj=None, **kwargs): form = super(TalkAdmin, self).get_form(request, obj, **kwargs) # in fact, obj should never be none as 'add' button is disabled diff --git a/proposals/forms.py b/proposals/forms.py index 4017471..0d90a0e 100644 --- a/proposals/forms.py +++ b/proposals/forms.py @@ -7,6 +7,8 @@ from django_select2.forms import Select2TagWidget from proposals.models import Talk, Topic, Event, Conference +from accounts.models import Transport + STATUS_CHOICES = [ ('pending', 'Pending decision'), @@ -37,7 +39,7 @@ class TalkForm(forms.ModelForm): } -class FilterForm(forms.Form): +class TalkFilterForm(forms.Form): kind = forms.MultipleChoiceField( required=False, widget=forms.CheckboxSelectMultiple, @@ -62,6 +64,25 @@ class FilterForm(forms.Form): self.fields['topic'].choices = topics.values_list('slug', 'name') +class SpeakerFilterForm(forms.Form): + transport = forms.MultipleChoiceField( + required=False, + widget=forms.CheckboxSelectMultiple, + choices=Transport.objects.values_list('pk', 'name'), + ) + hosting = forms.MultipleChoiceField( + required=False, + widget=forms.CheckboxSelectMultiple, + choices=[ + ('hotel', 'Hotel'), + ('homestay', 'Homestay'), + ], + ) + sound = forms.NullBooleanField() + def __init__(self, *args, **kwargs): + super().__init__(*args, **kwargs) + + class TopicCreateForm(forms.ModelForm): def __init__(self, *args, **kwargs): self.site_id = kwargs.pop('site_id') diff --git a/proposals/templates/proposals/speaker_list.html b/proposals/templates/proposals/speaker_list.html index 958eef2..91172ee 100644 --- a/proposals/templates/proposals/speaker_list.html +++ b/proposals/templates/proposals/speaker_list.html @@ -1,22 +1,111 @@ {% extends 'base.html' %} -{% load i18n %} +{% load bootstrap3 i18n %} {% block speakertab %} class="active"{% endblock %} {% block content %} -

{% trans "Speakers" %} ({{ user_list|length }})

+

{% trans "Speakers" %}

-