parameters: dojo.objectToQuery(this.attr('value')),
onComplete: function(transport) {
try {
+
+ var reply = JSON.parse(transport.responseText);
- if (!transport.responseXML) {
- console.log(transport.responseText);
- alert(__("Server error while trying to subscribe to specified feed."));
- return;
- }
-
- var result = transport.responseXML.getElementsByTagName('result')[0];
- var rc = parseInt(result.getAttribute('code'));
+ var rc = parseInt(reply['result']);
notify('');
parameters: 'op=rpc&subop=extractfeedurls&url=' + param_escape(feed_url),
onComplete: function(transport, dialog, feed_url) {
- if (!transport.responseXML) {
- console.log(transport.responseText);
- alert(__("Server error while trying to query feed URLs."));
- return;
- }
-
notify('');
- var result = transport.responseXML.getElementsByTagName('urls')[0];
- var feeds = JSON.parse(result.firstChild.nodeValue);
+ var reply = JSON.parse(transport.responseText);
+
+ var feeds = reply['urls'];
console.log(transport.responseText);
if ($subop == "remarchive") {
$ids = split(",", db_escape_string($_REQUEST["ids"]));
- print "<rpc-reply>";
-
foreach ($ids as $id) {
$result = db_query($link, "DELETE FROM ttrss_archived_feeds WHERE
(SELECT COUNT(*) FROM ttrss_user_entries
id = '$id' AND owner_uid = ".$_SESSION["uid"]);
$rc = db_affected_rows($link, $result);
-
- print "<feed id='$id' rc='$rc'/>";
-
}
- print "</rpc-reply>";
-
return;
}
if ($subop == "addfeed") {
+ header("Content-Type: text/plain");
$feed = db_escape_string($_REQUEST['feed']);
$cat = db_escape_string($_REQUEST['cat']);
$rc = subscribe_to_feed($link, $feed, $cat, $login, $pass);
- print "<rpc-reply>";
- print "<result code='$rc'/>";
- print "</rpc-reply>";
+ print json_encode(array("result" => $rc));
return;
}
if ($subop == "extractfeedurls") {
- print "<rpc-reply>";
+ header("Content-Type: text/plain");
$urls = get_feeds_from_html($_REQUEST['url']);
- print "<urls><![CDATA[" . json_encode($urls) . "]]></urls>";
- print "</rpc-reply>";
+ print json_encode(array("urls" => $urls));
return;
}