summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSamantaz Fox <coding@samantaz.fr>2023-09-14 22:10:02 +0200
committerSamantaz Fox <coding@samantaz.fr>2023-09-14 22:28:07 +0200
commit58f4a012b7fde782a83d6745f18c5d080f7ade6a (patch)
treec46cbf507372998893955266b58c22e9654bc9bc
parent2456b629365450970363e5cf0e9a65c1a24160ab (diff)
downloadinvidious-58f4a012b7fde782a83d6745f18c5d080f7ade6a.tar.gz
invidious-58f4a012b7fde782a83d6745f18c5d080f7ade6a.tar.bz2
invidious-58f4a012b7fde782a83d6745f18c5d080f7ade6a.zip
Frontend: Add timestamp on switch invidious instance links
-rw-r--r--assets/js/player.js24
-rw-r--r--src/invidious/views/watch.ecr7
2 files changed, 21 insertions, 10 deletions
diff --git a/assets/js/player.js b/assets/js/player.js
index d07d6cf4..bffc7ad3 100644
--- a/assets/js/player.js
+++ b/assets/js/player.js
@@ -113,20 +113,34 @@ function addCurrentTimeToURL(url) {
}
/**
- * Timer that updates the timestamp on "watch on youtube" and "embed" links
+ * Timer that updates the timestamp on all external links
*/
player.ready(function () {
+ // YouTube links
+
let elem_yt_watch = document.getElementById('link-yt-watch');
let elem_yt_embed = document.getElementById('link-yt-embed');
- let elem_iv_embed = document.getElementById('link-iv-embed');
let base_url_yt_watch = elem_yt_watch.getAttribute('data-base-url');
let base_url_yt_embed = elem_yt_embed.getAttribute('data-base-url');
+
+ setTimeout(() => {
+ elem_yt_watch.setAttribute('href') = addCurrentTimeToURL(base_url_yt_watch);
+ elem_yt_embed.setAttribute('href') = addCurrentTimeToURL(base_url_yt_embed);
+ }, 5000);
+
+ // Invidious links
+
+ let elem_iv_embed = document.getElementById('link-iv-embed');
+ let elem_iv_other = document.getElementById('link-iv-other');
+
let base_url_iv_embed = elem_iv_embed.getAttribute('data-base-url');
+ let base_url_iv_other = elem_iv_other.getAttribute('data-base-url');
- setTimeout(() => { elem_yt_watch.setAttribute('href') = addCurrentTimeToURL(base_url_yt_watch); }, 5000);
- setTimeout(() => { elem_yt_embed.setAttribute('href') = addCurrentTimeToURL(base_url_yt_embed); }, 5000);
- setTimeout(() => { elem_iv_embed.setAttribute('href') = addCurrentTimeToURL(base_url_iv_embed); }, 5000);
+ setTimeout(() => {
+ elem_iv_embed.setAttribute('href') = addCurrentTimeToURL(base_url_iv_embed);
+ elem_iv_other.setAttribute('href') = addCurrentTimeToURL(base_url_iv_other);
+ }, 5000);
});
diff --git a/src/invidious/views/watch.ecr b/src/invidious/views/watch.ecr
index a768328a..bf297a43 100644
--- a/src/invidious/views/watch.ecr
+++ b/src/invidious/views/watch.ecr
@@ -127,11 +127,8 @@ we're going to need to do it here in order to allow for translations.
</span>
<p id="watch-on-another-invidious-instance">
- <% if env.get("preferences").as(Preferences).automatic_instance_redirect%>
- <a href="/redirect?referer=<%= env.get?("current_page") %>"><%= translate(locale, "Switch Invidious Instance") %></a>
- <% else %>
- <a href="https://redirect.invidious.io<%= env.request.resource %>"><%= translate(locale, "Switch Invidious Instance") %></a>
- <% end %>
+ <%- link_iv_other = IV::Frontend::Misc.redirect_url(env) -%>
+ <a id="link-iv-other" data-base-url="<%= link_iv_other %>" href="<%= link_iv_other %>"><%= translate(locale, "Switch Invidious Instance") %></a>
</p>
<p id="embed-link">