public static function editableGroups($updatePerms = false, $excludeSuper = false, $pageNumber = 1) { $beans = null; $groups = []; if ($excludeSuper) { $beans = R::find('group', ' is_default_anonymous = 0 and is_default_registered = 0 and is_everyone = 0 and is_super = 0 order by name limit :offset, :count', ['offset' => App::pageOffset($pageNumber), 'count' => App::$pagingSize]); } else { $beans = R::find('group', ' is_default_anonymous = 0 and is_default_registered = 0 and is_everyone = 0 order by name limit :offset, :count', ['offset' => App::pageOffset($pageNumber), 'count' => App::$pagingSize]); } foreach ($beans as $groupBean) { $group = new Group($groupBean->name, $groupBean); $groups[] = $group; if ($updatePerms) { $group->updatePerms(); } } return $groups; }