Esempio n. 1
0
 /**
  * @param array $config
  *
  * @return array
  *
  * @deprecated since 1.9. Use 'exclude' attribute for a field instead of 'excluded_fields' for an entity
  */
 protected function applyExcludedFieldsConfig(array $config)
 {
     $excludedFields = ConfigUtil::getArrayValue($config, 'excluded_fields');
     unset($config['excluded_fields']);
     foreach ($excludedFields as $field) {
         $fieldConfig = ConfigUtil::getFieldConfig($config, $field);
         if (!ConfigUtil::isExclude($fieldConfig)) {
             $fieldConfig[ConfigUtil::EXCLUDE] = true;
             $config[ConfigUtil::FIELDS][$field] = $fieldConfig;
         }
     }
     return $config;
 }
Esempio n. 2
0
 /**
  * @param array $row
  * @param array $config
  */
 protected function normalizeRow(array &$row, array $config)
 {
     foreach ($config[ConfigUtil::FIELDS] as $field => $fieldConfig) {
         if (null !== $fieldConfig) {
             if (isset($fieldConfig[ConfigUtil::PROPERTY_PATH]) && !ConfigUtil::isExclude($fieldConfig) && (!array_key_exists($field, $row) || null !== $row[$field])) {
                 $propertyPath = $fieldConfig[ConfigUtil::PROPERTY_PATH];
                 $renaming = isset($fieldConfig[ConfigUtil::FIELDS]) && is_array($fieldConfig[ConfigUtil::FIELDS]) && array_key_exists($propertyPath, $fieldConfig[ConfigUtil::FIELDS]);
                 $this->applyPropertyPath($row, $field, $propertyPath, $renaming);
             }
             if (!empty($fieldConfig[ConfigUtil::FIELDS]) && !empty($row[$field]) && is_array($row[$field])) {
                 if (array_key_exists(0, $row[$field])) {
                     $this->normalizeRows($row[$field], $fieldConfig);
                 } else {
                     $this->normalizeRow($row[$field], $fieldConfig);
                 }
             }
         }
     }
 }