This will finally fix videos too, but you have to scroll a tiny bit after starting video playback.
It seems there is no better way atm, maybe Jim can add an event right after video got initialized for me to hook in.
{
var loadListener = function() {
var links = Array.from(document.querySelectorAll('a'))
var imageLinks = links.filter(l =/.media.8kun.top./ig.test(l.href))
imageLinks.forEach(link ={
var pieces = link.pathname.split('/')
var filename = pieces[pieces.length-1]
var [hash, extension] = filename.split('.')
switch (extension) {
case "mp3":
case "png":
case "gif":
var href = ${link.href.replace("media.","sys.")}/${hash}.jpg
break;
case 'php':
if (hash == 'player') {
// special handling for video thumbnail
var videoplayer = link.search.match(/media.8kun.top\/file_store\/(\w{64})./i)
if (videoplayer) {
var href = "https://sys.8kun.top/file_store/thumb/"+videoplayer[1]+".jpg";
} else {
var href = link.url;
}
}
break;
default:
var href = ${link.href.replace("media.","sys.")}
break;
}
var imgs = link.querySelectorAll('img')
imgs.forEach(i =i.src = href)
link.href = href;
});
links = Array.from(document.querySelectorAll('video'))
var videoLinks = links.filter(l =/.media.8kun.top./ig.test(l.src))
videoLinks.forEach(link ={
var href = ${link.src.replace("media.","sys.")}
link.src = href;
});
}
$(window).on('scroll', function (e, post) {
loadListener();
});
}