From b429058b0c737616c3d804d97a3c7e2dcbf69737 Mon Sep 17 00:00:00 2001 From: Cédric Bonhomme Date: Fri, 23 May 2014 11:34:51 +0200 Subject: Bootstrap badge to display the number of unread articles by feed. --- pyaggr3g470r/templates/home.html | 9 +++++++-- pyaggr3g470r/views.py | 5 +++-- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/pyaggr3g470r/templates/home.html b/pyaggr3g470r/templates/home.html index f10d4e11..94e4d736 100644 --- a/pyaggr3g470r/templates/home.html +++ b/pyaggr3g470r/templates/home.html @@ -7,14 +7,19 @@ {% for feed in result|sort(attribute="title") %}
-

{{ feed.title|safe }}

+

{{ feed.title|safe }} + {% if unread[feed.id] != 0 %} + {{ unread[feed.id] }} + {% endif %}

{% if feed.enabled %} {% endif %} - + {% if unread[feed.id] != 0 %} + + {% endif %}
{% for number in range(0, feed.articles.all()|count-(feed.articles.all()|count % 3), 3) %} diff --git a/pyaggr3g470r/views.py b/pyaggr3g470r/views.py index 24175024..ec3fcf35 100644 --- a/pyaggr3g470r/views.py +++ b/pyaggr3g470r/views.py @@ -213,8 +213,9 @@ def home(): The home page lists most recent articles of all feeds. """ user = User.query.filter(User.email == g.user.email).first() - result = [] + result, unread = [], {} for feed in user.feeds: + unread[feed.id] = Article.query.filter(Article.user_id == g.user.id, Article.feed_id == feed.id, Article.readed == False).count() new_feed = Feed() new_feed.id = feed.id new_feed.title = feed.title @@ -223,7 +224,7 @@ def home(): Article.feed_id == feed.id).order_by(desc("Article.date")).limit(9) result.append(new_feed) unread_articles = len(Article.query.filter(Article.user_id == g.user.id, Article.readed == False).all()) - return render_template('home.html', result=result, head_title=unread_articles) + return render_template('home.html', result=result, unread=unread, head_title=unread_articles) @app.route('/fetch/', methods=['GET']) @app.route('/fetch/', methods=['GET']) -- cgit