mirror of
https://github.com/processone/ejabberd.git
synced 2024-11-22 16:20:52 +01:00
* src/ejabberd_config.erl: Added possibility for appending values
to config options (thanks to Badlop) * doc/guide.tex: Updated SVN Revision: 845
This commit is contained in:
parent
bdb2c6820f
commit
27a826cfe8
@ -1,3 +1,9 @@
|
|||||||
|
2007-07-31 Alexey Shchepin <alexey@sevcom.net>
|
||||||
|
|
||||||
|
* src/ejabberd_config.erl: Added possibility for appending values
|
||||||
|
to config options (thanks to Badlop)
|
||||||
|
* doc/guide.tex: Updated
|
||||||
|
|
||||||
2007-07-30 Mickael Remond <mickael.remond@process-one.net>
|
2007-07-30 Mickael Remond <mickael.remond@process-one.net>
|
||||||
|
|
||||||
* src/xml.erl: Better escaping management with CDATA. We only add
|
* src/xml.erl: Better escaping management with CDATA. We only add
|
||||||
|
@ -740,6 +740,25 @@ Examples:
|
|||||||
\end{verbatim}
|
\end{verbatim}
|
||||||
\end{itemize}
|
\end{itemize}
|
||||||
|
|
||||||
|
If you want to define more \term{registration\_watchers} or \term{modules} for a virtual host and add them to the defined for all the Jabber server, instead of defining the option name simply as \term{modules} use this: \term{\{add, modules\}}.
|
||||||
|
|
||||||
|
Examples:
|
||||||
|
\begin{itemize}
|
||||||
|
\item If you defined two global watchers but on a certain virtual host only Ann should be watcher:
|
||||||
|
\begin{verbatim}
|
||||||
|
{registration_watchers, ["tom@example.com", "moe@example.net"]}.
|
||||||
|
|
||||||
|
{host_config, "example.org", [{registration_watchers, ["ann@example.net"]}]}.
|
||||||
|
\end{verbatim}
|
||||||
|
|
||||||
|
\item If you prefer all three to be registration watchers on that virtual host:
|
||||||
|
\begin{verbatim}
|
||||||
|
{registration_watchers, ["tom@example.com", "moe@example.net"]}.
|
||||||
|
|
||||||
|
{host_config, "example.org", [{{add, registration_watchers}, ["ann@example.net"]}]}.
|
||||||
|
\end{verbatim}
|
||||||
|
\end{itemize}
|
||||||
|
|
||||||
\subsubsection{SASL Anonymous and Anonymous Login}
|
\subsubsection{SASL Anonymous and Anonymous Login}
|
||||||
\label{saslanonymous}
|
\label{saslanonymous}
|
||||||
\ind{sasl anonymous}\ind{anonymous login}
|
\ind{sasl anonymous}\ind{anonymous login}
|
||||||
|
@ -3,12 +3,10 @@
|
|||||||
%%% Author : Alexey Shchepin <alexey@sevcom.net>
|
%%% Author : Alexey Shchepin <alexey@sevcom.net>
|
||||||
%%% Purpose : Load config file
|
%%% Purpose : Load config file
|
||||||
%%% Created : 14 Dec 2002 by Alexey Shchepin <alexey@sevcom.net>
|
%%% Created : 14 Dec 2002 by Alexey Shchepin <alexey@sevcom.net>
|
||||||
%%% Id : $Id$
|
|
||||||
%%%----------------------------------------------------------------------
|
%%%----------------------------------------------------------------------
|
||||||
|
|
||||||
-module(ejabberd_config).
|
-module(ejabberd_config).
|
||||||
-author('alexey@sevcom.net').
|
-author('alexey@sevcom.net').
|
||||||
-vsn('$Revision$ ').
|
|
||||||
|
|
||||||
-export([start/0, load_file/1,
|
-export([start/0, load_file/1,
|
||||||
add_global_option/2, add_local_option/2,
|
add_global_option/2, add_local_option/2,
|
||||||
@ -188,8 +186,26 @@ add_option(Opt, Val, State) ->
|
|||||||
State#state{opts = [#config{key = Opt, value = Val} |
|
State#state{opts = [#config{key = Opt, value = Val} |
|
||||||
State#state.opts]};
|
State#state.opts]};
|
||||||
local_config ->
|
local_config ->
|
||||||
State#state{opts = [#local_config{key = Opt, value = Val} |
|
case Opt of
|
||||||
State#state.opts]}
|
{{add, OptName}, Host} ->
|
||||||
|
State#state{opts = compact({OptName, Host}, Val,
|
||||||
|
State#state.opts, [])};
|
||||||
|
_ ->
|
||||||
|
State#state{opts = [#local_config{key = Opt, value = Val} |
|
||||||
|
State#state.opts]}
|
||||||
|
end
|
||||||
|
end.
|
||||||
|
|
||||||
|
compact(Opt, Val, [], Os) ->
|
||||||
|
[#local_config{key = Opt, value = Val}] ++ Os;
|
||||||
|
compact(Opt, Val, [O | Os1], Os2) ->
|
||||||
|
case O#local_config.key of
|
||||||
|
Opt ->
|
||||||
|
Os2 ++ [#local_config{key = Opt,
|
||||||
|
value = Val++O#local_config.value}
|
||||||
|
] ++ Os1;
|
||||||
|
_ ->
|
||||||
|
compact(Opt, Val, Os1, Os2++[O])
|
||||||
end.
|
end.
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user