Pimcore\Model\Object\ClassDefinition\Data\Objectbricks::checkValidity PHP Method

checkValidity() public method

Checks if data is valid for current data field
public checkValidity ( mixed $data, boolean $omitMandatoryCheck = false )
$data mixed
$omitMandatoryCheck boolean
    public function checkValidity($data, $omitMandatoryCheck = false)
    {
        if (!$omitMandatoryCheck) {
            if ($data instanceof Object\Objectbrick) {
                $items = $data->getItems();
                foreach ($items as $item) {
                    if ($item->getDoDelete()) {
                        continue;
                    }
                    if (!$item instanceof Object\Objectbrick\Data\AbstractData) {
                        continue;
                    }
                    try {
                        $collectionDef = Object\Objectbrick\Definition::getByKey($item->getType());
                    } catch (\Exception $e) {
                        continue;
                    }
                    //needed when new brick is added but not saved yet - then validity check fails.
                    if (!$item->getFieldname()) {
                        $item->setFieldname($data->getFieldname());
                    }
                    foreach ($collectionDef->getFieldDefinitions() as $fd) {
                        $key = $fd->getName();
                        $getter = "get" . ucfirst($key);
                        $fd->checkValidity($item->{$getter}());
                    }
                }
            }
        }
    }