Commit ab651ef4 authored by Dmitriy Zaporozhets's avatar Dmitriy Zaporozhets

Merge branch 'syntax_highlight_diff_email' into 'master'

Add syntax colors to diffs in email-on-push notifications

## What does this MR do?
This MR adds syntaxhighlighting to the email-on-push notifications.
## Are there points in the code the reviewer needs to double check?
No
## Why was this MR needed?
Currently the diff in email-on-push notifications is just a monochrome diff that's hard to read.
This MR adds colored syntaxhighlighting to the mails.
## What are the relevant issue numbers / Feature requests?
* It closes https://github.com/gitlabhq/gitlabhq/issues/6994
* There is a Discussion in the Feedback Forum: http://feedback.gitlab.com/forums/176466-general/suggestions/5802256-add-color-to-diffs-in-email-on-push-service-to-htm
* A pull request for this already existed, but was closed. https://github.com/gitlabhq/gitlabhq/pull/7739

## Screenshots
see prior Pull Request for a screenshot

See merge request !295
parents e540498f e460e04e
...@@ -7,7 +7,7 @@ v 7.8.0 ...@@ -7,7 +7,7 @@ v 7.8.0
- Expose description in groups API - Expose description in groups API
- -
- -
- - Add diff syntax highlighting in email-on-push service notifications (Hannes Rosenögger)
- -
- -
- -
......
...@@ -29,4 +29,14 @@ module EmailsHelper ...@@ -29,4 +29,14 @@ module EmailsHelper
end end
end end
end end
def add_email_highlight_css
Rugments::Themes::Github.render(:scope => '.highlight')
end
def color_email_diff(diffcontent)
formatter = Rugments::Formatters::HTML.new(cssclass: 'highlight')
lexer = Rugments::Lexers::Diff.new
raw formatter.format(lexer.lex(diffcontent))
end
end end
...@@ -16,7 +16,7 @@ ...@@ -16,7 +16,7 @@
font-size:small; font-size:small;
color:#777 color:#777
} }
#{add_email_highlight_css}
%body %body
%div.content %div.content
= yield = yield
......
...@@ -23,7 +23,7 @@ ...@@ -23,7 +23,7 @@
= diff.new_path || diff.old_path = diff.new_path || diff.old_path
%hr %hr
%pre %pre
= diff.diff = color_email_diff(diff.diff)
%br %br
- if @compare.timeout - if @compare.timeout
......
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