summaryrefslogtreecommitdiffstats
path: root/dhcp-home-html.lsp
diff options
context:
space:
mode:
Diffstat (limited to 'dhcp-home-html.lsp')
-rw-r--r--dhcp-home-html.lsp80
1 files changed, 53 insertions, 27 deletions
diff --git a/dhcp-home-html.lsp b/dhcp-home-html.lsp
index 9bfc6cf..075e1c3 100644
--- a/dhcp-home-html.lsp
+++ b/dhcp-home-html.lsp
@@ -3,23 +3,37 @@
local data = form.option
?>
-<h1>Home</h1>
-<h2>System info</h2>
+<?
+function displayinfo(myform,tags,viewonly)
+ for k,v in pairs(tags) do
+ if (myform[v]) and (myform[v]["value"]) then
+ local val = myform[v]
+ io.write("\t<DT")
+ if (#val.errtxt > 0) then
+ val.class = "error"
+ io.write(" class='error'")
+ end
+ io.write(">" .. val.label .. "</DT>\n")
+ if (viewonly) then
+ io.write("\t\t<DD>" .. val.value .. "\n")
+ else
+ io.write("\t\t<DD>" .. html.form[val.type](val) .. "\n")
+ end
+ if (val.descr) and (#val.descr > 0) then io.write("\t\t<P CLASS='descr'>" .. string.gsub(val.descr, "\n", "<BR>") .. "</P>\n") end
+ if (#val.errtxt > 0) then io.write("\t\t<P CLASS='error'>" .. string.gsub(val.errtxt, "\n", "<BR>") .. "</P>\n") end
+ io.write("\t\t</DD>\n")
+ end
+ end
+end
+?>
+<H1>SYSTEM INFO</H1>
<DL>
-<dt>Program version</dt>
-<dd><? io.write(form.info.version.value) ?></dd>
-
-<dt>Process status</dt>
-<dd><? io.write( form.info.status.value ) ?></dd>
-
-<dt>Daemon control</dt>
-<dd><form action="" method="POST">
-<input type=submit name="srvcmd" value="start" class="submit">
-<input type=submit name="srvcmd" value="stop" class="submit">
-<input type=submit name="srvcmd" value="restart" class="submit"></form>
-<p class='error'><? io.write( form.info.srvctrl.value ) ?></p>
-</dd>
+<?
+local myform = form.info
+local tags = { "status", "version", "autostart", }
+displayinfo(myform,tags,"viewonly")
+?>
</DL>
<H2>Change/Generate settings</H2>
@@ -68,15 +82,27 @@
<? if form.genmsg ~= nil then io.write( "<p class='error'>" .. form.genmsg .. "</p>" ) end ?></dd>
</DL>
-<h2>View files</h2>
-<DL>
-<form action="<? io.write(data.script .. data.prefix .. data.controller .. "/view") ?>" method="POST">
-<dt>View dhcpd.conf</dt>
-<dd><input type=submit name="conf" value="dhcpd.conf" class="submit"></dd>
-
-<dt>View dhcpd.leases</dt>
-<dd><input type=submit name="leases" value="dhcpd.leases" class="submit"></dd>
-</form>
-</DL>
-
-
+<? -- MANAGEMENT BUTTONS
+local cmdform = form.management
+local cmdresult = form.cmdmanagement
+local tags = { "start", "stop", "restart" }
+if (cmdform) and (cmdform[tags[1]]) then
+
+ io.write('<form name="management" action="" method="POST">')
+ io.write('<H1>MANAGEMENT</H1>')
+ io.write('<dl>')
+ io.write('<dt>' .. cmdform[tags[1]]["label"] .. '</dt>')
+ io.write('<dd>')
+ for k,v in pairs(tags) do
+ if (cmdform[v]) then
+ io.write(html.form[cmdform[v].type](cmdform[v]))
+ end
+ end
+ io.write('</dd>')
+
+ if (cmdresult) and (cmdresult.action) and (#cmdresult.action.descr > 0) then
+ io.write('<dt>' .. cmdresult.label .. '</dt>')
+ io.write('<dd><pre>' .. cmdresult.action.descr .. '</pre></dd>')
+ end
+ io.write('</dl></form>')
+end ?>