Example #1
0
 /**
  * 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));
 }
Example #2
0
 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;
 }
Example #3
0
 /**
  * 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)]);
 }