Software /
code /
prosody
Diff
plugins/mod_roster.lua @ 110:bb5ac5976a97
Fixed: Roster support
author | Waqas Hussain <waqas20@gmail.com> |
---|---|
date | Wed, 22 Oct 2008 21:20:07 +0500 |
parent | 108:1d79da482c5d |
child | 114:bed2a8508cf5 |
line wrap: on
line diff
--- a/plugins/mod_roster.lua Wed Oct 22 21:18:50 2008 +0500 +++ b/plugins/mod_roster.lua Wed Oct 22 21:20:07 2008 +0500 @@ -6,6 +6,7 @@ local t_concat = table.concat; local rm_remove_from_roster = require "core.rostermanager".remove_from_roster; +local rm_add_to_roster = require "core.rostermanager".add_to_roster; local rm_roster_push = require "core.rostermanager".roster_push; add_iq_handler("c2s", "jabber:iq:roster", @@ -15,15 +16,14 @@ local roster = st.reply(stanza) :query("jabber:iq:roster"); for jid in pairs(session.roster) do - local item = st.stanza("item", { + roster:tag("item", { jid = jid, subscription = session.roster[jid].subscription, name = session.roster[jid].name, }); for group in pairs(session.roster[jid].groups) do - item:tag("group"):text(group):up(); + roster:tag("group"):text(group):up(); end - roster:add_child(item); end send(session, roster); return true; @@ -52,7 +52,7 @@ local r_item = {name = item.attr.name, groups = {}}; if r_item.name == "" then r_item.name = nil; end if session.roster[item.attr.jid] then - r_item.subscription = session.roster[item.attr.jid]; + r_item.subscription = session.roster[item.attr.jid].subscription; else r_item.subscription = "none"; end