Mercurial Hosting > luan
view web/src/luan/modules/web/web_shell.luan @ 170:7c792a328a83
add web component
git-svn-id: https://luan-java.googlecode.com/svn/trunk@171 21e917c8-12df-6dd8-5cb6-c86387c605b9
author | fschmidt@gmail.com <fschmidt@gmail.com@21e917c8-12df-6dd8-5cb6-c86387c605b9> |
---|---|
date | Sun, 22 Jun 2014 05:20:30 +0000 |
parents | src/luan/modules/web/web_shell.luan@9169581dc8fc |
children | 58c6ca5d4524 |
line wrap: on
line source
import "Http" per_session = true local history = {} local env = {} Io.stdout = {} function Io.stdout.write(...) for _,v in Basic.values(...) do history[#history+1] = v end end function page() if Http.request.get_parameter("clear") ~= nil then history = {} else local cmd = Http.request.get_parameter("cmd") if cmd ~= nil then print( "% "..cmd ) try local line = load(cmd,"<web_shell>",env,true); Debug.print_if_something( line() ) catch e do Io.print_to(Io.stderr,e) print(e) end end end local write = Http.response.text_writer().write write %> <html> <title>Luan Shell</title> <body> <p>This is a command shell. Enter commands below. <pre><% for _,v in ipairs(history) do write(v) end write %></pre> <form name='theForm' method='post'> % <input name='cmd' size=60> <input type=submit value=run> <input type=submit name=clear value=clear> </form> <script>document.theForm.cmd.focus();</script> <p/> </body> </html> <% end