Backup Commit

This commit is contained in:
2025-05-20 12:36:47 +02:00
parent e4f85d21b6
commit 53c39085bc
58 changed files with 8424 additions and 0 deletions
Binary file not shown.

After

Width:  |  Height:  |  Size: 115 KiB

BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 38 KiB

Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 102 KiB

+110
View File
@@ -0,0 +1,110 @@
function addFav(id) {
return new Promise(function (resolve) {
const xmlhttp = new XMLHttpRequest();
xmlhttp.onload = function () {
}
xmlhttp.open("POST", "/addFav.php");
xmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
xmlhttp.send('id=' + id);
});
}
function remFav(id) {
return new Promise(function (resolve) {
const xmlhttp = new XMLHttpRequest();
xmlhttp.onload = function () {
}
xmlhttp.open("POST", "/remFav.php");
xmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
xmlhttp.send('id=' + id);
});
}
function getFav() {
return new Promise(function (resolve) {
const xmlhttp = new XMLHttpRequest();
xmlhttp.onload = function () {
document.getElementById("wishlist").innerHTML = this.responseText;
console.log(this.responseText);
}
xmlhttp.open("POST", "/getFav.php");
xmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
xmlhttp.send();
});
}
function refreshLiked() {
document.querySelectorAll('.likebutton').forEach(element => {
var exists = false;
try {
wishlistArray.forEach(function(item) {
if (element.attributes[1].value == String(item["id"])) {
exists = true;
}
});
} catch (err) {
err.message;
}
if (exists) {
element.innerHTML = "<icon>favorite</icon>";
} else {
element.innerHTML = "<icon>favorite_border</icon>";
}
return new Promise(function (resolve) {
const xmlhttp = new XMLHttpRequest();
xmlhttp.onload = async function () {
document.getElementById("wishlistScript").innerHTML = "var wishlistArray = " + this.responseText;
wishlistArray = JSON.parse(this.responseText);
}
xmlhttp.open("POST", "/getFavArray.php");
xmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
xmlhttp.send();
});
});
}
getFav();
async function accOpen() {
if (!login) {
document.getElementById("wishlist").innerHTML = "<p>Please Login into your Wishlist to see your Wishlist</p>";
}
currentpos = document.body.scrollTop;
document.getElementById("footer").classList.add("addHeight");
await sleep(100);
try { document.getElementById("filter").style = "top: " + document.body.scrollTop + "px;"; } catch(err) {}
await sleep(400);
document.getElementById("body").classList.add("disableScrollbar");
try { document.getElementById("filter").classList.add("filterDisplay"); } catch(err) {}
try { document.getElementById("filterdiv").style = "display: none !important;"; } catch(err) {}
try { document.getElementById("accdiv").style = "display: grid !important;"; } catch(err) {}
document.getElementById("filterbutton").href = "#foclose";
filterisopened = true;
}
async function accClose() {
await sleep(200);
document.getElementById("body").classList.remove("disableScrollbar");
try { document.getElementById("filter").classList.remove("filterDisplay"); } catch(err) {}
await sleep(400);
await sleep(200);
document.getElementById("footer").classList.remove("addHeight");
document.getElementById("filterbutton").href = "#fo";
try { document.getElementById("filterdiv").style = "display: none !important;"; } catch(err) {}
try { document.getElementById("accdiv").style = "display: grid !important;"; } catch(err) {}
filterisopened = false;
}
+25
View File
@@ -0,0 +1,25 @@
function AvaliMode() {
if(!document.getElementById('id1')) {
var link = document.createElement('link');
link.id = 'id1';
link.rel = 'stylesheet';
link.href = '/assets/style/avali.css';
document.head.appendChild(link);
AvaliSet("true");
} else {
document.getElementById("id1").remove();
AvaliSet("false");
}
}
function AvaliSet(VarIDD) {
return new Promise(function (resolve) {
const xmlhttp = new XMLHttpRequest();
xmlhttp.onload = function () {
resolve(xmlhttp.response)
}
xmlhttp.open("POST", "/setavali.php");
xmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
xmlhttp.send('avali=' + VarIDD);
});
}
+63
View File
@@ -0,0 +1,63 @@
function sleep(ms) {
return new Promise(resolve => setTimeout(resolve, ms));
}
async function changeNavAttach() {
if (window.pageYOffset >= sticky) {
navbar.classList.add("sticky");
navbar.classList.add("ontop");
} else {
navbar.classList.remove("sticky");
navbar.classList.remove("ontop");
}
}
async function topForBottomBarProductPreview() {
if (window.windowWidth < 1001) {
document.getElementById("purchaseSection").style.top = (825 + document.getElementById("productPage").scrollTop) + "px";
} else {
document.getElementById("purchaseSection").style.top = null;
}
}
document.getElementById("productPage").onscroll = function () {
topForBottomBarProductPreview();
};
window.onscroll = function () {
changeNavAttach();
};
function disableScroll() {
window.addEventListener('DOMMouseScroll', preventDefault, false); // older FF
window.addEventListener(wheelEvent, preventDefault, wheelOpt); // modern desktop
window.addEventListener('touchmove', preventDefault, wheelOpt); // mobile
window.addEventListener('keydown', preventDefaultForScrollKeys, false);
}
function enableScroll() {
window.removeEventListener('DOMMouseScroll', preventDefault, false);
window.removeEventListener(wheelEvent, preventDefault, wheelOpt);
window.removeEventListener('touchmove', preventDefault, wheelOpt);
window.removeEventListener('keydown', preventDefaultForScrollKeys, false);
}
function preventDefault(e) {
e.preventDefault();
}
function preventDefaultForScrollKeys(e) {
if (keys[e.keyCode]) {
preventDefault(e);
return false;
}
}
function menu() {
var x = document.getElementById("navbar");
if (x.className.includes("responsive")) {
x.className = x.className.replace(" responsive", "");
} else {
x.className += " responsive";
}
}
+108
View File
@@ -0,0 +1,108 @@
window.addEventListener('resize', function() {
if (window.innerWidth > 800) {
document.getElementById("styleshed").innerHTML = ".likeButton {top: " + (document.getElementsByClassName("imgItem")[0].clientHeight - 18) + "px !important}";
} else {
document.getElementById("styleshed").innerHTML = ".likeButton {top: " + (document.getElementsByClassName("imgItem")[0].clientHeight - 58) + "px !important}";
}
});
function getClickedElement() {
document.addEventListener('click', async function(event) {
var clickedElement = event.target;
if (clickedElement.classList[0] == "deletebutton") {
var itemid = clickedElement.attributes[2].value
remFav(itemid);
await sleep(200);
getFav();
await sleep(3000);
refreshLiked();
}
});
}
getClickedElement();
window.addEventListener('locationchange', function () {
console.log('location changed!');
});
if (window.location.hash == "#fo") {
try { filterOpen(); } catch(err) { console.log(err.message); }
} else if (window.location.hash == "#foclose") {
try { filterClose(); } catch(err) { console.log(err.message); }
try { accClose(); } catch(err) { console.log(err.message); }
window.location = window.location.replace("#foclose", "");
} else if (window.location.hash == "#acc") {
try { accOpen(); } catch(err) { console.log(err.message); }
} else if (window.location.hash.includes("#p")) {
try { clearModal(); } catch(err) { console.log(err.message); }
try { openModal(); } catch(err) { console.log(err.message); }
let vartmp = window.location.hash.replace("#p", "");
try { setProduct(vartmp); } catch(err) { console.log(err.message); }
try { openProduct(); } catch(err) { console.log(err.message); }
} else if (window.location.hash.includes("#insert")) {
try { openModalInsert(); } catch(err) { console.log(err.message); }
} else {
try { closeModal(); } catch(err) { console.log(err.message); }
try { closeModalInsert(); } catch(err) { console.log(err.message); }
try { clearModal(); } catch(err) { console.log(err.message); }
try { filterClose(); } catch(err) { console.log(err.message); }
try { accClose(); } catch(err) { console.log(err.message); }
}
window.addEventListener('hashchange', async function () {
if (window.location.hash == "#fo") {
try { filterOpen(); } catch(err) { console.log(err.message); }
} else if (window.location.hash == "#acc") {
try { accOpen(); } catch(err) { console.log(err.message); }
} else if (window.location.hash.includes("#p")) {
try { clearModal(); } catch(err) { console.log(err.message); }
try { openModal(); } catch(err) { console.log(err.message); }
let vartmp = window.location.hash.replace("#p", "");
try { setProduct(vartmp); } catch(err) { console.log(err.message); }
try { openProduct(); } catch(err) { console.log(err.message); }
} else if (window.location.hash.includes("#insert")) {
try { openModalInsert(); } catch(err) { console.log(err.message); }
} else {
try { closeModal(); } catch(err) { console.log(err.message); }
try { closeModalInsert(); } catch(err) { console.log(err.message); }
await sleep(200);
try { clearModal(); } catch(err) { console.log(err.message); }
try { filterClose(); } catch(err) { console.log(err.message); }
try { accClose(); } catch(err) { console.log(err.message); }
}
});
document.body.addEventListener('keypress', function(e) {
if (e.key == "Escape" && filterisopened == true) {
location.href='/';
}
});
try {
window.addEventListener("test", null, Object.defineProperty({}, 'passive', {
get: function () {
supportsPassive = true;
}
}));
} catch (e) { }
function addListener() {
try {
var elements = document.getElementsByClassName('nsfw-filter');
for (var element in elements) {
elements[element].addEventListener('click', function (e) {
e.target.remove();
})
}
} catch (e) {}
}
addListener();
+33
View File
@@ -0,0 +1,33 @@
async function filterOpen() {
currentpos = document.body.scrollTop;
document.getElementById("footer").classList.add("addHeight");
await sleep(100);
document.getElementById("filter").style = "top: " + document.body.scrollTop + "px;";
await sleep(400);
document.getElementById("body").classList.add("disableScrollbar");
document.getElementById("filterdiv").style = "display: grid !important;";
document.getElementById("accdiv").style = "display: none !important;";
document.getElementById("filter").classList.add("filterDisplay");
document.getElementById("filterbutton").href = "#foclose";
filterisopened = true;
}
async function filterClose() {
document.getElementById("body").classList.remove("disableScrollbar");
document.getElementById("filter").classList.remove("filterDisplay");
await sleep(400);
await sleep(200);
document.getElementById("footer").classList.remove("addHeight");
document.getElementById("filterbutton").href = "#fo";
document.getElementById("filterdiv").style = "display: grid !important;";
document.getElementById("accdiv").style = "display: none !important;";
filterisopened = false;
}
+69
View File
@@ -0,0 +1,69 @@
async function openModalInsert() {
document.getElementById("insertData").classList.add("visibilityVisible");
await sleep(100);
document.getElementById("insertData").classList.add("backgroundYES");
document.getElementById("body").classList.add("disableScrollbar");
await sleep(200);
try {document.getElementById("insertWindow").classList.add("visibilityVisible");} catch (e) {}
}
async function closeModalInsert() {
try {document.getElementById("insertWindow").classList.remove("visibilityVisible");} catch (e) {}
await sleep(200);
try {document.getElementById("insertData").classList.remove("visibilityVisible");} catch (e) {}
try {document.getElementById("insertData").classList.remove("backgroundYES");} catch (e) {}
try {document.getElementById("insertData").style = "";} catch (e) {}
document.getElementById("body").classList.remove("disableScrollbar");
}
async function openModal() {
document.getElementById("previewProduct").classList.add("visibilityVisible");
await sleep(100);
document.getElementById("previewProduct").classList.add("backgroundYES");
document.getElementById("body").classList.add("disableScrollbar");
}
async function openProduct() {
document.getElementById("previewProduct").style = "top:" + (document.body.scrollTop) + "px;";
await sleep(400);
document.getElementById("productPage").classList.add("visibilityVisible");
await sleep(200);
try {
document.getElementsByClassName("slide")[0].style.display = "block";
} catch (e) {}
}
async function closeModal() {
document.getElementById("productPage").classList.remove("visibilityVisible");
await sleep(200);
document.getElementById("previewProduct").classList.remove("visibilityVisible");
document.getElementById("previewProduct").classList.remove("backgroundYES");
document.getElementById("previewProduct").style = "";
document.getElementById("body").classList.remove("disableScrollbar");
document.getElementById("productLoading").style = "display: flex;";
}
function clearModal() {
document.getElementById("productImageContainer").innerHTML = "";
document.getElementById("productDescription").innerHTML = "";
document.getElementById("containsSection").innerHTML = "";
document.getElementById("gotoproduct").style = "";
document.getElementById("purchasePrice").innerHTML = "";
document.getElementById("creatorImg").src = "";
document.getElementById("creatorName").innerHTML = "";
document.getElementById("ratingSection").style = "";
document.getElementById("productImageContainer").style = "";
document.getElementById("productImageContainerButtons").style = "";
document.getElementById("productMetaData").style = "";
data = "";
}
function backback() {
var tmp = window.scrollY;
window.location = "#";
window.scrollTo(0, tmp);
}
+138
View File
@@ -0,0 +1,138 @@
function plusDivs(n) {
showDivs(slideIndex += n);
}
function showDivs(n) {
var i;
var x = document.getElementsByClassName("slide");
if (n > x.length) {slideIndex = 1}
if (n < 1) {slideIndex = x.length}
for (i = 0; i < x.length; i++) {
x[i].style.display = "none";
}
if (document.getElementById("previewProduct").classList.value.includes("visibilityVisible")) {
x[slideIndex-1].style.display = "block";
}
}
function getGumroadData(VarIDD) {
return new Promise(function (resolve) {
const xmlhttp = new XMLHttpRequest();
xmlhttp.onload = function () {
resolve(xmlhttp.response)
}
xmlhttp.open("POST", "/getGumroadData.php");
xmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
xmlhttp.send('id=' + VarIDD);
});
}
async function setProduct(varID) {
try {
var remoteCode = await getGumroadData(varID);
data = JSON.parse(remoteCode);
data.product.covers.forEach(element => {
if (element.type == "image") {
document.getElementById("productImageContainer").innerHTML += "<img class=\"slide\" src=\"" + element.url + "\" style=\"display:none;\">";
} else if (element.type == "video") {
document.getElementById("productImageContainer").innerHTML += "<video class=\"slide\" src=\"" + element.url + "\" controls=\"show\" style=\"display:none;\">";
}
});
if (data.product.summary != null) {
document.getElementById("containsSection").innerHTML += "<a class=\"contentSum\">" + data.product.summary + "<br></a>";
}
try {
data.product.attributes.forEach(element => {
if (element.name != null) {
document.getElementById("containsSection").innerHTML += "<a class=\"contentTribute\"><g style=\"font-weight: 100;\">" + element.name + "</g>" + element.value + "</a>";
} else {
document.getElementById("containsSection").innerHTML += "<a class=\"contentTribute\"><g style=\"font-weight: 100;\"> </g>" + element.value + "</a>";
}
});
} catch (e) {
document.getElementById("containsSection").innerHTML += "<a class=\"contentTribute\"><g style=\"font-weight: 100;\">No Content Tags</g></a>";
}
document.getElementById("productDescription").innerHTML = data.product.description_html + "<br><br>";
document.getElementById("creatorImg").src = data.product.seller.avatar_url;
document.getElementById("gotoproduct").href = data.product.long_url;
document.getElementById("gotoproduct2").href = data.product.long_url;
if (data.product.long_url.includes("booth.pm")) {
document.getElementById("gotoproduct").innerHTML = "Get on Booth!";
document.getElementById("gotoproduct").style = "visibility: unset !important;";
document.getElementById("gotoproduct2").innerHTML = "Get on Booth!";
document.getElementById("gotoproduct2").style = "visibility: unset !important;";
document.getElementById("ratingSection").style = "display: none !important;";
} else if (data.product.long_url.includes("gumroad.com")) {
document.getElementById("gotoproduct").innerHTML = "Get on Gumroad!";
document.getElementById("gotoproduct").style = "visibility: unset !important;";
document.getElementById("gotoproduct2").innerHTML = "Get on Gumroad!";
document.getElementById("gotoproduct2").style = "visibility: unset !important;";
document.getElementById("ratingSection").style = "display: flex !important;";
}
document.getElementById("productMetaData").style = "display: block !important;";
document.getElementById("productImageContainer").style = "display: flex !important;";
document.getElementById("productImageContainerButtons").style = "display: flex !important;";
document.getElementById("productLoading").style = "display: none !important;";
if (data.product.currency_code == "eur") {
document.getElementById("purchasePrice").innerHTML = (data.product.price_cents / 100) + "€";
document.getElementById("purchasePrice2").innerHTML = (data.product.price_cents / 100) + "€";
} else {
document.getElementById("purchasePrice").innerHTML = currency_symbols[data.product.currency_code.toUpperCase()] + (data.product.price_cents / 100);
document.getElementById("purchasePrice2").innerHTML = currency_symbols[data.product.currency_code.toUpperCase()] + (data.product.price_cents / 100);
}
const ex1 = data.product.rating_counts[0],
ex2 = data.product.rating_counts[1],
ex3 = data.product.rating_counts[2],
ex4 = data.product.rating_counts[3],
ex5 = data.product.rating_counts[4];
var tmp1, tmp2, tmp3, tmp4, tmp5, tmpGlobal=ex1+ex2+ex3+ex4+ex5;
var tmpaddon1, tmpaddon2, tmpaddon3, tmpaddon4, tmpaddon5;
tmp1 = (100 / tmpGlobal) * ex1;
tmp2 = (100 / tmpGlobal) * ex2;
tmp3 = (100 / tmpGlobal) * ex3;
tmp4 = (100 / tmpGlobal) * ex4;
tmp5 = (100 / tmpGlobal) * ex5;
if (tmp1 == 0) tmpaddon1 = "display: none;";
if (tmp2 == 0) tmpaddon2 = "display: none;";
if (tmp3 == 0) tmpaddon3 = "display: none;";
if (tmp4 == 0) tmpaddon4 = "display: none;";
if (tmp5 == 0) tmpaddon5 = "display: none;";
document.getElementById("g1").innerHTML = "(" + ex1 + ")";
document.getElementById("g2").innerHTML = "(" + ex2 + ")";
document.getElementById("g3").innerHTML = "(" + ex3 + ")";
document.getElementById("g4").innerHTML = "(" + ex4 + ")";
document.getElementById("g5").innerHTML = "(" + ex5 + ")";
document.getElementById("progressFiller1").style = "width: " + tmp1 + "%;" + tmpaddon1;
document.getElementById("progressFiller2").style = "width: " + tmp2 + "%;" + tmpaddon2;
document.getElementById("progressFiller3").style = "width: " + tmp3 + "%;" + tmpaddon3;
document.getElementById("progressFiller4").style = "width: " + tmp4 + "%;" + tmpaddon4;
document.getElementById("progressFiller5").style = "width: " + tmp5 + "%;" + tmpaddon5;
document.getElementById("creatorName").innerHTML = data.product.seller.name;
document.getElementById("creatorName").href = "?s=" + data.product.seller.name;
document.getElementsByClassName("slide")[0].style.display = "block";
} catch (e) {}
data = null;
document.getElementsByClassName("slide")[0].style.display = "block";
}
+33
View File
@@ -0,0 +1,33 @@
if (window.innerWidth > 800) {
document.getElementById("styleshed").innerHTML = ".likeButton {top: " + (document.getElementsByClassName("imgItem")[0].clientHeight - 18) + "px !important}";
} else {
document.getElementById("styleshed").innerHTML = ".likeButton {top: " + (document.getElementsByClassName("imgItem")[0].clientHeight - 58) + "px !important}";
}
document.querySelectorAll('.likebutton').forEach(element => {
element.addEventListener("click", async function () {
var itemid = this.attributes[1].value
if (this.innerHTML == "<icon>favorite_border</icon>") {
addFav(itemid);
await sleep(200);
getFav();
this.innerHTML = "<icon>favorite</icon>";
} else if (this.innerHTML == "<icon>favorite</icon>") {
remFav(itemid);
await sleep(200);
getFav();
this.innerHTML = "<icon>favorite_border</icon>";
}
});
});
async function myFunction() {
if (window.pageYOffset >= sticky) {
navbar.classList.add("sticky");
navbar.classList.add("ontop");
} else {
navbar.classList.remove("sticky");
navbar.classList.remove("ontop");
}
}
+14
View File
@@ -0,0 +1,14 @@
function searchInputFocus() {
document.getElementById("sinp").focus();
document.getElementById("sinp").focus();
document.getElementById("sinp").select();
document.getElementById("sinp").select();
}
function searchFocus() {
document.getElementById("stxt").classList.add("floataway");
}
function searchBlur() {
document.getElementById("stxt").classList.remove("floataway");
}
+46
View File
@@ -0,0 +1,46 @@
var data;
var currentHash;
var myOldUrl = window.location.href;
var navbar = document.getElementById("navbar");
var sticky = navbar.offsetTop;
var filterOpened = false;
var windowWidth = window.innerWidth;
var currency_symbols = {
'USD': '$', // US Dollar
'EUR': '€', // Euro
'CRC': '₡', // Costa Rican Colón
'GBP': '£', // British Pound Sterling
'ILS': '₪', // Israeli New Sheqel
'INR': '₹', // Indian Rupee
'JPY': '¥', // Japanese Yen
'KRW': '₩', // South Korean Won
'NGN': '₦', // Nigerian Naira
'PHP': '₱', // Philippine Peso
'PLN': 'zł', // Polish Zloty
'PYG': '₲', // Paraguayan Guarani
'THB': '฿', // Thai Baht
'UAH': '₴', // Ukrainian Hryvnia
'VND': '₫', // Vietnamese Dong
'AUD': 'A$'
};
var keys = {
37: 1,
38: 1,
39: 1,
40: 1
};
var currentpos = 0;
var filterisopened = true;
var slideIndex = 1;
var supportsPassive = false;
var wheelOpt = supportsPassive ? {
passive: false
} : false;
var wheelEvent = 'onwheel' in document.createElement('div') ? 'wheel' : 'mousewheel';
+53
View File
@@ -0,0 +1,53 @@
@font-face{
font-family: avali;
src: url(https://furatalog.xyz/assets/fonts/avali-scratch.ttf);
}
* {
font-family: avali;
}
.previewButton {
font-size: 30px !important;
}
header a {
font-size: 1.3rem;
}
footer a {
font-size: 40px;
}
#navbar a {
font-size: 25.5px;
}
.header h2 {
font-size: 3em;
}
.header p {
font-size: 50px;
}
.searchfield input {
font-size: 24px;
}
.pagenav a {
font-size: 42px;
}
.nsfw-ask {
font-size: 25.5px;
}
.filter-container-item {
font-size: 45px;
margin-bottom: 5px;
}
.filter-inner a {
margin-bottom: 10px !important;
}
File diff suppressed because it is too large Load Diff