summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Dolgov <[email protected]>2013-03-28 11:04:15 +0400
committerAndrew Dolgov <[email protected]>2013-03-28 11:04:27 +0400
commit0bb5833beb77e845c7a16b72006276b5f5e7d84b (patch)
treeb3e02147667b0abbd98abdbe065cccf9581f4033
parentf9432f2630e9340cd6a45842b453d3bf78ace0f7 (diff)
api: add getFeedTree
-rw-r--r--api/index.php2
-rw-r--r--classes/api.php14
-rw-r--r--classes/pref/feeds.php7
3 files changed, 21 insertions, 2 deletions
diff --git a/api/index.php b/api/index.php
index a1143a1dc..50703175b 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 2b9c3a148..1efa3865f 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 d2e69c502..cd208335b 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() {