diff options
author | Bernhard Posselt <dev@bernhard-posselt.com> | 2015-08-26 13:03:55 +0200 |
---|---|---|
committer | Bernhard Posselt <dev@bernhard-posselt.com> | 2015-08-26 13:04:48 +0200 |
commit | 087902992240af6967a13dc0301f3595f5e7f1ad (patch) | |
tree | a0256c043c0d87df878b1935ba6fc7de85d8ec7e /fetcher | |
parent | eb00cce379504ee4370237b7eea1ce407ff9075e (diff) |
add rtl support
Diffstat (limited to 'fetcher')
-rw-r--r-- | fetcher/feedfetcher.php | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/fetcher/feedfetcher.php b/fetcher/feedfetcher.php index b2a4f6e5d..1f313e4c6 100644 --- a/fetcher/feedfetcher.php +++ b/fetcher/feedfetcher.php @@ -15,6 +15,7 @@ namespace OCA\News\Fetcher; use PicoFeed\Parser\MalFormedXmlException; use PicoFeed\Reader\Reader; +use PicoFeed\Parser\Parser; use PicoFeed\Reader\SubscriptionNotFoundException; use PicoFeed\Reader\UnsupportedFeedFormatException; use PicoFeed\Client\InvalidCertificateException; @@ -103,7 +104,7 @@ class FeedFetcher implements IFeedFetcher { $items = []; foreach($parsedFeed->getItems() as $item) { - $items[] = $this->buildItem($item); + $items[] = $this->buildItem($item, $parsedFeed); } return [$feed, $items]; @@ -152,7 +153,13 @@ class FeedFetcher implements IFeedFetcher { } - protected function buildItem($parsedItem) { + protected function determineRtl($parsedItem, $parsedFeed) { + return Parser::isLanguageRTL($parsedItem->getLanguage()) || + Parser::isLanguageRTL($parsedFeed->getLanguage()); + } + + + protected function buildItem($parsedItem, $parsedFeed) { $item = new Item(); $item->setUnread(); $item->setUrl($parsedItem->getUrl()); @@ -160,6 +167,7 @@ class FeedFetcher implements IFeedFetcher { $item->setGuidHash($item->getGuid()); $item->setPubDate($parsedItem->getDate()->getTimestamp()); $item->setLastModified($this->time->getTime()); + $item->setRtl($this->determineRtl($parsedItem, $parsedFeed)); // unescape content because angularjs helps against XSS $item->setTitle($this->decodeTwice($parsedItem->getTitle())); |