class StopAreaMap < ApplicationMap attr_reader :stop_area attr_accessor :editable alias_method :editable?, :editable def initialize(stop_area) @stop_area = stop_area end def customize_map(map, page) if stop_area.children.present? page.assign "children_layer", kml_layer(stop_area, { :children => true }, :style_map => Design::StopAreasStyleMap.new(helpers).style_map) page << map.add_layer(:children_layer) page << map.add_control( hover_control_display_name(:children_layer) ) end if stop_area.routing_stops.present? page.assign "routing_layer", kml_layer(stop_area, { :routing => true }, :style_map => Design::StopAreasStyleMap.new(helpers).style_map) page << map.add_layer(:routing_layer) page << map.add_control( hover_control_display_name(:routing_layer) ) page << map.zoom_to_extent(bounds.to_google.to_openlayers) if bounds else if stop_area.new_record? page << < editable? }, :style_map => Design::EditStopAreaStyleMap.new(helpers).style_map) end page << <