From: Andrew Dolgov Date: Mon, 1 Apr 2013 10:04:56 +0000 (+0400) Subject: api: do not return Labels category when there are no labels (closes #651) X-Git-Tag: 1.7.6~72 X-Git-Url: https://git.wh0rd.org/?a=commitdiff_plain;h=c0a08063d679042d5616127f39632241d73604fe;p=tt-rss.git api: do not return Labels category when there are no labels (closes #651) --- diff --git a/classes/api.php b/classes/api.php index 0e56e58f..d3b61c15 100644 --- a/classes/api.php +++ b/classes/api.php @@ -165,12 +165,14 @@ class API extends Handler { } foreach (array(-2,-1,0) as $cat_id) { - $unread = getFeedUnread($this->link, $cat_id, true); + if ($include_empty || !$this->isCategoryEmpty($cat_id)) { + $unread = getFeedUnread($this->link, $cat_id, true); - if ($unread || !$unread_only) { - array_push($cats, array("id" => $cat_id, - "title" => getCategoryTitle($this->link, $cat_id), - "unread" => $unread)); + if ($unread || !$unread_only) { + array_push($cats, array("id" => $cat_id, + "title" => getCategoryTitle($this->link, $cat_id), + "unread" => $unread)); + } } } @@ -724,6 +726,22 @@ class API extends Handler { } } + + // only works for labels for the time being + private function isCategoryEmpty($id) { + + if ($id == -2) { + $result = db_query($this->link, "SELECT COUNT(*) AS count FROM ttrss_labels2 + WHERE owner_uid = " . $_SESSION["uid"]); + + return db_fetch_result($result, 0, "count") == 0; + + } + + return false; + } + + } ?>