Some code tweaks

This commit is contained in:
Douwe Maan 2017-04-08 14:58:08 -05:00
parent a8339fe1aa
commit 1817f877e1
8 changed files with 21 additions and 18 deletions

View file

@ -576,13 +576,10 @@ class Projects::MergeRequestsController < Projects::ApplicationController
@comparable_diffs = @merge_request_diffs.select { |diff| diff.id < @merge_request_diff.id }
if params[:start_sha].present?
@start_sha = params[:start_sha]
@start_version = @comparable_diffs.find { |diff| diff.head_commit_sha == @start_sha }
start_sha = params[:start_sha]
@start_version = @comparable_diffs.find { |diff| diff.head_commit_sha == start_sha }
unless @start_version
@start_sha = @merge_request_diff.head_commit_sha
@start_version = @merge_request_diff
end
@start_sha = start_sha if @start_version
end
@diffs =

View file

@ -5,8 +5,6 @@ module DiscussionOnDiff
included do
NUMBER_OF_TRUNCATED_DIFF_LINES = 16
memoized_values << :active
delegate :line_code,
:original_line_code,
:diff_file,
@ -29,12 +27,6 @@ module DiscussionOnDiff
true
end
def active?
return @active if @active.present?
@active = first_note.active?
end
# Returns an array of at most 16 highlighted lines above a diff note
def truncated_diff_lines(highlight: true)
lines = highlight ? highlighted_diff_lines : diff_lines

View file

@ -26,6 +26,10 @@ module NoteOnDiff
raise NotImplementedError
end
def active?(diff_refs = nil)
raise NotImplementedError
end
private
def noteable_diff_refs

View file

@ -7,6 +7,8 @@
class LegacyDiffDiscussion < Discussion
include DiscussionOnDiff
memoized_values << :active
def legacy_diff_discussion?
true
end
@ -15,6 +17,12 @@ class LegacyDiffDiscussion < Discussion
LegacyDiffNote
end
def active?(*args)
return @active if @active.present?
@active = first_note.active?(*args)
end
def collapsed?
!active?
end

View file

@ -30,6 +30,7 @@
- else
a deleted commit
- elsif discussion.diff_discussion?
on
= conditional_link_to url.present?, url do
- if discussion.active?
the diff

View file

@ -72,13 +72,14 @@
= link_to namespace_project_compare_path(@project.namespace, @project, from: @start_version.base_commit_sha, to: @merge_request_diff.base_commit_sha) do
new commits
from
= succeed '.' do
%code= @merge_request.target_branch
- if @diff_notes_disabled
.comments-disabled-notif.content-block
= icon('info-circle')
- if @start_sha
Comment creation is disabled because you're comparing two versions of this merge request.
Comments are disabled because you're comparing two versions of this merge request.
- else
Discussions on this old version of the merge request are displayed but comment creation is disabled.

View file

@ -66,7 +66,7 @@ feature 'Merge Request versions', js: true, feature: true do
end
it 'show the message about disabled comments' do
expect(page).to have_content 'Comment creation is disabled'
expect(page).to have_content 'Comments are disabled'
end
it 'show diff between new and old version' do