mirror of
https://github.com/processone/ejabberd.git
synced 2024-11-20 16:15:59 +01:00
Handle case when mod_private is not enabled (#4201)
This commit is contained in:
parent
5870e2e378
commit
395a73bbe0
@ -1126,7 +1126,14 @@ build_pass_els(#scram{storedkey = StoredKey,
|
|||||||
%% Get ban details
|
%% Get ban details
|
||||||
|
|
||||||
get_ban_details(User, Host) ->
|
get_ban_details(User, Host) ->
|
||||||
[El] = private_get2(User, Host, <<"banned">>, <<"jabber:ejabberd:banned">>),
|
case private_get2(User, Host, <<"banned">>, <<"jabber:ejabberd:banned">>) of
|
||||||
|
[El] ->
|
||||||
|
get_ban_details(User, Host, El);
|
||||||
|
[] ->
|
||||||
|
[]
|
||||||
|
end.
|
||||||
|
|
||||||
|
get_ban_details(User, Host, El) ->
|
||||||
Reason = fxml:get_subtag_cdata(El, <<"reason">>),
|
Reason = fxml:get_subtag_cdata(El, <<"reason">>),
|
||||||
LastDate = fxml:get_subtag_cdata(El, <<"lastdate">>),
|
LastDate = fxml:get_subtag_cdata(El, <<"lastdate">>),
|
||||||
LastReason = fxml:get_subtag_cdata(El, <<"lastreason">>),
|
LastReason = fxml:get_subtag_cdata(El, <<"lastreason">>),
|
||||||
@ -1694,6 +1701,12 @@ private_get(Username, Host, Element, Ns) ->
|
|||||||
binary_to_list(fxml:element_to_binary(xmpp:encode(#private{sub_els = Els}))).
|
binary_to_list(fxml:element_to_binary(xmpp:encode(#private{sub_els = Els}))).
|
||||||
|
|
||||||
private_get2(Username, Host, Element, Ns) ->
|
private_get2(Username, Host, Element, Ns) ->
|
||||||
|
case gen_mod:is_loaded(Host, mod_private) of
|
||||||
|
true -> private_get3(Username, Host, Element, Ns);
|
||||||
|
false -> []
|
||||||
|
end.
|
||||||
|
|
||||||
|
private_get3(Username, Host, Element, Ns) ->
|
||||||
ElementXml = #xmlel{name = Element, attrs = [{<<"xmlns">>, Ns}]},
|
ElementXml = #xmlel{name = Element, attrs = [{<<"xmlns">>, Ns}]},
|
||||||
mod_private:get_data(jid:nodeprep(Username), jid:nameprep(Host),
|
mod_private:get_data(jid:nodeprep(Username), jid:nameprep(Host),
|
||||||
[{Ns, ElementXml}]).
|
[{Ns, ElementXml}]).
|
||||||
|
Loading…
Reference in New Issue
Block a user