Admin_ObjectController::performFieldcollectionModificationCheck PHP Метод

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

public performFieldcollectionModificationCheck ( Concrete $object, $originalModificationDate, $data )
$object Pimcore\Model\Object\Concrete
    public function performFieldcollectionModificationCheck(Object\Concrete $object, $originalModificationDate, $data)
    {
        $modificationDate = $this->getParam("modificationDate");
        if ($modificationDate != $originalModificationDate) {
            $fielddefinitions = $object->getClass()->getFieldDefinitions();
            foreach ($fielddefinitions as $fd) {
                if ($fd instanceof Object\ClassDefinition\Data\Fieldcollections) {
                    if (isset($data[$fd->getName()])) {
                        $allowedTypes = $fd->getAllowedTypes();
                        foreach ($allowedTypes as $type) {
                            /** @var  $fdDef Object\Fieldcollection\Definition */
                            $fdDef = Object\Fieldcollection\Definition::getByKey($type);
                            $childDefinitions = $fdDef->getFieldDefinitions();
                            foreach ($childDefinitions as $childDef) {
                                if ($childDef instanceof Object\ClassDefinition\Data\Localizedfields) {
                                    $this->_helper->json(["success" => false, "message" => "Could be that someone messed around with the fieldcollection in the meantime. Please reload and try again"]);
                                }
                            }
                        }
                    }
                }
            }
        }
    }