From 961cb285b08aed0281bc9a6e4634388ecc8e914c Mon Sep 17 00:00:00 2001
From: Nihad Abbasov <narkoz.2008@gmail.com>
Date: Thu, 29 Nov 2012 12:10:07 -0800
Subject: [PATCH] API: restore broken merge request commenting

---
 lib/api/entities.rb       |  5 +++++
 lib/api/merge_requests.rb | 30 +++++++++++++++---------------
 2 files changed, 20 insertions(+), 15 deletions(-)

diff --git a/lib/api/entities.rb b/lib/api/entities.rb
index 0c44f621b08..b792d3fbf8d 100644
--- a/lib/api/entities.rb
+++ b/lib/api/entities.rb
@@ -75,5 +75,10 @@ module Gitlab
       expose :author, using: Entities::UserBasic
       expose :updated_at, :created_at
     end
+
+    class MRNote < Grape::Entity
+      expose :note
+      expose :author, using: Entities::UserBasic
+    end
   end
 end
diff --git a/lib/api/merge_requests.rb b/lib/api/merge_requests.rb
index d8f2c51293a..1fa0c549b13 100644
--- a/lib/api/merge_requests.rb
+++ b/lib/api/merge_requests.rb
@@ -4,9 +4,9 @@ module Gitlab
     before { authenticate! }
 
     resource :projects do
-      
+
       # List merge requests
-      # 
+      #
       # Parameters:
       #   id (required) - The ID or code name of a project
       #
@@ -15,24 +15,24 @@ module Gitlab
       #
       get ":id/merge_requests" do
         authorize! :read_merge_request, user_project
-        
+
         present paginate(user_project.merge_requests), with: Entities::MergeRequest
       end
-      
+
       # Show MR
-      # 
+      #
       # Parameters:
       #   id (required)               - The ID or code name of a project
       #   merge_request_id (required) - The ID of MR
-      # 
+      #
       # Example:
       #   GET /projects/:id/merge_request/:merge_request_id
       #
       get ":id/merge_request/:merge_request_id" do
         merge_request = user_project.merge_requests.find(params[:merge_request_id])
-        
+
         authorize! :read_merge_request, merge_request
-        
+
         present merge_request, with: Entities::MergeRequest
       end
 
@@ -45,17 +45,17 @@ module Gitlab
       #   target_branch (required) - The target branch
       #   assignee_id              - Assignee user ID
       #   title (required)         - Title of MR
-      # 
+      #
       # Example:
       #   POST /projects/:id/merge_requests
       #
       post ":id/merge_requests" do
         authorize! :write_merge_request, user_project
-        
+
         attrs = attributes_for_keys [:source_branch, :target_branch, :assignee_id, :title]
         merge_request = user_project.merge_requests.new(attrs)
         merge_request.author = current_user
-        
+
         if merge_request.save
           merge_request.reload_code
           present merge_request, with: Entities::MergeRequest
@@ -80,9 +80,9 @@ module Gitlab
       put ":id/merge_request/:merge_request_id" do
         attrs = attributes_for_keys [:source_branch, :target_branch, :assignee_id, :title, :closed]
         merge_request = user_project.merge_requests.find(params[:merge_request_id])
-        
+
         authorize! :modify_merge_request, merge_request
-        
+
         if merge_request.update_attributes attrs
           merge_request.reload_code
           merge_request.mark_as_unchecked
@@ -98,7 +98,7 @@ module Gitlab
       #   id (required) - The ID or code name of a project
       #   merge_request_id (required) - ID of MR
       #   note (required) - Text of comment
-      # Examples: 
+      # Examples:
       #   POST /projects/:id/merge_request/:merge_request_id/comments
       #
       post ":id/merge_request/:merge_request_id/comments" do
@@ -107,7 +107,7 @@ module Gitlab
         note.author = current_user
 
         if note.save
-          present note, with: Entities::Note
+          present note, with: Entities::MRNote
         else
           not_found!
         end
-- 
GitLab