mirror of
https://github.com/processone/ejabberd.git
synced 2024-12-24 17:29:28 +01:00
Handle ~ control sequence in text of mod_muc_log (EJAB-1639)
This commit is contained in:
parent
2639d262f1
commit
3025bfd3ff
@ -54,6 +54,7 @@
|
||||
-define(PROCNAME, ejabberd_mod_muc_log).
|
||||
-record(room, {jid, title, subject, subject_author, config}).
|
||||
|
||||
-define(PLAINTEXT_CO, <<"ZZCZZ">>).
|
||||
-define(PLAINTEXT_IN, <<"ZZIZZ">>).
|
||||
-define(PLAINTEXT_OUT, <<"ZZOZZ">>).
|
||||
|
||||
@ -497,7 +498,7 @@ add_message_to_log(Nick1, Message, RoomJID, Opts,
|
||||
{_, _, Microsecs} = Now,
|
||||
STimeUnique = io_lib:format("~s.~w",
|
||||
[STime, Microsecs]),
|
||||
fw(F,
|
||||
catch fw(F,
|
||||
list_to_binary(
|
||||
io_lib:format("<a id=\"~s\" name=\"~s\" href=\"#~s\" "
|
||||
"class=\"ts\">[~s]</a> ",
|
||||
@ -765,7 +766,8 @@ fw(F, S, O, FileFormat) ->
|
||||
html ->
|
||||
S1;
|
||||
plaintext ->
|
||||
S1x = ejabberd_regexp:greplace(S1, <<"<[^<^>]*>">>, <<"">>),
|
||||
S1a = ejabberd_regexp:greplace(S1, <<"<[^<^>]*>">>, <<"">>),
|
||||
S1x = ejabberd_regexp:greplace(S1a, ?PLAINTEXT_CO, <<"~~">>),
|
||||
S1y = ejabberd_regexp:greplace(S1x, ?PLAINTEXT_IN, <<"<">>),
|
||||
ejabberd_regexp:greplace(S1y, ?PLAINTEXT_OUT, <<">">>)
|
||||
end,
|
||||
@ -967,13 +969,15 @@ put_room_occupants(F, RoomOccupants, Lang,
|
||||
|
||||
htmlize(S1) -> htmlize(S1, html).
|
||||
|
||||
htmlize(S1, plaintext) -> S1;
|
||||
htmlize(S1, plaintext) ->
|
||||
ejabberd_regexp:greplace(S1, <<"~">>, ?PLAINTEXT_CO);
|
||||
htmlize(S1, FileFormat) ->
|
||||
htmlize(S1, false, FileFormat).
|
||||
|
||||
%% The NoFollow parameter tell if the spam prevention should be applied to the link found
|
||||
%% true means 'apply nofollow on links'.
|
||||
htmlize(S1, _NoFollow, plaintext) ->
|
||||
htmlize(S0, _NoFollow, plaintext) ->
|
||||
S1 = ejabberd_regexp:greplace(S0, <<"~">>, ?PLAINTEXT_CO),
|
||||
S1x = ejabberd_regexp:replace(S1, <<"<">>, ?PLAINTEXT_IN),
|
||||
ejabberd_regexp:replace(S1x, <<">">>, ?PLAINTEXT_OUT);
|
||||
htmlize(S1, NoFollow, _FileFormat) ->
|
||||
|
Loading…
Reference in New Issue
Block a user