summaryrefslogtreecommitdiff
path: root/src/mod_pubsub/mod_pubsub.erl
diff options
context:
space:
mode:
Diffstat (limited to 'src/mod_pubsub/mod_pubsub.erl')
-rw-r--r--src/mod_pubsub/mod_pubsub.erl12
1 files changed, 11 insertions, 1 deletions
diff --git a/src/mod_pubsub/mod_pubsub.erl b/src/mod_pubsub/mod_pubsub.erl
index e55bf607..a3d1ef19 100644
--- a/src/mod_pubsub/mod_pubsub.erl
+++ b/src/mod_pubsub/mod_pubsub.erl
@@ -2464,7 +2464,17 @@ read_sub(Subscriber, NodeID, SubID, Lang) ->
{error, notfound} ->
{error, ?ERR_EXTENDED(?ERR_NOT_ACCEPTABLE, "invalid-subid")};
{result, #pubsub_subscription{options = Options}} ->
- pubsub_subscription:get_options_xform(Lang, Options)
+ {result, XdataEl} = pubsub_subscription:get_options_xform(Lang, Options),
+ [N] = mnesia:dirty_match_object({pubsub_node,'_',NodeID,'_','_','_','_'}),
+ {_, Node} = N#pubsub_node.nodeid,
+ NodeIDStr = node_to_string(Node),
+ SubscriberStr = jlib:jid_to_string(Subscriber),
+ OptionsEl = {xmlelement, "options", [{"node", NodeIDStr},
+ {"jid", SubscriberStr},
+ {"subid", SubID}],
+ [XdataEl]},
+ PubsubEl = {xmlelement, "pubsub", [{"xmlns", ?NS_PUBSUB}], [OptionsEl]},
+ {result, PubsubEl}
end.
set_options(Host, Node, JID, SubID, Configuration) ->