diff --git a/seminar/urls.py b/seminar/urls.py index f7228b47..1133175c 100644 --- a/seminar/urls.py +++ b/seminar/urls.py @@ -68,4 +68,9 @@ urlpatterns = [ url(r'^tex-upload/login/$', views.LoginView, name='seminar_login'), url(r'^tex-upload/$', staff_member_required(views.texUploadView), name='seminar_tex_upload'), + + # Ceka na autocomplete v3 + #url(r'^autocomplete/organizatori/$', staff_member_required(views.OrganizatorAutocomplete.as_view()), name='seminar_autocomplete_organizator') + + ] diff --git a/seminar/views.py b/seminar/views.py index 141e9492..b9243f0f 100644 --- a/seminar/views.py +++ b/seminar/views.py @@ -123,11 +123,16 @@ class StareNovinkyView(generic.ListView): ### Co je M&M ## Organizatori +def aktivniOrganizatori(rok=date.today().year): + return Organizator.objects.exclude( + organizuje_do_roku__isnull=False, + organizuje_do_roku__lt=rok + ).order_by('user__first_name') class CojemamOrganizatoriView(generic.ListView): model = Organizator template_name='seminar/cojemam/organizatori.html' - queryset = Organizator.objects.exclude(organizuje_do_roku__isnull=False, organizuje_do_roku__lt=date.today().year).order_by('user__first_name') + queryset = aktivniOrganizatori() def get_context_data(self, **kwargs): context = super(CojemamOrganizatoriView, self).get_context_data(**kwargs) context['aktivni'] = True @@ -136,7 +141,7 @@ class CojemamOrganizatoriView(generic.ListView): class CojemamOrganizatoriStariView(generic.ListView): model = Organizator template_name='seminar/cojemam/organizatori.html' - queryset = Organizator.objects.filter(organizuje_do_roku__isnull=False, organizuje_do_roku__lt=date.today().year).order_by('-organizuje_do_roku') + queryset = aktivniOrganizatori().order_by('-organizuje_do_roku') ### Archiv @@ -782,3 +787,26 @@ def texDownloadView(request, rocnik, cislo): ], } return JsonResponse(response) + + + +# Ceka na autocomplete v3 +#class OrganizatorAutocomplete(autocomplete.Select2QuerySetView): +# def get_queryset(self): +# if not self.request.user.is_authenticated(): +# return Organizator.objects.none() +# +# qs = aktivniOrganizatori() +# +# if self.q: +# if self.q[0] == "!": +# qs = Organizator.objects.all() +# query = self.q[1:] +# else: +# query = self.q +# qs = qs.filter( +# Q(prezdivka__isstartswith=query)| +# Q(user__first_name__isstartswith=query)| +# Q(user__last_name__isstartswith=query)) +# +# return qs