Merge branch 'master' into openstreetbugs

This commit is contained in:
Tom Hughes 2011-05-06 22:56:47 +01:00
commit e7cd90f4b4
62 changed files with 3462 additions and 161 deletions

View file

@ -1,11 +1,19 @@
<tr>
<th><%= t 'browse.common_details.edited_at' %></th>
<% if common_details.visible? %>
<th><%= t 'browse.common_details.edited_at' %></th>
<% else %>
<th><%= t 'browse.common_details.deleted_at' %></th>
<% end %>
<td><%= l common_details.timestamp %></td>
</tr>
<% if common_details.changeset.user.data_public? %>
<tr>
<th><%= t 'browse.common_details.edited_by' %></th>
<% if common_details.visible? %>
<th><%= t 'browse.common_details.edited_by' %></th>
<% else %>
<th><%= t 'browse.common_details.deleted_by' %></th>
<% end %>
<td><%= link_to h(common_details.changeset.user.display_name), :controller => "user", :action => "view", :display_name => common_details.changeset.user.display_name %></td>
</tr>
<% end %>

View file

@ -1,4 +1,4 @@
<table id="<%= node_details.version %>">
<table class="browse_details" id="<%= node_details.version %>">
<%= render :partial => "common_details", :object => node_details %>

View file

@ -1,4 +1,4 @@
<table id="<%= relation_details.version %>">
<table class="browse_details" id="<%= relation_details.version %>">
<%= render :partial => "common_details", :object => relation_details %>

View file

@ -1,23 +1,25 @@
<table id="<%= way_details.version %>">
<table class="browse_details" id="<%= way_details.version %>">
<%= render :partial => "common_details", :object => way_details %>
<tr valign="top">
<th><%= t'browse.way_details.nodes' %></th>
<td>
<table cellpadding="0">
<% way_details.way_nodes.each do |wn| %>
<tr><td>
<%= link_to h(printable_name(wn.node)), { :action => "node", :id => wn.node_id.to_s }, :class => link_class('node', wn.node), :title => link_title(wn.node) %>
<% related_ways = wn.node.ways.reject { |w| w.id == way_details.id } %>
<% if related_ways.size > 0 then %>
(<%= t 'browse.way_details.also_part_of', :count => related_ways.size, :related_ways => related_ways.map { |w| link_to(h(printable_name(w)), { :action => "way", :id => w.id.to_s }, :class => link_class('way', w), :title => link_title(w) ) }.to_sentence %>)
<% end %>
</td></tr>
<% end %>
</table>
</td>
</tr>
<% unless way_details.way_nodes.empty? %>
<tr valign="top">
<th><%= t'browse.way_details.nodes' %></th>
<td>
<table cellpadding="0">
<% way_details.way_nodes.each do |wn| %>
<tr><td>
<%= link_to h(printable_name(wn.node)), { :action => "node", :id => wn.node_id.to_s }, :class => link_class('node', wn.node), :title => link_title(wn.node) %>
<% related_ways = wn.node.ways.reject { |w| w.id == way_details.id } %>
<% if related_ways.size > 0 then %>
(<%= t 'browse.way_details.also_part_of', :count => related_ways.size, :related_ways => related_ways.map { |w| link_to(h(printable_name(w)), { :action => "way", :id => w.id.to_s }, :class => link_class('way', w), :title => link_title(w) ) }.to_sentence %>)
<% end %>
</td></tr>
<% end %>
</table>
</td>
</tr>
<% end %>
<% unless way_details.containing_relation_members.empty? %>
<tr valign="top">

View file

