local Luan = require "luan:Luan.luan" local error = Luan.error local pairs = Luan.pairs or error() local ipairs = Luan.ipairs or error() local range = Luan.range or error() local Io = require "luan:Io.luan" local Http = require "luan:http/Http.luan" local size_charts = require "site:/lib/size_charts.luan" local all_sizes = require "site:/lib/sizes.luan" local function output_chart(chart_name,chart) local version = chart.version or error() if version~="1" then return end %>
<% local internal = chart.internal or {} local cm_keys = internal.cm or {} %>

<%=internal.title%> (<%=chart_name%>)

<% local has_heading = chart.heading ~= nil local rowspan = has_heading and #chart.heading or 1 local th = " 1 and [[ rowspan="]]..rowspan..[["]] or "")..">" %> <%=th%>key <%=th%>factory <% for _, key in ipairs(cm_keys) do %> <%=th%><%=key%> cm <% end if has_heading then %> <%= chart.heading[1] %> <% else for h in pairs(chart.columns) do %> <%=th%><%=h%> <% end end if internal.heading ~= nil then %><%=internal.heading%><% end %> <% if has_heading then for i in range(2,#chart.heading) do %> <%= chart.heading[i] %> <% end end for size, chart_row in pairs(chart.rows) do internal = chart_row.internal or {} local cm = internal.cm or {} local size_info = all_sizes[size] %> <% for _, key in ipairs(cm_keys) do local r = cm[key] or {} %> <% end for column, column_info in pairs(chart.columns) do local type = column_info.type local val if type=="static" then val = chart_row[column] elseif type=="product" then val = "" end %> <% end if internal.html ~= nil then %><%=internal.html%><% end %> <% end %>
<%=size%> <%=size_info.factory%><%=r[1]%> - <%=r[2]%><%=val%>
<% end return function() Io.stdout = Http.response.text_writer() %>

Factory Size Charts

units:

<% for chart_name, chart in pairs(size_charts) do output_chart(chart_name,chart) end %>
span[units="in"] { display: none; }
span[units="cm"] { display: none; }
<% end