lib/gmail.rb in alexmchale-gmail-client-0.0.1 vs lib/gmail.rb in alexmchale-gmail-client-0.1.0

- old
+ new

@@ -22,30 +22,28 @@ @attachments << { :name => name, :data => data, :type => type } self end - def add_file(filename, content_type) - add_data File.basename(File.expand_path(filename)), File.read(filename), content_type - end - - def add_jpeg(filename, data = nil) - name = File.basename filename + def add_file(filename, content_type, data = nil) + name = File.basename File.expand_path filename data ||= File.read(filename) - type = 'image/jpeg' - - add_data name, data, type + add_data name, data, content_type end + def add_jpeg(filename, data = nil); add_file filename, 'image/jpeg', data; end + def add_png(filename, data = nil); add_file filename, 'image/png', data; end + def compose boundary = rand(2**128).to_s(16) if @attachments.length > 0 attachments = @attachments.map do |attachment| "--#{boundary}\r\n" + "Content-Type: #{attachment[:type]}; name=\"#{attachment[:name]}\"\r\n" + "Content-Disposition: attachment; filename=\"#{attachment[:name]}\"\r\n" + "Content-Transfer-Encoding: base64\r\n" + + "Content-ID: <#{attachment[:name]}>\r\n" + "\r\n" + Base64.encode64(attachment[:data]) end.compact.join "Date: #{Time.now.to_s}\r\n" +