class Xeroizer::Record::ContactGroup

Public Instance Methods

add_contact(contact) click to toggle source

Adding Contact uses different API endpoint developer.xero.com/documentation/api/contactgroups#PUT

# File lib/xeroizer/models/contact_group.rb, line 20
def add_contact(contact)
  @contacts ||= []
  @contacts <<  contact
end
cg_xml() click to toggle source
# File lib/xeroizer/models/contact_group.rb, line 50
def cg_xml
  b = Builder::XmlMarkup.new(:indent => 2)
  b.tag!('Contacts') do
    @contacts.each do |c|
      b.tag!('Contact') do
        b.tag!('ContactID', c.id)
      end
    end
  end
end
delete() click to toggle source
# File lib/xeroizer/models/contact_group.rb, line 25
def delete
  status = 'DELETED'
end
name=(value) click to toggle source
# File lib/xeroizer/models/contact_group.rb, line 29
def name=(value)
  @modified = true unless @attributes[:name].nil? or @attributes[:name] == value
  @attributes[:name] = value
end
save!() click to toggle source
Calls superclass method
# File lib/xeroizer/models/contact_group.rb, line 39
def save!
  super if new_record? or @modified
  @modified = false
  if @contacts
    req = cg_xml
    app = parent.application
    res = app.http_put(app.client, "#{parent.url}/#{CGI.escape(id)}/Contacts", req)
    parse_save_response(res)
  end
end
status=(value) click to toggle source
# File lib/xeroizer/models/contact_group.rb, line 34
def status=(value)
  @modified = true unless @attributes[:status].nil? or @attributes[:status] == value
  @attributes[:status] = value
end