From fb1fb4ab1facad22f9f9bfb868efa35500d90abf Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Tue, 28 Mar 2006 07:12:45 +0100 Subject: [PATCH] show last update time/status in feed tooltip (#55) --- backend.php | 15 +++++++++++++-- functions.js | 10 ++++++++++ functions.php | 23 +++++++++++++++++++---- 3 files changed, 42 insertions(+), 6 deletions(-) diff --git a/backend.php b/backend.php index 916d2b12..482874d2 100644 --- a/backend.php +++ b/backend.php @@ -238,6 +238,7 @@ } $result = db_query($link, "SELECT ttrss_feeds.*, + SUBSTRING(last_updated,1,19) AS last_updated_noms, (SELECT COUNT(id) FROM ttrss_entries,ttrss_user_entries WHERE feed_id = ttrss_feeds.id AND ttrss_user_entries.ref_id = ttrss_entries.id AND @@ -264,6 +265,8 @@ $total_unread = 0; $category = ""; + + $short_date = get_pref($link, 'SHORT_DATE_FORMAT'); while ($line = db_fetch_assoc($result)) { @@ -275,6 +278,12 @@ $total = $line["total"]; $unread = $line["unread"]; + if (get_pref($link, 'HEADLINES_SMART_DATE')) { + $last_updated = smart_date_time(strtotime($line["last_updated_noms"])); + } else { + $last_updated = date($short_date, strtotime($line["last_updated_noms"])); + } + $rtl_content = sql_bool_to_bool($line["rtl_content"]); if ($rtl_content) { @@ -365,7 +374,8 @@ $tmp_category ($cat_unread unread)$ellipsis"; + class=\"$catctr_class\">($cat_unread unread)$ellipsis + "; // !!! NO SPACE before keyboard navigation, etc. @@ -373,7 +383,8 @@ } printFeedEntry($feed_id, $class, $feed, $unread, - "icons/$feed_id.ico", $link, $rtl_content); + "icons/$feed_id.ico", $link, $rtl_content, + $last_updated, $line["last_error"]); ++$lnum; } diff --git a/functions.js b/functions.js index 4ae578ed..9858608c 100644 --- a/functions.js +++ b/functions.js @@ -399,6 +399,7 @@ function parse_counters(reply, f_document, title_obj, scheduled_call) { var ctr = reply.childNodes[l].getAttribute("counter"); var error = reply.childNodes[l].getAttribute("error"); var has_img = reply.childNodes[l].getAttribute("hi"); + var updated = reply.childNodes[l].getAttribute("updated"); if (id == "global-unread") { title_obj.global_unread = ctr; @@ -418,6 +419,15 @@ function parse_counters(reply, f_document, title_obj, scheduled_call) { var feedu = f_document.getElementById("FEEDU-" + id); var feedr = f_document.getElementById("FEEDR-" + id); var feed_img = f_document.getElementById("FIMG-" + id); + var feedlink = f_document.getElementById("FEEDL-" + id); + + if (updated && feedlink) { + if (error) { + feedlink.title = "Error: " + error + " (" + updated + ")"; + } else { + feedlink.title = "Updated: " + updated; + } + } if (feedctr && feedu && feedr) { diff --git a/functions.php b/functions.php index 825b1983..adb71be2 100644 --- a/functions.php +++ b/functions.php @@ -686,7 +686,7 @@ } function printFeedEntry($feed_id, $class, $feed_title, $unread, $icon_file, $link, - $rtl_content = false) { + $rtl_content = false, $last_updated = false, $last_error = false) { if (file_exists($icon_file) && filesize($icon_file) > 0) { $feed_icon = ""; @@ -700,7 +700,13 @@ $rtl_tag = "dir=\"ltr\""; } - $feed = "$feed_title"; + if ($last_error) { + $link_title = "Error: $last_error ($last_updated)"; + } else { + $link_title = "Updated: $last_updated"; + } + + $feed = "$feed_title"; print "
  • "; if (get_pref($link, 'ENABLE_FEED_ICONS')) { @@ -1399,6 +1405,7 @@ $old_counters = $_SESSION["fctr_last_value"]; $result = db_query($link, "SELECT id,last_error,parent_feed, + SUBSTRING(last_updated,1,19) AS last_updated, (SELECT count(id) FROM ttrss_entries,ttrss_user_entries WHERE feed_id = ttrss_feeds.id AND @@ -1409,12 +1416,20 @@ $fctrs_modified = false; + $short_date = get_pref($link, 'SHORT_DATE_FORMAT'); + while ($line = db_fetch_assoc($result)) { $id = $line["id"]; $count = $line["count"]; $last_error = htmlspecialchars($line["last_error"]); - + + if (get_pref($link, 'HEADLINES_SMART_DATE')) { + $last_updated = smart_date_time(strtotime($line["last_updated"])); + } else { + $last_updated = date($short_date, strtotime($line["last_updated"])); + } + $has_img = is_file(ICONS_DIR . "/$id.ico"); $tmp_result = db_query($link, @@ -1445,7 +1460,7 @@ $has_img_part = ""; } - print ""; + print ""; } } -- 2.39.5