summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--modules/backend-rpc.php6
-rw-r--r--viewfeed.js35
2 files changed, 15 insertions, 26 deletions
diff --git a/modules/backend-rpc.php b/modules/backend-rpc.php
index e027ff39d..bf475e633 100644
--- a/modules/backend-rpc.php
+++ b/modules/backend-rpc.php
@@ -364,6 +364,7 @@
}
if ($subop == "setArticleTags") {
+ header("Content-Type: text/plain");
global $memcache;
@@ -425,9 +426,8 @@
$tags_str = format_tags_string(get_article_tags($link, $id), $id);
- print "<rpc-reply>
- <tags-str id=\"$id\"><![CDATA[$tags_str]]></tags-str>
- </rpc-reply>";
+ print json_encode(array("tags_str" => array("id" => $id,
+ "content" => $tags_str)));
return;
}
diff --git a/viewfeed.js b/viewfeed.js
index 22523fa10..7919fe356 100644
--- a/viewfeed.js
+++ b/viewfeed.js
@@ -1065,15 +1065,6 @@ function catchupSelection() {
}
function editArticleTags(id) {
-/* displayDlg('editArticleTags', id,
- function () {
- $("tags_str").focus();
-
- new Ajax.Autocompleter('tags_str', 'tags_choices',
- "backend.php?op=rpc&subop=completeTags",
- { tokens: ',', paramName: "search" });
- }); */
-
var query = "backend.php?op=dlg&id=editArticleTags&param=" + param_escape(id);
if (dijit.byId("editTagsDlg"))
@@ -1095,21 +1086,19 @@ function editArticleTags(id) {
notify('');
dialog.hide();
- if (transport.responseXML) {
- var tags_str = transport.responseXML.getElementsByTagName("tags-str")[0];
-
- if (tags_str) {
- var id = tags_str.getAttribute("id");
-
- if (id) {
- var tags = $("ATSTR-" + id);
- if (tags) {
- tags.innerHTML = tags_str.firstChild.nodeValue;
- }
-
- cache_invalidate(id);
- }
+ var data = JSON.parse(transport.responseText);
+
+ if (data) {
+ var tags_str = data.tags_str;
+ var id = tags_str.id;
+
+ var tags = $("ATSTR-" + id);
+
+ if (tags) {
+ tags.innerHTML = tags_str.content;
}
+
+ cache_invalidate(id);
}
}});