/** * Get all feed entries as a parser instance * * @param \Newscoop\IngestPluginBundle\Entity\Feed $feedEntity Feed entity * * @return array Array should contain feed entries */ public static function getStories(Feed $feedEntity) { $entries = array(); $data = array(); $clientConfig = array('base_uri' => $feedEntity->getUrl(), 'options' => ''); $client = new GuzzleClient($clientConfig); $sdk = new ContentApiSdk($client); $parameters = array('start_date' => date('Y-m-d', strtotime('-3 days'))); try { $data = $sdk->getPackages($parameters, true); } catch (ContentApiException $e) { throw new NewscoopException($e->getMessage(), $e->getCode(), $e); } // Convert all $data into entries foreach ($data as $package) { $entryPackage = new SuperdeskContentApiParser($package); $images = $entryPackage->getImages(); if (property_exists($package->associations, 'main') && empty($images)) { continue; } $entries[] = $entryPackage; } return $entries; }
if ($items->hasNextPage()) { $items->setCurrentPage($i + 1); } echo "\n"; } } else { echo "Current page: {$items->getCurrentPage()}\n"; $data = $items->getCurrentPageResults(); foreach ($data as $item) { echo "Item headline: {$item->headline}\n"; } } echo "\n\n.: Getting packages :.\n\n"; // Reset parameters $parameters->setPage(1)->setMaxResults(1); $packages = $contentApi->getPackages($parameters, true); $packages->setMaxPerPage($parameters->getMaxResults()); $packages->setCurrentPage($parameters->getPage()); echo "Total packages: {$packages->getNbResults()}\n"; echo "Packages per page: {$packages->getMaxPerPage()}\n"; echo "Total pages: {$packages->getNbPages()}\n\n"; // Some limit, so we dont accicentally get every package $maxPages = $packages->getNbPages() < 10 ? $packages->getNbPages() : 10; if ($packages->haveToPaginate()) { for ($i = 1; $i <= $maxPages; $i++) { echo "Current page: {$packages->getCurrentPage()}\n"; $data = $packages->getCurrentPageResults(); foreach ($data as $package) { echo "Package headline: {$package->headline}\n"; } if ($packages->hasNextPage()) {