liquid_feedback_frontend
changeset 388:4795131441d9
Member method send_invitation now supports external template file
author | bsw |
---|---|
date | Mon Mar 05 17:40:50 2012 +0100 (2012-03-05) |
parents | e012250163ca |
children | d75ace4af616 |
files | model/member.lua |
line diff
1.1 --- a/model/member.lua Mon Mar 05 14:51:58 2012 +0100 1.2 +++ b/model/member.lua Mon Mar 05 17:40:50 2012 +0100 1.3 @@ -328,24 +328,38 @@ 1.4 :add_where("activated NOTNULL AND active") 1.5 end 1.6 1.7 -function Member.object:send_invitation() 1.8 +function Member.object:send_invitation(template_file, subject) 1.9 trace.disable() 1.10 self.invite_code = multirand.string( 24, "23456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz" ) 1.11 - local content = slot.use_temporary(function() 1.12 - slot.put(_"Hello\n\n") 1.13 - slot.put(_"You are invited to LiquidFeedback. To register please click the following link:\n\n") 1.14 - slot.put(request.get_absolute_baseurl() .. "index/register.html?invite=" .. self.invite_code .. "\n\n") 1.15 - slot.put(_"If this link is not working, please open following url in your web browser:\n\n") 1.16 - slot.put(request.get_absolute_baseurl() .. "index/register.html\n\n") 1.17 - slot.put(_"On that page please enter the invite key:\n\n") 1.18 - slot.put(self.invite_code .. "\n\n") 1.19 - end) 1.20 + self:save() 1.21 + 1.22 + local subject = subject 1.23 + local content 1.24 + 1.25 + if template_file then 1.26 + local fh = io.open(template_file, "r") 1.27 + content = fh:read("*a") 1.28 + content = (content:gsub("#{invite_code}", self.invite_code)) 1.29 + print (content) 1.30 + else 1.31 + subject = config.mail_subject_prefix .. _"Invitation to LiquidFeedback" 1.32 + content = slot.use_temporary(function() 1.33 + slot.put(_"Hello\n\n") 1.34 + slot.put(_"You are invited to LiquidFeedback. To register please click the following link:\n\n") 1.35 + slot.put(request.get_absolute_baseurl() .. "index/register.html?invite=" .. self.invite_code .. "\n\n") 1.36 + slot.put(_"If this link is not working, please open following url in your web browser:\n\n") 1.37 + slot.put(request.get_absolute_baseurl() .. "index/register.html\n\n") 1.38 + slot.put(_"On that page please enter the invite key:\n\n") 1.39 + slot.put(self.invite_code .. "\n\n") 1.40 + end) 1.41 + end 1.42 + 1.43 local success = net.send_mail{ 1.44 envelope_from = config.mail_envelope_from, 1.45 from = config.mail_from, 1.46 reply_to = config.mail_reply_to, 1.47 to = self.notify_email_unconfirmed or self.notify_email, 1.48 - subject = config.mail_subject_prefix .. _"Invitation to LiquidFeedback", 1.49 + subject = subject, 1.50 content_type = "text/plain; charset=UTF-8", 1.51 content = content 1.52 }