aboutsummaryrefslogtreecommitdiffstats
path: root/plugins/adhoc/adhoc.lib.lua
diff options
context:
space:
mode:
authorMatthew Wild <mwild1@gmail.com>2012-04-24 21:59:20 +0100
committerMatthew Wild <mwild1@gmail.com>2012-04-24 21:59:20 +0100
commit8f062c3d98b1e3c6a5b56cdb5ad4ea0a326a513d (patch)
treefe8c013599dd847f7365cb1adab80ab8fe846de5 /plugins/adhoc/adhoc.lib.lua
parentfc3a3c0b0c3a37017bc500e58b8dbdd4b39627c9 (diff)
parentb23e6a2ef012c2d2568766ef0f41aaadf3cac826 (diff)
downloadprosody-8f062c3d98b1e3c6a5b56cdb5ad4ea0a326a513d.tar.gz
prosody-8f062c3d98b1e3c6a5b56cdb5ad4ea0a326a513d.zip
Merge timber->trunk - thanks everyone!
Diffstat (limited to 'plugins/adhoc/adhoc.lib.lua')
-rw-r--r--plugins/adhoc/adhoc.lib.lua11
1 files changed, 9 insertions, 2 deletions
diff --git a/plugins/adhoc/adhoc.lib.lua b/plugins/adhoc/adhoc.lib.lua
index 0cb4efe1..57059b3f 100644
--- a/plugins/adhoc/adhoc.lib.lua
+++ b/plugins/adhoc/adhoc.lib.lua
@@ -25,6 +25,7 @@ function _M.new(name, node, handler, permission)
end
function _M.handle_cmd(command, origin, stanza)
+ local cmdtag, actions;
local sessionid = stanza.tags[1].attr.sessionid or uuid.generate();
local dataIn = {};
dataIn.to = stanza.attr.to;
@@ -58,7 +59,7 @@ function _M.handle_cmd(command, origin, stanza)
elseif name == "error" then
cmdtag:tag("note", {type="error"}):text(content.message):up();
elseif name =="actions" then
- local actions = st.stanza("actions");
+ actions = st.stanza("actions");
for _, action in ipairs(content) do
if (action == "prev") or (action == "next") or (action == "complete") then
actions:tag(action):up();
@@ -67,7 +68,6 @@ function _M.handle_cmd(command, origin, stanza)
'" at node "'..command.node..'" provided an invalid action "'..action..'"');
end
end
- cmdtag:add_child(actions);
elseif name == "form" then
cmdtag:add_child((content.layout or content):form(content.values));
elseif name == "result" then
@@ -76,6 +76,13 @@ function _M.handle_cmd(command, origin, stanza)
cmdtag:add_child(content);
end
end
+
+ if not actions then
+ actions = st.stanza("actions");
+ actions:tag("complete"):up();
+ end
+ cmdtag:add_child(actions);
+
stanza:add_child(cmdtag);
origin.send(stanza);