public function updateFeed(Feed $feed) { if (!$feed->outdated) { return false; } $this->feedReader->setFeed($feed->url); $feed->updated = time(); $feed->save(); $feedItems = $this->feedReader->getItems(); if (empty($feedItems)) { return false; } $item = new Item(); $item->beginTransaction(); foreach ($feedItems as $newItem) { $item->clear(); $item->id_feed = $feed->id; $item->setArray($newItem); $item->save(); } $item->endTransaction(); $this->cleanup($feed); return true; }
/** * GET /feed/item/:id * * @param int $id */ public function getItem($id) { $item = new Item(); if ($item->read($id)) { $this->app->render(200, ['response' => $item]); if (!$item->read) { $item->read = 1; $item->save(); } } else { $this->app->render(404, ['response' => $id]); } }