Merge Request -> show. Refactored. f5 support for diff
This commit is contained in:
parent
b110c6bc86
commit
2def1c7217
18 changed files with 231 additions and 170 deletions
39
app/views/merge_requests/_show.html.haml
Normal file
39
app/views/merge_requests/_show.html.haml
Normal file
|
@ -0,0 +1,39 @@
|
|||
= render "merge_requests/show/mr_title"
|
||||
= render "merge_requests/show/how_to_merge"
|
||||
= render "merge_requests/show/mr_box"
|
||||
= render "merge_requests/show/mr_accept"
|
||||
= render "merge_requests/show/commits"
|
||||
|
||||
- if @commits.present?
|
||||
%ul.nav.nav-tabs.mr_nav_tabs
|
||||
%li
|
||||
= link_to "#notes", "data-url" => project_merge_request_path(@project, @merge_request), :class => "merge-notes-tab tab" do
|
||||
%i.icon-comment
|
||||
Comments
|
||||
%li
|
||||
= link_to "#diffs", "data-url" => diffs_project_merge_request_path(@project, @merge_request), :class => "merge-diffs-tab tab" do
|
||||
%i.icon-list-alt
|
||||
Diff
|
||||
|
||||
.merge_request_notes#notes{ :class => (controller.action_name == 'show') ? "" : "hide" }
|
||||
= render("notes/notes", :tid => @merge_request.id, :tt => "merge_request")
|
||||
.merge-request-diffs
|
||||
= render "merge_requests/show/diffs" if @diffs
|
||||
.status
|
||||
|
||||
= render "notes/per_line_form"
|
||||
|
||||
:javascript
|
||||
$(function(){
|
||||
MergeRequest.init({
|
||||
url_to_automerge_check: "#{automerge_check_project_merge_request_path(@project, @merge_request)}",
|
||||
check_enable: #{@merge_request.state == MergeRequest::UNCHECKED ? "true" : "false"},
|
||||
current_state: "#{@merge_request.human_state}",
|
||||
action: "#{controller.action_name}"
|
||||
});
|
||||
|
||||
$(".edit_merge_request").live("ajax:beforeSend", function() {
|
||||
$(this).replaceWith('#{image_tag "ajax_loader.gif"}');
|
||||
})
|
||||
})
|
||||
|
2
app/views/merge_requests/diffs.html.haml
Normal file
2
app/views/merge_requests/diffs.html.haml
Normal file
|
@ -0,0 +1,2 @@
|
|||
= render "show"
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
:plain
|
||||
$(".merge-request-diffs").html("#{escape_javascript(render(:partial => "diffs"))}");
|
||||
$(".merge-request-diffs").html("#{escape_javascript(render(:partial => "merge_requests/show/diffs"))}");
|
||||
|
||||
|
||||
|
|
|
@ -1,144 +1 @@
|
|||
%h3
|
||||
= "Merge Request ##{@merge_request.id}:"
|
||||
|
||||
%span.pretty_label.branch= @merge_request.source_branch
|
||||
→
|
||||
%span.pretty_label.branch= @merge_request.target_branch
|
||||
|
||||
%span.right
|
||||
- if @merge_request.merged?
|
||||
%span.btn.small.disabled.padded
|
||||
%strong
|
||||
%i.icon-ok
|
||||
= "MERGED"
|
||||
- if can?(current_user, :modify_merge_request, @merge_request)
|
||||
- if @merge_request.open?
|
||||
= link_to 'Close', project_merge_request_path(@project, @merge_request, :merge_request => {:closed => true }, :status_only => true), :method => :put, :class => "btn small padded danger", :title => "Close merge request"
|
||||
= link_to edit_project_merge_request_path(@project, @merge_request), :class => "btn small padded" do
|
||||
%i.icon-edit
|
||||
Edit
|
||||
|
||||
%br
|
||||
- if @merge_request.upvotes > 0
|
||||
.upvotes#upvotes= "+#{pluralize @merge_request.upvotes, 'upvote'}"
|
||||
|
||||
= render "merge_requests/how_to_merge"
|
||||
.back_link
|
||||
= link_to project_merge_requests_path(@project) do
|
||||
← To merge requests
|
||||
|
||||
.main_box
|
||||
.top_box_content
|
||||
%h4
|
||||
- if @merge_request.closed
|
||||
.alert-message.error.status_info Closed
|
||||
- else
|
||||
.alert-message.success.status_info Open
|
||||
= @merge_request.title
|
||||
|
||||
.middle_box_content
|
||||
%div
|
||||
%cite.cgray Created at #{@merge_request.created_at.stamp("Aug 21, 2011")} by
|
||||
= image_tag gravatar_icon(@merge_request.author_email), :width => 16, :class => "lil_av"
|
||||
%strong.author= link_to_merge_request_author(@merge_request)
|
||||
|
||||
%cite.cgray and currently assigned to
|
||||
= image_tag gravatar_icon(@merge_request.assignee_email), :width => 16, :class => "lil_av"
|
||||
%strong.author= link_to_merge_request_assignee(@merge_request)
|
||||
|
||||
|
||||
- if @merge_request.closed
|
||||
.bottom_box_content
|
||||
- if @merge_request.merged?
|
||||
%span
|
||||
Merged by #{@merge_request.merge_event.author_name}
|
||||
%small #{time_ago_in_words(@merge_request.merge_event.created_at)} ago.
|
||||
- elsif @merge_request.closed_event
|
||||
%span
|
||||
Closed by #{@merge_request.closed_event.author_name}
|
||||
%small #{time_ago_in_words(@merge_request.closed_event.created_at)} ago.
|
||||
|
||||
- unless can?(current_user, :accept_mr, @project)
|
||||
.alert-message
|
||||
%strong Only masters can accept MR
|
||||
|
||||
|
||||
- if @merge_request.open? && @commits.any? && can?(current_user, :accept_mr, @project)
|
||||
.automerge_widget.can_be_merged{:style => "display:none"}
|
||||
.alert.alert-success
|
||||
%span
|
||||
= form_for [:automerge, @project, @merge_request], :remote => true, :method => :get do |f|
|
||||
%p
|
||||
You can accept this request automatically.
|
||||
If you still want to do it manually -
|
||||
%strong= link_to "click here", "#", :class => "how_to_merge_link vlink", :title => "How To Merge"
|
||||
for instructions
|
||||
.accept_group
|
||||
= f.submit "Accept Merge Request", :class => "btn small success accept_merge_request"
|
||||
- unless @project.root_ref? @merge_request.source_branch
|
||||
.remove_branch_holder
|
||||
= label_tag :should_remove_source_branch, :class => "checkbox" do
|
||||
= check_box_tag :should_remove_source_branch
|
||||
Remove source-branch
|
||||
.clearfix
|
||||
|
||||
|
||||
.automerge_widget.cannot_be_merged{:style => "display:none"}
|
||||
.alert.alert-info
|
||||
%span
|
||||
= link_to "Show how to merge", "#", :class => "how_to_merge_link btn small padded", :title => "How To Merge"
|
||||
|
||||
%strong This request cant be merged with GitLab. You should do it manually
|
||||
|
||||
.automerge_widget.unchecked
|
||||
.alert-message
|
||||
%strong
|
||||
%i.icon-refresh
|
||||
Checking for ability to automatically merge…
|
||||
|
||||
.automerge_widget.already_cannot_be_merged{:style => "display:none"}
|
||||
.alert.alert-info
|
||||
%strong This merge request already can not be merged. Try to reload page.
|
||||
|
||||
= render "merge_requests/commits"
|
||||
|
||||
- unless @commits.empty?
|
||||
.nav.nav-tabs
|
||||
%li.active
|
||||
= link_to "#notes", :class => "merge-notes-tab tab" do
|
||||
Notes
|
||||
%li
|
||||
= link_to "#diffs", "data-url" => diffs_project_merge_request_path(@project, @merge_request), :class => "merge-diffs-tab tab" do
|
||||
Diff
|
||||
|
||||
|
||||
.merge_request_notes#notes= render "notes/notes", :tid => @merge_request.id, :tt => "merge_request"
|
||||
|
||||
.merge-request-diffs
|
||||
.status
|
||||
|
||||
:javascript
|
||||
$(function(){
|
||||
MergeRequest.init({
|
||||
url_to_automerge_check: "#{automerge_check_project_merge_request_path(@project, @merge_request)}",
|
||||
check_enable: #{@merge_request.state == MergeRequest::UNCHECKED ? "true" : "false"},
|
||||
current_state: "#{@merge_request.human_state}"
|
||||
});
|
||||
|
||||
$(".edit_merge_request").live("ajax:beforeSend", function() {
|
||||
$(this).replaceWith('#{image_tag "ajax_loader.gif"}');
|
||||
})
|
||||
})
|
||||
|
||||
= render "notes/per_line_form"
|
||||
|
||||
:javascript
|
||||
$(document).ready(function(){
|
||||
$(".line_note_link, .line_note_reply_link").live("click", function(e) {
|
||||
var form = $(".per_line_form");
|
||||
$(this).parent().parent().after(form);
|
||||
form.find("#note_line_code").val($(this).attr("line_code"));
|
||||
form.show();
|
||||
return false;
|
||||
});
|
||||
});
|
||||
= render "show"
|
||||
|
|
2
app/views/merge_requests/show.js.haml
Normal file
2
app/views/merge_requests/show.js.haml
Normal file
|
@ -0,0 +1,2 @@
|
|||
:plain
|
||||
$(".merge-request-notes").html("#{escape_javascript(render("notes/notes", :tid => @merge_request.id, :tt => "merge_request"))}");
|
42
app/views/merge_requests/show/_mr_accept.html.haml
Normal file
42
app/views/merge_requests/show/_mr_accept.html.haml
Normal file
|
@ -0,0 +1,42 @@
|
|||
- unless can?(current_user, :accept_mr, @project)
|
||||
.alert-message
|
||||
%strong Only masters can accept MR
|
||||
|
||||
|
||||
- if @merge_request.open? && @commits.any? && can?(current_user, :accept_mr, @project)
|
||||
.automerge_widget.can_be_merged{:style => "display:none"}
|
||||
.alert.alert-success
|
||||
%span
|
||||
= form_for [:automerge, @project, @merge_request], :remote => true, :method => :get do |f|
|
||||
%p
|
||||
You can accept this request automatically.
|
||||
If you still want to do it manually -
|
||||
%strong= link_to "click here", "#", :class => "how_to_merge_link vlink", :title => "How To Merge"
|
||||
for instructions
|
||||
.accept_group
|
||||
= f.submit "Accept Merge Request", :class => "btn small success accept_merge_request"
|
||||
- unless @project.root_ref? @merge_request.source_branch
|
||||
.remove_branch_holder
|
||||
= label_tag :should_remove_source_branch, :class => "checkbox" do
|
||||
= check_box_tag :should_remove_source_branch
|
||||
Remove source-branch
|
||||
.clearfix
|
||||
|
||||
|
||||
.automerge_widget.cannot_be_merged{:style => "display:none"}
|
||||
.alert.alert-info
|
||||
%span
|
||||
= link_to "Show how to merge", "#", :class => "how_to_merge_link btn small padded", :title => "How To Merge"
|
||||
|
||||
%strong This request cant be merged with GitLab. You should do it manually
|
||||
|
||||
.automerge_widget.unchecked
|
||||
.alert-message
|
||||
%strong
|
||||
%i.icon-refresh
|
||||
Checking for ability to automatically merge…
|
||||
|
||||
.automerge_widget.already_cannot_be_merged{:style => "display:none"}
|
||||
.alert.alert-info
|
||||
%strong This merge request already can not be merged. Try to reload page.
|
||||
|
31
app/views/merge_requests/show/_mr_box.html.haml
Normal file
31
app/views/merge_requests/show/_mr_box.html.haml
Normal file
|
@ -0,0 +1,31 @@
|
|||
.main_box
|
||||
.top_box_content
|
||||
%h4
|
||||
- if @merge_request.closed
|
||||
.alert-message.error.status_info Closed
|
||||
- else
|
||||
.alert-message.success.status_info Open
|
||||
= @merge_request.title
|
||||
|
||||
.middle_box_content
|
||||
%div
|
||||
%cite.cgray Created at #{@merge_request.created_at.stamp("Aug 21, 2011")} by
|
||||
= image_tag gravatar_icon(@merge_request.author_email), :width => 16, :class => "lil_av"
|
||||
%strong.author= link_to_merge_request_author(@merge_request)
|
||||
|
||||
%cite.cgray and currently assigned to
|
||||
= image_tag gravatar_icon(@merge_request.assignee_email), :width => 16, :class => "lil_av"
|
||||
%strong.author= link_to_merge_request_assignee(@merge_request)
|
||||
|
||||
|
||||
- if @merge_request.closed
|
||||
.bottom_box_content
|
||||
- if @merge_request.merged?
|
||||
%span
|
||||
Merged by #{@merge_request.merge_event.author_name}
|
||||
%small #{time_ago_in_words(@merge_request.merge_event.created_at)} ago.
|
||||
- elsif @merge_request.closed_event
|
||||
%span
|
||||
Closed by #{@merge_request.closed_event.author_name}
|
||||
%small #{time_ago_in_words(@merge_request.closed_event.created_at)} ago.
|
||||
|
28
app/views/merge_requests/show/_mr_title.html.haml
Normal file
28
app/views/merge_requests/show/_mr_title.html.haml
Normal file
|
@ -0,0 +1,28 @@
|
|||
%h3
|
||||
= "Merge Request ##{@merge_request.id}:"
|
||||
|
||||
%span.pretty_label.branch= @merge_request.source_branch
|
||||
→
|
||||
%span.pretty_label.branch= @merge_request.target_branch
|
||||
|
||||
%span.right
|
||||
- if @merge_request.merged?
|
||||
%span.btn.small.disabled.padded
|
||||
%strong
|
||||
%i.icon-ok
|
||||
= "MERGED"
|
||||
- if can?(current_user, :modify_merge_request, @merge_request)
|
||||
- if @merge_request.open?
|
||||
= link_to 'Close', project_merge_request_path(@project, @merge_request, :merge_request => {:closed => true }, :status_only => true), :method => :put, :class => "btn small padded danger", :title => "Close merge request"
|
||||
= link_to edit_project_merge_request_path(@project, @merge_request), :class => "btn small padded" do
|
||||
%i.icon-edit
|
||||
Edit
|
||||
|
||||
%br
|
||||
- if @merge_request.upvotes > 0
|
||||
.upvotes#upvotes= "+#{pluralize @merge_request.upvotes, 'upvote'}"
|
||||
|
||||
|
||||
.back_link
|
||||
= link_to project_merge_requests_path(@project) do
|
||||
← To merge requests
|
Loading…
Add table
Add a link
Reference in a new issue