diff options
Diffstat (limited to 'src/mod_shared_roster.erl')
-rw-r--r-- | src/mod_shared_roster.erl | 45 |
1 files changed, 24 insertions, 21 deletions
diff --git a/src/mod_shared_roster.erl b/src/mod_shared_roster.erl index d80258db7..47dffca80 100644 --- a/src/mod_shared_roster.erl +++ b/src/mod_shared_roster.erl @@ -53,6 +53,8 @@ -include("mod_shared_roster.hrl"). +-include("translate.hrl"). + -type group_options() :: [{atom(), any()}]. -callback init(binary(), gen_mod:opts()) -> any(). -callback import(binary(), binary(), [binary()]) -> ok. @@ -71,7 +73,7 @@ -callback remove_user_from_group(binary(), {binary(), binary()}, binary()) -> {atomic, any()}. start(Host, Opts) -> - Mod = gen_mod:db_mod(Host, Opts, ?MODULE), + Mod = gen_mod:db_mod(Opts, ?MODULE), Mod:init(Host, Opts), ejabberd_hooks:add(webadmin_menu_host, Host, ?MODULE, webadmin_menu, 70), @@ -122,8 +124,8 @@ stop(Host) -> 50). reload(Host, NewOpts, OldOpts) -> - NewMod = gen_mod:db_mod(Host, NewOpts, ?MODULE), - OldMod = gen_mod:db_mod(Host, OldOpts, ?MODULE), + NewMod = gen_mod:db_mod(NewOpts, ?MODULE), + OldMod = gen_mod:db_mod(OldOpts, ?MODULE), if NewMod /= OldMod -> NewMod:init(Host, NewOpts); true -> @@ -662,7 +664,7 @@ push_user_to_group(LUser, LServer, Group, Host, when (U == LUser) and (S == LServer) -> ok; ({U, S}) -> - case lists:member(S, ejabberd_config:get_myhosts()) of + case lists:member(S, ejabberd_option:hosts()) of true -> push_roster_item(U, S, LUser, LServer, GroupName, Subscription); @@ -706,7 +708,7 @@ c2s_self_presence(Acc) -> unset_presence(LUser, LServer, Resource, Status) -> Resources = ejabberd_sm:get_user_resources(LUser, LServer), - ?DEBUG("unset_presence for ~p @ ~p / ~p -> ~p " + ?DEBUG("Unset_presence for ~p @ ~p / ~p -> ~p " "(~p resources)", [LUser, LServer, Resource, Status, length(Resources)]), case length(Resources) of @@ -727,7 +729,7 @@ unset_presence(LUser, LServer, Resource, Status) -> %%--------------------- webadmin_menu(Acc, _Host, Lang) -> - [{<<"shared-roster">>, ?T(<<"Shared Roster Groups">>)} + [{<<"shared-roster">>, translate:translate(Lang, ?T("Shared Roster Groups"))} | Acc]. webadmin_page(_, Host, @@ -768,13 +770,13 @@ list_shared_roster_groups(Host, Query, Lang) -> <<"">>)]), ?XE(<<"td">>, [?INPUTT(<<"submit">>, <<"addnew">>, - <<"Add New">>)])])]))])), - (?H1GL((?T(<<"Shared Roster Groups">>)), + ?T("Add New"))])])]))])), + (?H1GL((translate:translate(Lang, ?T("Shared Roster Groups"))), <<"mod_shared_roster">>, <<"mod_shared_roster">>)) ++ case Res of - ok -> [?XREST(<<"Submitted">>)]; - error -> [?XREST(<<"Bad format">>)]; + ok -> [?XREST(?T("Submitted"))]; + error -> [?XREST(?T("Bad format"))]; nothing -> [] end ++ @@ -782,7 +784,7 @@ list_shared_roster_groups(Host, Query, Lang) -> [{<<"action">>, <<"">>}, {<<"method">>, <<"post">>}], [FGroups, ?BR, ?INPUTT(<<"submit">>, <<"delete">>, - <<"Delete Selected">>)])]. + ?T("Delete Selected"))])]. list_sr_groups_parse_query(Host, Query) -> case lists:keysearch(<<"addnew">>, 1, Query) of @@ -839,44 +841,44 @@ shared_roster_group(Host, Group, Query, Lang) -> [{<<"class">>, <<"withtextareas">>}], [?XE(<<"tbody">>, [?XE(<<"tr">>, - [?XCT(<<"td">>, <<"Name:">>), + [?XCT(<<"td">>, ?T("Name:")), ?XE(<<"td">>, [?INPUT(<<"text">>, <<"name">>, Name)])]), ?XE(<<"tr">>, - [?XCT(<<"td">>, <<"Description:">>), + [?XCT(<<"td">>, ?T("Description:")), ?XE(<<"td">>, [?TEXTAREA(<<"description">>, integer_to_binary(lists:max([3, DescNL])), <<"20">>, Description)])]), ?XE(<<"tr">>, - [?XCT(<<"td">>, <<"Members:">>), + [?XCT(<<"td">>, ?T("Members:")), ?XE(<<"td">>, [?TEXTAREA(<<"members">>, integer_to_binary(lists:max([3, length(Members)+3])), <<"20">>, FMembers)])]), ?XE(<<"tr">>, - [?XCT(<<"td">>, <<"Displayed Groups:">>), + [?XCT(<<"td">>, ?T("Displayed Groups:")), ?XE(<<"td">>, [?TEXTAREA(<<"dispgroups">>, integer_to_binary(lists:max([3, length(FDisplayedGroups)])), <<"20">>, list_to_binary(FDisplayedGroups))])])])])), - (?H1GL((?T(<<"Shared Roster Groups">>)), + (?H1GL((translate:translate(Lang, ?T("Shared Roster Groups"))), <<"mod_shared_roster">>, <<"mod_shared_roster">>)) ++ - [?XC(<<"h2">>, <<(?T(<<"Group ">>))/binary, Group/binary>>)] ++ + [?XC(<<"h2">>, <<(translate:translate(Lang, ?T("Group ")))/binary, Group/binary>>)] ++ case Res of - ok -> [?XREST(<<"Submitted">>)]; - error -> [?XREST(<<"Bad format">>)]; + ok -> [?XREST(?T("Submitted"))]; + error -> [?XREST(?T("Bad format"))]; nothing -> [] end ++ [?XAE(<<"form">>, [{<<"action">>, <<"">>}, {<<"method">>, <<"post">>}], [FGroup, ?BR, - ?INPUTT(<<"submit">>, <<"submit">>, <<"Submit">>)])]. + ?INPUTT(<<"submit">>, <<"submit">>, ?T("Submit"))])]. shared_roster_group_parse_query(Host, Group, Query) -> case lists:keysearch(<<"submit">>, 1, Query) of @@ -1007,7 +1009,8 @@ import(LServer, {sql, _}, DBType, Tab, L) -> Mod = gen_mod:db_mod(DBType, ?MODULE), Mod:import(LServer, Tab, L). -mod_opt_type(db_type) -> fun(T) -> ejabberd_config:v_db(?MODULE, T) end. +mod_opt_type(db_type) -> + econf:db_type(?MODULE). mod_options(Host) -> [{db_type, ejabberd_config:default_db(Host, ?MODULE)}]. |