From f16505c5b881e77cd8b3101db770f871318170cb Mon Sep 17 00:00:00 2001 From: Vasyl Dizhak Date: Sun, 31 Jul 2011 22:09:15 +0300 Subject: [PATCH] Added team list --- presence/apps/people/models.py | 9 +++++++++ presence/apps/people/templates/people/team.html | 17 +++++++++++++++++ presence/apps/people/urls.py | 3 ++- presence/apps/people/views.py | 13 +++++++++++++ 4 files changed, 41 insertions(+), 1 deletion(-) create mode 100644 presence/apps/people/templates/people/team.html diff --git a/presence/apps/people/models.py b/presence/apps/people/models.py index 4aa956c..4a97640 100644 --- a/presence/apps/people/models.py +++ b/presence/apps/people/models.py @@ -10,6 +10,7 @@ import datetime from workflow.models import StateLog +from vote.models import UserVote class Profile(models.Model): @@ -60,6 +61,14 @@ def location(self): def project(self): return self.state_log.project + @property + def get_mood(self): + try: + mood = UserVote.objects.get_votes(self.user, 0)[0] + except IndexError: + mood = None + return mood + def create_profile(sender, **kwargs): """Create profile for newely created user""" diff --git a/presence/apps/people/templates/people/team.html b/presence/apps/people/templates/people/team.html new file mode 100644 index 0000000..471fffb --- /dev/null +++ b/presence/apps/people/templates/people/team.html @@ -0,0 +1,17 @@ +{% extends "base.html" %} +{% load i18n people_tags %} + +{% block content %} +
+ {% for user in users %} +
+ {{ user.get_full_name }} + {{ user.get_full_name|default:user.username }} + {% trans "Currently: " %}{{ user.get_profile.state }} + {% if user.get_profile.get_mood %} + Mood: {{ user.get_profile.get_mood }} + {% endif %} +
+ {% endfor %} +
+{% endblock content %} \ No newline at end of file diff --git a/presence/apps/people/urls.py b/presence/apps/people/urls.py index 3141281..0cf7ef7 100644 --- a/presence/apps/people/urls.py +++ b/presence/apps/people/urls.py @@ -4,5 +4,6 @@ 'people.views', url(r'^invite/$', 'invite_user', name='invite-user'), url(r'^edit/$', 'profile_edit', name='profile-edit'), - url(r'^(?P\d+)/$', 'profile_details', name='profile-details') + url(r'^(?P\d+)/$', 'profile_details', name='profile-details'), + url(r'^team/$', 'team_list', name='team-list') ) diff --git a/presence/apps/people/views.py b/presence/apps/people/views.py index 40c679e..8217ffb 100644 --- a/presence/apps/people/views.py +++ b/presence/apps/people/views.py @@ -74,3 +74,16 @@ def profile_details(request, id): } return render_to_response('people/profile-details.html', data, RequestContext(request)) + + +@login_required +def team_list(request): + users = User.objects.filter(is_active=True) + + data = { + 'users': users + } + + return render_to_response('people/team.html', data, + RequestContext(request)) +