Sha256: 4f0731796100a8152c665556549532f6d6760d27e77428aadcc88525541ac063
Contents?: true
Size: 929 Bytes
Versions: 1
Compression:
Stored size: 929 Bytes
Contents
# City model class EventsNearby::City attr_accessor :name, :state, :events @@all = [] def initialize(name, state) @name = name @state = state @events = [] @@all << self end # Adds new event to city array def add_event(event) self.events << event unless self.events.include?(event) end def self.all @@all end # Find city if city and state combination exist already def self.find_by(name, state) self.all.detect{|city| city.name == name && city.state == state} end # Parse user city input and return name of city and state def self.parse_city_input(city_input) data = city_input.split(/[\s,]+/) if city_input.include?(",") state = data.last.gsub(/[^0-9A-Za-z]/, '').upcase city_array = data.first data.size - 1 else city_array = data end name = city_array.collect do |item| item.gsub(/[^0-9A-Za-z]/, '').capitalize end.join(" ") {name: name, state: state} end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
events_nearby-0.1.1 | lib/events_nearby/city.rb |