Add a "patch" MIME type, and render it like a normal view in Commit#show
This commit is contained in:
parent
c058e3903e
commit
99d391332f
4 changed files with 17 additions and 22 deletions
|
@ -15,19 +15,22 @@ class CommitController < ApplicationController
|
|||
result = CommitLoad.new(project, current_user, params).execute
|
||||
|
||||
@commit = result[:commit]
|
||||
git_not_found! unless @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
|
||||
@suppress_diff = result[:suppress_diff]
|
||||
@note = result[:note]
|
||||
@line_notes = result[:line_notes]
|
||||
@notes_count = result[:notes_count]
|
||||
@comments_allowed = true
|
||||
|
||||
if result[:status] == :huge_commit
|
||||
render "huge_commit" and return
|
||||
respond_to do |format|
|
||||
format.html do
|
||||
if result[:status] == :huge_commit
|
||||
render "huge_commit" and return
|
||||
end
|
||||
end
|
||||
|
||||
format.patch
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
|
@ -25,15 +25,4 @@ class CommitsController < ApplicationController
|
|||
format.atom { render layout: false }
|
||||
end
|
||||
end
|
||||
|
||||
def patch
|
||||
@commit = project.commit(params[:id])
|
||||
|
||||
send_data(
|
||||
@commit.to_patch,
|
||||
type: "text/plain",
|
||||
disposition: 'attachment',
|
||||
filename: "#{@commit.id}.patch"
|
||||
)
|
||||
end
|
||||
end
|
||||
|
|
1
app/views/commit/show.patch.erb
Normal file
1
app/views/commit/show.patch.erb
Normal file
|
@ -0,0 +1 @@
|
|||
<%= @commit.to_patch %>
|
|
@ -3,3 +3,5 @@
|
|||
# Add new mime types for use in respond_to blocks:
|
||||
# Mime::Type.register "text/richtext", :rtf
|
||||
# Mime::Type.register_alias "text/html", :iphone
|
||||
|
||||
Mime::Type.register_alias 'text/plain', :patch
|
||||
|
|
Loading…
Reference in a new issue