diff options
author | Jeff Mitchell <jeff@jefferai.org> | 2010-05-28 18:01:53 -0400 |
---|---|---|
committer | Jeff Mitchell <jeff@jefferai.org> | 2010-05-28 18:01:53 -0400 |
commit | 6c185404754074da74128402803511347bcbc796 (patch) | |
tree | 3ed3862ac859d832708a8b8660dfef668810acfa /plugins/mod_groups.lua | |
parent | 79df72e1a67a9566c952414a2a1dc9cded7ed625 (diff) | |
download | prosody-6c185404754074da74128402803511347bcbc796.tar.gz prosody-6c185404754074da74128402803511347bcbc796.zip |
Add the ability to have names in group files, by putting them with an = sign after the jid:
myname@mydomain.com=My Name
This is then passed on to rosters.
Diffstat (limited to 'plugins/mod_groups.lua')
-rw-r--r-- | plugins/mod_groups.lua | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/plugins/mod_groups.lua b/plugins/mod_groups.lua index 5f821cbc..7a876f1d 100644 --- a/plugins/mod_groups.lua +++ b/plugins/mod_groups.lua @@ -29,6 +29,9 @@ function inject_roster_contacts(username, host, roster) if jid ~= bare_jid then if not roster[jid] then roster[jid] = {}; end roster[jid].subscription = "both"; + if groups[group_name][jid] then + roster[jid].name = groups[group_name][jid]; + end if not roster[jid].groups then roster[jid].groups = { [group_name] = true }; end @@ -100,10 +103,13 @@ function module.load() groups[curr_group] = groups[curr_group] or {}; else -- Add JID - local jid = jid_prep(line:match("%S+")); + local entryjid, name = line:match("([^=]*)=?(.*)"); + module:log("debug", "entryjid = '%s', name = '%s'", entryjid, name); + local jid; + jid = jid_prep(entryjid:match("%S+")); if jid then module:log("debug", "New member of %s: %s", tostring(curr_group), tostring(jid)); - groups[curr_group][jid] = true; + groups[curr_group][jid] = name or false; members[jid] = members[jid] or {}; members[jid][#members[jid]+1] = curr_group; end |