Software /
code /
prosody-modules
Comparison
mod_mam_muc/mod_mam_muc.lua @ 1146:9fa89dc7a86f
mod_mam_muc: Search the rooms archive correctly (copypaste error from mod_mam)
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Sat, 10 Aug 2013 21:37:35 +0200 |
parent | 1145:5a00f9bec6e7 |
child | 1275:50c427295767 |
comparison
equal
deleted
inserted
replaced
1145:5a00f9bec6e7 | 1146:9fa89dc7a86f |
---|---|
59 | 59 |
60 -- Handle archive queries | 60 -- Handle archive queries |
61 module:hook("iq-get/bare/"..xmlns_mam..":query", function(event) | 61 module:hook("iq-get/bare/"..xmlns_mam..":query", function(event) |
62 local origin, stanza = event.origin, event.stanza; | 62 local origin, stanza = event.origin, event.stanza; |
63 local room = stanza.attr.to; | 63 local room = stanza.attr.to; |
64 local room_node = jid_split(room); | |
64 local query = stanza.tags[1]; | 65 local query = stanza.tags[1]; |
65 | 66 |
66 local room_obj = rooms[room]; | 67 local room_obj = rooms[room]; |
67 if not room_obj then | 68 if not room_obj then |
68 return origin.send(st.error_reply(stanza, "cancel", "item-not-found")) | 69 return origin.send(st.error_reply(stanza, "cancel", "item-not-found")) |
99 | 100 |
100 local before, after = qset and qset.before, qset and qset.after; | 101 local before, after = qset and qset.before, qset and qset.after; |
101 if type(before) ~= "string" then before = nil; end | 102 if type(before) ~= "string" then before = nil; end |
102 | 103 |
103 -- Load all the data! | 104 -- Load all the data! |
104 local data, err = archive:find(origin.username, { | 105 local data, err = archive:find(room_node, { |
105 start = qstart; ["end"] = qend; -- Time range | 106 start = qstart; ["end"] = qend; -- Time range |
106 limit = qmax; | 107 limit = qmax; |
107 before = before; after = after; | 108 before = before; after = after; |
108 reverse = reverse; | 109 reverse = reverse; |
109 total = true; | 110 total = true; |