class ConstantContact::Components::Contact

Attributes

addresses[RW]
cell_phone[RW]
company_name[RW]
confirmed[RW]
custom_fields[RW]
email_addresses[RW]
fax[RW]
first_name[RW]
home_phone[RW]
id[RW]
job_title[RW]
last_name[RW]
lists[RW]
middle_name[RW]
notes[RW]
prefix_name[RW]
source[RW]
source_details[RW]
status[RW]
work_phone[RW]

Public Class Methods

create(props) click to toggle source

Factory method to create a Contact object from a json string @param [Hash] props - properties to create object from @return [Contact]

# File lib/constantcontact/components/contacts/contact.rb, line 20
def self.create(props)
  obj = Contact.new
  if props
    props.each do |key, value|
      if key == 'email_addresses'
        if value
          obj.email_addresses = []
          value.each do |email_address|
            obj.email_addresses << Components::EmailAddress.create(email_address)
          end
        end
      elsif key == 'addresses'
        if value
          obj.addresses = []
          value.each do |address|
            obj.addresses << Components::Address.create(address)
          end
        end
      elsif key == 'notes'
        if value
          obj.notes = []
          value.each do |note|
            obj.notes << Components::Note.create(note)
          end
        end
      elsif key == 'custom_fields'
        if value
          obj.custom_fields = []
          value.each do |custom_field|
            obj.custom_fields << Components::CustomField.create(custom_field)
          end
        end
      elsif key == 'lists'
        if value
          obj.lists = []
          value.each do |contact_list|
            obj.lists << Components::ContactList.create(contact_list)
          end
        end
      else
        obj.send("#{key}=", value) if obj.respond_to? key
      end
    end
  end
  obj
end

Public Instance Methods

add_address(address) click to toggle source

Setter @param [Address] address

# File lib/constantcontact/components/contacts/contact.rb, line 85
def add_address(address)
  @addresses = [] if @addresses.nil?
  @addresses << address
end
add_email(email_address) click to toggle source

Setter @param [EmailAddress] email_address

# File lib/constantcontact/components/contacts/contact.rb, line 77
def add_email(email_address)
  @email_addresses = [] if @email_addresses.nil?
  @email_addresses << email_address
end
add_list(contact_list) click to toggle source

Setter @param [ContactList] contact_list

# File lib/constantcontact/components/contacts/contact.rb, line 69
def add_list(contact_list)
  @lists = [] if @lists.nil?
  @lists << contact_list
end