X-Git-Url: https://git.openstreetmap.org/rails.git/blobdiff_plain/dc2a2c8ebd1a11e4a64555fda22c6859a51defff..081ac24295eb65573df5656879557bd51894dbec:/app/controllers/notes_controller.rb?ds=sidebyside diff --git a/app/controllers/notes_controller.rb b/app/controllers/notes_controller.rb index 5bdf28862..e73b2ba03 100644 --- a/app/controllers/notes_controller.rb +++ b/app/controllers/notes_controller.rb @@ -1,16 +1,15 @@ class NotesController < ApplicationController layout "site", :only => [:mine] - before_filter :check_api_readable - before_filter :authorize_web, :only => [:mine] - before_filter :setup_user_auth, :only => [:create, :comment] - before_filter :authorize, :only => [:close, :reopen, :destroy] - before_filter :require_moderator, :only => [:destroy] - before_filter :check_api_writable, :only => [:create, :comment, :close, :reopen, :destroy] - before_filter :require_allow_write_notes, :only => [:create, :comment, :close, :reopen, :destroy] - before_filter :set_locale - after_filter :compress_output - around_filter :api_call_handle_error, :api_call_timeout + before_action :check_api_readable + before_action :authorize_web, :only => [:mine] + before_action :setup_user_auth, :only => [:create, :comment] + before_action :authorize, :only => [:close, :reopen, :destroy] + before_action :require_moderator, :only => [:destroy] + before_action :check_api_writable, :only => [:create, :comment, :close, :reopen, :destroy] + before_action :require_allow_write_notes, :only => [:create, :comment, :close, :reopen, :destroy] + before_action :set_locale + around_action :api_call_handle_error, :api_call_timeout ## # Return a list of notes in a given area @@ -279,12 +278,14 @@ class NotesController < ApplicationController def mine if params[:display_name] if @this_user = User.active.find_by_display_name(params[:display_name]) - @title = t "note.mine.title", :user => @this_user.display_name - @heading = t "note.mine.heading", :user => @this_user.display_name + @title = t "note.mine.title", :user => @this_user.display_name + @heading = t "note.mine.heading", :user => @this_user.display_name @description = t "note.mine.subheading", :user => render_to_string(:partial => "user", :object => @this_user) @page = (params[:page] || 1).to_i @page_size = 10 - @notes = @this_user.notes.order("updated_at DESC, id").uniq.offset((@page - 1) * @page_size).limit(@page_size).preload(:comments => :author).to_a + @notes = @this_user.notes + @notes = @notes.visible unless @user && @user.moderator? + @notes = @notes.order("updated_at DESC, id").uniq.offset((@page - 1) * @page_size).limit(@page_size).preload(:comments => :author).to_a else @title = t "user.no_such_user.title" @not_found_user = params[:display_name] @@ -300,17 +301,6 @@ class NotesController < ApplicationController # utility functions below. #------------------------------------------------------------ - ## - # Render an OK response - def render_ok - if params[:format] == "js" - render :text => "osbResponse();", :content_type => "text/javascript" - else - render :text => "ok " + @note.id.to_s + "\n", :content_type => "text/plain" if @note - render :text => "ok\n", :content_type => "text/plain" unless @note - end - end - ## # Get the maximum number of results to return def result_limit @@ -360,7 +350,7 @@ class NotesController < ApplicationController comment = note.comments.create(attributes) note.comments.map(&:author).uniq.each do |user| - if notify && user && user != @user + if notify && user && user != @user && user.visible? Notifier.note_comment_notification(comment, user).deliver_now end end