class Osm::Email::DeliveryReport::Email
Constants
- SORT_BY
Protected Class Methods
fetch_from_osm(api, section_id, email_id, member_id=nil, email_address='')
click to toggle source
Get email contents @param [Osm::Api] api The api to use to make the request @param [Integer] section_id @param [Integer] email_id @param [String] email_address @return [Osm::Email::DeliveryReport::Email]
# File lib/osm/email.rb, line 366 def self.fetch_from_osm(api, section_id, email_id, member_id=nil, email_address='') Osm::Model.require_access_to_section(api, section_id) data = api.perform_query("ext/settings/emails/?action=getSentEmail§ion_id=#{section_id}&email_id=#{email_id}&email=#{email_address}&member_id=#{member_id}") fail Osm::Error, "Unexpected format for response - got a #{data.class}" unless data.is_a?(Hash) fail Osm::Error, data['error'].to_s unless data['status'] fail Osm::Error, "Unexpected format for meta data - got a #{data.class}" unless data['data'].is_a?(Hash) body = api.perform_query("ext/settings/emails/?action=getSentEmailContent§ion_id=#{section_id}&email_id=#{email_id}&email=#{email_address}&member_id=#{member_id}", {}, true) fail Osm::Error, data if data.eql?('Email not found') email_data = data['data'] new( to: email_data['to'], from: email_data['from'], subject: email_data['subject'], body: body, ) end
Public Instance Methods
to_s()
click to toggle source
@!method initialize
Initialize a new DeliveryReport::Email @param [Hash] attributes The hash of attributes (see attributes for descriptions, use Symbol of attribute name as the key)
# File lib/osm/email.rb, line 355 def to_s "To: #{to}\nFrom: #{from}\n\n#{subject}\n\n#{body.gsub(/<\/?[^>]*>/, '')}" end