diff options
author | Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com> | 2012-02-27 20:29:27 +0200 |
---|---|---|
committer | Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com> | 2012-02-27 20:29:27 +0200 |
commit | 8470d70da67355c9c009e4401746b1d5410af2e3 (patch) | |
tree | 90b60e8c9fc4185b2618e21988262c7c7dfc9820 /app/controllers/notes_controller.rb | |
parent | 1e689bfba39525ead225eaf611948cfbe8ac34cf (diff) | |
download | gitlab-ce-8470d70da67355c9c009e4401746b1d5410af2e3.tar.gz |
notes controller refactored
Diffstat (limited to 'app/controllers/notes_controller.rb')
-rw-r--r-- | app/controllers/notes_controller.rb | 51 |
1 files changed, 23 insertions, 28 deletions
diff --git a/app/controllers/notes_controller.rb b/app/controllers/notes_controller.rb index fe38d74dde6..52cfb898248 100644 --- a/app/controllers/notes_controller.rb +++ b/app/controllers/notes_controller.rb @@ -10,22 +10,8 @@ class NotesController < ApplicationController respond_to :js def index - @notes = case params[:target_type] - when "commit" - then project.commit_notes(project.commit((params[:target_id]))).fresh.limit(20) - when "snippet" - then project.snippets.find(params[:target_id]).notes - when "wall" - then project.common_notes.order("created_at DESC").fresh.limit(10) - when "issue" - then project.issues.find(params[:target_id]).notes.inc_author.order("created_at DESC").limit(20) - when "merge_request" - then project.merge_requests.find(params[:target_id]).notes.inc_author.order("created_at DESC").limit(20) - end - - respond_to do |format| - format.js { respond_with_notes } - end + notes + respond_with(@notes) end def create @@ -43,9 +29,7 @@ class NotesController < ApplicationController def destroy @note = @project.notes.find(params[:id]) - return access_denied! unless can?(current_user, :admin_note, @note) - @note.destroy respond_to do |format| @@ -55,15 +39,26 @@ class NotesController < ApplicationController protected - def respond_with_notes - if params[:last_id] && params[:first_id] - @notes = @notes.where("id >= ?", params[:first_id]) - elsif params[:last_id] - @notes = @notes.where("id > ?", params[:last_id]) - elsif params[:first_id] - @notes = @notes.where("id < ?", params[:first_id]) - else - nil - end + def notes + @notes = case params[:target_type] + when "commit" + then project.commit_notes(project.commit((params[:target_id]))).fresh.limit(20) + when "snippet" + then project.snippets.find(params[:target_id]).notes + when "wall" + then project.common_notes.order("created_at DESC").fresh.limit(10) + when "issue" + then project.issues.find(params[:target_id]).notes.inc_author.order("created_at DESC").limit(20) + when "merge_request" + then project.merge_requests.find(params[:target_id]).notes.inc_author.order("created_at DESC").limit(20) + end + + @notes = if params[:last_id] + @notes.where("id > ?", params[:last_id]) + elsif params[:first_id] + @notes.where("id < ?", params[:first_id]) + else + @notes + end end end |