let sAlert = window.parent.sAlert;
function setBackground() {
let randomNumbers = [100-Math.abs(Math.floor(Math.random() * 200) - 99), 100-Math.abs(Math.floor(Math.random() * 200) - 99)];
document.body.style.setProperty("--gradient-x", randomNumbers[0] + "%");
document.body.style.setProperty("--gradient-y", randomNumbers[1] + "%");
setTimeout(setBackground, 30000)
}
function loadPJS() {
let div = document.createElement("div");
div.id = "pjs";
document.body.appendChild(div);
let script = document.createElement("script");
script.src = "https://cdn.jsdelivr.net/particles.js/2.0.0/particles.min.js";
document.head.appendChild(script);
script.addEventListener("load", ()=>{
particlesJS.load('pjs', "/js/main-particlesjs-config.json", ()=>{});
});
}
function cursor() {
let cursor = document.createElement("div");
cursor.style.cssText = "width:30px;height:30px;background-color:var(--color-1);position:fixed;border-radius:100%;filter:blur(50px);opacity:1;pointer-events:none;top:0;left:0;";
document.body.appendChild(cursor);
let rafId = null;
document.addEventListener("mousemove", (e) => {
if (rafId) return;
rafId = requestAnimationFrame(() => {
cursor.style.transform = `translate(${e.clientX - 15}px, ${e.clientY - 15}px)`;
rafId = null;
});
});
}
function themes() {
document.body.setAttribute("theme", localStorage.getItem("selenite.theme") || "")
if(document.body.getAttribute("theme") == "custom") {
setTheme(JSON.parse(localStorage.getItem("selenite.customTheme")))
}
}
function setTheme(arg) {
let theme = arg;
document.body.setAttribute("style", `
--text-color: ${theme["text-color"]};
--bg-1: ${theme["bg-1"]};
--bg-2: ${theme["bg-2"]};
--color-1: ${theme["color-1"]};
--color-2: ${theme["color-2"]};
--color-3: ${theme["color-3"]};
--color-4: ${theme["color-4"]};
`)
}
async function caching() {
if(sessionStorage.getItem("cdns")) return "done";
let cdns = JSON.parse(atob("WyJodHRwczovL2NhY2hpbmcuZnJlZXRscy5mYXN0bHkubmV0IiwiaHR0cHM6Ly9jYWNoaW5nLmdsb2JhbC5zc2wuZmFzdGx5Lm5ldCJd"));
let cfStatus = (await fetch("/alive.txt")).headers.get("Cf-Ray") != null;
if(cfStatus) {
localStorage.setItem("selenite.disableCDN", "true");
return;
}
const results = await Promise.all(cdns.map(cdn =>
fetch(cdn + "/alive.txt").then(r => r.text()).then(t => t.startsWith("yeah true") ? cdn : null).catch(() => null)
));
sessionStorage.setItem("cdns", JSON.stringify(results.filter(Boolean)));
return;
}
function sendData() {
let data = {
cdns: JSON.parse(sessionStorage.getItem("cdns")),
disableCDN: localStorage.getItem("selenite.disableCDN") ? true : false,
type: 'localStorage'
};
if (navigator.serviceWorker.controller) {
navigator.serviceWorker.controller.postMessage(data);
} else {
navigator.serviceWorker.addEventListener('controllerchange', () => {
if (navigator.serviceWorker.controller) {
navigator.serviceWorker.controller.postMessage(data);
}
});
}
}
document.addEventListener("DOMContentLoaded", async ()=>{
if("serviceWorker" in navigator) {
navigator.serviceWorker.register("/sw.js", { scope: '/' });
}
if(!(localStorage.getItem("selenite.fast-mode") == 'true')) {
setBackground();
loadPJS();
cursor();
}
if(localStorage.getItem("selenite.super-fast-mode") == 'true') {
document.body.setAttribute("fast", "")
}
themes();
if(await caching() == "done") {
sendData();
}
})
let scrollRaf = null;
document.addEventListener("scroll", () => {
if (scrollRaf) return;
scrollRaf = requestAnimationFrame(() => {
const pjs = document.getElementById("pjs");
if (pjs) pjs.style.top = window.scrollY + "px";
scrollRaf = null;
});
});
if ("serviceWorker" in navigator) {
navigator.serviceWorker.addEventListener('message', (event) => {
if (event.data.command === 'localStorage') {
const data = localStorage.getItem(event.data.key);
event.ports[0].postMessage({ data: data });
}
});
}
// var interval;
// document.addEventListener("DOMContentLoaded", function () {
// if (localStorage.getItem("theme")) {
// localStorage.setItem("selenite.theme", localStorage.getItem("theme"));
// localStorage.removeItem("theme");
// }
// if (localStorage.getItem("selenite.theme")) {
// document.body.setAttribute("theme", localStorage.getItem("selenite.theme"));
// } else {
// document.body.setAttribute("theme", "main");
// }
// if (document.querySelectorAll("[id=adcontainer]")) {
// for (let i = 0; i < document.querySelectorAll("[id=adcontainer]").length; i++) {
// if (Math.random() < 0.5 || localStorage.getItem("selenite.adblock") == "true") document.querySelectorAll("[id=adcontainer]")[i].innerHTML = "";
// }
// }
// const iconSetting = document.querySelector("input#discordIcon");
// const blockClose = document.querySelector("input#blockClose");
// const openBlank = document.getElementById("blank");
// const bgTheme = document.querySelector("input#bgTheme");
// // if (document.querySelector("widgetbot-crate")) {
// // if (localStorage.getItem("selenite.discordIcon") == "true") {
// // const widget = document.querySelector("widgetbot-crate");
// // widget.setAttribute("style", "display:none");
// // }
// // }
// if (document.querySelector("input#discordIcon")) {
// if (localStorage.getItem("selenite.discordIcon") == "true") {
// iconSetting.checked = true;
// }
// iconSetting.addEventListener("click", () => {
// localStorage.setItem("selenite.discordIcon", iconSetting.checked);
// });
// }
// if (document.querySelector("input#blockClose")) {
// if (localStorage.getItem("selenite.blockClose") == "true") {
// blockClose.checked = true;
// }
// blockClose.addEventListener("click", () => {
// localStorage.setItem("selenite.blockClose", blockClose.checked);
// });
// }
// if (document.querySelector("input#tabDisguise")) {
// if (localStorage.getItem("selenite.tabDisguise") == "true") {
// tabDisguise.checked = true;
// }
// tabDisguise.addEventListener("click", () => {
// localStorage.setItem("selenite.tabDisguise", tabDisguise.checked);
// });
// }
// if (document.querySelector("input#bgTheme")) {
// bgTheme.checked = true;
// }
// document.getElementById("blank").addEventListener("click", () => {
// win = window.open();
// win.document.body.style.margin = "0";
// win.document.body.style.height = "100vh";
// html = `
//
${message.message}
`; // toast.style.animation = "toastFade 6s"; // document.body.appendChild(toast); // if (onclick) { // toast.addEventListener("click", onclick); // toast.style.cursor = "pointer"; // } // setTimeout(() => { // toast.remove(); // }, 6000); // } // function timeAgo(input) { // const date = input instanceof Date ? input : new Date(input); // const formatter = new Intl.RelativeTimeFormat("en"); // const ranges = { // years: 3600 * 24 * 365, // months: 3600 * 24 * 30, // weeks: 3600 * 24 * 7, // days: 3600 * 24, // hours: 3600, // minutes: 60, // seconds: 1, // }; // const secondsElapsed = (date.getTime() - Date.now()) / 1000; // for (let key in ranges) { // if (ranges[key] < Math.abs(secondsElapsed)) { // const delta = secondsElapsed / ranges[key]; // return formatter.format(Math.round(delta), key); // } // } // } // let cookieConsentScript = document.createElement("script"); // cookieConsentScript.src = "/js/cookieConsent.js"; // document.head.appendChild(cookieConsentScript); // let cookieConsentStyle = document.createElement("link"); // cookieConsentStyle.href = "/js/cookieConsent.css"; // cookieConsentStyle.rel = "stylesheet"; // document.head.appendChild(cookieConsentStyle);