aboutsummaryrefslogtreecommitdiff
path: root/circuitpython/lib/axtls/www/lua/test_session.lua
diff options
context:
space:
mode:
Diffstat (limited to 'circuitpython/lib/axtls/www/lua/test_session.lua')
-rw-r--r--circuitpython/lib/axtls/www/lua/test_session.lua43
1 files changed, 43 insertions, 0 deletions
diff --git a/circuitpython/lib/axtls/www/lua/test_session.lua b/circuitpython/lib/axtls/www/lua/test_session.lua
new file mode 100644
index 0000000..d97cc45
--- /dev/null
+++ b/circuitpython/lib/axtls/www/lua/test_session.lua
@@ -0,0 +1,43 @@
+cgilua.enablesession ()
+
+function pt (tab)
+ for i, v in pairs (tab) do
+ local vv = v
+ if type(v) == "table" then
+ vv = ""
+ for _i, _v in pairs (v) do
+ vv = vv..string.format ("%s = %q, ", _i, _v)
+ end
+ vv = '{'..vv..'}'
+ end
+ cgilua.put (string.format ("%s = %s<br>\n", tostring (i), tostring (vv)))
+ end
+end
+
+
+if cgi.field then
+ if not cgilua.session.data.field then
+ cgilua.session.data.field = {}
+ end
+ table.insert (cgilua.session.data.field, cgi.field)
+end
+cgilua.htmlheader()
+if cgilua.session then
+ cgilua.put "cgi = {<br>\n"
+ pt (cgi)
+ cgilua.put "}<br>\n"
+ cgilua.put "cgilua.session.data = {<br>\n"
+ pt (cgilua.session.data)
+ cgilua.put "}<br>\n"
+
+ cgilua.put [[<form action="]]
+ cgilua.put (cgilua.mkurlpath"test_session.lua")
+ cgilua.put [[" method="POST">
+ field: <input type="text" name="field" value="]]
+ cgilua.put (cgi.field or "")
+ cgilua.put [["><br>
+ <input type="submit"><br>
+</form>]]
+else
+ cgilua.put "Sessions library is not available or not well configured"
+end