Commit 3108ab2fbe0800b494e4b61ffccf358bccfdb30c

Authored by David RENÉ
1 parent 53bb3143

add support of bootstrap for flags_menu with flags_menu_bs function

Showing 1 changed file with 73 additions and 1 deletions   Show diff stats
web_controllers/language/language_management.anubis
... ... @@ -227,7 +227,79 @@ public define HTML
227 227 flags_menu(app_dictionnary, lang, show_symbolic)
228 228 .
229 229  
230   -
  230 +define HTML
  231 + language_line_bs
  232 + (
  233 + String language_code,
  234 + String language
  235 + )=
  236 +// li([style("background-image: url(/xlib/flags/lang/24/"+language_code+".png);"),
  237 +// event(onclick, "language_changed('"+language_code+"');")], text(language))
  238 +
  239 + div(class("l3-flags"), a(class("dropdown-item l3-flag"), href(url("?aws_c=language&aws_a=do_change_language&language_code="+language_code)), [ img(class("l3-flag"), "/xlib/flags/lang/24/"+language_code+".png"), text(language)]))
  240 +.
  241 +
  242 +public define HTML
  243 + flags_menu_bs
  244 + (
  245 + String dictionary_collection_name,
  246 + String lang,
  247 + Bool show_symbolic
  248 + ) =
  249 + with make_line = (L3LangDicProperty dico_prop) |->
  250 + if dico_prop is l3LangDicProperty( _, sha1, lang_code, user_def, creat, update) then
  251 + with lang_info = l3_get_language_info(lang_code),
  252 + //if the language is already selected language, don't add as selectable language
  253 + if lang_code = lang then
  254 + empty
  255 + else
  256 + language_line_bs(lang_code, self_name(lang_info)),
  257 +
  258 + head_tags([
  259 + css(css_file("/xlib/css/flags_menu.css")),
  260 + //js(js_file("/xlib/js/xlib.js"))
  261 + ],
  262 + li( class("nav-item dropdown"), [
  263 + //literal("<dt style=\"background-image: url(../flags/"+lang+".png);\" onmouseover=\"javascript:montre('drapo1');\" onmouseout=\"javascript:montre();\">&nbsp;</dt>\n"),
  264 + //literal("<img src=\"/xlib/flags/24x24/"+lang+".png\" onmouseover=\"javascript:montre('drapo1');\" onmouseout=\"javascript:montre();\">"),
  265 + a([id("l3-flag"), class("nav-link dropdown-toggle l3-flag"), role("button"), data("bs-toggle", "dropdown")], img(class("l3-flag"), "/xlib/flags/24x24/"+lang+".png")),
  266 + //img([event(onmouseover, "showObject('l3-flag');"), event(onmouseout, "hideObject('l3-flag');")], "/xlib/flags/lang/24/"+lang+".png" ),
  267 + //dd([style("display: none"),id("l3-flag"), event(onmouseover, "showObject('l3-flag');"), event(onmouseout, "hideObject('l3-flag');")],
  268 + div( class("dropdown-menu dropdown-menu-end"), [
  269 + //line with current selected language
  270 +
  271 + div(class("l3-flag"), a(class("dropdown-item l3-flag"), href(url("#")), [img(class("l3-flag"), "/xlib/flags/lang/24/"+lang+".png"), text(l3_get_language_info(lang).self_name)]))
  272 + ,
  273 + div(class("dropdown-divider"))
  274 +
  275 + ] +
  276 + map(make_line, l3_get_all_dicos(dictionary_collection_name))+
  277 + [
  278 + if show_symbolic then
  279 + language_line_bs("symb", "symbolic")
  280 + else
  281 + empty
  282 + ]
  283 + )
  284 + ])
  285 + //]) //!dl
  286 + )
  287 +.
  288 +
  289 +
  290 +public define HTML
  291 + flags_menu_bs
  292 + (
  293 + WEB_Session _session,
  294 + Bool show_symbolic,
  295 + (LogLevel, String) -> One logger
  296 + ) =
  297 + with lang = _session.language,
  298 + app_dictionnary = get_dictionary(_session),
  299 +
  300 + flags_menu_bs(app_dictionnary, lang, show_symbolic)
  301 +.
  302 +
231 303 public define HTML
232 304 choose_lang_dialog
233 305 (
... ...