summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-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() {