From 5e25cbcaa939be7245b7703c8e87493d217455ca Mon Sep 17 00:00:00 2001 From: Badlop Date: Sun, 29 Jun 2008 11:34:30 +0000 Subject: * src/mod_pubsub/node_pep.erl: Complain if mod_caps disabled and mod_pubsub has PEP plugin enabled (EJAB-677) SVN Revision: 1386 --- src/mod_pubsub/node_pep.erl | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) (limited to 'src') diff --git a/src/mod_pubsub/node_pep.erl b/src/mod_pubsub/node_pep.erl index 97bf1b2fa..2fceb03ed 100644 --- a/src/mod_pubsub/node_pep.erl +++ b/src/mod_pubsub/node_pep.erl @@ -29,6 +29,7 @@ -module(node_pep). -author('christophe.romain@process-one.net'). +-include("ejabberd.hrl"). -include("pubsub.hrl"). -include("jlib.hrl"). @@ -65,6 +66,7 @@ init(Host, ServerHost, Opts) -> node_default:init(Host, ServerHost, Opts), + complain_if_modcaps_disabled(ServerHost), ok. terminate(Host, ServerHost) -> @@ -208,3 +210,25 @@ set_item(Item) -> get_item_name(Host, Node, Id) -> node_default:get_item_name(Host, Node, Id). + + +%%% +%%% Internal +%%% + +%% @doc Check mod_caps is enabled, otherwise show warning. +%% The PEP plugin for mod_pubsub requires mod_caps to be enabled in the host. +%% Check that the mod_caps module is enabled in that Jabber Host +%% If not, show a warning message in the ejabberd log file. +complain_if_modcaps_disabled(ServerHost) -> + Modules = ejabberd_config:get_local_option({modules, ServerHost}), + ModCaps = [mod_caps_enabled || {mod_caps, _Opts} <- Modules], + case ModCaps of + [] -> + ?WARNING_MSG("The PEP plugin is enabled in mod_pubsub of host ~p. " + "This plugin requires mod_caps to be enabled, " + "but it isn't.", [ServerHost]); + _ -> + ok + end. + -- cgit v1.2.3