aboutsummaryrefslogtreecommitdiffstats
path: root/app/maps/route_section_map.rb
diff options
context:
space:
mode:
Diffstat (limited to 'app/maps/route_section_map.rb')
-rw-r--r--app/maps/route_section_map.rb66
1 files changed, 0 insertions, 66 deletions
diff --git a/app/maps/route_section_map.rb b/app/maps/route_section_map.rb
deleted file mode 100644
index de4d5e746..000000000
--- a/app/maps/route_section_map.rb
+++ /dev/null
@@ -1,66 +0,0 @@
-class RouteSectionMap < ApplicationMap
-
- attr_reader :route_section
-
- attr_accessor :editable
- alias_method :editable?, :editable
-
- def initialize(route_section, editable = false)
- @route_section = route_section
- @editable = editable
- end
-
- def customize_map(map, page)
- # layers order seems to matter for ModifyFeature control
- route_section.stop_areas.each do |stop_area|
- layer = "stop_area_#{stop_area.id}".to_sym
- page.assign layer.to_s, kml_layer(stop_area, :styleMap => Design::StopAreasStyleMap.new(helpers).style_map)
- page << map.add_layer(layer)
- page << map.add_control( hover_control_display_name(layer) )
- end
-
- geometry_options = {}.tap do |options|
- options[:mode] = :editable if editable?
- end
- geometry_uneditable_kml_layer = kml_layer(route_section, :styleMap => Design::RouteSectionSelectorStyleMap.new(helpers).style_map)
- page << map.add_layer(geometry_uneditable_kml_layer)
-
- if route_section.input_geometry
- geometry_editable_layer = kml_layer(route_section, geometry_options, {}) # , :styleMap => Design::LineStyleMap.new(style: nil).style_map)
- else
- points = route_section.stop_areas.map{|point| OpenLayers::Geometry::Point.new(point.longitude, point.latitude).transform("EPSG:4326", "EPSG:900913")}
- geometry_editable_layer = OpenLayers::Layer::Vector.new("user_geometry", {:projection => projection("EPSG:4326"), :styleMap => Design::RouteSectionStyleMap.new(helpers).style_map})
- geometry_editable_features = OpenLayers::Feature::Vector.new(OpenLayers::Geometry::LineString.new(points))
- page.assign :geometry_editable_features, geometry_editable_features
- end
-
- if editable
- page.assign :user_geometry, geometry_editable_layer
-
- page << "user_geometry.addFeatures([geometry_editable_features])" if geometry_editable_features
-
- page << map.add_layer(:user_geometry)
-
- page.assign :modify_feature, OpenLayers::Control::ModifyFeature.new(:user_geometry, autoActivate: true)
- page << map.add_control( :modify_feature )
- else
- page << map.add_layer(geometry_editable_layer)
- end
-
- page << map.zoom_to_extent(bounds.to_google.to_openlayers) if bounds
- end
-
- def bounds
- @bounds ||=
- if route_section.geometry.present?
- route_section.geometry.bounds
- elsif route_section.stop_areas.present?
- GeoRuby::SimpleFeatures::Point.bounds route_section.stop_areas.collect(&:geometry)
- end
- end
-
- def ready?
- bounds.present?
- end
-
-end