diff options
Diffstat (limited to 'src/mod_private.erl')
-rw-r--r-- | src/mod_private.erl | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/src/mod_private.erl b/src/mod_private.erl index 8b091433f..a4ec97d1d 100644 --- a/src/mod_private.erl +++ b/src/mod_private.erl @@ -14,7 +14,8 @@ -export([start/1, stop/0, - process_local_iq/3]). + process_local_iq/3, + remove_user/1]). -include("ejabberd.hrl"). -include("jlib.hrl"). @@ -95,3 +96,20 @@ get_data(LUser, [El | Els], Res) -> _ -> get_data(LUser, Els, Res) end. + + +remove_user(User) -> + LUser = jlib:nodeprep(User), + F = fun() -> + lists:foreach( + fun({U, _} = Key) -> + if + U == LUser -> + mnesia:delete({private_storage, Key}); + true -> + ok + end + end, mnesia:all_keys(private_storage)) + end, + mnesia:transaction(F). + |