Module: Parliament::Decorators::ConstituencyGroup

Defined in:
lib/parliament/decorators/constituency_group.rb

Instance Method Summary collapse

Instance Method Details

#areaObject



42
43
44
# File 'lib/parliament/decorators/constituency_group.rb', line 42

def area
  respond_to?(:constituencyGroupHasConstituencyArea) ? constituencyGroupHasConstituencyArea.first : nil
end

#contact_pointsObject



46
47
48
49
50
51
52
53
54
55
# File 'lib/parliament/decorators/constituency_group.rb', line 46

def contact_points
  return @contact_points unless @contact_points.nil?

  contact_points = []
  seat_incumbencies.each do |seat_incumbency|
    contact_points << seat_incumbency.contact_points
  end

  @contact_points = contact_points.flatten.uniq
end

#current?Boolean

Returns:

  • (Boolean)


57
58
59
60
61
# File 'lib/parliament/decorators/constituency_group.rb', line 57

def current?
  has_end_date = respond_to?(:constituencyGroupEndDate)

  !has_end_date
end

#end_dateObject



12
13
14
# File 'lib/parliament/decorators/constituency_group.rb', line 12

def end_date
  respond_to?(:constituencyGroupEndDate) ? DateTime.parse(constituencyGroupEndDate) : nil
end

#membersObject



31
32
33
34
35
36
37
38
39
40
# File 'lib/parliament/decorators/constituency_group.rb', line 31

def members
  return @members unless @members .nil?

  members = []
  seat_incumbencies.each do |seat_incumbency|
    members << seat_incumbency.member
  end

  @members = members.flatten.uniq
end

#nameObject



4
5
6
# File 'lib/parliament/decorators/constituency_group.rb', line 4

def name
  respond_to?(:constituencyGroupName) ? constituencyGroupName : ''
end

#seat_incumbenciesObject



20
21
22
23
24
25
26
27
28
29
# File 'lib/parliament/decorators/constituency_group.rb', line 20

def seat_incumbencies
  return @seat_incumbencies unless @seat_incumbencies.nil?

  seat_incumbencies = []
  seats.each do |seat|
    seat_incumbencies << seat.seat_incumbencies
  end

  @seat_incumbencies = seat_incumbencies.flatten.uniq
end

#seatsObject



16
17
18
# File 'lib/parliament/decorators/constituency_group.rb', line 16

def seats
  respond_to?(:constituencyGroupHasHouseSeat) ? constituencyGroupHasHouseSeat : []
end

#start_dateObject



8
9
10
# File 'lib/parliament/decorators/constituency_group.rb', line 8

def start_date
  respond_to?(:constituencyGroupStartDate) ? DateTime.parse(constituencyGroupStartDate) : nil
end