Starlio-web/static/script/wallpaperLoad.js

38 lines
1.3 KiB
JavaScript
Raw Normal View History

function load(date) {
fetch(`https://api.starlio.space/wallpaper/${date}`).then(res => {
res.json().then(data => {
if (data.length === 0) return;
document.querySelector("div.wallpaper img").src = data.hdurl;
document.querySelector("div.wallpaper img").alt = data.title;
document.querySelector("div.wallpaper div.wallpaper-text div.wallpaper-desc h1").innerHTML = data.title;
document.querySelector(".copyright").innerHTML = data.copyright ? `Copyright: ${data.copyright}` : ''
document.querySelector(".desc").innerHTML = data.explanation;
});
});
}
function parseURL() {
2024-07-23 17:57:46 +03:00
let pathname = document.location.pathname;
pathname = pathname.slice(pathname.lastIndexOf('/')+1)
if (isNaN(new Date(pathname).getTime())) return window.location.replace("./404.html");
if (!isValidDate(pathname)) return window.location.replace("./404.html");
return pathname;
}
/* THX, bro <3
https://stackoverflow.com/a/35413963/20781634
*/
function isValidDate(dateString) {
var regEx = /^\d{4}-\d{2}-\d{2}$/;
if(!dateString.match(regEx)) return false;
var d = new Date(dateString);
var dNum = d.getTime();
if(!dNum && dNum !== 0) return false;
return d.toISOString().slice(0,10) === dateString;
}
load(parseURL());