/** * @param ArticleEvent $event */ public function onArticleCreate(ArticleEvent $event) { $package = $event->getPackage(); $article = $event->getArticle(); $this->objectManager->persist($article); if (null !== $package && 0 === count($package->getItems())) { return; } foreach ($package->getItems() as $key => $packageItem) { if (ItemInterface::TYPE_PICTURE === $packageItem->getType() || ItemInterface::TYPE_FILE === $packageItem->getType()) { $articleMedia = $this->handleMedia($article, $key, $packageItem); $this->objectManager->persist($articleMedia); } if (null !== $packageItem->getItems() && 0 !== $packageItem->getItems()->count()) { foreach ($packageItem->getItems() as $key => $item) { if (ItemInterface::TYPE_PICTURE === $item->getType() || ItemInterface::TYPE_FILE === $item->getType()) { $articleMedia = $this->handleMedia($article, $key, $item); $this->objectManager->persist($articleMedia); } } } } }