diff options
author | Madhusudan.C.S | 2011-01-15 21:22:35 +0530 |
---|---|---|
committer | Madhusudan.C.S | 2011-01-15 21:22:35 +0530 |
commit | 2b20456fc39ca5877842ba0b3cf86134a4c21e9f (patch) | |
tree | 8961a9d910a96025b5cd7e1bde0af5841e1b4561 | |
parent | 53f4a2728cebb135b1e61f43381f9f088aece4e2 (diff) | |
download | pytask-2b20456fc39ca5877842ba0b3cf86134a4c21e9f.tar.gz pytask-2b20456fc39ca5877842ba0b3cf86134a4c21e9f.tar.bz2 pytask-2b20456fc39ca5877842ba0b3cf86134a4c21e9f.zip |
Add a new view method for specific users profile view.
-rw-r--r-- | pytask/profile/urls.py | 2 | ||||
-rwxr-xr-x | pytask/profile/views.py | 52 |
2 files changed, 37 insertions, 17 deletions
diff --git a/pytask/profile/urls.py b/pytask/profile/urls.py index e1d72a9..e7fb68e 100644 --- a/pytask/profile/urls.py +++ b/pytask/profile/urls.py @@ -4,6 +4,8 @@ from django.conf.urls.defaults import url urlpatterns = patterns('pytask.profile.views', url(r'^view/$', 'view_profile', name='view_profile'), + url(r'^view/(?P<user_id>\d+)$', 'view_user_profile', + name='view_user_profile'), url(r'^edit/$', 'edit_profile', name='edit_profile'), url(r'^notification/browse/$', 'browse_notifications', name='browse_notifications'), diff --git a/pytask/profile/views.py b/pytask/profile/views.py index f90258a..b613f73 100755 --- a/pytask/profile/views.py +++ b/pytask/profile/views.py @@ -1,9 +1,9 @@ +from django import shortcuts from django.contrib.auth.decorators import login_required +from django.contrib.auth.models import User from django.core.context_processors import csrf from django.core.urlresolvers import reverse from django.http import Http404 -from django.shortcuts import redirect -from django.shortcuts import render_to_response from pytask.profile.forms import EditProfileForm from pytask.profile.utils import get_notification @@ -21,7 +21,21 @@ def view_profile(request): context = {"user": user, "profile": profile, } - return render_to_response("profile/view.html", context) + return shortcuts.render_to_response("profile/view.html", context) + +@login_required +def view_user_profile(request, user_id): + """ Display the profile information of the user specified in the ID. + """ + + + user = shortcuts.get_object_or_404(User, pk=user_id) + profile = user.get_profile() + + context = {"user": user, + "profile": profile, + } + return shortcuts.render_to_response("profile/view.html", context) @login_required def edit_profile(request): @@ -42,14 +56,14 @@ def edit_profile(request): if form.is_valid(): form.save() - return redirect(reverse('view_profile')) + return shortcuts.redirect(reverse('view_profile')) else: context.update({"form":form}) - return render_to_response("profile/edit.html", context) + return shortcuts.render_to_response("profile/edit.html", context) else: form = EditProfileForm(instance=profile) context.update({"form":form}) - return render_to_response("profile/edit.html", context) + return shortcuts.render_to_response("profile/edit.html", context) @login_required def browse_notifications(request): @@ -65,16 +79,17 @@ def browse_notifications(request): 'notifications':active_notifications, } - return render_to_response('profile/browse_notifications.html', context) + return shortcuts.render_to_response('profile/browse_notifications.html', context) @login_required -def view_notification(request, nid): +def view_notification(request, notification_id): """ get the notification depending on nid. Display it. """ user = request.user - newest, newer, notification, older, oldest = get_notification(nid, user) + newest, newer, notification, older, oldest = get_notification( + notification_id, user) if not notification: raise Http404 @@ -90,15 +105,17 @@ def view_notification(request, nid): 'oldest':oldest, } - return render_to_response('profile/view_notification.html', context) + return shortcuts.render_to_response( + 'profile/view_notification.html', context) @login_required -def delete_notification(request, nid): +def delete_notification(request, notification_id): """ check if the user owns the notification and delete it. """ user = request.user - newest, newer, notification, older, oldest = get_notification(nid, user) + newest, newer, notification, older, oldest = get_notification( + notification_id, user) if not notification: raise Http404 @@ -112,16 +129,17 @@ def delete_notification(request, nid): else: redirect_url = reverse('browse_notifications') - return redirect(redirect_url) + return shortcuts.redirect(redirect_url) @login_required -def unread_notification(request, nid): +def unread_notification(request, notification_id): """ check if the user owns the notification and delete it. """ user = request.user - newest, newer, notification, older, oldest = get_notification(nid, user) + newest, newer, notification, older, oldest = get_notification( + notification_id, user) if not notification: raise Http404 @@ -135,7 +153,7 @@ def unread_notification(request, nid): else: redirect_url = reverse('browse_notifications') - return redirect(redirect_url) + return shortcuts.redirect(redirect_url) @login_required def view_user(request, uid): @@ -164,4 +182,4 @@ def view_user(request, uid): "can_view_info": can_view_info, } - return render_to_response("profile/view_user.html", context) + return shortcuts.render_to_response("profile/view_user.html", context) |