From c9fd6637b34dbbc5999e70c538cba1559900f510 Mon Sep 17 00:00:00 2001 From: Ethan Dalool Date: Fri, 15 Jul 2022 21:53:49 -0700 Subject: [PATCH] Improve relative_links fixer in case the main link is also relative. If the feed comes back with relative links for each of the news items, presumably they are relative to the RSS URL. --- frontends/bringrss_flask/templates/root.html | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/frontends/bringrss_flask/templates/root.html b/frontends/bringrss_flask/templates/root.html index 8981640..1fc8ef9 100644 --- a/frontends/bringrss_flask/templates/root.html +++ b/frontends/bringrss_flask/templates/root.html @@ -1736,7 +1736,16 @@ function fix_newsreader_relative_links() { return; } + const news_list = document.getElementById("news"); + const news = document.getElementById("news_" + showing_news_id); + const feed_id = news.dataset.feedId; + const feeds_list = document.getElementById("feeds"); + const feed = document.getElementById("feed_" + feed_id); + const rss_url = feed.dataset.rssUrl; + + newsreader_news_title.href = new URL(newsreader_news_title.getAttribute("href"), rss_url); const base_url = newsreader_news_title.href; + function fixer(tagname, attribute) { for (const element of newsreader_news_text.getElementsByTagName(tagname)) @@ -1749,6 +1758,7 @@ function fix_newsreader_relative_links() element[attribute] = new URL(relative_url, base_url).href; } } + fixer("a", "href"); fixer("img", "src"); fixer("video", "src");