diff options
| author | Marc Florisson | 2013-07-01 14:44:14 +0200 |
|---|---|---|
| committer | Marc Florisson | 2013-07-01 14:44:14 +0200 |
| commit | f66e6fbdbae9f98e2814b44bf50dbb02a17c9f2c (patch) | |
| tree | ab34e381bf005fcb34fb73f089fa78592998766f | |
| parent | 3529f9d5f2851b65fcf94b5a4ec3b722b9f6c64c (diff) | |
| download | chouette-core-f66e6fbdbae9f98e2814b44bf50dbb02a17c9f2c.tar.bz2 | |
fix ign maps for access_links, access_points, group_of_line
| -rw-r--r-- | app/maps/access_link_map.rb | 24 | ||||
| -rw-r--r-- | app/maps/access_point_map.rb | 66 | ||||
| -rw-r--r-- | app/maps/group_of_line_map.rb | 18 |
3 files changed, 42 insertions, 66 deletions
diff --git a/app/maps/access_link_map.rb b/app/maps/access_link_map.rb index daf49738a..fcca1250f 100644 --- a/app/maps/access_link_map.rb +++ b/app/maps/access_link_map.rb @@ -8,22 +8,14 @@ class AccessLinkMap < ApplicationMap @access_link_style = access_link_style end - def map - @map ||= MapLayers::Map.new(id, :projection => projection("EPSG:900913"), :controls => controls) do |map, page| - page << map.add_layer(MapLayers::OSM_MAPNIK) - page << map.add_layer(google_physical) - page << map.add_layer(google_streets) - page << map.add_layer(google_hybrid) - page << map.add_layer(google_satellite) - - page.assign "access_points_layer", kml_layer([access_link.referential, access_link.access_point], :styleMap => StyleMap::AccessPointsStyleMap.new(helpers).style_map) - page << map.add_layer(:access_points_layer) - page.assign "stop_areas_layer", kml_layer([access_link.referential, access_link.stop_area], :styleMap => StyleMap::StopAreasStyleMap.new(helpers).style_map) - page << map.add_layer(:stop_areas_layer) - page << map.add_layer( kml_layer([access_link.referential, access_link.access_point, access_link], :styleMap => StyleMap::AccessLinkStyleMap.new(helpers).style_map)) - page << map.add_control( hover_control_display_name([:access_points_layer,:stop_areas_layer]) ) - page << map.zoom_to_extent(bounds.to_google.to_openlayers) if bounds - end + def customize_map(map, page) + page.assign "access_points_layer", kml_layer([access_link.referential, access_link.access_point], :styleMap => StyleMap::AccessPointsStyleMap.new(helpers).style_map) + page << map.add_layer(:access_points_layer) + page.assign "stop_areas_layer", kml_layer([access_link.referential, access_link.stop_area], :styleMap => StyleMap::StopAreasStyleMap.new(helpers).style_map) + page << map.add_layer(:stop_areas_layer) + page << map.add_layer( kml_layer([access_link.referential, access_link.access_point, access_link], :styleMap => StyleMap::AccessLinkStyleMap.new(helpers).style_map)) + page << map.add_control( hover_control_display_name([:access_points_layer,:stop_areas_layer]) ) + page << map.zoom_to_extent(bounds.to_google.to_openlayers) if bounds end def ready? diff --git a/app/maps/access_point_map.rb b/app/maps/access_point_map.rb index 8cacdc8c0..c1fbd2a16 100644 --- a/app/maps/access_point_map.rb +++ b/app/maps/access_point_map.rb @@ -9,46 +9,38 @@ class AccessPointMap < ApplicationMap @access_point = access_point end - def map - @map ||= MapLayers::Map.new(id, :projection => projection("EPSG:900913"), :controls => controls) do |map, page| - page << map.add_layer(MapLayers::OSM_MAPNIK) - page << map.add_layer(google_physical) - page << map.add_layer(google_streets) - page << map.add_layer(google_hybrid) - page << map.add_layer(google_satellite) - - page.assign "parent_layer", kml_layer(access_point.stop_area, :style_map => StyleMap::StopAreasStyleMap.new(helpers).style_map) - page << map.add_layer(:parent_layer) - page.assign "edit_access_point_layer", kml_layer(access_point, { :default => editable? }, :style_map => StyleMap::EditAccessPointStyleMap.new(helpers).style_map) - page << map.add_layer(:edit_access_point_layer) - - - if editable? - page.assign "referential_projection", projection_type.present? ? projection("EPSG:" + projection_type) : JsVar.new("undefined") - # TODO virer ce code inline - page << <<EOF - edit_access_point_layer.events.on({ - 'afterfeaturemodified': function(event) { - geometry = event.feature.geometry.clone().transform(new OpenLayers.Projection("EPSG:900913"), new OpenLayers.Projection("EPSG:4326")); - $('#access_point_longitude').val(geometry.x); - $('#access_point_latitude').val(geometry.y); - - if(referential_projection != undefined) - { - projection_geometry = event.feature.geometry.clone().transform(new OpenLayers.Projection("EPSG:900913"), referential_projection ); - $('#access_point_projection_x').val(projection_geometry.x); - $('#access_point_projection_y').val(projection_geometry.y); } - } - }); + def customize_map(map, page) + page.assign "parent_layer", kml_layer(access_point.stop_area, :style_map => StyleMap::StopAreasStyleMap.new(helpers).style_map) + page << map.add_layer(:parent_layer) + page.assign "edit_access_point_layer", kml_layer(access_point, { :default => editable? }, :style_map => StyleMap::EditAccessPointStyleMap.new(helpers).style_map) + page << map.add_layer(:edit_access_point_layer) + + + if editable? + page.assign "referential_projection", projection_type.present? ? projection("EPSG:" + projection_type) : JsVar.new("undefined") + # TODO virer ce code inline + page << <<EOF + edit_access_point_layer.events.on({ + 'afterfeaturemodified': function(event) { + geometry = event.feature.geometry.clone().transform(new OpenLayers.Projection("EPSG:900913"), new OpenLayers.Projection("EPSG:4326")); + $('#access_point_longitude').val(geometry.x); + $('#access_point_latitude').val(geometry.y); + + if(referential_projection != undefined) + { + projection_geometry = event.feature.geometry.clone().transform(new OpenLayers.Projection("EPSG:900913"), referential_projection ); + $('#access_point_projection_x').val(projection_geometry.x); + $('#access_point_projection_y').val(projection_geometry.y); } + } + }); EOF - page << map.add_control(OpenLayers::Control::ModifyFeature.new(:edit_access_point_layer, :mode => 8, :autoActivate => true)) + page << map.add_control(OpenLayers::Control::ModifyFeature.new(:edit_access_point_layer, :mode => 8, :autoActivate => true)) - else - page << map.add_control( hover_control_display_name(:parent_layer) ) - end - - page << map.set_center(center.to_google.to_openlayers, 16, false, true) + else + page << map.add_control( hover_control_display_name(:parent_layer) ) end + + page << map.set_center(center.to_google.to_openlayers, 16, false, true) end def projection_type diff --git a/app/maps/group_of_line_map.rb b/app/maps/group_of_line_map.rb index fdd8cac1d..df1708597 100644 --- a/app/maps/group_of_line_map.rb +++ b/app/maps/group_of_line_map.rb @@ -7,20 +7,12 @@ class GroupOfLineMap < ApplicationMap @group_of_line_style = group_of_line_style end - def map - @map ||= MapLayers::Map.new(id, :projection => projection("EPSG:900913"), :controls => controls) do |map, page| - page << map.add_layer(MapLayers::OSM_MAPNIK) - page << map.add_layer(google_physical) - page << map.add_layer(google_streets) - page << map.add_layer(google_hybrid) - page << map.add_layer(google_satellite) - - page.assign "stop_areas_layer", kml_layer([group_of_line.referential, group_of_line], :styleMap => StyleMap::StopAreasStyleMap.new(helpers).style_map) + def customize_map(map, page) + page.assign "stop_areas_layer", kml_layer([group_of_line.referential, group_of_line], :styleMap => StyleMap::StopAreasStyleMap.new(helpers).style_map) - page << map.add_layer(:stop_areas_layer) - page << map.add_control( hover_control_display_name(:stop_areas_layer) ) - page << map.zoom_to_extent(bounds.to_google.to_openlayers) if bounds - end + page << map.add_layer(:stop_areas_layer) + page << map.add_control( hover_control_display_name(:stop_areas_layer) ) + page << map.zoom_to_extent(bounds.to_google.to_openlayers) if bounds end def bounds |
