+ URL timestamp support

merge-requests/6/head
Dominika Liberda 2021-07-06 18:06:12 +00:00
parent 58685e9b2e
commit 04e0e60cbc
1 changed files with 25 additions and 2 deletions

View File

@ -8,6 +8,18 @@ window.addEventListener('DOMContentLoaded', (event) => {
const audio = document.getElementById('player_audio');
const movie = document.getElementById('movie_player');
const searchParams = new URLSearchParams(window.location.search.slice(1))
let startTime = 0;
if (searchParams.get("t")) {
const [, hours, minutes, seconds] = /^(?:(?:([0-9]+)[h:])?(?:([0-9]+)[m:]))?([0-9]+)s?$/.exec(searchParams.get("t"));
if (hours) startTime = parseInt(hours, 10) * 3600;
if (minutes) startTime += parseInt(minutes, 10) * 60;
if (seconds) startTime += parseInt(seconds, 10);
}
console.log(startTime);
loopInput.checked = false;
formats = JSON.parse(document.getElementById('yt_formats').innerText)
@ -196,9 +208,18 @@ window.addEventListener('DOMContentLoaded', (event) => {
localStorage.removeItem("audioStream");
}
function seekRelative(v) {
function seekAbsolute(t) {
video.pause();
video.currentTime=video.currentTime+v;
video.currentTime=t;
if(audio) {
audio.pause();
audio.currentTime=t;
}
}
function seekRelative(t) {
video.pause();
video.currentTime=video.currentTime+t;
if(audio) {
audio.pause();
audio.currentTime=video.currentTime;
@ -345,6 +366,8 @@ window.addEventListener('DOMContentLoaded', (event) => {
document.querySelector('.html5-video-container').addEventListener('mousemove', (e) => handleMouse("frame", e));
controlbar.addEventListener('mousemove', (e) => handleMouse("controls", e));
seekAbsolute(startTime);
if(localStorage.getItem("autoplay") == "true") {
toggleVideo(true);
document.querySelector('#autoplayInput').checked = true;