summaryrefslogtreecommitdiff
path: root/app/finders/members_finder.rb
blob: 702944404f50909d3fcb37f1ea5eb2b440f9c1fd (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
class MembersFinder < Projects::ApplicationController
  def initialize(project_members, project_group)
    @project_members = project_members
    @project_group = project_group
  end

  def execute(current_user)
    non_null_user_ids = @project_members.where.not(user_id: nil).select(:user_id)
    group_members = @project_group.group_members.where.not(user_id: non_null_user_ids)
    group_members = group_members.non_invite unless can?(current_user, :admin_group,  @project_group)
    group_members
  end
end