2018-08-18 07:19:57 -04:00
|
|
|
# frozen_string_literal: true
|
|
|
|
|
2012-11-21 00:24:05 -05:00
|
|
|
module DashboardHelper
|
2019-04-19 05:44:21 -04:00
|
|
|
include IconsHelper
|
|
|
|
|
2014-12-26 11:33:53 -05:00
|
|
|
def assigned_issues_dashboard_path
|
2018-10-27 13:24:30 -04:00
|
|
|
issues_dashboard_path(assignee_username: current_user.username)
|
2014-07-10 10:54:31 -04:00
|
|
|
end
|
|
|
|
|
2014-12-26 11:33:53 -05:00
|
|
|
def assigned_mrs_dashboard_path
|
2018-10-27 13:24:30 -04:00
|
|
|
merge_requests_dashboard_path(assignee_username: current_user.username)
|
2014-07-10 10:54:31 -04:00
|
|
|
end
|
2017-12-11 09:21:06 -05:00
|
|
|
|
|
|
|
def dashboard_nav_links
|
|
|
|
@dashboard_nav_links ||= get_dashboard_nav_links
|
|
|
|
end
|
|
|
|
|
|
|
|
def dashboard_nav_link?(link)
|
|
|
|
dashboard_nav_links.include?(link)
|
|
|
|
end
|
|
|
|
|
|
|
|
def any_dashboard_nav_link?(links)
|
|
|
|
links.any? { |link| dashboard_nav_link?(link) }
|
|
|
|
end
|
|
|
|
|
2019-05-11 00:16:19 -04:00
|
|
|
def has_start_trial?
|
|
|
|
false
|
|
|
|
end
|
|
|
|
|
2019-10-29 05:06:10 -04:00
|
|
|
def feature_entry(title, href: nil, enabled: true, doc_href: nil)
|
2019-04-19 05:44:21 -04:00
|
|
|
enabled_text = enabled ? 'on' : 'off'
|
|
|
|
label = "#{title}: status #{enabled_text}"
|
|
|
|
link_or_title = href && enabled ? tag.a(title, href: href) : title
|
|
|
|
|
|
|
|
tag.p(aria: { label: label }) do
|
|
|
|
concat(link_or_title)
|
2019-10-29 05:06:10 -04:00
|
|
|
|
2019-12-20 04:24:38 -05:00
|
|
|
concat(tag.span(class: %w[light float-right]) do
|
2019-10-29 05:06:10 -04:00
|
|
|
boolean_to_icon(enabled)
|
2019-04-19 05:44:21 -04:00
|
|
|
end)
|
2019-10-29 05:06:10 -04:00
|
|
|
|
|
|
|
if doc_href.present?
|
2020-08-10 14:09:54 -04:00
|
|
|
link_to_doc = link_to(sprite_icon('question'), doc_href,
|
2020-07-14 02:09:17 -04:00
|
|
|
class: 'gl-ml-2', title: _('Documentation'),
|
2019-10-29 05:06:10 -04:00
|
|
|
target: '_blank', rel: 'noopener noreferrer')
|
|
|
|
|
|
|
|
concat(link_to_doc)
|
|
|
|
end
|
2019-04-19 05:44:21 -04:00
|
|
|
end
|
|
|
|
end
|
|
|
|
|
2017-12-11 09:21:06 -05:00
|
|
|
private
|
|
|
|
|
|
|
|
def get_dashboard_nav_links
|
|
|
|
links = [:projects, :groups, :snippets]
|
|
|
|
|
|
|
|
if can?(current_user, :read_cross_project)
|
|
|
|
links += [:activity, :milestones]
|
|
|
|
end
|
|
|
|
|
2019-12-18 13:08:04 -05:00
|
|
|
if can?(current_user, :read_instance_statistics)
|
|
|
|
links << :analytics
|
|
|
|
end
|
|
|
|
|
2017-12-11 09:21:06 -05:00
|
|
|
links
|
|
|
|
end
|
2012-11-21 00:24:05 -05:00
|
|
|
end
|
2019-09-13 09:26:31 -04:00
|
|
|
|
|
|
|
DashboardHelper.prepend_if_ee('EE::DashboardHelper')
|