NerdsAndCompany\Schematic\Services\AssetSources::populateAssetSource PHP Метод

populateAssetSource() приватный Метод

Populate asset source.
private populateAssetSource ( string $assetHandle, array $assetSourceDefinition ) : Craft\AssetSourceModel
$assetHandle string
$assetSourceDefinition array
Результат Craft\AssetSourceModel
    private function populateAssetSource($assetHandle, array $assetSourceDefinition)
    {
        $assetSource = AssetSourceRecord::model()->findByAttributes(['handle' => $assetHandle]);
        $assetSource = $assetSource ? AssetSourceModel::populateModel($assetSource) : new AssetSourceModel();
        $defaultAssetSourceSettings = array('publicURLs' => true);
        $assetSource->setAttributes(['handle' => $assetHandle, 'type' => $assetSourceDefinition['type'], 'name' => $assetSourceDefinition['name'], 'sortOrder' => $assetSourceDefinition['sortOrder'], 'settings' => array_merge($defaultAssetSourceSettings, $assetSourceDefinition['settings'])]);
        if (array_key_exists('fieldLayout', $assetSourceDefinition)) {
            $fieldLayout = Craft::app()->schematic_fields->getFieldLayout($assetSourceDefinition['fieldLayout']);
            $assetSource->setFieldLayout($fieldLayout);
        }
        return $assetSource;
    }