Packages
nitro
1.4.0
11.4.16
11.4.15
11.4.14
9.9.7
9.9.6
8.2.4
8.2.3
8.2.2
8.2.1
8.2.0
7.12.1
7.10.0
7.9.3
7.9.2
7.9.1
7.9.0
7.8.3
7.8.2
7.8.0
7.7.1
7.7.0
7.6.2
7.6.1
7.6.0
7.5.0
7.4.2
7.4.1
7.4.0
7.2.1
7.2.0
7.1.1
7.1.0
6.12.0
6.11.11
6.11.10
6.11.9
6.11.8
6.11.7
6.11.6
6.11.4
6.11.2
6.11.1
6.10.9
6.10.8
6.10.7
6.10.6
6.10.5
6.10.4
6.10.3
6.10.2
6.10.1
6.9.1
6.6.1
6.5.0
6.4.4
6.4.3
6.4.2
6.4.1
6.4.0
5.12.4
5.12.3
5.12.2
5.12.1
5.12.0
5.11.1
5.11.0
5.9.2
5.9.1
5.8.5
5.8.4
5.8.3
5.8.1
5.8.0
5.6.1
5.5.1
5.4.3
5.4.2
5.4.1
5.3.1
5.3.0
5.2.1
5.1.7
5.1.6
5.1.5
5.1.4
5.1.3
5.1.2
5.1.1
4.12.11
4.12.10
4.12.9
4.12.8
4.12.7
4.12.6
4.12.5
4.12.4
4.12.3
4.12.2
4.12.1
4.12.0
4.11.13
4.11.12
4.11.11
4.11.10
4.11.9
4.11.8
4.11.7
4.11.6
4.11.5
4.11.4
4.11.3
4.11.2
4.11.1
4.11.0
4.10.9
4.10.8
4.10.7
4.10.6
4.10.5
4.10.4
4.10.3
4.10.2
4.10.1
4.10.0
4.7.7
4.7.4
4.7.3
4.7.2
4.7.1
4.7.0
4.4.1
4.4.0
1.4.0
NITRO Nitrogen Web Framework
Current section
Files
Jump to
Current section
Files
src/elements/element_table.erl
-module(element_table).
-include_lib("nitro/include/nitro.hrl").
-compile(export_all).
render_element(Record = #table{}) ->
Header = case Record#table.header of
undefined -> "";
H when is_tuple(H) -> H;
_ -> wf_tags:emit_tag(<<"thead">>, nitro:render(Record#table.header), [])
end,
Footer = case Record#table.footer of
undefined -> "";
_ -> wf_tags:emit_tag(<<"tfoot">>, nitro:render(Record#table.footer), [])
end,
Bodies = case Record#table.body of
#tbody{} = B -> B;
undefined -> #tbody{};
[] -> #tbody{};
Rows -> [case B of #tbody{}=B1 -> B1; _-> #tbody{body=B} end || B <- Rows]
end,
Caption = case Record#table.caption of
undefined -> "";
_ -> wf_tags:emit_tag(<<"caption">>, nitro:render(Record#table.caption), [])
end,
Colgroup = case Record#table.colgroup of
undefined -> "";
_ -> wf_tags:emit_tag(<<"colgroup">>, nitro:render(Record#table.colgroup), [])
end,
wf_tags:emit_tag( <<"table">>, nitro:render([Caption, Colgroup, Header, Footer, Bodies]), [
{<<"id">>, Record#table.id},
{<<"class">>, Record#table.class},
{<<"style">>, Record#table.style} | Record#table.data_fields
]).