Admin_ObjectController::filterLocalizedFields PHP Метод

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

public filterLocalizedFields ( AbstractObject $object, $objectData )
$object Pimcore\Model\Object\AbstractObject
    public function filterLocalizedFields(Object\AbstractObject $object, $objectData)
    {
        if (!$object instanceof Object\Concrete) {
            return $objectData;
        }
        $user = Tool\Admin::getCurrentUser();
        if ($user->getAdmin()) {
            return $objectData;
        }
        $fieldDefinitions = $object->getClass()->getFieldDefinitions();
        if ($fieldDefinitions) {
            $languageAllowedView = Object\Service::getLanguagePermissions($object, $user, "lView");
            $languageAllowedEdit = Object\Service::getLanguagePermissions($object, $user, "lEdit");
            foreach ($fieldDefinitions as $key => $fd) {
                if ($fd->getFieldtype() == "localizedfields") {
                    foreach ($objectData["data"][$key]["data"] as $language => $languageData) {
                        if (!is_null($languageAllowedView) && !$languageAllowedView[$language]) {
                            unset($objectData["data"][$key]["data"][$language]);
                        }
                    }
                }
            }
            $this->setLayoutPermission($objectData["layout"], $languageAllowedView, $languageAllowedEdit);
        }
        return $objectData;
    }