/** * Get ezfSolrDocumentFieldBase instances for all attributes of specified eZContentObjectVersion * * @param eZContentObjectVersion Instance of eZContentObjectVersion to fetch attributes from. * * @return array List of ezfSolrDocumentFieldBase instances. */ function getBaseList( eZContentObjectVersion $objectVersion ) { $returnList = array(); // Get ezfSolrDocumentFieldBase instance for all attributes in related object if ( eZContentObject::recursionProtect( $this->ContentObjectAttribute->attribute( 'contentobject_id' ) ) ) { foreach ( $objectVersion->contentObjectAttributes( $this->ContentObjectAttribute->attribute( 'language_code' ) ) as $attribute ) { if ( $attribute->attribute( 'contentclass_attribute' )->attribute( 'is_searchable' ) ) { $returnList[] = ezfSolrDocumentFieldBase::getInstance( $attribute ); } } } return $returnList; }
function metaData($contentObjectAttribute) { $object = $this->objectAttributeContent($contentObjectAttribute); if ($object) { if (eZContentObject::recursionProtect($object->attribute('id'))) { // Does the related object exist in the same language as the current content attribute ? if (in_array($contentObjectAttribute->attribute('language_code'), $object->attribute('current')->translationList(false, false))) { $attributes = $object->attribute('current')->contentObjectAttributes($contentObjectAttribute->attribute('language_code')); } else { $attributes = $object->contentObjectAttributes(); } return eZContentObjectAttribute::metaDataArray($attributes); } else { return array(); } } return false; }
function metaData($contentObjectAttribute) { $metaDataArray = $attributes = array(); $content = $contentObjectAttribute->content(); $language = $contentObjectAttribute->attribute('language_code'); foreach ($content['relation_list'] as $relationItem) { $subObjectID = $relationItem['contentobject_id']; if (!$subObjectID) { continue; } if (isset($content['temp'])) { $attributes = $content['temp'][$subObjectID]['attributes']; } else { $subObjectVersion = $relationItem['contentobject_version']; $object = eZContentObject::fetch($subObjectID); if (eZContentObject::recursionProtect($subObjectID)) { if (!$object) { continue; } $attributes = $object->contentObjectAttributes(true, $subObjectVersion, $language); } } $attributeMetaDataArray = eZContentObjectAttribute::metaDataArray($attributes); $metaDataArray = array_merge($metaDataArray, $attributeMetaDataArray); } return $metaDataArray; }
function metaData($contentObjectAttribute) { $metaDataArray = $attributes = array(); $content = $contentObjectAttribute->content(); $language = $contentObjectAttribute->attribute('language_code'); foreach ($content['relation_list'] as $relationItem) { $subObjectID = $relationItem['contentobject_id']; if (!$subObjectID) { continue; } if (isset($content['temp'])) { $attributes = $content['temp'][$subObjectID]['attributes']; } else { $subObjectVersionNum = $relationItem['contentobject_version']; $subObject = eZContentObject::fetch($subObjectID); // Using last version of object (version inside xml data is the original version) $subCurrentVersionObject = $subObject->currentVersion(); if ($subCurrentVersionObject instanceof eZContentObjectVersion) { $subObjectVersionNum = $subCurrentVersionObject->attribute('version'); } if (eZContentObject::recursionProtect($subObjectID)) { if (!$subObject) { continue; } $attributes = $subObject->contentObjectAttributes(true, $subObjectVersionNum, $language); } } $attributeMetaDataArray = eZContentObjectAttribute::metaDataArray($attributes); $metaDataArray = array_merge($metaDataArray, $attributeMetaDataArray); } return $metaDataArray; }