lib/sendgrid-actionmailer.rb in sendgrid-actionmailer-0.0.5 vs lib/sendgrid-actionmailer.rb in sendgrid-actionmailer-0.1.0
- old
+ new
@@ -1,60 +2 @@
-require 'sendgrid-actionmailer/version'
-require 'sendgrid-actionmailer/railtie' if defined? Rails
-
-require 'tempfile'
-
-require 'sendgrid-ruby'
-
-module SendGridActionMailer
- class DeliveryMethod
- def initialize(params)
- @client = SendGrid::Client.new do |c|
- c.api_user = params[:api_user]
- c.api_key = params[:api_key]
- end
- end
-
- def deliver!(mail)
- email = SendGrid::Mail.new do |m|
- m.to = mail[:to].addresses
- m.from = mail[:from]
- m.subject = mail[:subject]
- end
-
- # TODO: This is pretty ugly
- case mail.mime_type
- when 'text/plain'
- # Text
- email.text = mail.body.decoded
- when 'text/html'
- # HTML
- email.html = mail.body.decoded
- when 'multipart/alternative'
- # Text and HTML
- email.text = mail.text_part.decoded
- email.html = mail.html_part.decoded
- when 'multipart/mixed'
- # Text and/or HTML and Attachment
- if mail.text_part.nil?
- email.html = mail.html_part.decoded
- elsif mail.html_part.nil?
- email.text = mail.text_part.decoded
- else
- email.text = mail.text_part.decoded
- email.html = mail.html_part.decoded
- end
-
- # This needs to be done better
- mail.attachments.each do |a|
- t = Tempfile.new("sendgrid-actionmailer#{rand(1000)}")
- t.binmode
- t.write(a.read)
- email.add_attachment(t, a.filename)
- end
-
- end
- @client.send(email)
- end
-
- end
-end
+require "sendgrid_actionmailer"