diff options
| author | 2018-11-11 17:31:50 +0100 | |
|---|---|---|
| committer | 2018-11-11 17:31:50 +0100 | |
| commit | b672fc190d7df163449e91400c6d6a08a3775835 (patch) | |
| tree | ddb616efd040ba67783665a4f4372afd43e3b23d /app | |
| parent | 55992d454811f49fedc157854a6bb068c0f8c74c (diff) | |
Tweaks for Vienna RSS (#2093)
* Tweaks for Vienna RSS
https://github.com/FreshRSS/FreshRSS/issues/2091
https://github.com/ViennaRSS/vienna-rss/issues/1197
* Fix get feed by URL
* Fix get item ids returning starred elements
* API add item ids by feed URL
* Add API filter `it`
https://feedhq.readthedocs.io/en/latest/api/reference.html#stream-items-ids
* API add `nt=` filter + refactoring
* No ; prefix for author
https://github.com/FreshRSS/FreshRSS/issues/2091#issuecomment-435562495
* Add id long form prefix and accept short id form
https://github.com/FreshRSS/FreshRSS/issues/2091#issuecomment-435631259
* Fix quote problem
https://github.com/FreshRSS/FreshRSS/issues/2091#issuecomment-435683930
* Isolate bug fix for News+
https://github.com/FreshRSS/FreshRSS/issues/2091#issuecomment-435687041
* Rework encoding conventions
https://github.com/FreshRSS/FreshRSS/issues/2091#issuecomment-437441834
* Unicode escaping alternative
Alternative approach to encode XML special characters and other
problematic characters into their Unicode fullwidth version when we
cannot use HTML-encoding because clients disagree wether they should
HTML-decode or not.
https://github.com/FreshRSS/FreshRSS/issues/2091#issuecomment-436059559
Diffstat (limited to 'app')
| -rw-r--r-- | app/Models/BooleanSearch.php | 8 | ||||
| -rw-r--r-- | app/Models/EntryDAO.php | 4 | ||||
| -rw-r--r-- | app/Models/Feed.php | 2 | ||||
| -rw-r--r-- | app/Models/Search.php | 8 |
4 files changed, 19 insertions, 3 deletions
diff --git a/app/Models/BooleanSearch.php b/app/Models/BooleanSearch.php index 6e016f7e9..88eeea73c 100644 --- a/app/Models/BooleanSearch.php +++ b/app/Models/BooleanSearch.php @@ -45,6 +45,14 @@ class FreshRSS_BooleanSearch { return $this->searches; } + public function add($search) { + if ($search instanceof FreshRSS_Search) { + $this->searches[] = $search; + return $search; + } + return null; + } + public function __toString() { return $this->getRawInput(); } diff --git a/app/Models/EntryDAO.php b/app/Models/EntryDAO.php index 708d01a69..6d77a33cd 100644 --- a/app/Models/EntryDAO.php +++ b/app/Models/EntryDAO.php @@ -921,8 +921,8 @@ class FreshRSS_EntryDAO extends Minz_ModelPdo implements FreshRSS_Searchable { return self::daoToEntries($stm->fetchAll(PDO::FETCH_ASSOC)); } - public function listIdsWhere($type = 'a', $id = '', $state = FreshRSS_Entry::STATE_ALL, $order = 'DESC', $limit = 1, $firstId = '', $filters = null, $date_min = 0) { //For API - list($values, $sql) = $this->sqlListWhere($type, $id, $state, $order, $limit, $firstId, $filters, $date_min); + public function listIdsWhere($type = 'a', $id = '', $state = FreshRSS_Entry::STATE_ALL, $order = 'DESC', $limit = 1, $firstId = '', $filters = null) { //For API + list($values, $sql) = $this->sqlListWhere($type, $id, $state, $order, $limit, $firstId, $filters); $stm = $this->bd->prepare($sql); $stm->execute($values); diff --git a/app/Models/Feed.php b/app/Models/Feed.php index e1dd2990d..a5ef33d6b 100644 --- a/app/Models/Feed.php +++ b/app/Models/Feed.php @@ -424,7 +424,7 @@ class FreshRSS_Feed extends Minz_Model { $author_names = ''; if (is_array($authors)) { foreach ($authors as $author) { - $author_names .= html_only_entity_decode(strip_tags($author->name == '' ? $author->email : $author->name)) . '; '; + $author_names .= escapeToUnicodeAlternative(strip_tags($author->name == '' ? $author->email : $author->name)) . '; '; } } $author_names = substr($author_names, 0, -2); diff --git a/app/Models/Search.php b/app/Models/Search.php index c52e391fa..f9cda7354 100644 --- a/app/Models/Search.php +++ b/app/Models/Search.php @@ -73,10 +73,18 @@ class FreshRSS_Search { return $this->min_date; } + public function setMinDate($value) { + return $this->min_date = $value; + } + public function getMaxDate() { return $this->max_date; } + public function setMaxDate($value) { + return $this->max_date = $value; + } + public function getMinPubdate() { return $this->min_pubdate; } |
