<%= javascript_include_tag '/openlayers/OpenLayers.js' %>
<%= javascript_include_tag '/openlayers/OpenStreetMap.js' %>
<%= javascript_include_tag 'map.js' %>
<div id="browse_map">
  <% if map.instance_of? Changeset or map.visible %>
  <div id="small_map">
  </div>
  <span id="loading"><%= t 'browse.map.loading' %></span>
  <a id="area_larger_map" href=""></a>
  <% unless map.instance_of? Changeset %>
    <br />
    <a id="object_larger_map" href=""></a>
  <% end %>
  <% else %>
    <%= t 'browse.map.deleted' %>
  <% end %>
</div>
<% if map.instance_of? Changeset or map.visible %>
  <script type="text/javascript">
    OpenLayers.Lang.setCode("<%= I18n.locale.to_s %>");

    function init() {
      var map = createMap("small_map", {
        controls: [ new OpenLayers.Control.Navigation() ]
      });

      <% if map.instance_of? Changeset %>
        var minlon = <%= map.min_lon / GeoRecord::SCALE.to_f %>;
        var minlat = <%= map.min_lat / GeoRecord::SCALE.to_f %>;
        var maxlon = <%= map.max_lon / GeoRecord::SCALE.to_f %>;
        var maxlat = <%= map.max_lat / GeoRecord::SCALE.to_f %>;
        var bbox = new OpenLayers.Bounds(minlon, minlat, maxlon, maxlat);

        setMapExtent(bbox);
        addBoxToMap(bbox);

        $("loading").innerHTML = "";

        $("area_larger_map").href = '/?minlon='+minlon+'&minlat='+minlat+'&maxlon='+maxlon+'&maxlat='+maxlat+'&box=yes';
        $("area_larger_map").innerHTML = "<%= t 'browse.map.larger.area' %>";
      <% else %>
        var obj_type = "<%= map.class.name.downcase %>";
        var obj_id = <%= map.id %>;
        var url = "/api/<%= "#{API_VERSION}" %>/<%= map.class.name.downcase %>/<%= map.id %>";

        if (obj_type != "node") {
          url += "/full";
        }

        addObjectToMap(url, true, function(extent) {
          $("loading").innerHTML = "";

          if (extent) {
            extent.transform(map.getProjectionObject(), map.displayProjection);

            $("area_larger_map").href = '/?minlon='+extent.left+'&minlat='+extent.bottom+'&maxlon='+extent.right+'&maxlat='+extent.top;
            $("area_larger_map").innerHTML = "<%= t 'browse.map.larger.area' %>";

            <% unless map.instance_of? Changeset %>
              $("object_larger_map").href = '/?<%= map.class.to_s.downcase %>=<%= map.id %>';
              $("object_larger_map").innerHTML = "<%= t('browse.map.larger.' + map.class.to_s.downcase) %>";
            <% end %>
          } else {
            $("small_map").style.display = "none";
          }
        });
      <% end %>
    }

    window.onload = init;
  </script>
<% end %>
