summaryrefslogtreecommitdiffstats
path: root/hyperkitty/views/list.py
diff options
context:
space:
mode:
Diffstat (limited to 'hyperkitty/views/list.py')
-rw-r--r--hyperkitty/views/list.py16
1 files changed, 15 insertions, 1 deletions
diff --git a/hyperkitty/views/list.py b/hyperkitty/views/list.py
index 000b7b3..ef01b65 100644
--- a/hyperkitty/views/list.py
+++ b/hyperkitty/views/list.py
@@ -31,7 +31,7 @@ from django.utils import formats
from django.utils.dateformat import format as date_format
from django.http import Http404
-from hyperkitty.models import Tag, Favorite
+from hyperkitty.models import Tag, Favorite, LastView
from hyperkitty.lib import get_months, get_store, get_display_dates, daterange
from hyperkitty.lib import FLASH_MESSAGES
from hyperkitty.lib.voting import get_votes
@@ -128,6 +128,20 @@ def _thread_list(request, mlist, threads, template_name='thread_list.html', extr
except Tag.DoesNotExist:
thread.tags = []
+ # Unread status
+ thread.unread = False
+ if request.user.is_authenticated():
+ try:
+ last_view_obj = LastView.objects.get(
+ list_address=mlist.name,
+ threadid=thread.thread_id,
+ user=request.user)
+ except LastView.DoesNotExist:
+ thread.unread = True
+ else:
+ if thread.date_active > last_view_obj.view_date:
+ thread.unread = True
+
all_threads = threads
paginator = Paginator(threads, 10)
page_num = request.GET.get('page')