summaryrefslogtreecommitdiffstats
path: root/fetchmail-expert-html.lsp
blob: 0a36abb721b8a98bbfd3ea58011575178f3122bb (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
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
<? 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)
	io.write("<DL>")
	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
	io.write("</DL>")
end
?>
<?
function configform(myform,tags)
	io.write("<DL>")
	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>" .. html.form[val.type](val) .. "\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
	io.write("</DL>")
end
?>


<H1>SYSTEM INFO</H1>
<? 
local myform = form.status 
local tags = { "status", "version", }
informationform(myform,tags)
?>

<H1>CONFIGURATION</H1>
<? local myform = form.config ?>
<form action="<?= form.option.script .. "/" .. form.option.prefix ..
		form.option.controller .. "/" .. form.option.action ?>" method="POST">

<H2>EXPERT CONFIGURATION</H2>
<H3>FILE DETAILS</H3>
<? 
local tags = { "filename", "filesize", "mtime", "sumerrors" }
informationform(myform,tags)
?>

<H3>FILE CONTENT</H3>
<? 
io.write(html.form[form.config.filecontent.type](form.config.filecontent))
?>

<H2>SAVE AND APPLY ABOVE SETTINGS</H2>
<? 
local tags = { "cmdsave", }
configform(myform,tags)
?>
</form>


<? 
local cmdform = form.management
local tags = { "start", "stop", "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>")
--]]
?>