liquid_feedback_frontend

annotate model/newsletter.lua @ 1297:9ecd059eee79

Fix newsletter sending
author bsw
date Mon Apr 18 17:57:38 2016 +0200 (2016-04-18)
parents 659e3eda2fad
children fd50bdd36a4b
rev   line source
bsw@1248 1 Newsletter = mondelefant.new_class()
bsw@1248 2 Newsletter.table = 'newsletter'
bsw@1248 3
bsw@1248 4 function Newsletter:send_next_newsletter()
bsw@1248 5 local newsletter_to_send = NewsletterToSend:get_next()
bsw@1248 6 if not newsletter_to_send then
bsw@1248 7 return false
bsw@1248 8 end
bsw@1252 9
bsw@1248 10 local newsletter = newsletter_to_send.newsletter
bsw@1248 11
bsw@1248 12 local newsletter_to_send = NewsletterToSend:by_newsletter_id(newsletter.id)
bsw@1248 13 newsletter_to_send:load("member")
bsw@1252 14
bsw@1248 15 newsletter.sent = "now"
bsw@1248 16 newsletter:save()
bsw@1252 17
bsw@1248 18 io.stderr:write("Sending newsletter " .. newsletter.id .. " to " .. (#newsletter_to_send) .. " members\n")
bsw@1248 19
bsw@1248 20 for i, n in ipairs(newsletter_to_send) do
bsw@1248 21
bsw@1297 22 local member = n.member
bsw@1248 23
bsw@1252 24 if member.notify_email then
bsw@1252 25 io.stderr:write("Sending newsletter " .. newsletter.id .. " to " .. member.notify_email .. "\n")
bsw@1252 26
bsw@1252 27 local success = net.send_mail{
bsw@1252 28 envelope_from = config.mail_envelope_from,
bsw@1252 29 from = config.mail_from,
bsw@1252 30 reply_to = config.mail_reply_to,
bsw@1252 31 to = member.notify_email,
bsw@1252 32 subject = newsletter.subject,
bsw@1252 33 content_type = "text/plain; charset=UTF-8",
bsw@1252 34 content = newsletter.content
bsw@1252 35 }
bsw@1248 36 end
bsw@1248 37
bsw@1248 38 end
bsw@1248 39
bsw@1252 40 return true
bsw@1252 41
bsw@1248 42 end

Impressum / About Us