public function allWithChecked($resource = null) { $resourceGroups = []; if ($resource instanceof \Cartalyst\Sentry\Users\UserInterface) { $resourceGroups = array_column($resource->getGroups()->toArray(), 'id'); } else { foreach ($this->sentry->findAllGroups() as $group) { if ($group->hasAccess($resource)) { $resourceGroups[] = $group->getId(); } } } $groups = $this->all(); foreach ($groups as &$group) { $group['value'] = 0; if (in_array($group['id'], $resourceGroups)) { $group['value'] = 1; } } return $groups; }
/** * Returns all groups. * * @return array $groups * @static */ public static function findAllGroups() { return \Cartalyst\Sentry\Sentry::findAllGroups(); }