From 292a41cbe295f16f7148913b31eb0fb91f3251c3 Mon Sep 17 00:00:00 2001
From: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
Date: Fri, 24 Feb 2012 22:36:44 +0200
Subject: [PATCH] Fixed comments for snippets. Tests fixed

---
 app/controllers/notes_controller.rb    |  2 ++
 app/controllers/snippets_controller.rb |  1 -
 app/views/notes/_create_common.js.haml |  9 +++++++++
 app/views/notes/_create_line.js.haml   |  8 ++++++++
 app/views/notes/create.js.haml         | 23 +++++------------------
 app/views/snippets/show.html.haml      |  5 +----
 spec/requests/projects_wall_spec.rb    |  2 +-
 7 files changed, 26 insertions(+), 24 deletions(-)
 create mode 100644 app/views/notes/_create_common.js.haml
 create mode 100644 app/views/notes/_create_line.js.haml

diff --git a/app/controllers/notes_controller.rb b/app/controllers/notes_controller.rb
index 327985ef668..9b731a766f0 100644
--- a/app/controllers/notes_controller.rb
+++ b/app/controllers/notes_controller.rb
@@ -13,6 +13,8 @@ class NotesController < ApplicationController
     @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(20)
              when "issue"
diff --git a/app/controllers/snippets_controller.rb b/app/controllers/snippets_controller.rb
index ec1adeaa66f..bfcfda0fc71 100644
--- a/app/controllers/snippets_controller.rb
+++ b/app/controllers/snippets_controller.rb
@@ -55,7 +55,6 @@ class SnippetsController < ApplicationController
   end
 
   def show
-    @notes = @snippet.notes
     @note = @project.notes.new(:noteable => @snippet)
     render_full_content
   end
diff --git a/app/views/notes/_create_common.js.haml b/app/views/notes/_create_common.js.haml
new file mode 100644
index 00000000000..583812bf502
--- /dev/null
+++ b/app/views/notes/_create_common.js.haml
@@ -0,0 +1,9 @@
+- if note.valid?
+  :plain
+    $("#new_note .errors").remove();
+    $('#new_note textarea').val("");
+    NoteList.prepend(#{note.id}, "#{escape_javascript(render :partial => "notes/show", :locals => {:note => note})}");
+- else
+  :plain
+    $("#new_note").replaceWith("#{escape_javascript(render('form'))}");
+
diff --git a/app/views/notes/_create_line.js.haml b/app/views/notes/_create_line.js.haml
new file mode 100644
index 00000000000..9cf085cd613
--- /dev/null
+++ b/app/views/notes/_create_line.js.haml
@@ -0,0 +1,8 @@
+- if note.valid?
+  :plain
+    $(".per_line_form").hide();
+    $('#new_note textarea').val("");
+    $("a.line_note_reply_link[line_code='#{note.line_code}']").closest("tr").remove();
+    var trEl = $(".#{note.line_code}").parent();
+    trEl.after("#{escape_javascript(render :partial => "notes/per_line_show", :locals => {:note => note})}");
+    trEl.after("#{escape_javascript(render :partial => "notes/reply_button", :locals => {:line_code => note.line_code})}");
diff --git a/app/views/notes/create.js.haml b/app/views/notes/create.js.haml
index 646b491d636..67110340001 100644
--- a/app/views/notes/create.js.haml
+++ b/app/views/notes/create.js.haml
@@ -1,21 +1,8 @@
-- if @note.valid?
-  - if @note.line_code
-    :plain
-      $(".per_line_form").hide();
-      $('#new_note textarea').val("");
-      $("a.line_note_reply_link[line_code='#{@note.line_code}']").closest("tr").remove();
-      var trEl = $(".#{@note.line_code}").parent();
-      trEl.after("#{escape_javascript(render :partial => "notes/per_line_show", :locals => {:note => @note})}");
-      trEl.after("#{escape_javascript(render :partial => "notes/reply_button", :locals => {:line_code => @note.line_code})}");
-  - else
-    :plain
-      $("#new_note .errors").remove();
-      $('#new_note textarea').val("");
-      NoteList.prepend(#{@note.id}, "#{escape_javascript(render :partial => "notes/show", :locals => {:note => @note})}");
-- else
-  - unless @note.line_code
-    :plain
-      $("#new_note").replaceWith("#{escape_javascript(render('form'))}");
+- if @note.line_code
+  = render "create_line", :note => @note
+- else 
+  = render "create_common", :note => @note
 
+-# Enable submit button
 :plain
   $("#submit_note").removeAttr("disabled");
diff --git a/app/views/snippets/show.html.haml b/app/views/snippets/show.html.haml
index 165dd6e9c55..6e8ee762337 100644
--- a/app/views/snippets/show.html.haml
+++ b/app/views/snippets/show.html.haml
@@ -14,8 +14,5 @@
   .data.no-padding
     :erb
       <%= raw @snippet.colorize %>
-.clear
-%br
-.snippet_notes= render "notes/notes"
 
-.clear
+= render "notes/notes", :tid => @snippet.id, :tt => "snippet"
diff --git a/spec/requests/projects_wall_spec.rb b/spec/requests/projects_wall_spec.rb
index bb734bdab23..b0ea6e6225a 100644
--- a/spec/requests/projects_wall_spec.rb
+++ b/spec/requests/projects_wall_spec.rb
@@ -8,7 +8,7 @@ describe "Projects", "Wall" do
     project.add_access(@user, :read, :write)
   end
 
-  describe "View notes on wall" do
+  describe "View notes on wall", :js => true do
     before do
       Factory :note, :project => project, :note => "Project specs", :author => @user
       visit wall_project_path(project)
-- 
GitLab