summaryrefslogtreecommitdiff
path: root/app/controllers/snippets_controller.rb
diff options
context:
space:
mode:
authorJeff Stubler <brunsa2@gmail.com>2015-12-03 21:53:06 -0600
committerJeff Stubler <brunsa2@gmail.com>2015-12-03 21:53:06 -0600
commit932a7fd96f5977db6119205daa85495ea161dd68 (patch)
tree251f02d786fcec000bacfb3d19e063a636fc9635 /app/controllers/snippets_controller.rb
parent64ca9cf3e4a56a19f09160a91c5433d2ddb632cf (diff)
parente9d06903dab75129a0df63e686e18e85bfaeee8d (diff)
downloadgitlab-ce-932a7fd96f5977db6119205daa85495ea161dd68.tar.gz
Merge branch 'master' into diverging-branch-graphs
Diffstat (limited to 'app/controllers/snippets_controller.rb')
-rw-r--r--app/controllers/snippets_controller.rb9
1 files changed, 8 insertions, 1 deletions
diff --git a/app/controllers/snippets_controller.rb b/app/controllers/snippets_controller.rb
index 9f9f9a92f11..c72df73af46 100644
--- a/app/controllers/snippets_controller.rb
+++ b/app/controllers/snippets_controller.rb
@@ -1,6 +1,9 @@
class SnippetsController < ApplicationController
before_action :snippet, only: [:show, :edit, :destroy, :update, :raw]
+ # Allow read snippet
+ before_action :authorize_read_snippet!, only: [:show, :raw]
+
# Allow modify snippet
before_action :authorize_update_snippet!, only: [:edit, :update]
@@ -79,10 +82,14 @@ class SnippetsController < ApplicationController
[Snippet::PUBLIC, Snippet::INTERNAL]).
find(params[:id])
else
- PersonalSnippet.are_public.find(params[:id])
+ PersonalSnippet.find(params[:id])
end
end
+ def authorize_read_snippet!
+ authenticate_user! unless can?(current_user, :read_personal_snippet, @snippet)
+ end
+
def authorize_update_snippet!
return render_404 unless can?(current_user, :update_personal_snippet, @snippet)
end