blob: 0420f773b26be8b0daa5ee748ea08975b0aa5d95 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
module GroupsTree
def find_groups(parent, all_available: true)
groups =
if parent && Group.supports_nested_groups?
if can?(current_user, :read_group, parent)
GroupsFinder.new(current_user,
parent: parent,
all_available: all_available,
all_children_for_parent: params[:filter_groups].present?).execute
else
Group.none
end
else
GroupsFinder.new(current_user, all_available: all_available).execute
end
groups = groups.search(params[:filter_groups]) if params[:filter_groups].present?
groups = groups.includes(:route)
groups = groups.sort(@sort = params[:sort])
groups.page(params[:page])
end
end
|