feedback/views.py
changeset 11 afc41af983e5
parent 10 7535305b1104
child 36 9e0d6aecf269
--- a/feedback/views.py	Tue Apr 20 09:29:40 2010 +0530
+++ b/feedback/views.py	Tue Apr 20 09:55:46 2010 +0530
@@ -7,7 +7,7 @@
 
 from offline.feedback.models import Feedback
 from offline.feedback.forms import FeedbackForm
-
+from offline.feedback.utils import make_day_report
 
 def submit_feedback(request):
 
@@ -126,3 +126,31 @@
 
     return render_to_response('list_feedbacks.html',{'event':event, 'feeds_list':feeds_list})
 
+def view_report(request, admin_key):
+    """ compile the report and display it.
+    """
+
+    if not admin_key == ADMIN_KEY:
+        raise Http404
+
+    try:
+        event = Event.objects.all()[0]
+    except IndexError:
+        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 = event.feedback.filter(day=day_num)
+
+        day_report = make_day_report(day_feeds) 
+        if day_report:
+            day_comments = [ feed.comments for feed in day_feeds if feed.comments ]
+            day_report.extend(["General comments:",day_comments])
+            workshop_report.extend( [ "Day %s"%day_num, day_report] )
+
+    return render_to_response("show_report.html", {"event":event, "workshop_report":workshop_report})