diff options
Diffstat (limited to 'tinydns-edit_records-html.lsp')
-rw-r--r-- | tinydns-edit_records-html.lsp | 106 |
1 files changed, 106 insertions, 0 deletions
diff --git a/tinydns-edit_records-html.lsp b/tinydns-edit_records-html.lsp new file mode 100644 index 0000000..4241540 --- /dev/null +++ b/tinydns-edit_records-html.lsp @@ -0,0 +1,106 @@ +<? local form = ... ?> +<? +--[[ DEBUG INFORMATION +io.write("<H1>DEBUGGING</H1><span style='color:red'><H2>DEBUG INFO: CFE</H2>") +io.write(html.cfe_unpack(form)) +io.write("</span>") +--]] +?> + +<? +function displayinfo(myform,tags,viewtype) + for k,v in pairs(tags) do + if (myform[v]) and (myform[v]["value"]) then + local val = myform[v] + io.write("\n\t<DT") + if (#val.errtxt > 0) then + val.class = "error" + io.write(" class='error'") + end + io.write(">" .. val.label .. "</DT>") + io.write("\n\t\t<DD>") + if (viewtype == "viewonly") then + io.write(val.value) + elseif (val.type == "radio") and (type(val.option) == "table") and (#val.option > 0) then + io.write("<span style='display:inline' class='" .. ( val.class or "") .. "'>") + for k1,v1 in pairs(val.option) do + io.write(tostring(v1.label) .. ":") + io.write("<input style='margin-right:20px;margin-left:5px;' type='radio' class='" .. ( val.class or "") .. "' name='" .. val.name .. "'") + if (tostring(val.value) == tostring(v1.value)) then io.write(" checked='yes'") end + io.write(" value='" .. v1.value .. "'>") + end + io.write("</input></span>") + else + io.write(html.form[val.type](val)) + end + if (val.descr) and (#val.descr > 0) then io.write("\n\t\t<P CLASS='descr'>" .. string.gsub(val.descr, "\n", "<BR>") .. "</P>") end + if (#val.errtxt > 0) then io.write("\n\t\t<P CLASS='error'>" .. string.gsub(val.errtxt, "\n", "<BR>") .. "</P>") end + io.write("\n\t\t</DD>\n") + end + end +end +?> + +<? +function displayinfo_special(myform) + for i=1,#myform do + local v = myform[i] + if (v) and (v["value"]) then + io.write("\n\t<DT") + if (#v.errtxt > 0) then + v.class = "error" + io.write(" class='error'") + end + io.write(">" .. v.label .. "</DT>") + io.write("\n\t\t<DD>") + io.write(html.form[v.type](v)) + if (v.descr) and (#v.descr > 0) then io.write("\n\t\t<P CLASS='descr'>" .. string.gsub(v.descr, "\n", "<BR>") .. "</P>") end + if (#v.errtxt > 0) then io.write("\n\t\t<P CLASS='error'>" .. string.gsub(v.errtxt, "\n", "<BR>") .. "</P>") end + io.write("\n\t\t</DD>\n") + end + end +end +?> + +<form name="cmd" action="<?= form.option.link ?>/<?= form.option.action ?>" method="POST"> + +<H1>EDIT PROPERTIES</H1> +<DL> +<? +local myform = form.edit +displayinfo_special(myform) +?> + +<? +local tags = {"cmdsave", "cmddelete", } +local myform = form +displayinfo(myform,tags) +?> + +<? -- Add the field that holds the filename +local myform = form.edit.filename +if (type(myform) == "table") then + io.write(html.form[myform.type](myform)) +end +local myform = form.edit.orgrecord +if (type(myform) == "table") then + io.write(html.form[myform.type](myform)) +end +local myform = form.edit.actiontype +if (type(myform) == "table") then + io.write(html.form[myform.type](myform)) +end +?> + +</DL> + +</form> + +<? +---[[ DEBUG INFORMATION +io.write("<H1>DEBUGGING</H1><span style='color:red'><H2>DEBUG INFO: CFE</H2>") +io.write(html.cfe_unpack(form)) +io.write("</span>") +--]] +?> + |