diff options
| author | 2018-11-11 17:31:50 +0100 | |
|---|---|---|
| committer | 2018-11-11 17:31:50 +0100 | |
| commit | b672fc190d7df163449e91400c6d6a08a3775835 (patch) | |
| tree | ddb616efd040ba67783665a4f4372afd43e3b23d /lib/lib_rss.php | |
| 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 'lib/lib_rss.php')
| -rw-r--r-- | lib/lib_rss.php | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/lib/lib_rss.php b/lib/lib_rss.php index 4087f6faf..52e4408d2 100644 --- a/lib/lib_rss.php +++ b/lib/lib_rss.php @@ -102,6 +102,18 @@ function safe_ascii($text) { return filter_var($text, FILTER_DEFAULT, FILTER_FLAG_STRIP_LOW | FILTER_FLAG_STRIP_HIGH); } +function escapeToUnicodeAlternative($text) { + $text = htmlspecialchars_decode($text, ENT_QUOTES); + // https://raw.githubusercontent.com/mihaip/google-reader-api/master/wiki/StreamId.wiki + return trim(str_replace( + //Problematic characters + array("'", '"', '^', '<', '>', '?', '&', '\\', '/', ',', ';'), + //Use their fullwidth Unicode form instead: + array("’", '"', '^', '<', '>', '?', '&', '\', '/', ',', ';'), + $text + )); +} + /** * Test if a given server address is publicly accessible. * |
