liquid_feedback_frontend

view app/main/index/_action/send_login.lua @ 1668:6d75df24e66e

Updated German translation
author bsw
date Sun Mar 07 09:52:36 2021 +0100 (2021-03-07)
parents 130eed8f7a79
children 1c329811e47f
line source
1 trace.disable()
3 local email = param.get("email")
5 local members = Member:new_selector()
6 :add_where{ "split_part(notify_email, '@', 1) = split_part(?, '@', 1)", email }
7 :add_where{ "lower(split_part(notify_email, '@', 2)) = lower(split_part(?, '@', 2))", email }
8 :add_where("login_recovery_expiry ISNULL OR login_recovery_expiry < now()")
9 :exec()
11 if #members > 0 then
13 local logins = {}
15 for i, member in ipairs(members) do
16 local expiry = db:query("SELECT now() + '7 days'::interval as expiry", "object").expiry
17 member.login_recovery_expiry = expiry
18 member:save()
19 logins[#logins+1] = member.login
20 end
22 local content = slot.use_temporary(function()
23 slot.put(_"Hello,\n\n")
24 slot.put(_"the following login is connected to this email address:\n\n")
25 for i, login in ipairs(logins) do
26 slot.put(_"Login-Name: " .. login .. "\n")
27 end
28 end)
30 local success = net.send_mail{
31 envelope_from = config.mail_envelope_from,
32 from = config.mail_from,
33 reply_to = config.mail_reply_to,
34 to = email,
35 subject = config.mail_subject_prefix .. _"Login name request",
36 content_type = "text/plain; charset=UTF-8",
37 content = content
38 }
40 end
42 slot.put_into("notice", _"Your request has been processed.")

Impressum / About Us