Packages
nitro
4.12.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/table/element_table.erl
-module(element_table).
-include_lib("nitro/include/nitro.hrl").
-compile(export_all).
render_element(Record) when Record#table.show_if==false -> [<<>>];
render_element(Record = #table{}) ->
Header = case Record#table.header of
[] -> "";
H when is_tuple(H) -> H;
_ -> wf_tags:emit_tag(<<"thead">>, nitro:render(Record#table.header), [])
end,
Footer = case Record#table.footer of
[] -> "";
_ -> wf_tags:emit_tag(<<"tfoot">>, nitro:render(Record#table.footer), [])
end,
Bodies = case Record#table.body of
#tbody{} = B -> B;
[] -> #tbody{};
unndefined -> #tbody{};
Rows -> [case B of #tbody{}=B1 -> B1; _-> #tbody{body=B} end || B <- Rows]
end,
Caption = case Record#table.caption of
[] -> "";
_ -> wf_tags:emit_tag(<<"caption">>, nitro:render(Record#table.caption), [])
end,
Colgroup = case Record#table.colgroup of
[] -> "";
_ -> 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
]).