fixes #96 you can now view users or members when clicking the tabs
This commit is contained in:
parent
42f09e376f
commit
7737058f0f
|
@ -56,6 +56,7 @@ urlpatterns = [
|
||||||
|
|
||||||
# need to be logged in for these urls
|
# need to be logged in for these urls
|
||||||
url(r'^members/$', MemberListView.as_view(), name='members'),
|
url(r'^members/$', MemberListView.as_view(), name='members'),
|
||||||
|
url(r'^members/(?P<status>[a-zA-Z]+)/$', MemberListView.as_view(), name='members_status'),
|
||||||
|
|
||||||
# Django Admin, use {% url 'admin:index' %}
|
# Django Admin, use {% url 'admin:index' %}
|
||||||
url(r'{}'.format(settings.ADMIN_URL), admin.site.urls),
|
url(r'{}'.format(settings.ADMIN_URL), admin.site.urls),
|
||||||
|
|
|
@ -1,13 +1,13 @@
|
||||||
# -*- coding: utf-8 -*-
|
# -*- coding: utf-8 -*-
|
||||||
from __future__ import absolute_import, unicode_literals
|
from __future__ import absolute_import, unicode_literals
|
||||||
|
|
||||||
from django.core.urlresolvers import reverse
|
from django.views.generic import ListView
|
||||||
from django.views.generic import DetailView, ListView, RedirectView, UpdateView
|
|
||||||
|
|
||||||
from django.contrib.auth.mixins import LoginRequiredMixin
|
from django.contrib.auth.mixins import LoginRequiredMixin
|
||||||
|
|
||||||
from mhackspace.users.models import User
|
from mhackspace.users.models import User
|
||||||
|
|
||||||
|
|
||||||
class MemberListView(LoginRequiredMixin, ListView):
|
class MemberListView(LoginRequiredMixin, ListView):
|
||||||
template_name = 'pages/members.html'
|
template_name = 'pages/members.html'
|
||||||
queryset = User.objects.prefetch_related('user', 'groups')
|
queryset = User.objects.prefetch_related('user', 'groups')
|
||||||
|
@ -15,6 +15,10 @@ class MemberListView(LoginRequiredMixin, ListView):
|
||||||
|
|
||||||
def get_context_data(self, **kwargs):
|
def get_context_data(self, **kwargs):
|
||||||
context = super(MemberListView, self).get_context_data(**kwargs)
|
context = super(MemberListView, self).get_context_data(**kwargs)
|
||||||
|
if self.kwargs.get('status') == 'registered':
|
||||||
|
context['members'] = self.get_queryset().filter(groups__name='members')
|
||||||
|
else:
|
||||||
context['members'] = self.get_queryset()
|
context['members'] = self.get_queryset()
|
||||||
context['total'] = self.get_queryset().filter(groups__name='members').count()
|
context['total_users'] = self.get_queryset().count()
|
||||||
|
context['total_members'] = self.get_queryset().filter(groups__name='members').count()
|
||||||
return context
|
return context
|
||||||
|
|
|
@ -7,10 +7,12 @@
|
||||||
<div class="col-md-6">
|
<div class="col-md-6">
|
||||||
<ul class="nav nav-pills">
|
<ul class="nav nav-pills">
|
||||||
<li class="nav-item">
|
<li class="nav-item">
|
||||||
<a class="nav-link active" href="#">All users <span class="badge badge-default">{{ paginator.count }}</span></a>
|
<a class="nav-link active" href="{% url 'members_status' 'all' %}">
|
||||||
|
All users <span class="badge badge-default">{{ total_users }}</span></a>
|
||||||
</li>
|
</li>
|
||||||
<li class="nav-item">
|
<li class="nav-item">
|
||||||
<a class="nav-link" href="#">All members <span class="badge badge-success">{{ total }}</span></a>
|
<a class="nav-link" href="{% url 'members_status' 'registered' %}">
|
||||||
|
All members <span class="badge badge-success">{{ total_members }}</span></a>
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
|
|
Loading…
Reference in New Issue