summaryrefslogtreecommitdiff
path: root/app/helpers/events_helper.rb
diff options
context:
space:
mode:
Diffstat (limited to 'app/helpers/events_helper.rb')
-rw-r--r--app/helpers/events_helper.rb203
1 files changed, 0 insertions, 203 deletions
diff --git a/app/helpers/events_helper.rb b/app/helpers/events_helper.rb
deleted file mode 100644
index 8428281f8f6..00000000000
--- a/app/helpers/events_helper.rb
+++ /dev/null
@@ -1,203 +0,0 @@
-module EventsHelper
- def link_to_author(event)
- author = event.author
-
- if author
- link_to author.name, user_path(author.username)
- else
- event.author_name
- end
- end
-
- def event_action_name(event)
- target = if event.target_type
- if event.note?
- event.note_target_type
- else
- event.target_type.titleize.downcase
- end
- else
- 'project'
- end
-
- [event.action_name, target].join(" ")
- end
-
- def event_filter_link(key, tooltip)
- key = key.to_s
- active = 'active' if @event_filter.active?(key)
- link_opts = {
- class: 'event_filter_link',
- id: "#{key}_event_filter",
- title: "Filter by #{tooltip.downcase}",
- data: { toggle: 'tooltip', placement: 'top' }
- }
-
- content_tag :li, class: "filter_icon #{active}" do
- link_to request.path, link_opts do
- icon(icon_for_event[key]) + content_tag(:span, ' ' + tooltip)
- end
- end
- end
-
- def icon_for_event
- {
- EventFilter.push => 'upload',
- EventFilter.merged => 'check-square-o',
- EventFilter.comments => 'comments',
- EventFilter.team => 'user',
- }
- end
-
- def event_feed_title(event)
- words = []
- words << event.author_name
- words << event_action_name(event)
-
- if event.push?
- words << event.ref_type
- words << event.ref_name
- words << "at"
- elsif event.commented?
- if event.note_commit?
- words << event.note_short_commit_id
- else
- words << "##{truncate event.note_target_iid}"
- end
- words << "at"
- elsif event.target
- words << "##{event.target_iid}:"
- words << event.target.title if event.target.respond_to?(:title)
- words << "at"
- end
-
- words << event.project_name
-
- words.join(" ")
- end
-
- def event_feed_url(event)
- if event.issue?
- namespace_project_issue_url(event.project.namespace, event.project,
- event.issue)
- elsif event.merge_request?
- namespace_project_merge_request_url(event.project.namespace,
- event.project, event.merge_request)
- elsif event.note? && event.note_commit?
- namespace_project_commit_url(event.project.namespace, event.project,
- event.note_target)
- elsif event.note?
- if event.note_target
- if event.note_commit?
- namespace_project_commit_path(event.project.namespace, event.project,
- event.note_commit_id,
- anchor: dom_id(event.target))
- elsif event.note_project_snippet?
- namespace_project_snippet_path(event.project.namespace,
- event.project, event.note_target)
- else
- event_note_target_path(event)
- end
- end
- elsif event.push?
- if event.push_with_commits? && event.md_ref?
- if event.commits_count > 1
- namespace_project_compare_url(event.project.namespace, event.project,
- from: event.commit_from, to:
- event.commit_to)
- else
- namespace_project_commit_url(event.project.namespace, event.project,
- id: event.commit_to)
- end
- else
- namespace_project_commits_url(event.project.namespace, event.project,
- event.ref_name)
- end
- end
- end
-
- def event_feed_summary(event)
- if event.issue?
- render "events/event_issue", issue: event.issue
- elsif event.push?
- render "events/event_push", event: event
- elsif event.merge_request?
- render "events/event_merge_request", merge_request: event.merge_request
- elsif event.note?
- render "events/event_note", note: event.note
- end
- end
-
- def event_note_target_path(event)
- if event.note? && event.note_commit?
- namespace_project_commit_path(event.project.namespace, event.project,
- event.note_target)
- else
- polymorphic_path([event.project.namespace.becomes(Namespace),
- event.project, event.note_target],
- anchor: dom_id(event.target))
- end
- end
-
- def event_note_title_html(event)
- if event.note_target
- if event.note_commit?
- link_to(
- namespace_project_commit_path(event.project.namespace, event.project,
- event.note_commit_id,
- anchor: dom_id(event.target)),
- class: "commit_short_id"
- ) do
- "#{event.note_target_type} #{event.note_short_commit_id}"
- end
- elsif event.note_project_snippet?
- link_to(namespace_project_snippet_path(event.project.namespace,
- event.project,
- event.note_target)) do
- "#{event.note_target_type} ##{truncate event.note_target_id}"
- end
- else
- link_to event_note_target_path(event) do
- "#{event.note_target_type} ##{truncate event.note_target_iid}"
- end
- end
- else
- content_tag :strong do
- "(deleted)"
- end
- end
- end
-
- def event_note(text, options = {})
- text = first_line_in_markdown(text, 150, options)
- sanitize(text, tags: %w(a img b pre code p span))
- end
-
- def event_commit_title(message)
- escape_once(truncate(message.split("\n").first, length: 70))
- rescue
- "--broken encoding"
- end
-
- def event_to_atom(xml, event)
- if event.proper?
- xml.entry do
- event_link = event_feed_url(event)
- event_title = event_feed_title(event)
- event_summary = event_feed_summary(event)
-
- xml.id "tag:#{request.host},#{event.created_at.strftime("%Y-%m-%d")}:#{event.id}"
- xml.link href: event_link
- xml.title truncate(event_title, length: 80)
- xml.updated event.created_at.xmlschema
- xml.media :thumbnail, width: "40", height: "40", url: avatar_icon(event.author_email)
- xml.author do |author|
- xml.name event.author_name
- xml.email event.author_email
- end
-
- xml.summary(type: "xhtml") { |x| x << event_summary unless event_summary.nil? }
- end
- end
- end
-end