skip counters output when number of unread articles at backend equals frontend
This commit is contained in:
parent
1011b66a02
commit
78ea1de08c
4 changed files with 34 additions and 16 deletions
37
backend.php
37
backend.php
|
@ -130,13 +130,20 @@
|
|||
|
||||
/* FIXME this needs reworking */
|
||||
|
||||
function getGlobalCounters($link) {
|
||||
function getGlobalUnread($link) {
|
||||
$result = db_query($link, "SELECT count(id) as c_id FROM ttrss_entries,ttrss_user_entries
|
||||
WHERE unread = true AND
|
||||
ttrss_user_entries.ref_id = ttrss_entries.id AND
|
||||
owner_uid = " . $_SESSION["uid"]);
|
||||
$c_id = db_fetch_result($result, 0, "c_id");
|
||||
print "<counter type=\"global\" id='global-unread' counter='$c_id'/>";
|
||||
return $c_id;
|
||||
}
|
||||
|
||||
function getGlobalCounters($link, $global_unread = -1) {
|
||||
if ($global_unread == -1) {
|
||||
$global_unread = getGlobalUnread($link);
|
||||
}
|
||||
print "<counter type=\"global\" id='global-unread' counter='$global_unread'/>";
|
||||
}
|
||||
|
||||
function getTagCounters($link, $smart_mode = SMART_RPC_COUNTERS) {
|
||||
|
@ -735,18 +742,26 @@
|
|||
update_all_feeds($link, $subop == "forceUpdateAllFeeds");
|
||||
}
|
||||
|
||||
$omode = $_GET["omode"];
|
||||
|
||||
if (!$omode) $omode = "tfl";
|
||||
$global_unread_caller = sprintf("%d", $_GET["uctr"]);
|
||||
$global_unread = getGlobalUnread($link);
|
||||
|
||||
print "<rpc-reply>";
|
||||
if (strchr($omode, "l")) getLabelCounters($link);
|
||||
if (strchr($omode, "f")) getFeedCounters($link);
|
||||
if (strchr($omode, "t")) getTagCounters($link);
|
||||
if (get_pref($link, 'ENABLE_FEED_CATS')) {
|
||||
getCategoryCounters($link);
|
||||
|
||||
if ($global_unread_caller != $global_unread) {
|
||||
|
||||
$omode = $_GET["omode"];
|
||||
|
||||
if (!$omode) $omode = "tfl";
|
||||
|
||||
if (strchr($omode, "l")) getLabelCounters($link);
|
||||
if (strchr($omode, "f")) getFeedCounters($link);
|
||||
if (strchr($omode, "t")) getTagCounters($link);
|
||||
if (get_pref($link, 'ENABLE_FEED_CATS')) {
|
||||
getCategoryCounters($link);
|
||||
}
|
||||
getGlobalCounters($link, $global_unread);
|
||||
}
|
||||
getGlobalCounters($link);
|
||||
|
||||
print "</rpc-reply>";
|
||||
|
||||
}
|
||||
|
|
|
@ -97,5 +97,8 @@
|
|||
define('DISABLE_SESSIONS', false);
|
||||
// Never enable this option (kludge for daemon using tt-rss code)
|
||||
|
||||
define('DAEMON_SLEEP_INTERVAL', 120);
|
||||
// Interval between update daemon update runs
|
||||
|
||||
// vim:ft=php
|
||||
?>
|
||||
|
|
|
@ -191,6 +191,7 @@ function scheduleFeedUpdate(force) {
|
|||
}
|
||||
|
||||
query_str = query_str + "&omode=" + omode;
|
||||
query_str = query_str + "&uctr=" + global_unread;
|
||||
|
||||
if (xmlhttp_ready(xmlhttp)) {
|
||||
xmlhttp.open("GET", query_str, true);
|
||||
|
|
|
@ -5,7 +5,6 @@
|
|||
|
||||
declare(ticks = 1);
|
||||
|
||||
define('SLEEP_INTERVAL', 60); // seconds between update runs
|
||||
define('MAGPIE_CACHE_DIR', '/var/tmp/magpie-ttrss-cache-daemon');
|
||||
define('DISABLE_SESSIONS', true);
|
||||
|
||||
|
@ -82,8 +81,8 @@
|
|||
|
||||
print "Feed: " . $line["feed_url"] . ": ";
|
||||
|
||||
printf("(%d ? %d) ", time() - strtotime($line["last_updated"]),
|
||||
$upd_intl*60);
|
||||
printf("(%d/%d, %d) ", time() - strtotime($line["last_updated"]),
|
||||
$upd_intl*60, $owner_uid);
|
||||
|
||||
if (!$line["last_updated"] ||
|
||||
time() - strtotime($line["last_updated"]) > ($upd_intl * 60)) {
|
||||
|
@ -95,9 +94,9 @@
|
|||
}
|
||||
}
|
||||
|
||||
print "Sleeping for " . SLEEP_INTERVAL . " seconds...\n";
|
||||
print "Sleeping for " . DAEMON_SLEEP_INTERVAL . " seconds...\n";
|
||||
|
||||
sleep(SLEEP_INTERVAL);
|
||||
sleep(DAEMON_SLEEP_INTERVAL);
|
||||
}
|
||||
|
||||
db_close($link);
|
||||
|
|
Loading…
Reference in a new issue