Skip to content
Snippets Groups Projects
Commit 5d608ceb authored by Airat Shigapov's avatar Airat Shigapov Committed by blackst0ne
Browse files

Return truncation for notification descriptions, fix minor bugs with rendering

parent 1c780792
Branches
Tags
1 merge request!9252Add merge request count to each issue on issues list
Loading
@@ -2,6 +2,11 @@ class HipchatService < Service
Loading
@@ -2,6 +2,11 @@ class HipchatService < Service
include ActionView::Helpers::SanitizeHelper include ActionView::Helpers::SanitizeHelper
   
MAX_COMMITS = 3 MAX_COMMITS = 3
HIPCHAT_ALLOWED_TAGS = %w[
a b i strong em br img pre code
table th tr td caption colgroup col thead tbody tfoot
ul ol li dl dt dd
]
   
prop_accessor :token, :room, :server, :notify, :color, :api_version prop_accessor :token, :room, :server, :notify, :color, :api_version
boolean_accessor :notify_only_broken_builds boolean_accessor :notify_only_broken_builds
Loading
@@ -139,10 +144,10 @@ class HipchatService < Service
Loading
@@ -139,10 +144,10 @@ class HipchatService < Service
   
context.merge!(options) context.merge!(options)
   
html = Banzai.render(text, context) html = Banzai.post_process(Banzai.render(text, context), context)
html = Banzai.post_process(html, context) sanitized_html = sanitize(html, tags: HIPCHAT_ALLOWED_TAGS, attributes: %w[href title alt])
   
sanitize html, attributes: %w(href title alt) sanitized_html.truncate(200, separator: ' ', omission: '...')
end end
   
def create_issue_message(data) def create_issue_message(data)
Loading
@@ -159,7 +164,7 @@ class HipchatService < Service
Loading
@@ -159,7 +164,7 @@ class HipchatService < Service
issue_link = "<a href=\"#{issue_url}\">issue ##{issue_iid}</a>" issue_link = "<a href=\"#{issue_url}\">issue ##{issue_iid}</a>"
message = "#{user_name} #{state} #{issue_link} in #{project_link}: <b>#{title}</b>" message = "#{user_name} #{state} #{issue_link} in #{project_link}: <b>#{title}</b>"
   
message << markdown(description) message << "<pre>#{markdown(description)}</pre>"
   
message message
end end
Loading
@@ -179,7 +184,7 @@ class HipchatService < Service
Loading
@@ -179,7 +184,7 @@ class HipchatService < Service
message = "#{user_name} #{state} #{merge_request_link} in " \ message = "#{user_name} #{state} #{merge_request_link} in " \
"#{project_link}: <b>#{title}</b>" "#{project_link}: <b>#{title}</b>"
   
message << markdown(description) message << "<pre>#{markdown(description)}</pre>"
   
message message
end end
Loading
@@ -230,7 +235,7 @@ class HipchatService < Service
Loading
@@ -230,7 +235,7 @@ class HipchatService < Service
message = "#{user_name} commented on #{subject_html} in #{project_link}: " message = "#{user_name} commented on #{subject_html} in #{project_link}: "
message << title message << title
   
message << markdown(note, ref: commit_id) message << "<pre>#{markdown(note, ref: commit_id)}</pre>"
   
message message
end end
Loading
Loading
Loading
@@ -135,7 +135,7 @@ describe HipchatService, models: true do
Loading
@@ -135,7 +135,7 @@ describe HipchatService, models: true do
"<a href=\"#{obj_attr[:url]}\">issue ##{obj_attr["iid"]}</a> in " \ "<a href=\"#{obj_attr[:url]}\">issue ##{obj_attr["iid"]}</a> in " \
"<a href=\"#{project.web_url}\">#{project_name}</a>: " \ "<a href=\"#{project.web_url}\">#{project_name}</a>: " \
"<b>Awesome issue</b>" \ "<b>Awesome issue</b>" \
"<p><strong>please</strong> fix</p>") "<pre><strong>please</strong> fix</pre>")
end end
end end
   
Loading
@@ -159,7 +159,7 @@ describe HipchatService, models: true do
Loading
@@ -159,7 +159,7 @@ describe HipchatService, models: true do
"<a href=\"#{obj_attr[:url]}\">merge request !#{obj_attr["iid"]}</a> in " \ "<a href=\"#{obj_attr[:url]}\">merge request !#{obj_attr["iid"]}</a> in " \
"<a href=\"#{project.web_url}\">#{project_name}</a>: " \ "<a href=\"#{project.web_url}\">#{project_name}</a>: " \
"<b>Awesome merge request</b>" \ "<b>Awesome merge request</b>" \
"<p><strong>please</strong> fix</p>") "<pre><strong>please</strong> fix</pre>")
end end
end end
   
Loading
@@ -190,7 +190,7 @@ describe HipchatService, models: true do
Loading
@@ -190,7 +190,7 @@ describe HipchatService, models: true do
"<a href=\"#{obj_attr[:url]}\">commit #{commit_id}</a> in " \ "<a href=\"#{obj_attr[:url]}\">commit #{commit_id}</a> in " \
"<a href=\"#{project.web_url}\">#{project_name}</a>: " \ "<a href=\"#{project.web_url}\">#{project_name}</a>: " \
"#{title}" \ "#{title}" \
"<p>a comment on a commit</p>") "<pre>a comment on a commit</pre>")
end end
end end
   
Loading
@@ -222,7 +222,7 @@ describe HipchatService, models: true do
Loading
@@ -222,7 +222,7 @@ describe HipchatService, models: true do
"<a href=\"#{obj_attr[:url]}\">merge request !#{merge_id}</a> in " \ "<a href=\"#{obj_attr[:url]}\">merge request !#{merge_id}</a> in " \
"<a href=\"#{project.web_url}\">#{project_name}</a>: " \ "<a href=\"#{project.web_url}\">#{project_name}</a>: " \
"<b>#{title}</b>" \ "<b>#{title}</b>" \
"<p>merge request <strong>note</strong></p>") "<pre>merge request <strong>note</strong></pre>")
end end
end end
   
Loading
@@ -247,7 +247,7 @@ describe HipchatService, models: true do
Loading
@@ -247,7 +247,7 @@ describe HipchatService, models: true do
"<a href=\"#{obj_attr[:url]}\">issue ##{issue_id}</a> in " \ "<a href=\"#{obj_attr[:url]}\">issue ##{issue_id}</a> in " \
"<a href=\"#{project.web_url}\">#{project_name}</a>: " \ "<a href=\"#{project.web_url}\">#{project_name}</a>: " \
"<b>#{title}</b>" \ "<b>#{title}</b>" \
"<p>issue <strong>note</strong></p>") "<pre>issue <strong>note</strong></pre>")
end end
end end
   
Loading
@@ -275,7 +275,7 @@ describe HipchatService, models: true do
Loading
@@ -275,7 +275,7 @@ describe HipchatService, models: true do
"<a href=\"#{obj_attr[:url]}\">snippet ##{snippet_id}</a> in " \ "<a href=\"#{obj_attr[:url]}\">snippet ##{snippet_id}</a> in " \
"<a href=\"#{project.web_url}\">#{project_name}</a>: " \ "<a href=\"#{project.web_url}\">#{project_name}</a>: " \
"<b>#{title}</b>" \ "<b>#{title}</b>" \
"<p>snippet note</p>") "<pre>snippet note</pre>")
end end
end end
end end
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment