Skip to content

Commit

Permalink
Merge remote-tracking branch 'upstream/pull/5464'
Browse files Browse the repository at this point in the history
  • Loading branch information
tomhughes committed Jan 5, 2025
2 parents 6e44415 + 27d8235 commit 231177a
Show file tree
Hide file tree
Showing 13 changed files with 49 additions and 81 deletions.
19 changes: 19 additions & 0 deletions app/controllers/old_elements_controller.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
class OldElementsController < ApplicationController
layout :map_layout

before_action :authorize_web
before_action :set_locale
before_action -> { check_database_readable(:need_api => true) }
before_action :require_oauth

authorize_resource

before_action :require_moderator_for_unredacted_history
around_action :web_timeout

private

def require_moderator_for_unredacted_history
deny_access(nil) if params[:show_redactions] && !current_user&.moderator?
end
end
21 changes: 1 addition & 20 deletions app/controllers/old_nodes_controller.rb
Original file line number Diff line number Diff line change
@@ -1,20 +1,7 @@
class OldNodesController < ApplicationController
layout :map_layout

before_action :authorize_web
before_action :set_locale
before_action -> { check_database_readable(:need_api => true) }
before_action :require_oauth

authorize_resource

before_action :require_moderator_for_unredacted_history
around_action :web_timeout

class OldNodesController < OldElementsController
def index
@type = "node"
@feature = Node.preload(:node_tags, :old_nodes => [:old_tags, { :changeset => [:changeset_tags, :user] }]).find(params[:id])
render "browse/history"
rescue ActiveRecord::RecordNotFound
render "browse/not_found", :status => :not_found
end
Expand All @@ -25,10 +12,4 @@ def show
rescue ActiveRecord::RecordNotFound
render :action => "not_found", :status => :not_found
end

private

def require_moderator_for_unredacted_history
deny_access(nil) if params[:show_redactions] && !current_user&.moderator?
end
end
21 changes: 1 addition & 20 deletions app/controllers/old_relations_controller.rb
Original file line number Diff line number Diff line change
@@ -1,20 +1,7 @@
class OldRelationsController < ApplicationController
layout :map_layout

before_action :authorize_web
before_action :set_locale
before_action -> { check_database_readable(:need_api => true) }
before_action :require_oauth

authorize_resource

before_action :require_moderator_for_unredacted_history
around_action :web_timeout

class OldRelationsController < OldElementsController
def index
@type = "relation"
@feature = Relation.preload(:relation_tags, :old_relations => [:old_tags, { :changeset => [:changeset_tags, :user], :old_members => :member }]).find(params[:id])
render "browse/history"
rescue ActiveRecord::RecordNotFound
render "browse/not_found", :status => :not_found
end
Expand All @@ -25,10 +12,4 @@ def show
rescue ActiveRecord::RecordNotFound
render :action => "not_found", :status => :not_found
end

private

def require_moderator_for_unredacted_history
deny_access(nil) if params[:show_redactions] && !current_user&.moderator?
end
end
21 changes: 1 addition & 20 deletions app/controllers/old_ways_controller.rb
Original file line number Diff line number Diff line change
@@ -1,20 +1,7 @@
class OldWaysController < ApplicationController
layout :map_layout

before_action :authorize_web
before_action :set_locale
before_action -> { check_database_readable(:need_api => true) }
before_action :require_oauth

authorize_resource

before_action :require_moderator_for_unredacted_history
around_action :web_timeout

class OldWaysController < OldElementsController
def index
@type = "way"
@feature = Way.preload(:way_tags, :old_ways => [:old_tags, { :changeset => [:changeset_tags, :user], :old_nodes => { :node => [:node_tags, :ways] } }]).find(params[:id])
render "browse/history"
rescue ActiveRecord::RecordNotFound
render "browse/not_found", :status => :not_found
end
Expand All @@ -25,10 +12,4 @@ def show
rescue ActiveRecord::RecordNotFound
render :action => "not_found", :status => :not_found
end

private

def require_moderator_for_unredacted_history
deny_access(nil) if params[:show_redactions] && !current_user&.moderator?
end
end
Original file line number Diff line number Diff line change
Expand Up @@ -6,9 +6,9 @@
<% elsif current_user&.moderator? %>
&middot;
<% if !params[:show_redactions] %>
<%= link_to t("browse.view_redacted_data"), :params => { :show_redactions => true } %>
<%= link_to t(".view_redacted_data"), :params => { :show_redactions => true } %>
<% else %>
<%= link_to t("browse.view_redaction_message") %>
<%= link_to t(".view_redaction_message") %>
<% end %>
<% end %>
</div>
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<% set_title(t("browse.#{@type}.history_title_html", :name => printable_element_name(@feature))) %>
<% set_title(t(".#{@type}.title_html", :name => printable_element_name(@feature))) %>

<%= render "sidebar_header", :title => t("browse.#{@type}.history_title_html", :name => printable_element_name(@feature)) %>
<%= render "sidebar_header", :title => t(".#{@type}.title_html", :name => printable_element_name(@feature)) %>

<%= render :partial => "browse/#{@type}", :collection => @feature.send(:"old_#{@type}s").reverse %>

Expand Down
2 changes: 1 addition & 1 deletion app/views/old_nodes/show.html.erb
Original file line number Diff line number Diff line change
Expand Up @@ -4,4 +4,4 @@

<%= render :partial => "browse/node", :object => @feature %>

