Commit 914bb05d authored by Paco Guzman's avatar Paco Guzman

Moving up common html data attributes

parent e065f484
...@@ -9,6 +9,7 @@ class @FilesCommentButton ...@@ -9,6 +9,7 @@ class @FilesCommentButton
@LINE_NUMBER_CLASS = 'diff-line-num' @LINE_NUMBER_CLASS = 'diff-line-num'
@LINE_CONTENT_CLASS = 'line_content' @LINE_CONTENT_CLASS = 'line_content'
@LINE_COLUMN_CLASSES = ".#{@LINE_NUMBER_CLASS}, .line_content" @LINE_COLUMN_CLASSES = ".#{@LINE_NUMBER_CLASS}, .line_content"
@TEXT_FILE_SELECTOR = '.text-file'
@DEBOUNCE_TIMEOUT_DURATION = 150 @DEBOUNCE_TIMEOUT_DURATION = 150
...@@ -24,21 +25,23 @@ class @FilesCommentButton ...@@ -24,21 +25,23 @@ class @FilesCommentButton
return return
render: (e) -> render: (e) ->
lineHolderElement = @getLineHolder($(e.currentTarget)) currentTarget = $(e.currentTarget)
lineContentElement = @getLineContent($(e.currentTarget)) textFileElement = @getTextFileElement(currentTarget)
lineNumElement = @getLineNum($(e.currentTarget)) lineHolderElement = @getLineHolder(currentTarget)
lineContentElement = @getLineContent(currentTarget)
lineNumElement = @getLineNum(currentTarget)
buttonParentElement = lineNumElement buttonParentElement = lineNumElement
return if not @shouldRender e, buttonParentElement return if not @shouldRender e, buttonParentElement
buttonParentElement.append @buildButton buttonParentElement.append @buildButton
id: id:
noteable: lineHolderElement.attr 'data-noteable-id' noteable: textFileElement.attr 'data-noteable-id'
commit: lineHolderElement.attr 'data-commit-id' commit: textFileElement.attr 'data-commit-id'
discussion: lineContentElement.attr('data-discussion-id') || lineHolderElement.attr('data-discussion-id') discussion: lineContentElement.attr('data-discussion-id') || lineHolderElement.attr('data-discussion-id')
type: type:
noteable: lineHolderElement.attr 'data-noteable-type' noteable: textFileElement.attr 'data-noteable-type'
note: lineHolderElement.attr 'data-note-type' note: textFileElement.attr 'data-note-type'
line: lineContentElement.attr 'data-line-type' line: lineContentElement.attr 'data-line-type'
code: code:
line: lineContentElement.attr('data-line-code') || lineHolderElement.attr('id') line: lineContentElement.attr('data-line-code') || lineHolderElement.attr('id')
...@@ -59,6 +62,9 @@ class @FilesCommentButton ...@@ -59,6 +62,9 @@ class @FilesCommentButton
'data-note-type': buttonAttributes.type.note 'data-note-type': buttonAttributes.type.note
'data-line-code': buttonAttributes.code.line 'data-line-code': buttonAttributes.code.line
getTextFileElement: (hoveredElement) ->
$(hoveredElement.closest(@TEXT_FILE_SELECTOR))
getLineHolder: (hoveredElement) -> getLineHolder: (hoveredElement) ->
return hoveredElement if hoveredElement.hasClass @LINE_HOLDER_CLASS return hoveredElement if hoveredElement.hasClass @LINE_HOLDER_CLASS
$(hoveredElement.parent()) $(hoveredElement.parent())
......
- type = line.type - type = line.type
- holder_data = @comments_target.any? ? { data: { noteable_id: @comments_target[:noteable_id], noteable_type: @comments_target[:noteable_type], commit_id: @comments_target[:commit_id], discussion_id: discussion_id(line_code), note_type: LegacyDiffNote.name } } : {} - line_data = @comments_target.any? ? { data: { discussion_id: discussion_id(line_code) } } : {}
%tr.line_holder{ holder_data, id: line_code, class: type } %tr.line_holder{ line_data, id: line_code, class: type }
- case type - case type
- when 'match' - when 'match'
= render "projects/diffs/match_line", { line: line.text, = render "projects/diffs/match_line", { line: line.text,
......
/ Side-by-side diff view / Side-by-side diff view
%div.text-file.diff-wrap-lines.code.file-content.js-syntax-highlight - text_file_data = @comments_target.any? ? { data: { noteable_id: @comments_target[:noteable_id], noteable_type: @comments_target[:noteable_type], commit_id: @comments_target[:commit_id], note_type: LegacyDiffNote.name } } : {}
%div.text-file.diff-wrap-lines.code.file-content.js-syntax-highlight{ text_file_data }
%table %table
- diff_file.parallel_diff_lines.each do |line| - diff_file.parallel_diff_lines.each do |line|
- left = line[:left] - left = line[:left]
- right = line[:right] - right = line[:right]
- holder_data = @comments_target.any? ? { data: { noteable_id: @comments_target[:noteable_id], noteable_type: @comments_target[:noteable_type], commit_id: @comments_target[:commit_id], note_type: LegacyDiffNote.name } } : {} %tr.line_holder.parallel
%tr.line_holder.parallel{ holder_data }
- if left[:type] == 'match' - if left[:type] == 'match'
= render "projects/diffs/match_line_parallel", { line: left[:text] } = render "projects/diffs/match_line_parallel", { line: left[:text] }
- elsif left[:type] == 'nonewline' - elsif left[:type] == 'nonewline'
......
...@@ -3,7 +3,8 @@ ...@@ -3,7 +3,8 @@
.suppressed-container .suppressed-container
%a.show-suppressed-diff.js-show-suppressed-diff Changes suppressed. Click to show. %a.show-suppressed-diff.js-show-suppressed-diff Changes suppressed. Click to show.
%table.text-file.code.js-syntax-highlight{ class: too_big ? 'hide' : '' } - text_file_data = @comments_target.any? ? { data: { noteable_id: @comments_target[:noteable_id], noteable_type: @comments_target[:noteable_type], commit_id: @comments_target[:commit_id], note_type: LegacyDiffNote.name } } : {}
%table.text-file.code.js-syntax-highlight{ text_file_data, class: too_big ? 'hide' : '' }
- last_line = 0 - last_line = 0
- diff_file.highlighted_diff_lines.each_with_index do |line, index| - diff_file.highlighted_diff_lines.each_with_index do |line, index|
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment