summaryrefslogtreecommitdiff
path: root/classes
diff options
context:
space:
mode:
authorAndrew Dolgov <[email protected]>2022-02-20 11:04:15 +0300
committerAndrew Dolgov <[email protected]>2022-02-20 11:04:40 +0300
commit77f39d65b5dd1661f8102b75746c13403d4195c2 (patch)
tree5f3bd4452be7382ac9bceba9756b35ebc5c8dab7 /classes
parent168dc6fe575d2734ce2c1a93f198262f39ac81c7 (diff)
* Feeds::_get_counters - fix retrieving unread for tags
* mark several symbols as @deprecated properly * replace uses of (deprecated) getFeedUnread() with Feeds::_get_counters()
Diffstat (limited to 'classes')
-rwxr-xr-xclasses/api.php12
-rw-r--r--classes/counters.php2
-rwxr-xr-xclasses/feeds.php13
-rwxr-xr-xclasses/pref/feeds.php2
4 files changed, 19 insertions, 10 deletions
diff --git a/classes/api.php b/classes/api.php
index 7759b43bf..fd2573033 100755
--- a/classes/api.php
+++ b/classes/api.php
@@ -106,7 +106,7 @@ class API extends Handler {
$is_cat = self::_param_to_bool($_REQUEST["is_cat"] ?? false);
if ($feed_id) {
- return $this->_wrap(self::STATUS_OK, array("unread" => getFeedUnread($feed_id, $is_cat)));
+ return $this->_wrap(self::STATUS_OK, array("unread" => Feeds::_get_counters($feed_id, $is_cat)));
} else {
return $this->_wrap(self::STATUS_OK, array("unread" => Feeds::_get_global_unread()));
}
@@ -152,7 +152,7 @@ class API extends Handler {
foreach ($categories->find_many() as $category) {
if ($include_empty || $category->num_feeds > 0 || $category->num_cats > 0) {
- $unread = getFeedUnread($category->id, true);
+ $unread = Feeds::_get_counters($category->id, true);
if ($enable_nested)
$unread += Feeds::_get_cat_children_unread($category->id);
@@ -170,7 +170,7 @@ class API extends Handler {
foreach ([-2,-1,0] as $cat_id) {
if ($include_empty || !$this->_is_cat_empty($cat_id)) {
- $unread = getFeedUnread($cat_id, true);
+ $unread = Feeds::_get_counters($cat_id, true);
if ($unread || !$unread_only) {
array_push($cats, [
@@ -546,7 +546,7 @@ class API extends Handler {
if ($cat_id == -4 || $cat_id == -1) {
foreach ([-1, -2, -3, -4, -6, 0] as $i) {
- $unread = getFeedUnread($i);
+ $unread = Feeds::_get_counters($i);
if ($unread || !$unread_only) {
$title = Feeds::_get_title($i);
@@ -573,7 +573,7 @@ class API extends Handler {
->find_many();
foreach ($categories as $category) {
- $unread = getFeedUnread($category->id, true) +
+ $unread = Feeds::_get_counters($category->id, true) +
Feeds::_get_cat_children_unread($category->id);
if ($unread || !$unread_only) {
@@ -607,7 +607,7 @@ class API extends Handler {
}
foreach ($feeds_obj->find_many() as $feed) {
- $unread = getFeedUnread($feed->id);
+ $unread = Feeds::_get_counters($feed->id);
$has_icon = Feeds::_has_icon($feed->id);
if ($unread || !$unread_only) {
diff --git a/classes/counters.php b/classes/counters.php
index c42e938f8..0814bc441 100644
--- a/classes/counters.php
+++ b/classes/counters.php
@@ -250,7 +250,7 @@ class Counters {
for ($i = 0; $i >= -4; $i--) {
- $count = getFeedUnread($i);
+ $count = Feeds::_get_counters($i);
if ($i == 0 || $i == -1 || $i == -2)
$auxctr = Feeds::_get_counters($i, false);
diff --git a/classes/feeds.php b/classes/feeds.php
index cc78b498c..4f30ad746 100755
--- a/classes/feeds.php
+++ b/classes/feeds.php
@@ -936,7 +936,15 @@ class Feeds extends Handler_Protected {
}
}
- static function _get_counters(int $feed, bool $is_cat = false, bool $unread_only = false, ?int $owner_uid = null): int {
+ /**
+ * @param int|string $feed feed id or tag name
+ * @param bool $is_cat
+ * @param bool $unread_only
+ * @param null|int $owner_uid
+ * @return int
+ * @throws PDOException
+ */
+ static function _get_counters($feed, bool $is_cat = false, bool $unread_only = false, ?int $owner_uid = null): int {
$n_feed = (int) $feed;
$need_entries = false;
@@ -957,6 +965,7 @@ class Feeds extends Handler_Protected {
return self::_get_cat_unread($n_feed, $owner_uid);
} else if ($n_feed == -6) {
return 0;
+ // tags
} else if ($feed != "0" && $n_feed == 0) {
$sth = $pdo->prepare("SELECT SUM((SELECT COUNT(int_id)
@@ -1498,7 +1507,7 @@ class Feeds extends Handler_Protected {
$view_query_part = " ";
} else if ($feed != -1) {
- $unread = getFeedUnread($feed, $cat_view);
+ $unread = Feeds::_get_counters($feed, $cat_view);
if ($cat_view && $feed > 0 && $include_children)
$unread += self::_get_cat_children_unread($feed);
diff --git a/classes/pref/feeds.php b/classes/pref/feeds.php
index d2a30662b..f5b6333a6 100755
--- a/classes/pref/feeds.php
+++ b/classes/pref/feeds.php
@@ -1111,7 +1111,7 @@ class Pref_Feeds extends Handler_Protected {
$title = Feeds::_get_title($feed_id, false);
if ($unread === false)
- $unread = getFeedUnread($feed_id, false);
+ $unread = Feeds::_get_counters($feed_id, false);
return [
'id' => 'FEED:' . $feed_id,