Class: FellowshipOne::Contribution

Inherits:
ApiObject
  • Object
show all
Defined in:
lib/api/contribution.rb

Instance Attribute Summary

Attributes inherited from ApiObject

#error_messages, #marked_for_destruction

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from ApiObject

__f1_attributes, f1_attr_accessor, #initialize_from_json_object, #save, #set_attributes, #to_attributes

Constructor Details

#initialize(reader = nil) ⇒ Contribution

Constructor.

Parameters:

  • reader (optional) (defaults to: nil)

    The object that has the data. This can be a ContributionReader or Hash object.



52
53
54
55
56
57
58
59
60
61
62
# File 'lib/api/contribution.rb', line 52

def initialize(reader = nil)      
  @writer_object = ContributionWriter
  if reader.is_a?(ContributionReader)
    initialize_from_json_object(reader.load_feed['contributionReceipt'])
  elsif reader.is_a?(Hash)
    initialize_from_json_object(reader)
  else # new 
    reader = ContributionReader.new
    initialize_from_json_object(reader.load_new['contributionReceipt'])        
  end   
end

Class Method Details

.load_by_id(contribution_id) ⇒ Object

Load the contribution by the specified ID.

Returns a new Contribution object.

Parameters:

  • contribution_id

    The ID of the contribution to load.



44
45
46
47
# File 'lib/api/contribution.rb', line 44

def self.load_by_id(contribution_id)
  reader = ContributionReader.new(contribution_id)
  self.new(reader)
end

Instance Method Details

#_default_result_keyObject



90
91
92
# File 'lib/api/contribution.rb', line 90

def _default_result_key
  'contributionReceipt'
end

#_field_mapObject



94
95
96
97
98
# File 'lib/api/contribution.rb', line 94

def _field_map
  {:id => '@id',
   :uri => '@uri',
   :oldId => '@oldID'}
end

#amount_centsObject



82
83
84
# File 'lib/api/contribution.rb', line 82

def amount_cents
  (self.amount.to_f * 100).to_i
end

#fund_idObject



65
66
67
# File 'lib/api/contribution.rb', line 65

def fund_id
  self.fund['@id']
end

#household_idObject



73
74
75
# File 'lib/api/contribution.rb', line 73

def household_id
	self.household['@id']
end

#individual_idObject Also known as: person_id



77
78
79
# File 'lib/api/contribution.rb', line 77

def individual_id
	self.person['@id']
end

#instrument_typeObject



86
87
88
# File 'lib/api/contribution.rb', line 86

def instrument_type
  self.contribution_type['name']
end

#sub_fund_idObject



69
70
71
# File 'lib/api/contribution.rb', line 69

def sub_fund_id
  self.sub_fund['@id']
end