mg.write("HTTP/1.0 200 OK\r\n")
mg.write("Content-Type: text/html\r\n")
mg.write("\r\n")
mg.write([[
This is another example of a Lua server page, served by
Civetweb web server.
The following features are available:
]])
-- function in one Lua tag should still be available in the next one
function test(tab, name)
if tab then
mg.write("- " .. name .. "
\n")
end
end
function recurse(tab)
mg.write("\n")
for k,v in pairs(tab) do
if type(v) == "table" then
mg.write("- " .. tostring(k) .. ":
\n")
recurse(v)
else
mg.write("- " .. tostring(k) .. " = " .. tostring(v) .. "
\n")
end
end
mg.write("
\n")
end
mg.write("- " .. _VERSION .. " with the following standard libraries
\n")
mg.write("\n")
libs = {"string", "math", "table", "io", "os", "bit32", "package", "coroutine", "debug"};
for _,n in ipairs(libs) do
test(_G[n], n);
end
mg.write("
\n")
test(sqlite3, "sqlite3 binding")
test(lfs,"lua file system")
libname = "mg"
test(_G[libname], libname .. " library")
recurse(_G[libname])
mg.write("
\n");
mg.write(" Today is " .. os.date("%A") .. "
\n");
mg.write("\n");
if lfs then
mg.write("Files in " .. lfs.currentdir())
mg.write("\n
\n")
for f in lfs.dir(".") do
mg.write("- " .. f .. "
\n")
local at = lfs.attributes(f);
recurse(at)
end
mg.write("
\n")
end
mg.write([[
]])