feedback/views.py
changeset 41 ab0a8a72b069
parent 39 61d558a69b0d
child 44 7d748db0c7c3
--- a/feedback/views.py	Thu Apr 15 12:38:29 2010 +0530
+++ b/feedback/views.py	Thu Apr 15 13:59:46 2010 +0530
@@ -4,7 +4,7 @@
 
 from workshop.feedback.models import Feedback
 from workshop.feedback.forms import FeedbackForm
-from workshop.feedback.utils import compile_report
+from workshop.feedback.utils import make_day_report
 
 from django.http import HttpResponse
 
@@ -73,7 +73,32 @@
             for feed in day_feeds:
                 day_list.append(" ".join((feed.topics, feed.depth, feed.methodology, feed.pace,
                                 feed.applicability, feed.problems, feed.exercises, feed.comments)))
-            feeds_list.append(["Day %s"%day, day_list])
+            feeds_list.extend(["Day %s"%day, day_list])
 
     return render_to_response('list_feedbacks.html',{'user':user, 'event':event, 'feeds_list':feeds_list})
 
+def view_report(request, event_key):
+    """ compile the report and display it.
+    """
+
+    user = request.user
+    
+    try:
+        event = Event.objects.get(key__iexact=event_key)
+    except Event.DoesNotExist:
+        raise Http404
+
+    if not user in event.organizers.all():
+        raise Http404
+
+    no_of_days = (event.stop_date - event.start_date).days
+    days = range(1,no_of_days+2)
+
+    workshop_report = []
+
+    for day in days:
+        day_num = str(day)
+        day_feeds = Feedback.objects.filter(event=event,day=day_num)
+        workshop_report.extend( [ "Day %s"%day_num, make_day_report(day_feeds) ] )
+
+    return render_to_response("show_report.html", {"user":user, "event":event, "workshop_report":workshop_report})