X-Git-Url: https://git.openstreetmap.org/rails.git/blobdiff_plain/c3c9d047ba9364392199ed903b256e4124b5e65a..1e1baa33ade8941404bce34faed6aea2c7274f84:/app/controllers/trace_controller.rb diff --git a/app/controllers/trace_controller.rb b/app/controllers/trace_controller.rb index 790acce1d..e1553cbb0 100644 --- a/app/controllers/trace_controller.rb +++ b/app/controllers/trace_controller.rb @@ -49,13 +49,13 @@ class TraceController < ApplicationController if @user @traces = Trace.visible_to(@user) #1 else - @traces = Trace.public #2 + @traces = Trace.visible_to_all #2 end else if @user and @user == target_user @traces = @user.traces #3 (check vs user id, so no join + can't pick up non-public traces by changing name) else - @traces = target_user.traces.public #4 + @traces = target_user.traces.visible_to_all #4 end end @@ -151,8 +151,10 @@ class TraceController < ApplicationController if trace.visible? and (trace.public? or (@user and @user == trace.user)) if Acl.no_trace_download(request.remote_ip) render :text => "", :status => :forbidden - elsif request.format == Mime::XML or request.format == Mime::GPX + elsif request.format == Mime::XML send_file(trace.xml_file, :filename => "#{trace.id}.xml", :type => request.format.to_s, :disposition => 'attachment') + elsif request.format == Mime::GPX + send_file(trace.xml_file, :filename => "#{trace.id}.gpx", :type => request.format.to_s, :disposition => 'attachment') else send_file(trace.trace_name, :filename => "#{trace.id}#{trace.extension_name}", :type => trace.mime_type, :disposition => 'attachment') end @@ -204,7 +206,7 @@ class TraceController < ApplicationController end def georss - @traces = Trace.public.visible + @traces = Trace.visible_to_all.visible if params[:display_name] @traces = @traces.joins(:user).where(:users => {:display_name => params[:display_name]})