X-Git-Url: https://git.openstreetmap.org./rails.git/blobdiff_plain/78db9e72bb3653ee8c666f5d10a231aecad9d984..753c179085b37635897121605dda867acc19a4a5:/app/controllers/changeset_controller.rb diff --git a/app/controllers/changeset_controller.rb b/app/controllers/changeset_controller.rb index 941c54d49..9a4271621 100644 --- a/app/controllers/changeset_controller.rb +++ b/app/controllers/changeset_controller.rb @@ -143,10 +143,11 @@ class ChangesetController < ApplicationController def download changeset = Changeset.find(params[:id]) - # get all the elements in the changeset and stick them in a big array. - elements = [changeset.old_nodes, - changeset.old_ways, - changeset.old_relations].flatten + # get all the elements in the changeset which haven't been redacted + # and stick them in a big array. + elements = [changeset.old_nodes.unredacted, + changeset.old_ways.unredacted, + changeset.old_relations.unredacted].flatten # sort the elements by timestamp and version number, as this is the # almost sensible ordering available. this would be much nicer if @@ -259,10 +260,8 @@ class ChangesetController < ApplicationController else changesets = changesets.where("false") end - elsif request.format == :html - @title = t 'user.no_such_user.title' - @not_found_user = params[:display_name] - render :template => 'user/no_such_user', :status => :not_found + else + render_unknown_user params[:display_name] return end end @@ -271,8 +270,17 @@ class ChangesetController < ApplicationController if @user changesets = changesets.where(:user_id => @user.friend_users.public) elsif request.format == :html - @title = t 'user.no_such_user.title' - render :template => 'user/no_such_user', :status => :not_found + require_user + return + end + end + + if params[:nearby] + if @user + changesets = changesets.where(:user_id => @user.nearby) + elsif request.format == :html + require_user + return end end @@ -291,10 +299,14 @@ class ChangesetController < ApplicationController user_link = render_to_string :partial => "user", :object => user end - if params[:friends] and user + if params[:friends] and @user @title = t 'changeset.list.title_friend' @heading = t 'changeset.list.heading_friend' @description = t 'changeset.list.description_friend' + elsif params[:nearby] and @user + @title = t 'changeset.list.title_nearby' + @heading = t 'changeset.list.heading_nearby' + @description = t 'changeset.list.description_nearby' elsif user and bbox @title = t 'changeset.list.title_user_bbox', :user => user.display_name, :bbox => bbox.to_s @heading = t 'changeset.list.heading_user_bbox', :user => user.display_name, :bbox => bbox.to_s @@ -316,12 +328,10 @@ class ChangesetController < ApplicationController @page = (params[:page] || 1).to_i @page_size = 20 - @bbox = bbox - @edits = changesets.order("changesets.created_at DESC").offset((@page - 1) * @page_size).limit(@page_size).preload(:user, :changeset_tags) - end - render :action => :list + render :action => :list + end end ##