Sha256: 91edc665994878ee53d5dda6bf5ea1b02f7ca6c219747b2b3cbfd296c7c89ad8

Contents?: true

Size: 1.46 KB

Versions: 5

Compression:

Stored size: 1.46 KB

Contents

module Parliament
  module Decorators
    module ConstituencyGroup
      def name
        respond_to?(:constituencyGroupName) ? constituencyGroupName : ''
      end

      def start_date
        respond_to?(:constituencyGroupStartDate) ? constituencyGroupStartDate : ''
      end

      def end_date
        respond_to?(:constituencyGroupEndDate) ? constituencyGroupEndDate : ''
      end

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

      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

      def members
        return @members unless @members .nil?

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

        @members = members.flatten.uniq
      end

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

      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
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
parliament-ruby-0.4.0 lib/parliament/decorators/constituency_group.rb
parliament-ruby-0.3.0 lib/parliament/decorators/constituency_group.rb
parliament-ruby-0.2.2 lib/parliament/decorators/constituency_group.rb
parliament-ruby-0.2.1 lib/parliament/decorators/constituency_group.rb
parliament-ruby-0.2.0 lib/parliament/decorators/constituency_group.rb