From 2db547b55724463522589e80d618d00cb034eff1 Mon Sep 17 00:00:00 2001 From: Badlop Date: Fri, 17 May 2019 15:24:18 +0200 Subject: [PATCH] Vcard search doesn't support * in mnesia, fix search form (#633) --- src/mod_vcard.erl | 20 ++++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) diff --git a/src/mod_vcard.erl b/src/mod_vcard.erl index 5caecae50..6b6f5f7d5 100644 --- a/src/mod_vcard.erl +++ b/src/mod_vcard.erl @@ -429,18 +429,26 @@ mk_search_form(JID, ServerHost, Lang) -> Fs = [mk_tfield(Label, Var, Lang) || {Label, Var} <- SearchFields], X = #xdata{type = form, title = Title, - instructions = - [translate:translate( - Lang, - <<"Fill in the form to search for any matching " - "Jabber User (Add * to the end of field " - "to match substring)">>)], + instructions = [make_instructions(Mod, Lang)], fields = Fs}, #search{instructions = translate:translate( Lang, <<"You need an x:data capable client to search">>), xdata = X}. +make_instructions(Mod, Lang) -> + Fill = translate:translate( + Lang, + <<"Fill in the form to search for any matching " + "Jabber User">>), + Add = translate:translate( + Lang, + <<" (Add * to the end of field to match substring)">>), + case Mod of + mod_vcard_mnesia -> Fill; + _ -> str:concat(Fill, Add) + end. + -spec search_result(binary(), jid(), binary(), [xdata_field()]) -> xdata(). search_result(Lang, JID, ServerHost, XFields) -> Mod = gen_mod:db_mod(ServerHost, ?MODULE),