NerdsAndCompany\Schematic\Services\Fields::getFieldLayout PHP Метод

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

Attempt to import a field layout.
public getFieldLayout ( array $fieldLayoutDef ) : Craft\FieldLayoutModel
$fieldLayoutDef array
Результат Craft\FieldLayoutModel
    public function getFieldLayout(array $fieldLayoutDef)
    {
        $layoutFields = [];
        $requiredFields = [];
        if (array_key_exists('tabs', $fieldLayoutDef)) {
            foreach ($fieldLayoutDef['tabs'] as $tabName => $tabDef) {
                $layoutTabFields = $this->getPrepareFieldLayout($tabDef);
                $requiredFields = array_merge($requiredFields, $layoutTabFields['required']);
                $layoutFields[$tabName] = $layoutTabFields['fields'];
            }
        } elseif (array_key_exists('fields', $fieldLayoutDef)) {
            $layoutTabFields = $this->getPrepareFieldLayout($fieldLayoutDef);
            $requiredFields = $layoutTabFields['required'];
            $layoutFields = $layoutTabFields['fields'];
        }
        $fieldLayout = Craft::app()->fields->assembleLayout($layoutFields, $requiredFields);
        $fieldLayout->type = ElementType::Entry;
        return $fieldLayout;
    }