Class: CongressV3::Legislator

Inherits:
Object
  • Object
show all
Defined in:
lib/congress_v3/legislator.rb

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(params) ⇒ Legislator

Returns a new instance of Legislator.



6
7
8
9
10
11
# File 'lib/congress_v3/legislator.rb', line 6

def initialize(params)
  params.each do |key, value|
    instance_variable_set("@#{key}", value)
    self.class.send(:attr_reader, key)
  end
end

Class Method Details

.all(params = {}) ⇒ Object



2
3
4
# File 'lib/congress_v3/legislator.rb', line 2

def self.all(params={})
  CongressV3::Request.legislators(params)
end

Instance Method Details

#full_nameObject



13
14
15
16
17
18
19
# File 'lib/congress_v3/legislator.rb', line 13

def full_name
  if middle_name
    "#{first_name} #{middle_name} #{last_name}"
  else
    "#{first_name} #{last_name}"
  end
end

#termObject



21
22
23
# File 'lib/congress_v3/legislator.rb', line 21

def term
  Time.parse(term_start)...Time.parse(term_end)
end

#votes(params = {}) ⇒ Object



25
26
27
# File 'lib/congress_v3/legislator.rb', line 25

def votes(params={})
  @votes ||= CongressV3::Request.legislator_votes(bioguide_id, params)
end