mirror of
https://github.com/codeninjasllc/discourse.git
synced 2025-02-17 04:01:29 -05:00
BUGFIX: broken images in edit history with markdown view
This commit is contained in:
parent
00469e976d
commit
e5a189fc17
1 changed files with 12 additions and 8 deletions
|
@ -7,9 +7,13 @@ class DiscourseDiff
|
||||||
def initialize(before, after)
|
def initialize(before, after)
|
||||||
@before = before
|
@before = before
|
||||||
@after = after
|
@after = after
|
||||||
|
before_html = tokenize_html_blocks(@before)
|
||||||
|
after_html = tokenize_html_blocks(@after)
|
||||||
|
before_markdown = tokenize_line(CGI::escapeHTML(@before))
|
||||||
|
after_markdown = tokenize_line(CGI::escapeHTML(@after))
|
||||||
|
|
||||||
@block_by_block_diff = ONPDiff.new(tokenize_html_blocks(@before), tokenize_html_blocks(@after)).diff
|
@block_by_block_diff = ONPDiff.new(before_html, after_html).diff
|
||||||
@line_by_line_diff = ONPDiff.new(tokenize_line(@before), tokenize_line(@after)).short_diff
|
@line_by_line_diff = ONPDiff.new(before_markdown, after_markdown).short_diff
|
||||||
end
|
end
|
||||||
|
|
||||||
def inline_html
|
def inline_html
|
||||||
|
@ -91,8 +95,8 @@ class DiscourseDiff
|
||||||
table << "<tr>"
|
table << "<tr>"
|
||||||
op_code = @line_by_line_diff[i][1]
|
op_code = @line_by_line_diff[i][1]
|
||||||
if op_code == :common
|
if op_code == :common
|
||||||
table << "<td>#{CGI::escapeHTML(@line_by_line_diff[i][0])}</td>"
|
table << "<td>#{@line_by_line_diff[i][0]}</td>"
|
||||||
table << "<td>#{CGI::escapeHTML(@line_by_line_diff[i][0])}</td>"
|
table << "<td>#{@line_by_line_diff[i][0]}</td>"
|
||||||
else
|
else
|
||||||
if op_code == :delete
|
if op_code == :delete
|
||||||
opposite_op_code = :add
|
opposite_op_code = :add
|
||||||
|
@ -116,11 +120,11 @@ class DiscourseDiff
|
||||||
i += 1
|
i += 1
|
||||||
else
|
else
|
||||||
if op_code == :delete
|
if op_code == :delete
|
||||||
table << "<td class=\"diff-del\">#{CGI::escapeHTML(@line_by_line_diff[i][0])}</td>"
|
table << "<td class=\"diff-del\">#{@line_by_line_diff[i][0]}</td>"
|
||||||
table << "<td></td>"
|
table << "<td></td>"
|
||||||
else
|
else
|
||||||
table << "<td></td>"
|
table << "<td></td>"
|
||||||
table << "<td class=\"diff-ins\">#{CGI::escapeHTML(@line_by_line_diff[i][0])}</td>"
|
table << "<td class=\"diff-ins\">#{@line_by_line_diff[i][0]}</td>"
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
@ -221,8 +225,8 @@ class DiscourseDiff
|
||||||
when :common
|
when :common
|
||||||
deleted << d[0]
|
deleted << d[0]
|
||||||
inserted << d[0]
|
inserted << d[0]
|
||||||
when :delete then deleted << "<del>#{CGI::escapeHTML(d[0])}</del>"
|
when :delete then deleted << "<del>#{d[0]}</del>"
|
||||||
when :add then inserted << "<ins>#{CGI::escapeHTML(d[0])}</ins>"
|
when :add then inserted << "<ins>#{d[0]}</ins>"
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
[deleted, inserted]
|
[deleted, inserted]
|
||||||
|
|
Loading…
Reference in a new issue