@ -1,7 +1,7 @@
<tr>
<% cl = cycle('table0', 'table1') %>
<% cl = cycle('table0', 'table1') %>
<td class="<%= cl %>">
<tr class="<%= cl %>" id="tr-changeset-<%= changeset.id%>">
<td>
<%=
id_link = link_to(changeset.id,
{:controller => 'browse', :action => 'changeset', :id => changeset.id},
@ -10,45 +10,39 @@
%>
</td>
<td class="<%= cl %> date">
<% if changeset.closed_at > DateTime.now %> <%= t'changeset.changeset.still_editing' %>
<% else %><%= l changeset.closed_at, :format => :long %><% end %>
</td>
<td class="date">
<span class="date">
<% if changeset.closed_at > DateTime.now %> <%= t'changeset.changeset.still_editing' %>
<% else %><%= l changeset.closed_at, :format => :long %><% end %>
</span>
<%if showusername %>
<td class="<%= cl %> user">
<% if changeset.user.data_public? %>
<%= link_to h(changeset.user.display_name), :controller => "changeset", :action => "list", :display_name => changeset.user.display_name %>
<% else %>
<i><%= t'changeset.changeset.anonymous' %></i>
<%if showusername %>
<br />
<span class="user">
<% if changeset.user.data_public? %>
<%= link_to h(changeset.user.display_name), :controller => "changeset", :action => "list", :display_name => changeset.user.display_name %>
<% else %>
<i><%= t'changeset.changeset.anonymous' %></i>
<% end %>
</span>
<% end %>
</td>
<% end %>
</td>
<td class="<%= cl %> comment">
<td class="comment">
<% if changeset.tags['comment'].to_s != '' %>
<%= linkify(h(changeset.tags['comment'])) %>
<% else %>
<%= t'changeset.changeset.no_comment' %>
<% end %>
</td>
<td class="<%= cl %> area">
<% if changeset.min_lat.nil? %>
<%= t'changeset.changeset.no_edits' %>
<% else %>
<%
minlon = changeset.min_lon/GeoRecord::SCALE.to_f
minlat = changeset.min_lat/GeoRecord::SCALE.to_f
maxlon = changeset.max_lon/GeoRecord::SCALE.to_f
maxlat = changeset.max_lat/GeoRecord::SCALE.to_f
%>
<a href='/?minlon=<%= minlon %>&minlat=<%= minlat %>&maxlon=<%= maxlon %>&maxlat=<%= maxlat %>&box=yes' title='<%= t'changeset.changeset.show_area_box' %>'><%= format("%0.3f",minlon) -%>,<%= format("%0.3f",minlat) -%>,<%= format("%0.3f",maxlon) -%>,<%= format("%0.3f",maxlat) -%></a>
<!--<%=changeset.area%>-->
<% if changeset.area > 1500000000000 %>
<%= t'changeset.changeset.big_area' %>
<% end %>
<% end %>
</td>
</tr>
<script type="text/javascript">
$("tr-changeset-<%= changeset.id%>").observe("mouseover", function() {
highlightChangeset("<%= changeset.id %>");
});
$("tr-changeset-<%= changeset.id%>").observe("mouseout", function() {
unHighlightChangeset("<%= changeset.id %>");
});
</script>

View file

@ -1,13 +1,4 @@
<% showusername = true if showusername.nil? %>
<table id="changeset_list" cellpadding="3">
<tr>
<th><%= t'changeset.changesets.id' %></th>
<th><%= t'changeset.changesets.saved_at' %></th>
<% if showusername %>
<th><%= t'changeset.changesets.user' %></th>
<% end %>
<th><%= t'changeset.changesets.comment' %></th>
<th><%= t'changeset.changesets.area' %></th>
</tr>
<table id="changeset_list">
<%= render :partial => 'changeset', :locals => {:showusername => showusername}, :collection => @edits unless @edits.nil? %>
</table>

View file

@ -0,0 +1,83 @@
<%= javascript_include_tag '/openlayers/OpenLayers.js' %>
<%= javascript_include_tag '/openlayers/OpenStreetMap.js' %>
<%= javascript_include_tag 'map.js' %>
<div id="changeset_list_map">
</div>
<script type="text/javascript">
OpenLayers.Lang.setCode("<%= I18n.locale.to_s %>");
var highlight;
function highlightChangeset(id) {
var feature = vectors.getFeatureByFid(id);
var bounds = feature.geometry.getBounds();
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).addClassName("selected");
}
function unHighlightChangeset(id) {
vectors.removeFeatures(highlight);
$("tr-changeset-" + id).removeClassName("selected");
}
function init() {
var map = createMap("changeset_list_map", {
controls: [
new OpenLayers.Control.Navigation(),
new OpenLayers.Control.PanZoom(),
new OpenLayers.Control.PanZoomBar()
]
});
var bounds = new OpenLayers.Bounds();
<% @edits.each do |edit| %>
var minlon = <%= edit.min_lon / GeoRecord::SCALE.to_f %>;
var minlat = <%= edit.min_lat / GeoRecord::SCALE.to_f %>;
var maxlon = <%= edit.max_lon / GeoRecord::SCALE.to_f %>;
var maxlat = <%= edit.max_lat / GeoRecord::SCALE.to_f %>;
var bbox = new OpenLayers.Bounds(minlon, minlat, maxlon, maxlat);
bounds.extend(bbox);
box = addBoxToMap(bbox, "<%= edit.id %>", true);
<% end %>
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();
<% if ! @bbox.nil? %>
setMapExtent(new OpenLayers.Bounds(<%= @bbox %>));
<% else %>
setMapExtent(bounds);
<% end %>
}
Event.observe(window, "load", init);
</script>

View file

@ -2,7 +2,12 @@
<p><%= @description %></p>
<%= render :partial => 'changeset_paging_nav' %>
<%= render :partial => 'changesets', :locals => { :showusername => !params.has_key?(:display_name) } %>
<div id="changeset_list_container">
<%= render :partial => 'map' %>
<%= render :partial => 'changesets', :locals => { :showusername => !params.has_key?(:display_name) } %>
</div>
<%= render :partial => 'changeset_paging_nav' %>
<%= atom_link_to params.merge({ :page => nil, :format => :atom }) %>