summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Dolgov <[email protected]>2006-03-28 07:12:45 +0100
committerAndrew Dolgov <[email protected]>2006-03-28 07:12:45 +0100
commitfb1fb4ab1facad22f9f9bfb868efa35500d90abf (patch)
tree41afdecde81014df5bee198ad9a35c51993d24de
parent3b0f23de404fb1616a80db06b8641d2f44a80291 (diff)
show last update time/status in feed tooltip (#55)
-rw-r--r--backend.php15
-rw-r--r--functions.js10
-rw-r--r--functions.php23
3 files changed, 42 insertions, 6 deletions
diff --git a/backend.php b/backend.php
index 916d2b123..482874d21 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 @@
<a href=\"javascript:toggleCollapseCat($cat_id)\">$tmp_category</a>
<a href=\"javascript:viewCategory($cat_id)\" id=\"FCAP-$cat_id\">
<span id=\"FCATCTR-$cat_id\"
- class=\"$catctr_class\">($cat_unread unread)$ellipsis</span></a></li>";
+ class=\"$catctr_class\">($cat_unread unread)$ellipsis</span>
+ </a></li>";
// !!! NO SPACE before <ul...feedCatList - breaks firstChild DOM function
// -> 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 4ae578edd..9858608ca 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 825b19831..adb71be23 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 = "<img id=\"FIMG-$feed_id\" src=\"$icon_file\">";
@@ -700,7 +700,13 @@
$rtl_tag = "dir=\"ltr\"";
}
- $feed = "<a href=\"javascript:viewfeed('$feed_id', 0);\">$feed_title</a>";
+ if ($last_error) {
+ $link_title = "Error: $last_error ($last_updated)";
+ } else {
+ $link_title = "Updated: $last_updated";
+ }
+
+ $feed = "<a title=\"$link_title\" id=\"FEEDL-$feed_id\" href=\"javascript:viewfeed('$feed_id', 0);\">$feed_title</a>";
print "<li id=\"FEEDR-$feed_id\" class=\"$class\">";
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 "<counter type=\"feed\" id=\"$id\" counter=\"$count\" $has_img_part $error_part/>";
+ print "<counter type=\"feed\" id=\"$id\" counter=\"$count\" $has_img_part $error_part updated=\"$last_updated\"/>";
}
}