Class: Gitlab::GroupSearchResults
- Inherits:
-
SearchResults
- Object
- SearchResults
- Gitlab::GroupSearchResults
- Defined in:
- lib/gitlab/group_search_results.rb
Constant Summary
Constants inherited from SearchResults
SearchResults::COUNT_LIMIT, SearchResults::COUNT_LIMIT_MESSAGE, SearchResults::DEFAULT_PAGE, SearchResults::DEFAULT_PER_PAGE
Instance Attribute Summary collapse
-
#group ⇒ Object
readonly
Returns the value of attribute group.
Attributes inherited from SearchResults
#current_user, #default_project_filter, #filters, #limit_projects, #order_by, #query, #sort, #source
Instance Method Summary collapse
-
#initialize(current_user, query, limit_projects = nil, group:, **opts) ⇒ GroupSearchResults
constructor
A new instance of GroupSearchResults.
-
#issuable_params ⇒ Object
rubocop:enable CodeReuse/ActiveRecord.
-
#users ⇒ Object
rubocop:disable CodeReuse/ActiveRecord.
Methods inherited from SearchResults
#aggregations, #count_limit, #counts, #error, #failed?, #formatted_count, #formatted_limited_count, #highlight_map, #limited_issues_count, #limited_merge_requests_count, #limited_milestones_count, #limited_projects_count, #limited_users_count, #objects
Constructor Details
#initialize(current_user, query, limit_projects = nil, group:, **opts) ⇒ GroupSearchResults
Returns a new instance of GroupSearchResults.
7 8 9 10 11 12 13 14 15 16 17 18 19 |
# File 'lib/gitlab/group_search_results.rb', line 7 def initialize(current_user, query, limit_projects = nil, group:, **opts) @group = group super( current_user, query, limit_projects, default_project_filter: opts.fetch(:default_project_filter, false), order_by: opts.fetch(:order_by, nil), sort: opts.fetch(:sort, nil), filters: opts.fetch(:filters, {}), source: opts.fetch(:source, nil) ) end |
Instance Attribute Details
#group ⇒ Object (readonly)
Returns the value of attribute group.
5 6 7 |
# File 'lib/gitlab/group_search_results.rb', line 5 def group @group end |
Instance Method Details
#issuable_params ⇒ Object
rubocop:enable CodeReuse/ActiveRecord
32 33 34 |
# File 'lib/gitlab/group_search_results.rb', line 32 def issuable_params super.merge(group_id: group.id, include_subgroups: true) end |
#users ⇒ Object
rubocop:disable CodeReuse/ActiveRecord
22 23 24 25 26 27 28 29 |
# File 'lib/gitlab/group_search_results.rb', line 22 def users groups = group.self_and_hierarchy_intersecting_with_user_groups(current_user) members = GroupMember.where(group: groups).non_invite users = super users.where(id: members.select(:user_id)) end |