Prado\Web\UI\TTemplate::configureSubProperty PHP Метод

configureSubProperty() защищенный Метод

Configures a subproperty for a component.
protected configureSubProperty ( $component, $name, $value )
    protected function configureSubProperty($component, $name, $value)
    {
        if (is_array($value)) {
            switch ($value[0]) {
                case self::CONFIG_DATABIND:
                    // databinding
                    $component->bindProperty($name, $value[1]);
                    break;
                case self::CONFIG_EXPRESSION:
                    // expression
                    if ($component instanceof TControl) {
                        $component->autoBindProperty($name, $value[1]);
                    } else {
                        $component->setSubProperty($name, $this->_tplControl->evaluateExpression($value[1]));
                    }
                    break;
                case self::CONFIG_TEMPLATE:
                    $component->setSubProperty($name, $value[1]);
                    break;
                case self::CONFIG_ASSET:
                    // asset URL
                    $url = $this->publishFilePath($this->_contextPath . DIRECTORY_SEPARATOR . $value[1]);
                    $component->setSubProperty($name, $url);
                    break;
                case self::CONFIG_PARAMETER:
                    // application parameter
                    $component->setSubProperty($name, $this->getApplication()->getParameters()->itemAt($value[1]));
                    break;
                case self::CONFIG_LOCALIZATION:
                    $component->setSubProperty($name, Prado::localize($value[1]));
                    break;
                default:
                    // an error if reaching here
                    throw new TConfigurationException('template_tag_unexpected', $name, $value[1]);
                    break;
            }
        } else {
            $component->setSubProperty($name, $value);
        }
    }