summaryrefslogtreecommitdiff
path: root/backend.php
diff options
context:
space:
mode:
authorAndrew Dolgov <[email protected]>2005-12-13 10:27:41 +0100
committerAndrew Dolgov <[email protected]>2005-12-13 10:27:41 +0100
commit280ee9a3398c8fecd975f22147eb5f8c10552b77 (patch)
treef39a5c2e98bfb7353b24a880f238fed9a5197ddf /backend.php
parentfe14aeb84c58141ca1fb4acde3fd6082c95a80c9 (diff)
display number of unread articles in category
Diffstat (limited to 'backend.php')
-rw-r--r--backend.php56
1 files changed, 46 insertions, 10 deletions
diff --git a/backend.php b/backend.php
index e8e4f992c..f7c4e0d4e 100644
--- a/backend.php
+++ b/backend.php
@@ -60,8 +60,23 @@
getFeedCounters($link);
getTagCounters($link);
getGlobalCounters($link);
+ if (get_pref($link, 'ENABLE_FEED_CATS')) {
+ getCategoryCounters($link);
+ }
}
+ function getCategoryCounters($link) {
+ $result = db_query($link, "SELECT COUNT(int_id) AS unread,cat_id
+ FROM ttrss_user_entries,ttrss_feeds WHERE unread = true AND feed_id = id
+ AND ttrss_feeds.owner_uid = ".$_SESSION["uid"]." GROUP BY cat_id");
+
+ while ($line = db_fetch_assoc($result)) {
+ $line["cat_id"] = sprintf("%d", $line["cat_id"]);
+ print "<counter type=\"category\" id=\"".$line["cat_id"]."\" counter=\"".
+ $line["unread"]."\"/>";
+ }
+ }
+
function getFeedUnread($link, $feed) {
$n_feed = sprintf("%d", $feed);
@@ -104,7 +119,7 @@
ttrss_user_entries.ref_id = ttrss_entries.id AND
owner_uid = " . $_SESSION["uid"]);
$c_id = db_fetch_result($result, 0, "c_id");
- print "<counter id='global-unread' counter='$c_id'/>";
+ print "<counter type=\"global\" id='global-unread' counter='$c_id'/>";
}
function getTagCounters($link, $smart_mode = SMART_RPC_COUNTERS) {
@@ -142,7 +157,7 @@
if (!$smart_mode || $old_counters[$tag] != $unread) {
$old_counters[$tag] = $unread;
$tctrs_modified = true;
- print "<tag id=\"$tag\" counter=\"$unread\"/>";
+ print "<counter type=\"tag\" id=\"$tag\" counter=\"$unread\"/>";
}
}
@@ -170,7 +185,7 @@
$count = db_fetch_result($result, 0, "count");
- print "<label id=\"-1\" counter=\"$count\"/>";
+ print "<counter type=\"label\" id=\"-1\" counter=\"$count\"/>";
$result = db_query($link, "SELECT owner_uid,id,sql_exp,description FROM
ttrss_labels WHERE owner_uid = ".$_SESSION["uid"]." ORDER by description");
@@ -191,7 +206,7 @@
if (!$smart_mode || $old_counters[$id] != $count) {
$old_counters[$id] = $count;
$lctrs_modified = true;
- print "<label id=\"$id\" counter=\"$count\"/>";
+ print "<counter type=\"label\" id=\"$id\" counter=\"$count\"/>";
}
error_reporting (DEFAULT_ERROR_LEVEL);
@@ -211,7 +226,7 @@
$count = db_fetch_result($result, 0, "count");
- print "<feed id=\"$id\" counter=\"$count\"/>";
+ print "<counter type=\"feed\" id=\"$id\" counter=\"$count\"/>";
}
function getFeedCounters($link, $smart_mode = SMART_RPC_COUNTERS) {
@@ -241,7 +256,7 @@
if (!$smart_mode || $old_counters[$id] != $count) {
$old_counters[$id] = $count;
$fctrs_modified = true;
- print "<feed id=\"$id\" counter=\"$count\"/>";
+ print "<counter type=\"feed\" id=\"$id\" counter=\"$count\"/>";
}
}
@@ -324,7 +339,8 @@
error_reporting (0);
- $tmp_result = db_query($link, "SELECT count(id) as count FROM ttrss_entries,ttrss_user_entries
+ $tmp_result = db_query($link, "SELECT count(id) as count
+ FROM ttrss_entries,ttrss_user_entries
WHERE (" . $line["sql_exp"] . ") AND unread = true AND
ttrss_user_entries.ref_id = ttrss_entries.id
AND owner_uid = '$owner_uid'");
@@ -433,11 +449,30 @@
$tmp_category .= "...";
} else {
$holder_class = "";
- }
+ }
+
+ if ($cat_id) {
+ $cat_id_qpart = "cat_id = '$cat_id'";
+ } else {
+ $cat_id_qpart = "cat_id IS NULL";
+ }
+
+ $tmp_result = db_query($link, "SELECT count(int_id) AS unread
+ FROM ttrss_user_entries,ttrss_feeds WHERE
+ unread = true AND
+ feed_id = ttrss_feeds.id AND $cat_id_qpart AND
+ ttrss_user_entries.owner_uid = " . $_SESSION["uid"]);
+
+ $cat_unread = db_fetch_result($tmp_result, 0, "unread");
+
+ $cat_id = sprintf("%d", $cat_id);
print "<li class=\"feedCat\" id=\"FCAT-$cat_id\">
- <a href=\"javascript:toggleCollapseCat($cat_id)\">$tmp_category</a></li>";
- print "<li id=\"feedCatHolder\" class=\"$holder_class\"><ul class=\"feedCatList\">";
+ <a href=\"javascript:toggleCollapseCat($cat_id)\">$tmp_category
+ <span id=\"FCATCTR-$cat_id\"
+ class=\"$catctr_class\">($cat_unread unread)</span></a></li>";
+ print "<li id=\"feedCatHolder\" class=\"$holder_class\">
+ <ul class=\"feedCatList\">";
}
printFeedEntry($feed_id, $class, $feed, $unread,
@@ -665,6 +700,7 @@
if ($subop == "collapse") {
$cat_id = db_escape_string($_GET["cid"]);
+
db_query($link, "UPDATE ttrss_feed_categories SET
collapsed = NOT collapsed WHERE id = '$cat_id' AND owner_uid = " .
$_SESSION["uid"]);