aboutsummaryrefslogtreecommitdiffstats
path: root/lib/mail_handler/backends/tmail_backend.rb
diff options
context:
space:
mode:
authorLouise Crow <louise.crow@gmail.com>2012-11-15 16:56:06 +0000
committerLouise Crow <louise.crow@gmail.com>2012-11-15 16:56:06 +0000
commitf5ced2133cd1a66e18b225208fa96f4f36a20889 (patch)
tree1401766c96e72041600f5470196c7481e746c4b0 /lib/mail_handler/backends/tmail_backend.rb
parent1e8083fe07483d7111530886a6c09cb3325aa53f (diff)
Move address_from_name_and_email to mail handler.
Diffstat (limited to 'lib/mail_handler/backends/tmail_backend.rb')
-rw-r--r--lib/mail_handler/backends/tmail_backend.rb11
1 files changed, 11 insertions, 0 deletions
diff --git a/lib/mail_handler/backends/tmail_backend.rb b/lib/mail_handler/backends/tmail_backend.rb
index 0fa90a657..1c5489145 100644
--- a/lib/mail_handler/backends/tmail_backend.rb
+++ b/lib/mail_handler/backends/tmail_backend.rb
@@ -41,6 +41,17 @@ module MailHandler
return part_file_name
end
+ def address_from_name_and_email(name, email)
+ if !MySociety::Validate.is_valid_email(email)
+ raise "invalid email " + email + " passed to address_from_name_and_email"
+ end
+ if name.nil?
+ return TMail::Address.parse(email)
+ end
+ # Botch an always quoted RFC address, then parse it
+ name = name.gsub(/(["\\])/, "\\\\\\1")
+ TMail::Address.parse('"' + name + '" <' + email + '>').to_s
+ end
end
end
end \ No newline at end of file