Only track was watched if more than 10s is played #6

This commit is contained in:
2026-07-19 16:10:24 +02:00
parent 859a35847a
commit 4f81164b44
4 changed files with 65 additions and 14 deletions
+28
View File
@@ -38,6 +38,24 @@ var streamServerCount = 0;
var ambientMode = true;
var serverFallback = false;
var saveInterval;
var watchTracked = false;
// Track that the user watched at least 10 seconds of the video
function trackWatchTime() {
if (watchTracked) return;
var video = document.getElementsByTagName('video')[0];
if (video && video.currentTime >= 10) {
watchTracked = true;
var episodeId = document.getElementById('e_id').value;
window.axios.post('/watched/track', {
episode_id: episodeId
}).then(function (response) {
console.log('Watch tracked for episode ' + episodeId);
}).catch(function (error) {
console.error('Failed to track watch: ' + error);
});
}
}
var subtitleInstance = null;
@@ -322,6 +340,11 @@ function initPlayer() {
playNextPlaylistVideo();
});
// Track watch time after 10 seconds of playback
player.on('timeupdate', () => {
trackWatchTime();
});
player.on('languagechange', (event) => {
let lang = event.detail.plyr.captions.language;
@@ -437,6 +460,11 @@ async function initVidstackPlayer() {
}
})();
});
// Track watch time after 10 seconds of playback
player.addEventListener('time-update', () => {
trackWatchTime();
});
}
// Get Data from API