Class: UserPresenter

Inherits:
Gitlab::View::Presenter::Delegated show all
Defined in:
app/presenters/user_presenter.rb

Instance Method Summary collapse

Methods inherited from Gitlab::View::Presenter::Delegated

#initialize

Methods included from Gitlab::Utils::DelegatorOverride

#delegator_override, #delegator_override_with, #delegator_target, validator, validators, verify!

Methods included from Gitlab::View::Presenter::Base

#__subject__, #declarative_policy_delegate, #is_a?, #path_with_line_numbers, #present, #url_builder, #web_path, #web_url

Methods included from Gitlab::Routing

includes_helpers, redirect_legacy_paths, url_helpers

Constructor Details

This class inherits a constructor from Gitlab::View::Presenter::Delegated

Instance Method Details

#group_membershipsObject



6
7
8
# File 'app/presenters/user_presenter.rb', line 6

def group_memberships
  should_be_private? ? GroupMember.none : user.group_members
end

#preferences_gitpod_pathObject



14
15
16
# File 'app/presenters/user_presenter.rb', line 14

def preferences_gitpod_path
  profile_preferences_path(anchor: 'user_gitpod_enabled') if application_gitpod_enabled?
end

#profile_enable_gitpod_pathObject



18
19
20
# File 'app/presenters/user_presenter.rb', line 18

def profile_enable_gitpod_path
  profile_path(user: { gitpod_enabled: true }) if application_gitpod_enabled?
end

#project_membershipsObject



10
11
12
# File 'app/presenters/user_presenter.rb', line 10

def project_memberships
  should_be_private? ? ProjectMember.none : user.project_members
end

#saved_repliesObject



23
24
25
26
27
28
# File 'app/presenters/user_presenter.rb', line 23

def saved_replies
  return ::Users::SavedReply.none unless Feature.enabled?(:saved_replies, current_user)
  return ::Users::SavedReply.none unless current_user.can?(:read_saved_replies, user)

  user.saved_replies
end