diff options
author | Mika Havela <mika.havela@gmail.com> | 2008-03-04 08:49:41 +0000 |
---|---|---|
committer | Mika Havela <mika.havela@gmail.com> | 2008-03-04 08:49:41 +0000 |
commit | 73433bf9ea9a0f7f56203bafa111821bb47856cf (patch) | |
tree | 8961f85a4d8827ad05c6c085daf04f0de998b0a3 /shorewall-config-html.lsp | |
parent | 8c41156d76be7332fd34d1ab18a078510745b81a (diff) | |
download | acf-shorewall-73433bf9ea9a0f7f56203bafa111821bb47856cf.tar.bz2 acf-shorewall-73433bf9ea9a0f7f56203bafa111821bb47856cf.tar.xz |
Added the missing (example)-page. Added functionallity so that the page has live data
git-svn-id: svn://svn.alpinelinux.org/acf/shorewall/trunk@799 ab2d0c66-481e-0410-8bed-d214d4d58bed
Diffstat (limited to 'shorewall-config-html.lsp')
-rw-r--r-- | shorewall-config-html.lsp | 141 |
1 files changed, 141 insertions, 0 deletions
diff --git a/shorewall-config-html.lsp b/shorewall-config-html.lsp new file mode 100644 index 0000000..3523ed6 --- /dev/null +++ b/shorewall-config-html.lsp @@ -0,0 +1,141 @@ +<? 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 +?> + + +<H1>SYSTEM INFO</H1> +<DL> +<? +local myform = form.status +local tags = { "status", "version", } +displayinfo(myform,tags,"viewonly") +?> +</DL> + + +<? local myform = form.config ?> +<form name="cmd" action="" method="POST"> +<h1>CONFIGURATION</h1> + + +<H2>Advanced configuration</H2> +<H3>Parameters</H3> +<DL> +<? +local tags = { "params_list", "params_list_cmd", } +displayinfo(myform,tags) +?> +</DL> + +<H3>Interfaces</H3> +<DL> +<? +local tags = { "interfaces_list", "interfaces_list_cmd", } +displayinfo(myform,tags) +?> +</DL> + + + +<H3>Defince zones</H3> +<DL> +<? +local tags = { "zones_list", "zones_list_cmd", } +displayinfo(myform,tags) +?> +</DL> + +<h3>Default policies</h3> +<DL> +<? +local tags = { "policies_list", "policies_list_cmd",} +displayinfo(myform,tags) +?> +</DL> + +<h3>Rules</h3> +<DL> +<? +local tags = { "rules_list", "rules_list_cmd",} +displayinfo(myform,tags) +?> +</DL> + +</form> + + +<? +local cmdform = form.management +local tags = { "restart" } +if (cmdform) and (cmdform[tags[1]]) then +?> + <form name="management" action="" method="POST"> + <H1>MANAGEMENT</H1> + <dl> + <dt><?= cmdform[tags[1]]["label"] ?></dt> + <dd> + <? for k,v in pairs(tags) do ?> + <? if (cmdform[v]) then ?> + <? io.write(html.form[cmdform[v].type](cmdform[v])) ?> + <? end ?> + <? end ?> + </dd> + + <? if (form.cmdmanagement) and (#form.cmdmanagement.descr > 0) then ?> + <dt>Previous action result</dt> + <dd><pre><?= form.cmdmanagement.descr ?></pre></dd> + <? end ?> + </dl> + </form> + +<? end ?> + +<? --]] ?> + +<? +---[[ 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>") +--]] +?> |