]> git.openstreetmap.org Git - rails.git/blobdiff - app/controllers/notes_controller.rb
Fix double XML declaration on trace RSS feeds
[rails.git] / app / controllers / notes_controller.rb
index 5fdda44f4aee4b5ee66f28af0aeaed318ffba10b..2973a26c27e187802d15f9a074ee4655f083c161 100644 (file)
@@ -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
+  layout "site", :only => [:mine]
+
+  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,17 +278,19 @@ 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
-        @description = t 'note.mine.subheading', :user => render_to_string(:partial => "user", :object => @this_user)
+        @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'
+        @title = t "user.no_such_user.title"
         @not_found_user = params[:display_name]
 
-        render :template => 'user/no_such_user', :status => :not_found
+        render :template => "user/no_such_user", :status => :not_found
       end
     end
   end
@@ -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