summaryrefslogtreecommitdiffstats
path: root/hyperkitty
diff options
context:
space:
mode:
Diffstat (limited to 'hyperkitty')
-rw-r--r--hyperkitty/templates/month_view.html8
-rw-r--r--hyperkitty/views/list.py47
2 files changed, 45 insertions, 10 deletions
diff --git a/hyperkitty/templates/month_view.html b/hyperkitty/templates/month_view.html
index ba994d2..600c206 100644
--- a/hyperkitty/templates/month_view.html
+++ b/hyperkitty/templates/month_view.html
@@ -55,13 +55,7 @@
</ul>
<ul class="inline-block">
<li class="like">
- +{{email.liked}}
- </li>
- <li class="youlike">
- <a href="#like"> Like</a>
- </li>
- <li class="youdislike">
- <a href="#dislike"> Dislike</a>
+ +{{email.avglike}} / - {{email.avgdislike}}
</li>
</ul>
</div>
diff --git a/hyperkitty/views/list.py b/hyperkitty/views/list.py
index dc24ee0..87dec29 100644
--- a/hyperkitty/views/list.py
+++ b/hyperkitty/views/list.py
@@ -78,14 +78,55 @@ def archives(request, mlist_fqdn, year=None, month=None, day=None):
cnt = 0
for thread in threads:
# Statistics on how many participants and threads this month
- participants.add(msg.sender)
+ participants.add(thread.sender)
thread.participants = STORE.get_thread_participants(list_name,
thread.thread_id)
thread.answers = STORE.get_thread_length(list_name,
thread.thread_id)
+
+ highestlike = 0
+ highestdislike = 0
+
+ totalvotes = 0
+ totallikes = 0
+ totaldislikes = 0
+ messages = STORE.get_thread(list_name, thread.thread_id)
+
+ for message in messages:
+ # Extract all the votes for this message
+ try:
+ votes = Rating.objects.filter(messageid=message.message_id)
+ except Rating.DoesNotExist:
+ votes = {}
+
+ likes = 0
+ dislikes = 0
+
+ for vote in votes:
+ if vote.vote == 1:
+ likes = likes + 1
+ elif vote.vote == -1:
+ dislikes = dislikes + 1
+ else:
+ pass
+
+ totallikes = totallikes + likes
+ totalvotes = totalvotes + likes + dislikes
+ totaldislikes = totaldislikes + dislikes
+
+ try:
+ thread.avglike = totallikes / totalvotes
+ except:
+ thread.avglike = 0
+
+ try:
+ thread.avgdislike = totaldislikes / totalvotes
+ except:
+ thread.avgdislike = 0
+
threads[cnt] = thread
- cnt = cnt + 1
-
+ cnt = cnt + 1
+
paginator = Paginator(threads, 10)
pageNo = request.GET.get('page')