--- /dev/null
+var highlight;
+
+function highlightChangeset(id) {
+ var feature = vectors.getFeatureByFid(id);
+ var bounds = feature.geometry.getBounds();
+
+ if (bounds.containsBounds(map.getExtent())) {
+ bounds = map.getExtent().scale(1.1);
+ }
+
+ if (highlight) vectors.removeFeatures(highlight);
+
+ highlight = new OpenLayers.Feature.Vector(bounds.toGeometry(), {}, {
+ strokeWidth: 2,
+ strokeColor: "#ee9900",
+ fillColor: "#ffff55",
+ fillOpacity: 0.5
+ });
+
+ vectors.addFeatures(highlight);
+
+ $("#tr-changeset-" + id).addClass("selected");
+}
+
+function unHighlightChangeset(id) {
+ vectors.removeFeatures(highlight);
+
+ $("#tr-changeset-" + id).removeClass("selected");
+}
+
+$(document).ready(function () {
+ var map = createMap("changeset_list_map", {
+ controls: [
+ new OpenLayers.Control.Navigation(),
+ new OpenLayers.Control.Zoom(),
+ new OpenLayers.Control.SimplePanZoom()
+ ]
+ });
+
+ var bounds = new OpenLayers.Bounds();
+
+ $("[data-changeset]").each(function () {
+ var changeset = $(this).data('changeset');
+ if (changeset.bbox) {
+ var bbox = new OpenLayers.Bounds(changeset.bbox.minlon, changeset.bbox.minlat, changeset.bbox.maxlon, changeset.bbox.maxlat);
+
+ bounds.extend(bbox);
+
+ addBoxToMap(bbox, changeset.id, true);
+ }
+ });
+
+ vectors.events.on({
+ "featureselected": function(feature) {
+ highlightChangeset(feature.feature.fid);
+ },
+ "featureunselected": function(feature) {
+ unHighlightChangeset(feature.feature.fid);
+ }
+ });
+
+ var selectControl = new OpenLayers.Control.SelectFeature(vectors, {
+ multiple: false,
+ hover: true
+ });
+ map.addControl(selectControl);
+ selectControl.activate();
+
+ var params = OSM.mapParams();
+ if (params.bbox) {
+ map.zoomToExtent(proj(new OpenLayers.Bounds(params.minlon, params.minlat, params.maxlon, params.maxlat)));
+ } else {
+ map.zoomToExtent(proj(bounds));
+ }
+});
<div id="changeset_list_map">
</div>
-
-<script type="text/javascript">
- var highlight;
-
- function highlightChangeset(id) {
- var feature = vectors.getFeatureByFid(id);
- var bounds = feature.geometry.getBounds();
-
- if (bounds.containsBounds(map.getExtent())) {
- bounds = map.getExtent().scale(1.1);
- }
-
- if (highlight) vectors.removeFeatures(highlight);
-
- highlight = new OpenLayers.Feature.Vector(bounds.toGeometry(), {}, {
- strokeWidth: 2,
- strokeColor: "#ee9900",
- fillColor: "#ffff55",
- fillOpacity: 0.5
- });
-
- vectors.addFeatures(highlight);
-
- $("#tr-changeset-" + id).addClass("selected");
- }
-
- function unHighlightChangeset(id) {
- vectors.removeFeatures(highlight);
-
- $("#tr-changeset-" + id).removeClass("selected");
- }
-
- $(document).ready(function () {
- var map = createMap("changeset_list_map", {
- controls: [
- new OpenLayers.Control.Navigation(),
- new OpenLayers.Control.Zoom(),
- new OpenLayers.Control.SimplePanZoom()
- ]
- });
-
- var bounds = new OpenLayers.Bounds();
-
- $("[data-changeset]").each(function () {
- var changeset = $(this).data('changeset');
- if (changeset.bbox) {
- var bbox = new OpenLayers.Bounds(changeset.bbox.minlon, changeset.bbox.minlat, changeset.bbox.maxlon, changeset.bbox.maxlat);
-
- bounds.extend(bbox);
-
- addBoxToMap(bbox, changeset.id, true);
- }
- });
-
- vectors.events.on({
- "featureselected": function(feature) {
- highlightChangeset(feature.feature.fid);
- },
- "featureunselected": function(feature) {
- unHighlightChangeset(feature.feature.fid);
- }
- });
-
- var selectControl = new OpenLayers.Control.SelectFeature(vectors, {
- multiple: false,
- hover: true
- });
- map.addControl(selectControl);
- selectControl.activate();
-
- var params = OSM.mapParams();
- if (params.bbox) {
- map.zoomToExtent(proj(new OpenLayers.Bounds(params.minlon, params.minlat, params.maxlon, params.maxlat)));
- } else {
- map.zoomToExtent(proj(bounds));
- }
- });
-</script>
+<% content_for :head do -%>
+ <%= javascript_include_tag "changeset" %>
+<% end -%>
+
<h1><%= @heading %></h1>
<p><%= raw(@description) %></p>
# config.action_controller.asset_host = "http://assets.example.com"
# Precompile additional assets (application.js, application.css, and all non-JS/CSS are already added)
- config.assets.precompile += %w( index.js edit.js browse.js pngfix.js swfobject.js )
+ config.assets.precompile += %w( index.js edit.js browse.js changeset.js pngfix.js swfobject.js )
config.assets.precompile += %w( large-ltr.css small-ltr.css print-ltr.css )
config.assets.precompile += %w( large-rtl.css small-rtl.css print-rtl.css )
config.assets.precompile += %w( browse.css theme/openstreetmap/style.css )