Mercurial Hosting > freedit
view src/api/change_email_1.json.luan @ 59:02d8876dc41d
improve change email
author | Franklin Schmidt <fschmidt@gmail.com> |
---|---|
date | Tue, 29 Nov 2022 18:45:22 -0700 |
parents | 31c895b73bd0 |
children |
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 to = Http.request.parameters.to or user_error "missing to 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 = to Subject = "Change Email" body = output_of(function() %> Change your email address to <%=email%> by clicking this link: <%=base_url%>/change_email.html?email=<%=url_encode(email)%>&password=<%=password%> If you don't want to change your email address, then don't click on the link. <% end) } return { okay = true } end)