element_meta_base.erl 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. -module(element_meta_base).
  2. %%-author('Vladimir Galunshchikov').
  3. -include_lib("nitro/include/nitro.hrl").
  4. -compile([export_all, nowarn_export_all]).
  5. render_element(Record) ->
  6. List = [
  7. %% global
  8. {<<"accesskey">>, Record#base.accesskey},
  9. {<<"class">>, Record#base.class},
  10. {<<"contenteditable">>,
  11. case Record#base.contenteditable of
  12. true -> "true";
  13. false -> "false";
  14. _ -> undefined
  15. end},
  16. {<<"contextmenu">>, Record#base.contextmenu},
  17. {<<"dir">>,
  18. case Record#base.dir of
  19. "ltr" -> "ltr";
  20. "rtl" -> "rtl";
  21. "auto" -> "auto";
  22. _ -> undefined
  23. end},
  24. {<<"draggable">>,
  25. case Record#base.draggable of
  26. true -> "true";
  27. false -> "false";
  28. _ -> undefined
  29. end},
  30. {<<"dropzone">>, Record#base.dropzone},
  31. {<<"hidden">>,
  32. case Record#base.hidden of
  33. "hidden" -> "hidden";
  34. _ -> undefined
  35. end},
  36. {<<"id">>, Record#base.id},
  37. {<<"lang">>, Record#base.lang},
  38. {<<"spellcheck">>,
  39. case Record#base.spellcheck of
  40. true -> "true";
  41. false -> "false";
  42. _ -> undefined
  43. end},
  44. {<<"style">>, Record#base.style},
  45. {<<"tabindex">>, Record#base.tabindex},
  46. {<<"title">>, Record#base.title},
  47. {<<"translate">>,
  48. case Record#base.contenteditable of
  49. "yes" -> "yes";
  50. "no" -> "no";
  51. _ -> undefined
  52. end},
  53. %% spec
  54. {<<"href">>, Record#base.href},
  55. {<<"target">>, Record#base.target} | Record#base.data_fields
  56. ],
  57. wf_tags:emit_tag(<<"base">>, List).