Inheritance: implements Sulu\Component\Util\ArrayableInterface
 /**
  * {@inheritdoc}
  */
 public function getContentData($container)
 {
     $container = new ExcerptValueContainer($container);
     $data = [];
     foreach ($this->getExcerptStructure()->getProperties() as $property) {
         if ($container->__isset($property->getName())) {
             $property->setValue($container->__get($property->getName()));
             $contentType = $this->contentTypeManager->get($property->getContentTypeName());
             $data[$property->getName()] = $contentType->getContentData($property);
         }
     }
     return $data;
 }
Esempio n. 2
0
 /**
  * {@inheritdoc}
  */
 public function export($properties, $format = null)
 {
     $container = new ExcerptValueContainer($properties);
     $data = [];
     foreach ($this->getExcerptStructure()->getProperties() as $property) {
         if ($container->__isset($property->getName())) {
             $property->setValue($container->__get($property->getName()));
             $contentType = $this->contentTypeManager->get($property->getContentTypeName());
             if ($this->contentExportManager->hasExport($property->getContentTypeName(), $format)) {
                 $options = $this->contentExportManager->getOptions($property->getContentTypeName(), $format);
                 $data[$property->getName()] = ['name' => $property->getName(), 'value' => $contentType->exportData($property->getValue()), 'type' => $property->getContentTypeName(), 'options' => $options];
             }
         }
     }
     return $data;
 }