Pimcore\Model\Object\Classificationstore\Service::getFieldDefinitionFromJson PHP Method

getFieldDefinitionFromJson() public static method

public static getFieldDefinitionFromJson ( $definition, $type ) : Data
$definition
$type
return Pimcore\Model\Object\ClassDefinition\Data
    public static function getFieldDefinitionFromJson($definition, $type)
    {
        if (!$definition) {
            return null;
        }
        if (!$type) {
            $type = "input";
        }
        $className = "\\Pimcore\\Model\\Object\\ClassDefinition\\Data\\" . ucfirst($type);
        /** @var  $dataDefinition \Pimcore\Model\Object\ClassDefinition\Data */
        $dataDefinition = new $className();
        $dataDefinition->setValues($definition);
        if (method_exists($className, "__set_state")) {
            $dataDefinition = $className::__set_state($dataDefinition);
        }
        return $dataDefinition;
    }

Usage Example

示例#1
0
                if ($definition->isLocalized()) {
                    $languages = array_merge($languages, \Pimcore\Tool::getValidLanguages());
                }
                foreach ($activeGroups as $activeGroupId => $enabled) {
                    if (!$enabled) {
                        continue;
                    }
                    /** @var $groupDefinition Object\Classificationstore\GroupConfig */
                    $groupDefinition = Pimcore\Model\Object\Classificationstore\GroupConfig::getById($activeGroupId);
                    if (!$groupDefinition) {
                        continue;
                    }
                    /** @var $keyGroupRelation Object\Classificationstore\KeyGroupRelation */
                    $keyGroupRelations = $groupDefinition->getRelations();
                    foreach ($keyGroupRelations as $keyGroupRelation) {
                        $keyDef = Object\Classificationstore\Service::getFieldDefinitionFromJson(json_decode($keyGroupRelation->getDefinition()), $keyGroupRelation->getType());
                        if (!$keyDef) {
                            continue;
                        }
                        foreach ($languages as $language) {
                            $keyData = $storedata->getLocalizedKeyValue($activeGroupId, $keyGroupRelation->getKeyId(), $language, true, true);
                            $preview = $keyDef->getVersionPreview($keyData);
                            ?>

                    <tr<?php 
                            if ($c % 2) {
                                ?>
 class="odd"<?php 
                            }
                            ?>
>
All Usage Examples Of Pimcore\Model\Object\Classificationstore\Service::getFieldDefinitionFromJson