diff options
Diffstat (limited to 'fetcher')
-rw-r--r-- | fetcher/feedfetcher.php | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/fetcher/feedfetcher.php b/fetcher/feedfetcher.php index 705404518..328f10f5a 100644 --- a/fetcher/feedfetcher.php +++ b/fetcher/feedfetcher.php @@ -96,7 +96,7 @@ class FeedFetcher implements IFeedFetcher { $items = array(); if ($feedItems = $simplePie->get_items()) { foreach($feedItems as $feedItem) { - array_push($items, $this->buildItem($feedItem)); + array_push($items, $this->buildItem($feedItem, $simplePie->get_permalink())); } } @@ -125,11 +125,15 @@ class FeedFetcher implements IFeedFetcher { } - protected function buildItem($simplePieItem) { + protected function buildItem($simplePieItem, $feedLink) { $item = new Item(); $item->setStatus(0); $item->setUnread(); - $item->setUrl($this->decodeTwice($simplePieItem->get_permalink())); + $url = $this->decodeTwice($simplePieItem->get_permalink()); + if (!$url) { + $url = $feedLink; + } + $item->setUrl($url); // unescape content because angularjs helps against XSS $item->setTitle($this->decodeTwice($simplePieItem->get_title())); |