Fix getting the title for syndicated feeds.
https://gitlab.tt-rss.org/tt-rss/tt-rss/-/merge_requests/181 missed that 'Feeds::_get_title()' gets invoked when headlines are generated for syndicated feeds.
This commit is contained in:
@@ -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);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user