From 5b35000f16201bd631f161ef6d79b0a77dc2c27b Mon Sep 17 00:00:00 2001 From: Andrew8xx8 Date: Sun, 24 Mar 2013 22:31:14 +0400 Subject: Snippets feature refactored. Tests now use spinach --- app/controllers/snippets_controller.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'app/controllers/snippets_controller.rb') diff --git a/app/controllers/snippets_controller.rb b/app/controllers/snippets_controller.rb index a2e22a670a3..bb5fffca33c 100644 --- a/app/controllers/snippets_controller.rb +++ b/app/controllers/snippets_controller.rb @@ -60,7 +60,7 @@ class SnippetsController < ProjectResourceController @snippet.destroy - redirect_to project_snippets_path(@project) + redirect_to project_snippet_path(@project) end def raw -- cgit v1.2.1 From e90aebe259b1f81cb2523099cab4626b9276e751 Mon Sep 17 00:00:00 2001 From: Andrew8xx8 Date: Mon, 25 Mar 2013 02:17:03 +0400 Subject: Personal snippets controlelr refactored --- app/controllers/snippets_controller.rb | 59 ++++++++++++++++++---------------- 1 file changed, 31 insertions(+), 28 deletions(-) (limited to 'app/controllers/snippets_controller.rb') diff --git a/app/controllers/snippets_controller.rb b/app/controllers/snippets_controller.rb index bb5fffca33c..2062ceafa9c 100644 --- a/app/controllers/snippets_controller.rb +++ b/app/controllers/snippets_controller.rb @@ -1,13 +1,6 @@ -class SnippetsController < ProjectResourceController - before_filter :module_enabled +class SnippetsController < ApplicationController before_filter :snippet, only: [:show, :edit, :destroy, :update, :raw] - # Allow read any snippet - before_filter :authorize_read_snippet! - - # Allow write(create) snippet - before_filter :authorize_write_snippet!, only: [:new, :create] - # Allow modify snippet before_filter :authorize_modify_snippet!, only: [:edit, :update] @@ -17,22 +10,39 @@ class SnippetsController < ProjectResourceController respond_to :html def index - @snippets = @project.snippets.fresh.non_expired + @snippets = Snippet.public.fresh.non_expired.page(params[:page]).per(20) + end + + def user_index + @user = User.find_by_username(params[:username]) + + @snippets = @current_user.snippets.fresh.non_expired + + @snippets = case params[:scope] + when 'public' then + @snippets.public + when 'private' then + @snippets.private + else + @snippets + end + + @snippets = @snippets.page(params[:page]).per(20) end def new - @snippet = @project.snippets.new + @snippet = PersonalSnippet.new end def create - @snippet = @project.snippets.new(params[:snippet]) + @snippet = PersonalSnippet.new(params[:personal_snippet]) @snippet.author = current_user @snippet.save if @snippet.valid? - redirect_to [@project, @snippet] + redirect_to snippet_path(@snippet) else - respond_with(@snippet) + respond_with @snippet end end @@ -40,27 +50,24 @@ class SnippetsController < ProjectResourceController end def update - @snippet.update_attributes(params[:snippet]) + @snippet.update_attributes(params[:personal_snippet]) if @snippet.valid? - redirect_to [@project, @snippet] + redirect_to snippet_path(@snippet) else - respond_with(@snippet) + respond_with @snippet end end def show - @note = @project.notes.new(noteable: @snippet) - @target_type = :snippet - @target_id = @snippet.id end def destroy - return access_denied! unless can?(current_user, :admin_snippet, @snippet) + return access_denied! unless can?(current_user, :admin_personal_snippet, @snippet) @snippet.destroy - redirect_to project_snippet_path(@project) + redirect_to snippets_path end def raw @@ -75,18 +82,14 @@ class SnippetsController < ProjectResourceController protected def snippet - @snippet ||= @project.snippets.find(params[:id]) + @snippet ||= PersonalSnippet.find(params[:id]) end def authorize_modify_snippet! - return render_404 unless can?(current_user, :modify_snippet, @snippet) + return render_404 unless can?(current_user, :modify_personal_snippet, @snippet) end def authorize_admin_snippet! - return render_404 unless can?(current_user, :admin_snippet, @snippet) - end - - def module_enabled - return render_404 unless @project.snippets_enabled + return render_404 unless can?(current_user, :admin_personal_snippet, @snippet) end end -- cgit v1.2.1 From 0359f1d9ec286fbbf58027e2cdb2a307806f54da Mon Sep 17 00:00:00 2001 From: Andrew8xx8 Date: Mon, 25 Mar 2013 16:28:39 +0400 Subject: Codestyle improved --- app/controllers/snippets_controller.rb | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) (limited to 'app/controllers/snippets_controller.rb') diff --git a/app/controllers/snippets_controller.rb b/app/controllers/snippets_controller.rb index 2062ceafa9c..7c96b82379c 100644 --- a/app/controllers/snippets_controller.rb +++ b/app/controllers/snippets_controller.rb @@ -31,15 +31,14 @@ class SnippetsController < ApplicationController end def new - @snippet = PersonalSnippet.new + @snippet = PersonalSnippet.build end def create - @snippet = PersonalSnippet.new(params[:personal_snippet]) + @snippet = PersonalSnippet.build(params[:personal_snippet]) @snippet.author = current_user - @snippet.save - if @snippet.valid? + if @snippet.save redirect_to snippet_path(@snippet) else respond_with @snippet @@ -50,9 +49,7 @@ class SnippetsController < ApplicationController end def update - @snippet.update_attributes(params[:personal_snippet]) - - if @snippet.valid? + if @snippet.update_attributes(params[:personal_snippet]) redirect_to snippet_path(@snippet) else respond_with @snippet -- cgit v1.2.1 From e0af7cefb4c92b474d14116b40927d70c13e78cc Mon Sep 17 00:00:00 2001 From: Andrew8xx8 Date: Mon, 25 Mar 2013 20:32:10 +0400 Subject: Typos fixed --- app/controllers/snippets_controller.rb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'app/controllers/snippets_controller.rb') diff --git a/app/controllers/snippets_controller.rb b/app/controllers/snippets_controller.rb index 7c96b82379c..70525beea15 100644 --- a/app/controllers/snippets_controller.rb +++ b/app/controllers/snippets_controller.rb @@ -31,11 +31,11 @@ class SnippetsController < ApplicationController end def new - @snippet = PersonalSnippet.build + @snippet = PersonalSnippet.new end def create - @snippet = PersonalSnippet.build(params[:personal_snippet]) + @snippet = PersonalSnippet.new(params[:personal_snippet]) @snippet.author = current_user if @snippet.save -- cgit v1.2.1