diff options
| author | 2018-05-01 17:02:11 +0200 | |
|---|---|---|
| committer | 2018-05-01 17:02:11 +0200 | |
| commit | b552abb3327f09baa1c0f4e821dc9f6bd6ef738e (patch) | |
| tree | dc5439bcf0e65d16fda118d45d2ded0c7ff7230c /lib/lib_rss.php | |
| parent | 404ca869e9aafa40931914812b8552e4b9973694 (diff) | |
JSON column for feeds (#1838)
* Draft of JSON column for feeds
https://github.com/FreshRSS/FreshRSS/issues/1654
* Add some per-feed options
* Feed cURL timeout
* Mark updated articles as read https://github.com/FreshRSS/FreshRSS/issues/891
* Mark as read upon reception https://github.com/FreshRSS/FreshRSS/issues/1702
* Ignore SSL (unsafe) https://github.com/FreshRSS/FreshRSS/issues/1811
* Try PHPCS workaround
While waiting for a better syntax support
Diffstat (limited to 'lib/lib_rss.php')
| -rw-r--r-- | lib/lib_rss.php | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/lib/lib_rss.php b/lib/lib_rss.php index 215c4c362..9dfca385d 100644 --- a/lib/lib_rss.php +++ b/lib/lib_rss.php @@ -175,7 +175,7 @@ function html_only_entity_decode($text) { return strtr($text, $htmlEntitiesOnly); } -function customSimplePie() { +function customSimplePie($attributes = array()) { $system_conf = Minz_Configuration::get('system'); $limits = $system_conf->limits; $simplePie = new SimplePie(); @@ -183,8 +183,17 @@ function customSimplePie() { $simplePie->set_syslog($system_conf->simplepie_syslog_enabled); $simplePie->set_cache_location(CACHE_PATH); $simplePie->set_cache_duration($limits['cache_duration']); - $simplePie->set_timeout($limits['timeout']); - $simplePie->set_curl_options($system_conf->curl_options); + + $feed_timeout = empty($attributes['timeout']) ? 0 : intval($attributes['timeout']); + $simplePie->set_timeout($feed_timeout > 0 ? $feed_timeout : $limits['timeout']); + + $curl_options = $system_conf->curl_options; + if (isset($attributes['ssl_verify'])) { + $curl_options[CURLOPT_SSL_VERIFYHOST] = $attributes['ssl_verify'] ? 2 : 0; + $curl_options[CURLOPT_SSL_VERIFYPEER] = $attributes['ssl_verify'] ? true : false; + } + $simplePie->set_curl_options($curl_options); + $simplePie->strip_htmltags(array( 'base', 'blink', 'body', 'doctype', 'embed', 'font', 'form', 'frame', 'frameset', 'html', |
