summaryrefslogtreecommitdiffstats
path: root/ipsectools-status-html.lsp
blob: 463474cd74765fe3c1aa038f22507b064188c654 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
<? 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 informationform(myform,tags)
	for k,v in pairs(tags) do 
		if (myform[v]) then
			local val = myform[v] 
			io.write("\t<DT")
			if (#val.errtxt > 0) then io.write(" class='error'") end
			io.write(">" .. val.label .. "</DT>\n")

			io.write("\t\t<DD>" .. val.value .. "\n")
			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>
<? 
local myform = form.status 
local tags = { "status", "version", "autostart", }
informationform(myform,tags)
?>
</DL>

<H2>PROGRAM SPECIFIC OPTIONS/INFORMATION</H2>
<H3>Phase1 and Phase2 information</H3>
<DL>
<?
local myform = form.status.show_isakmp.option
for k,v in pairs(myform) do
	if (type(v) ==  "table") and (v.Destination) and (v.Destination.value) and (#v.Destination.value > 0) then
		io.write("<DT><IMG SRC='/static/tango/16x16/status/network-")
		if (tonumber(v['St']['value']) < 9) then
			io.write("error")
		else
			io.write("idle")
		end
		io.write(".png' width='16' height='16'> ".. v['Destination']['value'] .. "</DT>")
		io.write("<DD><TABLE>\n")
		io.write("<TR><TD COLSPAN=2 CLASS='header'>Phase1 details</TD></TR>")
		local tags = {"Created","Source", "St", "S", "E",}
		for k1,v1 in pairs(tags) do
			io.write("<TR><TD STYLE='font-weight:bold;width:120px;'>" .. 
				(v[v1]['label'] or "") .. "</TD><TD>"..(v[v1]['value'] or ""))
			if (v[v1]['descr']) and (#v[v1]['descr'] > 0) then io.write(" (".. v[v1]['descr'] .. ")") end
			io.write("</TD></TR>")
		end
		io.write("<TR><TD COLSPAN=2 CLASS='header' STYLE='padding-left:15px;'>Phase2 details</TD></TR>")
		for k1,v1 in pairs(v['Phase2']['option']) do
			io.write("<TR><TD STYLE='padding-left:15px;' COLSPAN=2><PRE>" .. (v1['value'] or "") .. "</PRE>")
			io.write("</TD></TR>")
		end
		io.write("</TABLE></DD>")
	end
end
?>
</DL>
<H3>Policy information</H3>
<DL>
<? 
local myform = form.status.ip_xfrm_policy
io.write("<DT>"..myform.label .."</DT>\n")
io.write("<DD><PRE>"..myform.value .."</PRE></DT>\n")
?>
</DL>



<?
--[[ 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>")
--]]
?>