X-Git-Url: https://git.openstreetmap.org./rails.git/blobdiff_plain/6600221fe3a72f4c5ead056b829b666ed00841a0..a8e8ba1a64d4f82c74003b5fc05c6fc89a10cc65:/app/controllers/traces_controller.rb diff --git a/app/controllers/traces_controller.rb b/app/controllers/traces_controller.rb index 3091f4360..9ebad1613 100644 --- a/app/controllers/traces_controller.rb +++ b/app/controllers/traces_controller.rb @@ -7,9 +7,9 @@ class TracesController < ApplicationController authorize_resource - before_action :check_database_writable, :only => [:new, :create, :edit, :delete] + before_action :check_database_writable, :only => [:new, :create, :edit, :destroy] before_action :offline_warning, :only => [:mine, :show] - before_action :offline_redirect, :only => [:new, :create, :edit, :delete, :data] + before_action :offline_redirect, :only => [:new, :create, :edit, :destroy, :data] # Counts and selects pages of GPX traces for various criteria (by user, tags, public etc.). # target_user - if set, specifies the user to fetch traces for. if not set will fetch all traces @@ -65,19 +65,8 @@ class TracesController < ApplicationController @traces = @traces.limit(@page_size) @traces = @traces.includes(:user, :tags) - # put together SET of tags across traces, for related links - tagset = {} - @traces.each do |trace| - trace.tags.reload if params[:tag] # if searched by tag, ActiveRecord won't bring back other tags, so do explicitly here - trace.tags.each do |tag| - tagset[tag.tag] = tag.tag - end - end - # final helper vars for view @target_user = target_user - @display_name = target_user.display_name if target_user - @all_tags = tagset.values end def mine @@ -113,15 +102,15 @@ class TracesController < ApplicationController begin @trace = do_create(params[:trace][:gpx_file], params[:trace][:tagstring], params[:trace][:description], params[:trace][:visibility]) - rescue StandardError => ex - logger.debug ex + rescue StandardError => e + logger.debug e end if @trace.id flash[:notice] = t ".trace_uploaded" flash[:warning] = t ".traces_waiting", :count => current_user.traces.where(:inserted => false).count if current_user.traces.where(:inserted => false).count > 4 - TraceImporterJob.perform_later(@trace) if Settings.trace_use_job_queue + TraceImporterJob.perform_later(@trace) redirect_to :action => :index, :display_name => current_user.display_name else flash[:error] = t("traces.create.upload_failed") if @trace.valid? @@ -194,7 +183,7 @@ class TracesController < ApplicationController head :not_found end - def delete + def destroy trace = Trace.find(params[:id]) if !trace.visible? @@ -205,7 +194,7 @@ class TracesController < ApplicationController trace.visible = false trace.save flash[:notice] = t ".scheduled_for_deletion" - TraceDestroyerJob.perform_later(trace) if Settings.trace_use_job_queue + TraceDestroyerJob.perform_later(trace) redirect_to :action => :index, :display_name => trace.user.display_name end rescue ActiveRecord::RecordNotFound @@ -323,11 +312,11 @@ class TracesController < ApplicationController end def offline_warning - flash.now[:warning] = t "traces.offline_warning.message" if STATUS == :gpx_offline + flash.now[:warning] = t "traces.offline_warning.message" if Settings.status == "gpx_offline" end def offline_redirect - redirect_to :action => :offline if STATUS == :gpx_offline + render :action => :offline if Settings.status == "gpx_offline" end def default_visibility