]> git.wh0rd.org - tt-rss.git/commitdiff
show last update time/status in feed tooltip (#55)
authorAndrew Dolgov <fox@madoka.spb.ru>
Tue, 28 Mar 2006 06:12:45 +0000 (07:12 +0100)
committerAndrew Dolgov <fox@madoka.spb.ru>
Tue, 28 Mar 2006 06:12:45 +0000 (07:12 +0100)
backend.php
functions.js
functions.php

index 916d2b123dc781cbb9c6b92534a5cd10f7655450..482874d21e6c117977a25fc55db6d753fe88716c 100644 (file)
                        }
 
                        $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
                        $total_unread = 0;
 
                        $category = "";
+
+                       $short_date = get_pref($link, 'SHORT_DATE_FORMAT');
        
                        while ($line = db_fetch_assoc($result)) {
                        
                                $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) {
                                                <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.
                                }
        
                                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;
                        }
index 4ae578edd8bee35470737875ef8bc2ce55bfead7..9858608ca731cfca92110d8b3255715cb563c1b4 100644 (file)
@@ -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) {
 
index 825b198313d0d5c60c984bd2e18981d2e3a7af74..adb71be231f2fc9ee96118e86e9847903aa41c20 100644 (file)
        }
 
        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\">";
                        $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')) {
                $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 
 
                $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,
                                        $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\"/>";
                        }
                }