summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CHANGELOG2
-rw-r--r--app/helpers/emails_helper.rb10
-rw-r--r--app/views/layouts/notify.html.haml2
-rw-r--r--app/views/notify/repository_push_email.html.haml2
4 files changed, 13 insertions, 3 deletions
diff --git a/CHANGELOG b/CHANGELOG
index 240173b3b31..6784c1f258f 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -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)
-
-
-
diff --git a/app/helpers/emails_helper.rb b/app/helpers/emails_helper.rb
index 24d67c21d6b..b336263049c 100644
--- a/app/helpers/emails_helper.rb
+++ b/app/helpers/emails_helper.rb
@@ -29,4 +29,14 @@ module EmailsHelper
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
diff --git a/app/views/layouts/notify.html.haml b/app/views/layouts/notify.html.haml
index e81cf9e5bf6..a722db2f32c 100644
--- a/app/views/layouts/notify.html.haml
+++ b/app/views/layouts/notify.html.haml
@@ -16,7 +16,7 @@
font-size:small;
color:#777
}
-
+ #{add_email_highlight_css}
%body
%div.content
= yield
diff --git a/app/views/notify/repository_push_email.html.haml b/app/views/notify/repository_push_email.html.haml
index d678147ec5d..b6fe445867c 100644
--- a/app/views/notify/repository_push_email.html.haml
+++ b/app/views/notify/repository_push_email.html.haml
@@ -23,7 +23,7 @@
= diff.new_path || diff.old_path
%hr
%pre
- = diff.diff
+ = color_email_diff(diff.diff)
%br
- if @compare.timeout