summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--classes/Feeds.php22
1 files changed, 14 insertions, 8 deletions
diff --git a/classes/Feeds.php b/classes/Feeds.php
index 16f71ff4c..c4922e0fa 100644
--- a/classes/Feeds.php
+++ b/classes/Feeds.php
@@ -1178,8 +1178,10 @@ class Feeds extends Handler_Protected {
}
}
- static function _get_title(int|string $id, bool $cat = false): string {
- $pdo = Db::pdo();
+ static function _get_title(int|string $id, bool $cat = false, ?int $owner_uid = null): string {
+ // We can't rely on the session existing here due to syndicated feeds
+ if (!$owner_uid)
+ $owner_uid = $_SESSION['uid'];
if ($cat) {
return self::_get_cat_title($id);
@@ -1201,7 +1203,7 @@ class Feeds extends Handler_Protected {
$label = ORM::for_table('ttrss_labels2')
->select('caption')
- ->where('owner_uid', $_SESSION['uid'])
+ ->where('owner_uid', $owner_uid)
->find_one($label_id);
return $label ? $label->caption : "Unknown label ($label_id)";
@@ -1210,7 +1212,7 @@ class Feeds extends Handler_Protected {
$feed = ORM::for_table('ttrss_feeds')
->select('title')
- ->where('owner_uid', $_SESSION['uid'])
+ ->where('owner_uid', $owner_uid)
->find_one($id);
return $feed ? $feed->title : "Unknown feed ($id)";
@@ -1345,7 +1347,11 @@ class Feeds extends Handler_Protected {
return $row["count"] ?? 0;
}
- static function _get_cat_title(int $cat_id): string {
+ static function _get_cat_title(int $cat_id, ?int $owner_uid = null): string {
+ // We can't rely on the session existing here due to syndicated feeds
+ if (!$owner_uid)
+ $owner_uid = $_SESSION['uid'];
+
switch ($cat_id) {
case Feeds::CATEGORY_UNCATEGORIZED:
return __("Uncategorized");
@@ -1355,7 +1361,7 @@ class Feeds extends Handler_Protected {
return __("Labels");
default:
$cat = ORM::for_table('ttrss_feed_categories')
- ->where('owner_uid', $_SESSION['uid'])
+ ->where('owner_uid', $owner_uid)
->find_one($cat_id);
if ($cat) {
@@ -1627,7 +1633,7 @@ class Feeds extends Handler_Protected {
$feed_title = T_sprintf("Search results: %s", $search);
} else {
if ($cat_view) {
- $feed_title = self::_get_cat_title($feed);
+ $feed_title = self::_get_cat_title($feed, $owner_uid);
} else {
if (is_numeric($feed) && $feed > 0) {
$ssth = $pdo->prepare("SELECT title,site_url,last_error,last_updated
@@ -1640,7 +1646,7 @@ class Feeds extends Handler_Protected {
$last_error = $row["last_error"];
$last_updated = $row["last_updated"];
} else {
- $feed_title = self::_get_title($feed);
+ $feed_title = self::_get_title($feed, $owner_uid);
}
}
}