diff options
author | Robert Speicher <rspeicher@gmail.com> | 2012-09-17 10:08:02 -0400 |
---|---|---|
committer | Robert Speicher <rspeicher@gmail.com> | 2012-09-26 16:32:20 -0400 |
commit | 5e1ef575df927a1132e8991f7d5dcc2f43217456 (patch) | |
tree | 30bfbadf8ad37772847c2824bd108018f250b3cd /app/controllers/commit_controller.rb | |
parent | ed26ecae0c3303b5554b033abd6f0a078b7573c0 (diff) | |
download | gitlab-ce-5e1ef575df927a1132e8991f7d5dcc2f43217456.tar.gz |
Add CommitController
Diffstat (limited to 'app/controllers/commit_controller.rb')
-rw-r--r-- | app/controllers/commit_controller.rb | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/app/controllers/commit_controller.rb b/app/controllers/commit_controller.rb new file mode 100644 index 00000000000..73a556144ed --- /dev/null +++ b/app/controllers/commit_controller.rb @@ -0,0 +1,33 @@ +# Controller for a specific Commit +# +# Not to be confused with CommitsController, plural. +class CommitController < ApplicationController + before_filter :project + layout "project" + + # Authorize + before_filter :add_project_abilities + before_filter :authorize_read_project! + before_filter :authorize_code_access! + before_filter :require_non_empty_project + + def show + result = CommitLoad.new(project, current_user, params).execute + + @commit = result[:commit] + + if @commit + @suppress_diff = result[:suppress_diff] + @note = result[:note] + @line_notes = result[:line_notes] + @notes_count = result[:notes_count] + @comments_allowed = true + else + return git_not_found! + end + + if result[:status] == :huge_commit + render "huge_commit" and return + end + end +end |