equal
deleted
inserted
replaced
16 |
16 |
17 local hosts = hosts; |
17 local hosts = hosts; |
18 local bare_sessions = bare_sessions; |
18 local bare_sessions = bare_sessions; |
19 |
19 |
20 local datamanager = require "util.datamanager" |
20 local datamanager = require "util.datamanager" |
|
21 local um_user_exists = require "core.usermanager".user_exists; |
21 local st = require "util.stanza"; |
22 local st = require "util.stanza"; |
22 |
23 |
23 module "rostermanager" |
24 module "rostermanager" |
24 |
25 |
25 function add_to_roster(session, jid, item) |
26 function add_to_roster(session, jid, item) |
103 end |
104 end |
104 return roster, err; |
105 return roster, err; |
105 end |
106 end |
106 |
107 |
107 function save_roster(username, host, roster) |
108 function save_roster(username, host, roster) |
|
109 if not um_user_exists(username, host) then |
|
110 log("debug", "not saving roster for %s@%s: the user doesn't exist", username, host); |
|
111 return nil; |
|
112 end |
|
113 |
108 log("debug", "save_roster: saving roster for %s@%s", username, host); |
114 log("debug", "save_roster: saving roster for %s@%s", username, host); |
109 if not roster then |
115 if not roster then |
110 roster = hosts[host] and hosts[host].sessions[username] and hosts[host].sessions[username].roster; |
116 roster = hosts[host] and hosts[host].sessions[username] and hosts[host].sessions[username].roster; |
111 --if not roster then |
117 --if not roster then |
112 -- --roster = load_roster(username, host); |
118 -- --roster = load_roster(username, host); |