Sha256: 6fb23c8b2f6f6c252b93fc5547c42c554b60e2e9717693545ea7b8cfcef498cf
Contents?: true
Size: 1.13 KB
Versions: 8
Compression:
Stored size: 1.13 KB
Contents
module IsoDoc::Function module Form def form_parse(node, out) node.children.each do |n| parse(n, out) end end def input_parse(node, out) case node["type"] when "button" then out << "[#{node['value'] || 'BUTTON'}]" when "checkbox" then out << "☐ " when "date" then text_input(out) when "file" then text_input(out) when "password" then text_input(out) when "radio" then out << "◎ " when "submit" # nop when "text" then text_input(out, node["maxlength"]) end end def text_input(out, length = 10) length ||= 10 length = length.to_i length.zero? and length = 10 out << "_" * length out << " " end def select_parse(node, out) text_input(out, node["size"] || 10) end def label_parse(node, out) node.children.each do |n| parse(n, out) end end def option_parse(node, out); end def textarea_parse(_node, out) out.table **{ border: 1, width: "50%" } do |t| t.tr do |tr| tr.td do |td| end end end end end end
Version data entries
8 entries across 8 versions & 1 rubygems