diff options
author | Heiko Adams <[email protected]> | 2015-11-30 10:29:44 +0100 |
---|---|---|
committer | Heiko Adams <[email protected]> | 2015-11-30 10:29:44 +0100 |
commit | 05761788b7b5a8a7e6c14333669acd0793886223 (patch) | |
tree | 464ccc3d98900e5dcf1a437662056161fa1280a4 /include | |
parent | 635ecdb9fa039adb8a0e8ead045bfda023e72bc4 (diff) | |
parent | 6f5d9c6889b6376527d7598857ac8816cf7980ab (diff) |
Merge remote-tracking branch 'origin/master' into german-translation
Diffstat (limited to 'include')
-rwxr-xr-x[-rw-r--r--] | include/functions.php | 22 | ||||
-rwxr-xr-x[-rw-r--r--] | include/functions2.php | 93 | ||||
-rwxr-xr-x[-rw-r--r--] | include/sanity_check.php | 8 | ||||
-rw-r--r-- | include/sanity_config.php | 2 |
4 files changed, 18 insertions, 107 deletions
diff --git a/include/functions.php b/include/functions.php index 310081485..8d1c2a625 100644..100755 --- a/include/functions.php +++ b/include/functions.php @@ -1,6 +1,6 @@ <?php define('EXPECTED_CONFIG_VERSION', 26); - define('SCHEMA_VERSION', 129); + define('SCHEMA_VERSION', 130); define('LABEL_BASE_INDEX', -1024); define('PLUGIN_FEED_BASE_INDEX', -128); @@ -351,16 +351,7 @@ $fetch_curl_used = true; - if (ini_get("safe_mode") || ini_get("open_basedir") || defined("FORCE_GETURL")) { - $new_url = geturl($url); - if (!$new_url) { - // geturl has already populated $fetch_last_error - return false; - } - $ch = curl_init($new_url); - } else { - $ch = curl_init($url); - } + $ch = curl_init($url); if ($timestamp && !$post_query) { curl_setopt($ch, CURLOPT_HTTPHEADER, @@ -369,7 +360,7 @@ curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout ? $timeout : FILE_FETCH_CONNECT_TIMEOUT); curl_setopt($ch, CURLOPT_TIMEOUT, $timeout ? $timeout : FILE_FETCH_TIMEOUT); - curl_setopt($ch, CURLOPT_FOLLOWLOCATION, !ini_get("safe_mode") && !ini_get("open_basedir")); + curl_setopt($ch, CURLOPT_FOLLOWLOCATION, !ini_get("open_basedir")); curl_setopt($ch, CURLOPT_MAXREDIRS, 20); curl_setopt($ch, CURLOPT_BINARYTRANSFER, true); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); @@ -379,7 +370,7 @@ curl_setopt($ch, CURLOPT_ENCODING, ""); //curl_setopt($ch, CURLOPT_REFERER, $url); - if (!ini_get("safe_mode") && !ini_get("open_basedir")) { + if (!ini_get("open_basedir")) { curl_setopt($ch, CURLOPT_COOKIEJAR, "/dev/null"); } @@ -456,7 +447,7 @@ 'method' => 'GET', 'protocol_version'=> 1.1 ))); - } + } $old_error = error_get_last(); @@ -1582,7 +1573,8 @@ FROM ttrss_labels2 LEFT JOIN ttrss_user_labels2 ON (ttrss_labels2.id = label_id) LEFT JOIN ttrss_user_entries AS u1 ON u1.ref_id = article_id - WHERE ttrss_labels2.owner_uid = $owner_uid GROUP BY ttrss_labels2.id, + WHERE ttrss_labels2.owner_uid = $owner_uid AND u1.owner_uid = $owner_uid + GROUP BY ttrss_labels2.id, ttrss_labels2.caption"); while ($line = db_fetch_assoc($result)) { diff --git a/include/functions2.php b/include/functions2.php index dd9d1ad68..0386b52ed 100644..100755 --- a/include/functions2.php +++ b/include/functions2.php @@ -465,7 +465,7 @@ $override_vfeed = isset($params["override_vfeed"]) ? $params["override_vfeed"] : false; $start_ts = isset($params["start_ts"]) ? $params["start_ts"] : false; $check_first_id = isset($params["check_first_id"]) ? $params["check_first_id"] : false; - $api_request = isset($params["api_request"]) ? $params["api_request"] : false; + $skip_first_id_check = isset($params["skip_first_id_check"]) ? $params["skip_first_id_check"] : false; $ext_tables_part = ""; $query_strategy_part = ""; @@ -494,7 +494,6 @@ } $view_query_part = ""; - $disable_offsets = false; if ($view_mode == "adaptive") { if ($search) { @@ -508,7 +507,6 @@ if ($unread > 0) { $view_query_part = " unread = true AND "; - $disable_offsets = !$api_request && get_pref("CDM_AUTO_CATCHUP") && get_pref("CDM_EXPANDED"); } } } @@ -527,7 +525,6 @@ if ($view_mode == "unread" && $feed != -6) { $view_query_part = " unread = true AND "; - $disable_offsets = !$api_request && get_pref("CDM_AUTO_CATCHUP") && get_pref("CDM_EXPANDED"); } if ($limit > 0) { @@ -608,9 +605,9 @@ $query_strategy_part = "unread = false AND last_read IS NOT NULL"; if (DB_TYPE == "pgsql") { - $query_strategy_part .= " AND date_entered > NOW() - INTERVAL '1 DAY' "; + $query_strategy_part .= " AND last_read > NOW() - INTERVAL '1 DAY' "; } else { - $query_strategy_part .= " AND date_entered > DATE_SUB(NOW(), INTERVAL 1 DAY) "; + $query_strategy_part .= " AND last_read > DATE_SUB(NOW(), INTERVAL 1 DAY) "; } $vfeed_query_part = "ttrss_feeds.title AS feed_title,"; @@ -735,7 +732,7 @@ $sanity_interval_qpart = "date_entered >= DATE_SUB(NOW(), INTERVAL 1 hour) AND"; } - if (!$search && !$disable_offsets) { + if (!$search && !$skip_first_id_check) { // if previous topmost article id changed that means our current pagination is no longer valid $query = "SELECT DISTINCT ttrss_feeds.title, @@ -775,10 +772,6 @@ } } - if ($disable_offsets) { - $offset_query_part = ""; - } - $query = "SELECT DISTINCT date_entered, guid, @@ -832,6 +825,7 @@ marked, num_comments, comments, + int_id, tag_cache, label_cache, link, @@ -865,7 +859,7 @@ } function iframe_whitelisted($entry) { - $whitelist = array("youtube.com", "youtu.be", "vimeo.com"); + $whitelist = array("youtube.com", "youtu.be", "vimeo.com", "player.vimeo.com"); @$src = parse_url($entry->getAttribute("src"), PHP_URL_HOST); @@ -1953,9 +1947,9 @@ if (!$hide_images) { $encsize = ''; if ($entry['height'] > 0) - $encsize .= ' height="' . intval($entry['width']) . '"'; + $encsize .= ' height="' . intval($entry['height']) . '"'; if ($entry['width'] > 0) - $encsize .= ' width="' . intval($entry['height']) . '"'; + $encsize .= ' width="' . intval($entry['width']) . '"'; $rv .= "<p><img alt=\"".htmlspecialchars($entry["filename"])."\" src=\"" .htmlspecialchars($entry["url"]) . "\" @@ -2256,77 +2250,6 @@ return in_array($interface, class_implements($class)); } - function geturl($url, $depth = 0, $nobody = true){ - - if ($depth == 20) return $url; - - if (!function_exists('curl_init')) - return user_error('CURL Must be installed for geturl function to work. Ask your host to enable it or uncomment extension=php_curl.dll in php.ini', E_USER_ERROR); - - $curl = curl_init(); - $header[0] = "Accept: text/xml,application/xml,application/xhtml+xml,"; - $header[0] .= "text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5"; - $header[] = "Cache-Control: max-age=0"; - $header[] = "Connection: keep-alive"; - $header[] = "Keep-Alive: 300"; - $header[] = "Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7"; - $header[] = "Accept-Language: en-us,en;q=0.5"; - $header[] = "Pragma: "; - - curl_setopt($curl, CURLOPT_URL, $url); - curl_setopt($curl, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows NT 5.1; rv:5.0) Gecko/20100101 Firefox/5.0 Firefox/5.0'); - curl_setopt($curl, CURLOPT_HTTPHEADER, $header); - curl_setopt($curl, CURLOPT_HEADER, true); - curl_setopt($curl, CURLOPT_NOBODY, $nobody); - curl_setopt($curl, CURLOPT_REFERER, $url); - curl_setopt($curl, CURLOPT_ENCODING, 'gzip,deflate'); - curl_setopt($curl, CURLOPT_AUTOREFERER, true); - curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); - //curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true); //CURLOPT_FOLLOWLOCATION Disabled... - curl_setopt($curl, CURLOPT_TIMEOUT, 60); - - if (defined('_CURL_HTTP_PROXY')) { - curl_setopt($curl, CURLOPT_PROXY, _CURL_HTTP_PROXY); - } - - $html = curl_exec($curl); - - $status = curl_getinfo($curl); - - if($status['http_code']!=200){ - - // idiot site not allowing http head - if($status['http_code'] == 405) { - curl_close($curl); - return geturl($url, $depth +1, false); - } - - if($status['http_code'] == 301 || $status['http_code'] == 302) { - curl_close($curl); - list($header) = explode("\r\n\r\n", $html, 2); - $matches = array(); - preg_match("/(Location:|URI:)[^(\n)]*/", $header, $matches); - $url = trim(str_replace($matches[1],"",$matches[0])); - $url_parsed = parse_url($url); - return (isset($url_parsed))? geturl($url, $depth + 1):''; - } - - global $fetch_last_error; - - $fetch_last_error = curl_errno($curl) . " " . curl_error($curl); - curl_close($curl); - -# $oline=''; -# foreach($status as $key=>$eline){$oline.='['.$key.']'.$eline.' ';} -# $line =$oline." \r\n ".$url."\r\n-----------------\r\n"; -# $handle = @fopen('./curl.error.log', 'a'); -# fwrite($handle, $line); - return FALSE; - } - curl_close($curl); - return $url; - } - function get_minified_js($files) { require_once 'lib/jshrink/Minifier.php'; diff --git a/include/sanity_check.php b/include/sanity_check.php index 6bec43051..be314f4e2 100644..100755 --- a/include/sanity_check.php +++ b/include/sanity_check.php @@ -134,14 +134,10 @@ array_push($errors, "PHP support for hash() function is required but was not found."); } - if (!function_exists("ctype_lower")) { - array_push($errors, "PHP support for ctype functions are required by HTMLPurifier."); + if (ini_get("safe_mode")) { + array_push($errors, "PHP safe mode setting is obsolete and not supported by tt-rss."); } - /* if (ini_get("safe_mode")) { - array_push($errors, "PHP safe mode setting is not supported."); - } */ - if ((PUBSUBHUBBUB_HUB || PUBSUBHUBBUB_ENABLED) && !function_exists("curl_init")) { array_push($errors, "PHP support for CURL is required for PubSubHubbub."); } diff --git a/include/sanity_config.php b/include/sanity_config.php index 5f6395b44..25fb06630 100644 --- a/include/sanity_config.php +++ b/include/sanity_config.php @@ -1,3 +1,3 @@ -<?php # This file has been generated at: Fri, Jun 19, 2015 10:11:43 AM +<?php # This file has been generated at: Fri Aug 21 19:34:46 MSK 2015 define('GENERATED_CONFIG_CHECK', 26); $requred_defines = array( 'DB_TYPE', 'DB_HOST', 'DB_USER', 'DB_NAME', 'DB_PASS', 'MYSQL_CHARSET', 'SELF_URL_PATH', 'FEED_CRYPT_KEY', 'SINGLE_USER_MODE', 'SIMPLE_UPDATE_MODE', 'PHP_EXECUTABLE', 'LOCK_DIRECTORY', 'CACHE_DIR', 'ICONS_DIR', 'ICONS_URL', 'AUTH_AUTO_CREATE', 'AUTH_AUTO_LOGIN', 'FORCE_ARTICLE_PURGE', 'PUBSUBHUBBUB_HUB', 'PUBSUBHUBBUB_ENABLED', 'SPHINX_SERVER', 'SPHINX_INDEX', 'ENABLE_REGISTRATION', 'REG_NOTIFY_ADDRESS', 'REG_MAX_USERS', 'SESSION_COOKIE_LIFETIME', 'SMTP_FROM_NAME', 'SMTP_FROM_ADDRESS', 'DIGEST_SUBJECT', 'SMTP_SERVER', 'SMTP_LOGIN', 'SMTP_PASSWORD', 'SMTP_SECURE', 'CHECK_FOR_UPDATES', 'ENABLE_GZIP_OUTPUT', 'PLUGINS', 'LOG_DESTINATION', 'CONFIG_VERSION'); ?> |