element_area.erl 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293
  1. -module(element_area).
  2. % author Vladimir Galunshchikov
  3. -include_lib("nitro/include/nitro.hrl").
  4. -export([render_element/1]).
  5. render_element(Record) when Record#area.show_if == false ->
  6. [<<>>];
  7. render_element(Record) ->
  8. List = [
  9. % global
  10. {<<"accesskey">>, Record#area.accesskey},
  11. {<<"class">>, Record#area.class},
  12. {<<"contenteditable">>,
  13. case Record#area.contenteditable of
  14. true -> "true";
  15. false -> "false";
  16. _ -> []
  17. end},
  18. {<<"contextmenu">>, Record#area.contextmenu},
  19. {<<"dir">>,
  20. case Record#area.dir of
  21. "ltr" -> "ltr";
  22. "rtl" -> "rtl";
  23. "auto" -> "auto";
  24. _ -> []
  25. end},
  26. {<<"draggable">>,
  27. case Record#area.draggable of
  28. true -> "true";
  29. false -> "false";
  30. _ -> []
  31. end},
  32. {<<"dropzone">>, Record#area.dropzone},
  33. {<<"hidden">>,
  34. case Record#area.hidden of
  35. "hidden" -> "hidden";
  36. _ -> []
  37. end},
  38. {<<"id">>, Record#area.id},
  39. {<<"lang">>, Record#area.lang},
  40. {<<"spellcheck">>,
  41. case Record#area.spellcheck of
  42. true -> "true";
  43. false -> "false";
  44. _ -> []
  45. end},
  46. {<<"style">>, Record#area.style},
  47. {<<"tabindex">>, Record#area.tabindex},
  48. {<<"title">>, Record#area.title},
  49. {<<"translate">>,
  50. case Record#area.contenteditable of
  51. "yes" -> "yes";
  52. "no" -> "no";
  53. _ -> []
  54. end},
  55. % spec
  56. {<<"alt">>, Record#area.alt},
  57. {<<"coords">>, Record#area.coords},
  58. {<<"href">>, Record#area.href},
  59. {<<"hreflang">>, Record#area.hreflang},
  60. {<<"media">>, Record#area.media},
  61. {<<"rel">>, Record#area.rel},
  62. {<<"shape">>,
  63. case Record#area.shape of
  64. "rect" -> "rect";
  65. "circle" -> "circle";
  66. "poly" -> "poly";
  67. "default" -> "default";
  68. _ -> []
  69. end},
  70. {<<"target">>, Record#area.target},
  71. {<<"type">>, Record#area.type} | Record#area.data_fields
  72. ],
  73. wf_tags:emit_tag(<<"area">>, List).