summaryrefslogtreecommitdiff
path: root/src/ext_mod.erl
diff options
context:
space:
mode:
authorBadlop <badlop@process-one.net>2022-08-05 16:10:25 +0200
committerBadlop <badlop@process-one.net>2022-08-05 16:15:05 +0200
commit7d8fa3c88075b598a0bf636285c736bc94fc8266 (patch)
treed2819fda12950df0c1ced1b117745f8055a983bb /src/ext_mod.erl
parentext_mod: Handle correctly when COMMIT.json not found (diff)
ext_mod: Support managing remote nodes in the cluster
Diffstat (limited to '')
-rw-r--r--src/ext_mod.erl13
1 files changed, 8 insertions, 5 deletions
diff --git a/src/ext_mod.erl b/src/ext_mod.erl
index 8ff4015d..3b9db294 100644
--- a/src/ext_mod.erl
+++ b/src/ext_mod.erl
@@ -36,7 +36,7 @@
config_dir/0, get_commands_spec/0]).
-export([modules_configs/0, module_ebin_dir/1]).
-export([compile_erlang_file/2, compile_elixir_file/2]).
--export([web_menu_node/3, web_page_node/5]).
+-export([web_menu_node/3, web_page_node/5, get_page/3]).
%% gen_server callbacks
-export([init/1, handle_call/3, handle_cast/2, handle_info/2,
@@ -858,6 +858,12 @@ web_menu_node(Acc, _Node, Lang) ->
Acc ++ [{<<"contrib">>, translate:translate(Lang, ?T("Contrib Modules"))}].
web_page_node(_, Node, [<<"contrib">>], Query, Lang) ->
+ Res = rpc:call(Node, ?MODULE, get_page, [Node, Query, Lang]),
+ {stop, Res};
+web_page_node(Acc, _, _, _, _) ->
+ Acc.
+
+get_page(Node, Query, Lang) ->
QueryRes = list_modules_parse_query(Query),
Title = ?H1GL(translate:translate(Lang, ?T("Contrib Modules")),
<<"../../developer/extending-ejabberd/modules/#ejabberd-contrib">>,
@@ -867,10 +873,7 @@ web_page_node(_, Node, [<<"contrib">>], Query, Lang) ->
ok -> [?XREST(?T("Submitted"))];
nothing -> []
end,
- Res = Title ++ Result ++ Contents,
- {stop, Res};
-web_page_node(Acc, _, _, _, _) ->
- Acc.
+ Title ++ Result ++ Contents.
get_module_home(Module, Attrs) ->
case element(2, lists:keyfind(home, 1, Attrs)) of