summaryrefslogtreecommitdiff
path: root/taskapp/views
diff options
context:
space:
mode:
authornishanth2010-02-24 19:18:59 +0530
committernishanth2010-02-24 19:18:59 +0530
commit4ad1650c6a4ace4f1b0aa860b28b34e54205010c (patch)
tree2146c61c1710f7369ce85dbba7b36d58df05cecd /taskapp/views
parentc1921ba40a75a270fd7d567c21c616dfa4b0b291 (diff)
parent1360092db72b35a19a54930da8ac6e519d9829a9 (diff)
downloadpytask-4ad1650c6a4ace4f1b0aa860b28b34e54205010c.tar.gz
pytask-4ad1650c6a4ace4f1b0aa860b28b34e54205010c.tar.bz2
pytask-4ad1650c6a4ace4f1b0aa860b28b34e54205010c.zip
merged.
Diffstat (limited to 'taskapp/views')
-rw-r--r--taskapp/views/user.py56
1 files changed, 52 insertions, 4 deletions
diff --git a/taskapp/views/user.py b/taskapp/views/user.py
index 3ec7abd..c0df9b3 100644
--- a/taskapp/views/user.py
+++ b/taskapp/views/user.py
@@ -1,13 +1,13 @@
import os
+
from django.http import HttpResponse, Http404
from django.shortcuts import redirect, render_to_response
-from pytask.taskapp.models import Task
-from pytask.taskapp.forms.user import UserProfileEditForm
-from pytask.taskapp.events.user import createUser, updateProfile
from django.contrib.auth.models import User
-from pytask.taskapp.models import Profile
from django.contrib.auth.decorators import login_required
+from pytask.taskapp.models import Task, Profile, Request
+from pytask.taskapp.events.user import createUser, updateProfile
+from pytask.taskapp.forms.user import UserProfileEditForm
def show_msg(message, redirect_url=None, url_desc=None):
""" simply redirect to homepage """
@@ -95,3 +95,51 @@ def edit_my_profile(request):
edit_profile_form = UserProfileEditForm(instance = profile)
return render_to_response('user/edit_profile.html',{'edit_profile_form' : edit_profile_form, 'user':request.user})
+@login_required
+def browse_requests(request):
+
+ user = request.user
+ active_reqs = user.request_to.filter(replied=False)
+ reqs = active_reqs.order_by('creation_date').reverse()
+ for pos, req in enumerate(reversed(reqs)):
+ req.pos = pos
+ context = {
+ 'user':user,
+ 'reqs':reqs,
+ }
+
+ return render_to_response('user/browse_requests.html', context)
+
+@login_required
+def view_request(request, rid):
+ """ please note that request variable in this method is that of django.
+ our app request is called user_request.
+ """
+
+ user = request.user
+ reqs = user.request_to.filter(replied=False).order_by('creation_date')
+ user_request = reqs[int(rid)]
+
+ context = {
+ 'user':user,
+ 'req':user_request,
+ 'sent_users':user_request.to.all()
+ }
+
+ return render_to_response('user/view_request.html', context)
+
+@login_required
+def process_request(request, rid, reply):
+ """ check if the method is post and then update the request.
+ if it is get, display a 404 error.
+ """
+
+ if request.method=="POST":
+ user = request.user
+ browse_request_url= '/user/requests'
+ reqs = user.request_to.filter(replied=False).order_by('creation_date')
+ user_request = reqs[int(rid)]
+
+ return show_msg("Your reply has been processed", browse_request_url, "view other requests")
+ else:
+ return show_msg("You are not authorised to do this", browse_request_url, "view other requests")