protected function setupOptions($options)
    {
        if(empty($options[static::EXTENSION_ID])) {
            $cls = get_class($this);
            strtok($cls, '\\');
            $options[static::EXTENSION_ID] = strtok('\\');
        }
        $options = array_merge([
            static::STYLESHEET   => Template::css('tao-3.css', 'tao'),
            static::LOGO_URL     => Template::img('tao-logo.png', 'tao'),
            static::LABEL        => $options[static::LABEL],
            static::EXTENSION_ID => $options[static::EXTENSION_ID],
            static::ID           => $options[static::EXTENSION_ID]
                                    . StringUtils::camelize(StringUtils::removeSpecChars($options[static::LABEL]), true)
        ],
            $options
        );

        if($options[static::LOGO_URL] === static::DEFAULT_PATH) {
            $options[static::LOGO_URL] = Template::img(
                $this->defaultThemePath . '/' . static::DEFAULT_LOGO_NAME,
                $options[static::EXTENSION_ID]
            );
        }

        if($options[static::STYLESHEET] === static::DEFAULT_PATH) {
            $options[static::STYLESHEET] = Template::css(
                $this->defaultThemePath . '/' . static::DEFAULT_STYLESHEET_NAME,
                $options[static::EXTENSION_ID]
            );
        }

        $this->setOptions($options);

        return true;
    }
protected function setupOptions($options)
    {
        if(empty($options[static::EXTENSION_ID])) {
            $cls = get_class($this);
            strtok($cls, '\\');
            $options[static::EXTENSION_ID] = strtok('\\');
        }
        $options = array_merge([
            static::STYLESHEET   => Template::css('tao-3.css', 'tao'),
            static::LOGO_URL     => Template::img('tao-logo.png', 'tao'),
            static::LABEL        => $options[static::LABEL],
            static::EXTENSION_ID => $options[static::EXTENSION_ID],
            static::ID           => $options[static::EXTENSION_ID]
                                    . StringUtils::camelize(StringUtils::removeSpecChars($options[static::LABEL]), true)
        ],
            $options
        );

        if($options[static::LOGO_URL] === static::DEFAULT_PATH) {
            $options[static::LOGO_URL] = Template::img(
                $this->defaultThemePath . '/' . static::DEFAULT_LOGO_NAME,
                $options[static::EXTENSION_ID]
            );
        }

        if($options[static::STYLESHEET] === static::DEFAULT_PATH) {
            $options[static::STYLESHEET] = Template::css(
                $this->defaultThemePath . '/' . static::DEFAULT_STYLESHEET_NAME,
                $options[static::EXTENSION_ID]
            );
        }

        $this->setOptions($options);

        return true;
    }
protected function setupOptions ( $ options ) { if ( empty ( $ options [ static :: EXTENSION_ID ] ) ) { $ cls = get_class ( $ this ) ; strtok ( $ cls , '\\' ) ; $ options [ static :: EXTENSION_ID ] = strtok ( '\\' ) ; } $ options = array_merge ( [ static :: STYLESHEET => Template :: css ( 'tao-3.css' , 'tao' ) , static :: LOGO_URL => Template :: img ( 'tao-logo.png' , 'tao' ) , static :: LABEL => $ options [ static :: LABEL ] , static :: EXTENSION_ID => $ options [ static :: EXTENSION_ID ] , static :: ID => $ options [ static :: EXTENSION_ID ] . StringUtils :: camelize ( StringUtils :: removeSpecChars ( $ options [ static :: LABEL ] ) , true ) ] , $ options ) ; if ( $ options [ static :: LOGO_URL ] === static :: DEFAULT_PATH ) { $ options [ static :: LOGO_URL ] = Template :: img ( $ this -> defaultThemePath . '/' . static :: DEFAULT_LOGO_NAME , $ options [ static :: EXTENSION_ID ] ) ; } if ( $ options [ static :: STYLESHEET ] === static :: DEFAULT_PATH ) { $ options [ static :: STYLESHEET ] = Template :: css ( $ this -> defaultThemePath . '/' . static :: DEFAULT_STYLESHEET_NAME , $ options [ static :: EXTENSION_ID ] ) ; } $ this -> setOptions ( $ options ) ; return true ; }
This setup is used when configuring a theme for a custom extension.
In multi tenancy though the tenant id might be use instead of the extension id.

@param $options

@return bool
This setup is used when configuring a theme for a custom extension . In multi tenancy though the tenant id might be use instead of the extension id .