/** * Publish group * * @param Newscoop\News\GroupRef $groupRef * @param Newscoop\News\Item $item * @return void */ private function publishGroup(GroupRef $groupRef, Item $item) { $group = $item->getGroupSet()->getGroup($groupRef); $items = array(); foreach ($group->getRefs() as $ref) { if ($ref instanceof ItemRef) { $groupItem = $this->findByItemRef($ref, $item->getFeed()); if ($groupItem === null) { continue; } $groupItem->setPublished(new \DateTime()); switch ($groupItem->getItemMeta()->getItemClass()) { case ItemMeta::CLASS_PICTURE: $image = $this->publishPicture($groupItem); \ArticleImage::AddImageToArticle($image->getImageId(), $items[0]->getArticleNumber()); break; case ItemMeta::CLASS_TEXT: $article = $this->publishText($groupItem); $items[] = $article; break; } } else { $this->publishGroup($ref, $item); } } }