MetaModels\DcGeneral\Events\Table\InputScreenCondition\Subscriber::encodeAttributeValue PHP Метод

encodeAttributeValue() публичный Метод

Translates an generated alias to the corresponding attribute id.
public encodeAttributeValue ( ContaoCommunityAlliance\DcGeneral\Contao\View\Contao2BackendView\Event\EncodePropertyValueFromWidgetEvent $event ) : void
$event ContaoCommunityAlliance\DcGeneral\Contao\View\Contao2BackendView\Event\EncodePropertyValueFromWidgetEvent The event.
Результат void
    public function encodeAttributeValue(EncodePropertyValueFromWidgetEvent $event)
    {
        if ($event->getEnvironment()->getDataDefinition()->getName() !== 'tl_metamodel_dcasetting_condition' || $event->getProperty() !== 'attr_id') {
            return;
        }
        $metaModel = $this->getMetaModel($event->getEnvironment());
        $value = $event->getValue();
        if (!($metaModel && $value)) {
            return;
        }
        // Cut off the 'mm_xyz_' prefix.
        $value = substr($value, strlen($metaModel->getTableName() . '_'));
        $attribute = $metaModel->getAttribute($value);
        if ($attribute) {
            $event->setValue($attribute->get('id'));
        }
    }