liquid_feedback_frontend

annotate model/newsletter.lua @ 1248:c0fd12b97d65

Changes on notifications system, newsletter support added
author bsw
date Tue Apr 05 20:40:37 2016 +0200 (2016-04-05)
parents
children 659e3eda2fad
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@1248 9 local newsletter = newsletter_to_send.newsletter
bsw@1248 10
bsw@1248 11 local newsletter_to_send = NewsletterToSend:by_newsletter_id(newsletter.id)
bsw@1248 12 newsletter_to_send:load("member")
bsw@1248 13
bsw@1248 14 newsletter.sent = "now"
bsw@1248 15 newsletter:save()
bsw@1248 16
bsw@1248 17 io.stderr:write("Sending newsletter " .. newsletter.id .. " to " .. (#newsletter_to_send) .. " members\n")
bsw@1248 18
bsw@1248 19 for i, n in ipairs(newsletter_to_send) do
bsw@1248 20
bsw@1248 21 local member = newsletter_to_send.member
bsw@1248 22
bsw@1248 23 if not member.notify_email then
bsw@1248 24 return
bsw@1248 25 end
bsw@1248 26
bsw@1248 27 io.stderr:write("Sending newsletter " .. newsletter.id .. " to " .. member.notify_email .. "\n")
bsw@1248 28
bsw@1248 29 local success = net.send_mail{
bsw@1248 30 envelope_from = config.mail_envelope_from,
bsw@1248 31 from = config.mail_from,
bsw@1248 32 reply_to = config.mail_reply_to,
bsw@1248 33 to = member.notify_email,
bsw@1248 34 subject = newsletter.subject,
bsw@1248 35 content_type = "text/plain; charset=UTF-8",
bsw@1248 36 content = newsletter.content
bsw@1248 37 }
bsw@1248 38
bsw@1248 39 end
bsw@1248 40
bsw@1248 41 end

Impressum / About Us