/** * GET /export/feed/:id/atom * * @param int $id */ public function getFeedItemsAtom($id) { $feed = new Feed(); if (!$feed->read($id)) { $this->app->render(404); return; } $items = (new Item())->readList('id_feed = ?', [$feed->id]); $this->xmlOutput(new Atom($feed, $items)); }
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/update/:id * * @param int $id */ public function updateFeed($id) { $feed = new Feed(); if (!$feed->read($id)) { $this->app->render(404, ['response' => $id]); return; } $this->app->render(200, ['response' => $this->manager->updateFeed($feed)]); }