]> git.wh0rd.org - tt-rss.git/commitdiff
getLabelCounters: skip processing when labels are disabled; misc performance tweaks
authorAndrew Dolgov <fox@madoka.spb.ru>
Sat, 17 Jan 2009 18:42:02 +0000 (19:42 +0100)
committerAndrew Dolgov <fox@madoka.spb.ru>
Sat, 17 Jan 2009 18:42:02 +0000 (19:42 +0100)
backend.php
functions.php

index 210de06f9e9fe44123381475316305135d73a481..3e6eea662f2bc46995d5e763e75fcb4a9db23697 100644 (file)
 //                     }
 
                        if (get_pref($link, 'COMBINED_DISPLAY_MODE') || $subop || 
-                               time() - $_SESSION["viewfeed:counters_stamp"] > 30) {
+                               time() - $_SESSION["viewfeed:counters_stamp"] > 60) {
                                if (!$offset) {
                                        print "<counters>";
                                        getAllCounters($link, $omode, $feed);
index c738ebe65bd8c7a8ad924c79c0b63ce629ee68ea..a47e0218ee15cb152eec249d52cb837d4ab5f79a 100644 (file)
                        $ret_arr["-3"]["description"] = __("Fresh articles");
                }
 
+               if (GLOBAL_ENABLE_LABELS && get_pref($link, 'ENABLE_LABELS')) {
 
-               $result = db_query($link, "SELECT owner_uid,id,sql_exp,description FROM
-                       ttrss_labels WHERE owner_uid = ".$_SESSION["uid"]." ORDER by description");
+                       $result = db_query($link, "SELECT owner_uid,id,sql_exp,description FROM
+                               ttrss_labels WHERE owner_uid = ".$_SESSION["uid"]." ORDER by description");
+               
+                       while ($line = db_fetch_assoc($result)) {
        
-               while ($line = db_fetch_assoc($result)) {
-
-                       $id = -$line["id"] - 11;
-
-                       $label_name = $line["description"];
-
-                       error_reporting (0);
-
-                       $tmp_result = db_query($link, "SELECT count(ttrss_entries.id) as count FROM ttrss_user_entries,ttrss_entries,ttrss_feeds
-                               WHERE (" . $line["sql_exp"] . ") AND unread = true AND 
-                               ttrss_feeds.hidden = false AND
-                               $age_qpart AND
-                               ttrss_user_entries.feed_id = ttrss_feeds.id AND
-                               ttrss_user_entries.ref_id = ttrss_entries.id AND 
-                               ttrss_user_entries.owner_uid = ".$_SESSION["uid"]);
-
-                       $count = db_fetch_result($tmp_result, 0, "count");
-
-                       if (!$smart_mode || $old_counters[$id] != $count) {     
-                               $old_counters[$id] = $count;
-                               $lctrs_modified = true;
-                               if (!$ret_mode) {
-
-                                       if (get_pref($link, 'EXTENDED_FEEDLIST')) {
-                                               $xmsg_part = "xmsg=\"(" . getFeedArticles($link, $id) . " total)\"";
+                               $id = -$line["id"] - 11;
+       
+                               $label_name = $line["description"];
+       
+                               error_reporting (0);
+       
+                               $tmp_result = db_query($link, "SELECT count(ttrss_entries.id) as count FROM ttrss_user_entries,ttrss_entries,ttrss_feeds
+                                       WHERE (" . $line["sql_exp"] . ") AND unread = true AND 
+                                       ttrss_feeds.hidden = false AND
+                                       $age_qpart AND
+                                       ttrss_user_entries.feed_id = ttrss_feeds.id AND
+                                       ttrss_user_entries.ref_id = ttrss_entries.id AND 
+                                       ttrss_user_entries.owner_uid = ".$_SESSION["uid"]);
+       
+                               $count = db_fetch_result($tmp_result, 0, "count");
+       
+                               if (!$smart_mode || $old_counters[$id] != $count) {     
+                                       $old_counters[$id] = $count;
+                                       $lctrs_modified = true;
+                                       if (!$ret_mode) {
+       
+                                               if (get_pref($link, 'EXTENDED_FEEDLIST')) {
+                                                       $xmsg_part = "xmsg=\"(" . getFeedArticles($link, $id) . " total)\"";
+                                               } else {
+                                                       $xmsg_part = "";
+                                               }
+       
+                                               print "<counter type=\"label\" id=\"$id\" counter=\"$count\" $xmsg_part/>";
                                        } else {
-                                               $xmsg_part = "";
+                                               $ret_arr[$id]["counter"] = $count;
+                                               $ret_arr[$id]["description"] = $label_name;
                                        }
-
-                                       print "<counter type=\"label\" id=\"$id\" counter=\"$count\" $xmsg_part/>";
-                               } else {
-                                       $ret_arr[$id]["counter"] = $count;
-                                       $ret_arr[$id]["description"] = $label_name;
                                }
+       
+                               error_reporting (DEFAULT_ERROR_LEVEL);
                        }
-
-                       error_reporting (DEFAULT_ERROR_LEVEL);
                }
 
                if ($smart_mode && $lctrs_modified) {