Просмотр исходного кода

Small fix that will prevent new forums without topics to be marked as unread

sh4nks 11 лет назад
Родитель
Сommit
d6d2a51764
2 измененных файлов с 4 добавлено и 2 удалено
  1. 1 1
      flaskbb/templates/forum/index.html
  2. 3 1
      flaskbb/utils/helpers.py

+ 1 - 1
flaskbb/templates/forum/index.html

@@ -26,7 +26,7 @@
         <tr>
             <td align="center" valign="center" width="4%">
 
-            {% if forum[1]|is_unread(forum[0].last_post) %}
+            {% if forum[1]|is_unread(forum[0].last_post, forum[0]) %}
                 <span class="fa fa-comments" style="font-size: 2em"></span>
             {% else %}
                 <span class="fa fa-comments-o" style="font-size: 2em"></span>

+ 3 - 1
flaskbb/utils/helpers.py

@@ -18,7 +18,7 @@ from flaskbb.extensions import redis
 from flaskbb.forum.models import ForumsRead, TopicsRead
 
 
-def is_unread(read_object, last_post):
+def is_unread(read_object, last_post, forum=None):
     if not (isinstance(read_object, ForumsRead) or
             isinstance(read_object, TopicsRead) or not None):
         raise TypeError("Must be a ForumsRead or TopicsRead object")
@@ -26,6 +26,8 @@ def is_unread(read_object, last_post):
     read_cutoff = datetime.utcnow() - timedelta(
         days=current_app.config['TRACKER_LENGTH'])
 
+    if forum and forum.topic_count == 0:
+        return False
     if read_object is None:
         return True
     if read_cutoff < last_post.date_created: