Back to UsergrouplistField class

Method getOptions

protected array
getOptions
()
Method to get the options to populate list
Returns
  • array The field option objects.
Since
  • 3.2

Method getOptions - Source code

/**
 * Method to get the options to populate list
 *
 * @return  array  The field option objects.
 *
 * @since   3.2
 */
protected function getOptions()
{
    $options = parent::getOptions();
    $checkSuperUser = (int) $this->getAttribute('checksuperusergroup', 0);
    // Cache user groups base on checksuperusergroup attribute value
    if (!isset(static::$options[$checkSuperUser])) {
        $groups = UserGroupsHelper::getInstance()->getAll();
        $cacheOptions = array();
        foreach ($groups as $group) {
            // Don't list super user groups.
            if ($checkSuperUser && Access::checkGroup($group->id, 'core.admin')) {
                continue;
            }
            $cacheOptions[] = (object) array('text' => str_repeat('- ', $group->level) . $group->title, 'value' => $group->id, 'level' => $group->level);
        }
        static::$options[$checkSuperUser] = $cacheOptions;
    }
    return array_merge($options, static::$options[$checkSuperUser]);
}