diff --git a/src/RSSFeed.php b/src/RSSFeed.php index b6439f5b04d..d2b291b26d3 100644 --- a/src/RSSFeed.php +++ b/src/RSSFeed.php @@ -36,6 +36,7 @@ use Glpi\Application\View\TemplateRenderer; use Glpi\RichText\RichText; use Glpi\Toolbox\Sanitizer; +use Glpi\Toolbox\URL; // $feed = new SimplePie(); // $feed->set_cache_location('../files/_rss'); @@ -853,7 +854,7 @@ public function showFeedContent() foreach ($feed->get_items(0, $this->fields['max_items']) as $item) { $rss_feed['items'][] = [ 'title' => $item->get_title(), - 'link' => $item->get_permalink(), + 'link' => URL::sanitizeURL($item->get_permalink()), 'timestamp' => Html::convDateTime($item->get_date('Y-m-d H:i:s')), 'content' => $item->get_content() ]; @@ -897,7 +898,7 @@ public function showDiscoveredFeeds() $newurl = $f->url; $newfeed = self::getRSSFeed($newurl); if ($newfeed && !$newfeed->error()) { - $link = $newfeed->get_permalink(); + $link = URL::sanitizeURL($newfeed->get_permalink()); if (!empty($link)) { echo "" . $newfeed->get_title() . " "; Html::showSimpleForm( @@ -1071,21 +1072,21 @@ public static function showListForCentral(bool $personal = true, bool $display = $output .= ""; $output .= Html::convDateTime($item->get_date('Y-m-d H:i:s')); $output .= ""; - $link = $item->feed->get_permalink(); - if (empty($link)) { + $feed_link = URL::sanitizeURL($item->feed->get_permalink()); + if (empty($feed_link)) { $output .= $item->feed->get_title(); } else { - $output .= "" . $item->feed->get_title() . ''; + $output .= '' . $item->feed->get_title() . ''; } - $link = $item->get_permalink(); + $item_link = URL::sanitizeURL($item->get_permalink()); $rand = mt_rand(); $output .= "
"; - if (!is_null($link)) { - $output .= ""; + if (!empty($item_link)) { + $output .= ''; } $output .= $item->get_title(); - if (!is_null($link)) { + if (!empty($item_link)) { $output .= ""; } $output .= "
"; diff --git a/templates/components/rss_feed.html.twig b/templates/components/rss_feed.html.twig index 6d4ecbf6139..6428ccc7886 100644 --- a/templates/components/rss_feed.html.twig +++ b/templates/components/rss_feed.html.twig @@ -45,7 +45,7 @@ {{ rss_item.timestamp }} - {% if rss_item.link is defined and rss_item.link is not null %} + {% if rss_item.link is not empty %} {{ rss_item.title }} {% else %} {{ rss_item.title }}