#14 Number of total active crew members is now on homepage after the login.

This commit is contained in:
Uwe Kamper 2013-10-29 04:20:52 +01:00
parent 2b0407eaf6
commit e61e2bda91
3 changed files with 20 additions and 5 deletions

View file

@ -150,15 +150,26 @@ class MemberValues(object):
l.passwd_s(self._get_bind_dn(username), None, new_password)
l.unbind_s()
def get_number_of_members(self):
"""
Returns the total number of c-base members with active user accounts.
"""
return len(self.list_users())
def list_users(self):
"""
Returns a list of strings with all usernames in the group 'crew'.
The list is sorted alphabetically.
"""
l = ldap.initialize(settings.CBASE_LDAP_URL)
user_dn = self._get_bind_dn()
l.simple_bind_s(user_dn, self._password)
try:
ldap_result_id = l.search(settings.CBASE_BASE_DN, ldap.SCOPE_SUBTREE, "memberOf=cn=crew,ou=groups,dc=c-base,dc=org", None)
result_id = l.search(settings.CBASE_BASE_DN, ldap.SCOPE_SUBTREE,
"memberOf=cn=crew,ou=groups,dc=c-base,dc=org", None)
result_set = []
while 1:
result_type, result_data = l.result(ldap_result_id, 0)
while True:
result_type, result_data = l.result(result_id, 0)
if (result_data == []):
break
else:

View file

@ -5,7 +5,9 @@
<div class="row">
<div class="span12">
<h2>{% trans "Welcome to the c-base member interface" %}</h2>
<p class="lead">{% blocktrans %}Here you can change
<p class="leas">You are one of currently {{ number_of_members }}
c-base members.</p>
<p>{% blocktrans %}Here you can change
some parameters of your c-base member account.{% endblocktrans %}</p>
<h3>{% trans "Basic information about your account" %}</h3>

View file

@ -72,7 +72,9 @@ def auth_login(request):
@login_required
def home(request):
member = retrieve_member(request)
context = {'member': member.to_dict(), 'groups': request.user.groups.all()}
number_of_members = member.get_number_of_members()
context = {'member': member.to_dict(), 'groups': request.user.groups.all(),
'number_of_members': number_of_members}
return render(request, 'home.html', context)
@login_required