<%= render :partial => "browse/version_actions" %>
<%= render :partial => "actions" %>
2 changes: 1 addition & 1 deletion app/views/old_relations/show.html.erb
Original file line number Diff line number Diff line change
Expand Up @@ -4,4 +4,4 @@

<%= render :partial => "browse/relation", :object => @feature %>

<%= render :partial => "browse/version_actions" %>
<%= render :partial => "actions" %>
2 changes: 1 addition & 1 deletion app/views/old_ways/show.html.erb
Original file line number Diff line number Diff line change
Expand Up @@ -4,4 +4,4 @@

<%= render :partial => "browse/way", :object => @feature %>

<%= render :partial => "browse/version_actions" %>
<%= render :partial => "actions" %>
16 changes: 11 additions & 5 deletions config/locales/en.yml
Original file line number Diff line number Diff line change
Expand Up @@ -323,17 +323,13 @@ en:
view_history: "View History"
view_unredacted_history: "View Unredacted History"
view_details: "View Details"
view_redacted_data: "View Redacted Data"
view_redaction_message: "View Redaction Message"
location: "Location:"
common_details:
coordinates_html: "%{latitude}, %{longitude}"
node:
title_html: "Node: %{name}"
history_title_html: "Node History: %{name}"
way:
title_html: "Way: %{name}"
history_title_html: "Way History: %{name}"
nodes: "Nodes"
nodes_count:
one: "%{count} node"
Expand All @@ -343,7 +339,6 @@ en:
other: "part of ways %{related_ways}"
relation:
title_html: "Relation: %{name}"
history_title_html: "Relation History: %{name}"
members: "Members"
members_count:
one: "%{count} member"
Expand Down Expand Up @@ -402,6 +397,17 @@ en:
introduction: "Click on the map to find nearby features."
nearby: "Nearby features"
enclosing: "Enclosing features"
old_elements:
index:
node:
title_html: "Node History: %{name}"
way:
title_html: "Way History: %{name}"
relation:
title_html: "Relation History: %{name}"
actions:
view_redacted_data: "View Redacted Data"
view_redaction_message: "View Redaction Message"
nodes:
timeout:
sorry: "Sorry, the data for the node with the id %{id} took too long to retrieve."
Expand Down
6 changes: 3 additions & 3 deletions test/controllers/old_nodes_controller_test.rb
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ def test_routes

def test_history
node = create(:node, :with_history)
sidebar_browse_check :node_history_path, node.id, "browse/history"
sidebar_browse_check :node_history_path, node.id, "old_elements/index"
assert_select "h4", /^Version/ do
assert_select "a[href='#{old_node_path node, 1}']", :text => "1", :count => 1
end
Expand All @@ -27,7 +27,7 @@ def test_history_of_redacted

get node_history_path(:id => node)
assert_response :success
assert_template "browse/history"
assert_template "old_elements/index"

# there are 2 revisions of the redacted node, but only one
# should be showing details here.
Expand All @@ -46,7 +46,7 @@ def test_unredacted_history_of_redacted

get node_history_path(:id => node, :params => { :show_redactions => true })
assert_response :success
assert_template "browse/history"
assert_template "old_elements/index"

assert_select ".browse-section", 2
assert_select ".browse-section.browse-redacted", 0
Expand Down
6 changes: 3 additions & 3 deletions test/controllers/old_relations_controller_test.rb
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ def test_routes

def test_history
relation = create(:relation, :with_history)
sidebar_browse_check :relation_history_path, relation.id, "browse/history"
sidebar_browse_check :relation_history_path, relation.id, "old_elements/index"
assert_select "h4", /^Version/ do
assert_select "a[href='#{old_relation_path relation, 1}']", :text => "1", :count => 1
end
Expand All @@ -29,7 +29,7 @@ def test_history_of_redacted

get relation_history_path(:id => relation)
assert_response :success
assert_template "browse/history"
assert_template "old_elements/index"

# there are 4 revisions of the redacted relation, but only 2
# should be showing details here.
Expand All @@ -48,7 +48,7 @@ def test_unredacted_history_of_redacted

get relation_history_path(:id => relation, :params => { :show_redactions => true })
assert_response :success
assert_template "browse/history"
assert_template "old_elements/index"

assert_select ".browse-section", 4
assert_select ".browse-section.browse-redacted", 0
Expand Down
6 changes: 3 additions & 3 deletions test/controllers/old_ways_controller_test.rb
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ def test_routes

def test_history
way = create(:way, :with_history)
sidebar_browse_check :way_history_path, way.id, "browse/history"
sidebar_browse_check :way_history_path, way.id, "old_elements/index"
assert_select "h4", /^Version/ do
assert_select "a[href='#{old_way_path way, 1}']", :text => "1", :count => 1
end
Expand All @@ -29,7 +29,7 @@ def test_history_of_redacted

get way_history_path(:id => way)
assert_response :success
assert_template "browse/history"
assert_template "old_elements/index"

# there are 4 revisions of the redacted way, but only 2
# should be showing details here.
Expand All @@ -48,7 +48,7 @@ def test_unredacted_history_of_redacted

get way_history_path(:id => way, :params => { :show_redactions => true })
assert_response :success
assert_template "browse/history"
assert_template "old_elements/index"

assert_select ".browse-section", 4
assert_select ".browse-section.browse-redacted", 0
Expand Down

0 comments on commit 231177a

Please sign in to comment.