From: Andrew Dolgov Date: Thu, 28 Mar 2013 07:04:15 +0000 (+0400) Subject: api: add getFeedTree X-Git-Tag: 1.7.6~212 X-Git-Url: https://git.wh0rd.org/?a=commitdiff_plain;h=0bb5833beb77e845c7a16b72006276b5f5e7d84b;p=tt-rss.git api: add getFeedTree --- diff --git a/api/index.php b/api/index.php index a1143a1d..50703175 100644 --- a/api/index.php +++ b/api/index.php @@ -49,6 +49,8 @@ if ($_REQUEST["sid"]) { session_id($_REQUEST["sid"]); @session_start(); + } else if (defined('_API_DEBUG_HTTP_ENABLED')) { + @session_start(); } if (!init_connection($link)) return; diff --git a/classes/api.php b/classes/api.php index 2b9c3a14..1efa3865 100644 --- a/classes/api.php +++ b/classes/api.php @@ -704,6 +704,20 @@ class API extends Handler { } } + function getFeedTree() { + $pf = new Pref_Feeds($this->link, $_REQUEST); + + $_REQUEST['mode'] = 2; + + if ($pf){ + $data = $pf->makefeedtree(); + print $this->wrap(self::STATUS_OK, array("categories" => $data)); + } else { + print $this->wrap(self::STATUS_ERR, array("error" => + 'UNABLE_TO_INSTANTIATE_OBJECT')); + } + + } } ?> diff --git a/classes/pref/feeds.php b/classes/pref/feeds.php index d2e69c50..cd208335 100644 --- a/classes/pref/feeds.php +++ b/classes/pref/feeds.php @@ -87,6 +87,10 @@ class Pref_Feeds extends Handler_Protected { } function getfeedtree() { + print json_encode($this->makefeedtree()); + } + + function makefeedtree() { if ($_REQUEST['mode'] != 2) $search = $_SESSION["prefs_feed_search"]; @@ -284,8 +288,7 @@ class Pref_Feeds extends Handler_Protected { $fl['items'] =& $root['items']; } - print json_encode($fl); - return; + return $fl; } function catsortreset() {