public static function getImageFieldRequirements($modelConfig, $fieldProperty) { $size = false; if ($modelConfig->standalone === false && ($parentIdProperty = self::firstParamIsParent($modelConfig))) { $parentModelConfig = AdminHelper::modelExists($parentIdProperty, 'id'); if ($parentModelConfig && $parentModelConfig->imageSizes) { if ($parentModelConfig->keyBasedSizes) { $objectId = AdminHelper::firstParamIsParent($parentModelConfig, true); /** @var BaseModel $modelName */ /** @var ModelConfig $parentModelConfig */ $modelName = $parentModelConfig->myFullEntityName(); $object = $modelName::find($objectId); $modelKey = $object->model_key; $imageSizes = $parentModelConfig->imageSizes->{$modelKey}; } else { $imageSizes = $parentModelConfig->imageSizes; } if ($imageSizes) { foreach ($imageSizes as $size) { $size = AdminHelper::objectToArray($size); break; } } } } if (!$size) { foreach ($modelConfig->formFields as $field) { if ($field->property == $fieldProperty) { foreach ($field->sizes as $size) { $size = AdminHelper::objectToArray($size); break; } } } } if ($size) { $data = array('minWidth' => $size[0], 'minHeight' => $size[1], 'transformMethod' => $size[2], 'folder' => $size[3], 'quality' => $size[4]); return $data; } return false; }