view src/api/login_email.json.luan @ 29:a1db5223ced1

luan changes
author Franklin Schmidt <fschmidt@gmail.com>
date Mon, 25 Jul 2022 21:28:10 -0600
parents 9166f6a14021
children 260abd8f8565
line wrap: on
line source

local Luan = require "luan:Luan.luan"
local error = Luan.error
local Html = require "luan:Html.luan"
local url_encode = Html.url_encode or error()
local Io = require "luan:Io.luan"
local output_of = Io.output_of or error()
local Http = require "luan:http/Http.luan"
local Mail = require "site:/lib/Mail.luan"
local Api = require "site:/api/Api.luan"
local api = Api.api or error()
local user_error = Api.user_error or error()


return api(function()
	local base_url = Http.request.parameters.base_url or user_error "missing base_url param"
	local from = Http.request.parameters.from or user_error "missing from param"
	local email = Http.request.parameters.email or user_error "missing email param"
	local password = Http.request.parameters.password or user_error "missing password param"
	local mailer = Mail.sender() or user_error "mail not configured"
	mailer.send{
		From = from
		To = email
		Subject = "Login"
		body = output_of(function() %>
Login or register by clicking this link:

<%=base_url%>/login.html?email=<%=url_encode(email)%>&password=<%=password%>
<%		end)
	}
	return {
		okay = true
	}
end)