diff options
author | Christoph Scholz <christoph.scholz@gmail.com> | 2019-02-23 22:48:15 +0100 |
---|---|---|
committer | Christoph Scholz <christoph.scholz@gmail.com> | 2019-02-23 22:48:15 +0100 |
commit | dd7754bc5912f8ecba4c2f55ad3a019d958d8f47 (patch) | |
tree | dde0044a5c6a999e656b8c71c18203c619ee6730 /src/mod_muc_admin.erl | |
parent | Provide source code filename in *.po, so editors can show the source code (diff) |
only destroy rooms if mam is enabled
when using ejabberdctl rooms_empty_list or rooms_empty_destroy only
select rooms that are have mam enabled. Otherwise you may accidently
destroy rooms which seem to be unsused due to archive being empty
Diffstat (limited to 'src/mod_muc_admin.erl')
-rw-r--r-- | src/mod_muc_admin.erl | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/src/mod_muc_admin.erl b/src/mod_muc_admin.erl index 494a4ef3f..4bb0759eb 100644 --- a/src/mod_muc_admin.erl +++ b/src/mod_muc_admin.erl @@ -840,10 +840,16 @@ decide_room(unused, {_Room_name, _Host, Room_pid}, ServerHost, Last_allowed) -> end; decide_room(empty, {Room_name, Host, _Room_pid}, ServerHost, _Last_allowed) -> case gen_mod:is_loaded(ServerHost, mod_mam) of - true -> - mod_mam:is_empty_for_room(ServerHost, Room_name, Host); - _ -> - false + true -> + Room_options = get_room_options(Room_name, Host), + case lists:keyfind(<<"mam">>, 1, Room_options) of + {<<"mam">>, <<"true">>} -> + mod_mam:is_empty_for_room(ServerHost, Room_name, Host); + _ -> + false + end; + _ -> + false end. seconds_to_days(S) -> |