Commit ab651ef4 authored by Dmitriy Zaporozhets's avatar Dmitriy Zaporozhets
Browse files

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
......@@ -7,7 +7,7 @@ v 7.8.0
- Expose description in groups API
-
-
-
- Add diff syntax highlighting in email-on-push service notifications (Hannes Rosenögger)
-
-
-
......
......@@ -29,4 +29,14 @@ def action_title(url)
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
......@@ -16,7 +16,7 @@
font-size:small;
color:#777
}
#{add_email_highlight_css}
%body
%div.content
= yield
......
......@@ -23,7 +23,7 @@
= diff.new_path || diff.old_path
%hr
%pre
= diff.diff
= color_email_diff(diff.diff)
%br
- 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