class SeatSelector::Venue

Attributes

available_seats[R]
total_columns[R]
total_rows[R]

Public Class Methods

new(all_seats, total_rows, total_columns) click to toggle source
# File lib/seat_selector/venue.rb, line 5
def initialize(all_seats, total_rows, total_columns)
  @total_rows = total_rows
  @total_columns = total_columns
  @available_seats = build_available_seats(all_seats)
end

Private Instance Methods

build_available_seats(all_seats) click to toggle source
# File lib/seat_selector/venue.rb, line 13
def build_available_seats(all_seats)
  all_seats.each_with_object({}) do |s, seats|
    if s.available?
      seats[s.row] ||= {}
      seats[s.row][s.column] = s
    end
  end
end