summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/functions.php59
-rw-r--r--include/rssfuncs.php2
-rw-r--r--include/sessions.php18
3 files changed, 54 insertions, 25 deletions
diff --git a/include/functions.php b/include/functions.php
index 355eec2cd..35edd8d1a 100644
--- a/include/functions.php
+++ b/include/functions.php
@@ -71,7 +71,6 @@
"hu_HU" => "Magyar (Hungarian)",
"it_IT" => "Italiano",
"ja_JP" => "日本語 (Japanese)",
- "ko_KR" => "한국어 (Korean)",
"lv_LV" => "Latviešu",
"nb_NO" => "Norwegian bokmål",
"nl_NL" => "Dutch",
@@ -1059,7 +1058,7 @@
$date_qpart = "date_entered < DATE_SUB(NOW(), INTERVAL 1 WEEK) ";
}
break;
- case "2week":
+ case "2weeks":
if (DB_TYPE == "pgsql") {
$date_qpart = "date_entered < NOW() - INTERVAL '2 week' ";
} else {
@@ -1502,7 +1501,11 @@
foreach ($feeds as $feed) {
$cv = array("id" => PluginHost::pfeed_to_feed_id($feed['id']),
"counter" => $feed['sender']->get_unread($feed['id']));
- array_push($ret_arr, $cv);
+
+ if (method_exists($feed['sender'], 'get_total'))
+ $cv["auxcounter"] = $feed['sender']->get_total($feed['id']);
+
+ array_push($ret_arr, $cv);
}
}
@@ -1876,19 +1879,19 @@
return "images/archive.png";
break;
case -1:
- return "images/mark_set.svg";
+ return "images/star.png";
break;
case -2:
- return "images/pub_set.svg";
+ return "images/feed.png";
break;
case -3:
return "images/fresh.png";
break;
case -4:
- return "images/tag.png";
+ return "images/folder.png";
break;
case -6:
- return "images/recently_read.png";
+ return "images/time.png";
break;
default:
if ($id < LABEL_BASE_INDEX) {
@@ -2314,7 +2317,7 @@
return $rv;
}
- function queryFeedHeadlines($feed, $limit, $view_mode, $cat_view, $search, $search_mode, $override_order = false, $offset = 0, $owner_uid = 0, $filter = false, $since_id = 0, $include_children = false, $ignore_vfeed_group = false) {
+ function queryFeedHeadlines($feed, $limit, $view_mode, $cat_view, $search, $search_mode, $override_order = false, $offset = 0, $owner_uid = 0, $filter = false, $since_id = 0, $include_children = false, $ignore_vfeed_group = false, $override_strategy = false, $override_vfeed = false) {
if (!$owner_uid) $owner_uid = $_SESSION["uid"];
@@ -2516,6 +2519,11 @@
$allow_archived = true;
if (!$override_order) $override_order = "last_read DESC";
+
+/* } else if ($feed == -7) { // shared
+ $query_strategy_part = "uuid != ''";
+ $vfeed_query_part = "ttrss_feeds.title AS feed_title,";
+ $allow_archived = true; */
} else if ($feed == -3) { // fresh virtual feed
$query_strategy_part = "unread = true AND score >= 0";
@@ -2557,6 +2565,14 @@
$order_by = $override_order;
}
+ if ($override_strategy) {
+ $query_strategy_part = $override_strategy;
+ }
+
+ if ($override_vfeed) {
+ $vfeed_query_part = $override_vfeed;
+ }
+
$feed_title = "";
if ($search) {
@@ -2579,7 +2595,9 @@
}
}
- $content_query_part = "content as content_preview, cached_content, ";
+
+ $content_query_part = "content, content AS content_preview, ";
+
if (is_numeric($feed)) {
@@ -2750,13 +2768,10 @@
if ($site_url) {
- if ($entry->hasAttribute('href')) {
+ if ($entry->hasAttribute('href'))
$entry->setAttribute('href',
rewrite_relative_url($site_url, $entry->getAttribute('href')));
- $entry->setAttribute('rel', 'noreferrer');
- }
-
if ($entry->hasAttribute('src')) {
$src = rewrite_relative_url($site_url, $entry->getAttribute('src'));
@@ -2996,19 +3011,19 @@
function format_warning($msg, $id = "") {
global $link;
return "<div class=\"warning\" id=\"$id\">
- <span><img src=\"images/sign_excl.svg\"></span><span>$msg</span></div>";
+ <span><img src=\"images/alert.png\"></span><span>$msg</span></div>";
}
function format_notice($msg, $id = "") {
global $link;
return "<div class=\"notice\" id=\"$id\">
- <span><img src=\"images/sign_info.svg\"></span><span>$msg</span></div>";
+ <span><img src=\"images/information.png\"></span><span>$msg</span></div>";
}
function format_error($msg, $id = "") {
global $link;
return "<div class=\"error\" id=\"$id\">
- <span><img src=\"images/sign_excl.svg\"></span><span>$msg</span></div>";
+ <span><img src=\"images/alert.png\"></span><span>$msg</span></div>";
}
function print_notice($msg) {
@@ -3106,8 +3121,7 @@
tag_cache,
author,
orig_feed_id,
- note,
- cached_content
+ note
FROM ttrss_entries,ttrss_user_entries
WHERE id = '$id' AND ref_id = id AND owner_uid = $owner_uid");
@@ -3788,7 +3802,7 @@
* @return string Absolute URL
*/
function rewrite_relative_url($url, $rel_url) {
- if (strpos($rel_url, "magnet:") === 0) {
+ if (strpos($rel_url, ":") !== false) {
return $rel_url;
} else if (strpos($rel_url, "://") !== false) {
return $rel_url;
@@ -3958,6 +3972,7 @@
$reg_qpart = "REGEXP";
foreach ($filter["rules"] AS $rule) {
+ $rule['reg_exp'] = str_replace('/', '\/', $rule["reg_exp"]);
$regexp_valid = preg_match('/' . $rule['reg_exp'] . '/',
$rule['reg_exp']) !== FALSE;
@@ -4092,7 +4107,9 @@
return in_array($interface, class_implements($class));
}
- function geturl($url){
+ function geturl($url, $depth = 0){
+
+ 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);
@@ -4131,7 +4148,7 @@
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):'';
+ return (isset($url_parsed))? geturl($url, $depth + 1):'';
}
global $fetch_last_error;
diff --git a/include/rssfuncs.php b/include/rssfuncs.php
index e2837a3b5..cfb0e7a46 100644
--- a/include/rssfuncs.php
+++ b/include/rssfuncs.php
@@ -671,7 +671,6 @@
updated,
content,
content_hash,
- cached_content,
no_orig_date,
date_updated,
date_entered,
@@ -686,7 +685,6 @@
'$entry_timestamp_fmt',
'$entry_content',
'$content_hash',
- '',
$no_orig_date,
NOW(),
'$date_feed_processed',
diff --git a/include/sessions.php b/include/sessions.php
index 423ef0eda..66214afe7 100644
--- a/include/sessions.php
+++ b/include/sessions.php
@@ -62,11 +62,17 @@
return false;
}
- if ($_SESSION["ref_schema_version"] != session_get_schema_version(true))
+ if ($_SESSION["ref_schema_version"] != session_get_schema_version(true)) {
+ $_SESSION["login_error_msg"] =
+ __("Session failed to validate (schema version changed)");
return false;
+ }
- if (sha1($_SERVER['HTTP_USER_AGENT']) != $_SESSION["user_agent"])
+ if (sha1($_SERVER['HTTP_USER_AGENT']) != $_SESSION["user_agent"]) {
+ $_SESSION["login_error_msg"] =
+ __("Session failed to validate (user agent changed)");
return false;
+ }
if ($_SESSION["uid"]) {
$result = Db::get()->query(
@@ -74,11 +80,19 @@
// user not found
if (Db::get()->num_rows($result) == 0) {
+
+ $_SESSION["login_error_msg"] =
+ __("Session failed to validate (user not found)");
+
return false;
} else {
$pwd_hash = Db::get()->fetch_result($result, 0, "pwd_hash");
if ($pwd_hash != $_SESSION["pwd_hash"]) {
+
+ $_SESSION["login_error_msg"] =
+ __("Session failed to validate (password changed)");
+
return false;
}
}