local Luan = require "luan:Luan.luan" local error = Luan.error local Io = require "luan:Io.luan" local Http = require "luan:http/Http.luan" local User = require "site:/lib/User.luan" local Shared = require "site:/lib/Shared.luan" local add_with = Shared.add_with or error() return function() local email = Http.request.parameters.email or error() local password = Http.request.parameters.password or error() Io.stdout = Http.response.text_writer() local user = User.get_by_email(email) if user==nil or user.password ~= password then %> document.querySelector('[failed]').textContent = 'Login failed'; <% return end user.login() local spy = Http.request.parameters.spy ~= nil if spy then Http.response.set_cookie("spy","yes") else Http.response.remove_cookie("spy") end local with = Http.request.parameters.with local location if with == nil then location = "/" else location = add_with("/chat") end %> location = '<%=location%>'; <% end