diff options
Diffstat (limited to 'src/mod_vcard.erl')
-rw-r--r-- | src/mod_vcard.erl | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/src/mod_vcard.erl b/src/mod_vcard.erl index cba7ee06e..b41b21011 100644 --- a/src/mod_vcard.erl +++ b/src/mod_vcard.erl @@ -15,7 +15,8 @@ -export([start/1, init/1, process_local_iq/3, process_sm_iq/3, - reindex_vcards/0]). + reindex_vcards/0, + remove_user/1]). -include("ejabberd.hrl"). -include("namespaces.hrl"). @@ -478,3 +479,16 @@ reindex_vcards() -> mnesia:transaction(F). +remove_user(User) -> + LUser = jlib:tolower(User), + F = fun() -> + mnesia:delete({vcard, LUser}), + lists:foreach(fun(R) -> + mnesia:delete_object(R) + end, + mnesia:index_read(vcard_search, + LUser, + #vcard_search.luser)) + end, + mnesia:transaction(F). + |