comparison src/do_login.html.luan @ 5:a49866b52cc2

login to chat
author Franklin Schmidt <fschmidt@gmail.com>
date Tue, 29 Oct 2024 13:10:47 -0600
parents 2c63b10781e1
children 5a56297713a3
comparison
equal deleted inserted replaced
4:2da10ece826f 5:a49866b52cc2
1 local Luan = require "luan:Luan.luan" 1 local Luan = require "luan:Luan.luan"
2 local error = Luan.error 2 local error = Luan.error
3 local ipairs = Luan.ipairs or error()
4 local Table = require "luan:Table.luan"
5 local concat = Table.concat or error()
3 local Io = require "luan:Io.luan" 6 local Io = require "luan:Io.luan"
4 local Http = require "luan:http/Http.luan" 7 local Http = require "luan:http/Http.luan"
5 local Shared = require "site:/lib/Shared.luan" 8 local Shared = require "site:/lib/Shared.luan"
6 local head = Shared.head or error() 9 local head = Shared.head or error()
7 local header = Shared.header or error() 10 local header = Shared.header or error()
8 local User = require "site:/lib/User.luan" 11 local User = require "site:/lib/User.luan"
12 local Utils = require "site:/lib/Utils.luan"
13 local to_list = Utils.to_list or error()
9 14
10 15
11 return function() 16 return function()
12 local user_id = Http.request.parameters.user or error() 17 local user_id = Http.request.parameters.user or error()
13 local password = Http.request.parameters.password or error() 18 local password = Http.request.parameters.password or error()
26 <% if user == nil or user.password ~= password then %> 31 <% if user == nil or user.password ~= password then %>
27 <p>Login failed</p> 32 <p>Login failed</p>
28 <% 33 <%
29 else 34 else
30 user.login() 35 user.login()
36 local with = Http.request.parameters.with
37 local location
38 if with == nil then
39 location = "/"
40 else
41 with = to_list(with)
42 local t = {}
43 for _, email in ipairs(with) do
44 t[#t+1] = "with="..email
45 end
46 location = "/chat.html?"..concat(t,"&")
47 end
31 %> 48 %>
32 <script> location = '/'; </script> 49 <script> location = '<%=location%>'; </script>
33 <% 50 <%
34 end 51 end
35 %> 52 %>
36 </div> 53 </div>
37 </body> 54 </body>