From a4b906ec46bc389d8fcef1b2a308c2699c7ffc04 Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Tue, 3 Feb 2009 22:33:52 +0300 Subject: [PATCH] view: update offline feedlist counters --- feedlist.js | 189 +++++++++++++++++++++++++++++++++++++--------------- viewfeed.js | 1 + 2 files changed, 137 insertions(+), 53 deletions(-) diff --git a/feedlist.js b/feedlist.js index a359e5ebd..d61ebfc23 100644 --- a/feedlist.js +++ b/feedlist.js @@ -30,71 +30,103 @@ function viewCategory(cat) { return false; } +function printFeedEntry(id, title, row_class, unread, icon) { + + var tmp = ""; + var fctr_class = ""; + var feed_icon = ""; + + if (unread > 0) { + row_class += "Unread"; + fctr_class = "feedCtrHasUnread"; + } else { + fctr_class = "feedCtrNoUnread"; + } + + if (icon) { + feed_icon = ""; + } else { + feed_icon = ""; + } + + var link = ""+ + title + ""; + + tmp += "
  • " + feed_icon + + "" + link + ""; + + tmp += " " + + "("+unread+")"; + + tmp += "
  • "; + + return tmp; +} + +function get_local_feed_unread(id) { + try { + var rs; + + if (id == -4) { + rs = db.execute("SELECT SUM(unread) FROM articles"); + } else if (id == -1) { + rs = db.execute("SELECT SUM(unread) FROM articles WHERE marked = 1"); + } else { + rs = db.execute("SELECT SUM(unread) FROM articles WHERE feed_id = ?", [id]); + } + + if (rs.isValidRow()) { + return rs.field(0); + } else { + return 0; + } + + } catch (e) { + exception_error("get_local_feed_unread", e); + } +} + function render_offline_feedlist() { try { var tmp = "