Albirew/nyaa-pantsu
Archivé
1
0
Bifurcation 0
Ce dépôt a été archivé le 2022-05-07. Vous pouvez voir ses fichiers ou le cloner, mais pas ouvrir de ticket ou de demandes d'ajout, ni soumettre de changements.
nyaa-pantsu/public/js/main.js
akuma06 81113001df Context list on upload preview (#1220)
* Update kilo.js

* torrent item js as a separate file to prevent redudancy

* Adding context list

* Fix indent
2017-07-17 14:20:18 +02:00

107 lignes
4,2 Kio
JavaScript

// @source https://github.com/NyaaPantsu/nyaa/tree/dev/public/js
// @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt Expat
// Switches between themes when a new one is selected
function switchThemes(){
themeName = document.getElementById("theme-selector").value
var head = document.getElementsByTagName("head")[0];
// Remove the theme in place, it fails if one isn't set
try{
head.removeChild(document.getElementById("theme"));
} catch(err){}
// Don't add a node if we don't want extra styling
if(themeName === ""){
return;
}
// Create the new one and put it back
var newTheme = document.createElement("link");
newTheme.setAttribute("rel", "stylesheet");
newTheme.setAttribute("href", "/css/"+ themeName + ".css");
newTheme.setAttribute("id", "theme");
head.appendChild(newTheme);
}
// Used by spoiler tags
function toggleLayer(elem) {
if (elem.classList.contains("hide")) {
elem.classList.remove("hide");
} else {
elem.classList.add("hide");
}
}
function parseAllDates() {
// Date formatting
var lang = document.getElementsByTagName("html")[0].getAttribute("lang");
var ymdOpt = { year: "numeric", month: "short", day: "numeric" };
var hmOpt = { hour: "numeric", minute: "numeric" };
var list = document.getElementsByClassName("date-short");
for(var i in list) {
var e = list[i];
e.title = e.innerText;
e.innerText = new Date(e.innerText).toLocaleString(lang, ymdOpt);
}
var list = document.getElementsByClassName("date-full");
for(var i in list) {
var e = list[i];
e.title = e.innerText;
e.innerText = new Date(e.innerText).toLocaleString(lang);
}
}
parseAllDates();
/*Fixed-Navbar offset fix*/
document.addEventListener("DOMContentLoaded", function(event) {
var shiftWindow = function() { scrollBy(0, -70) };
if (location.hash) shiftWindow();
window.addEventListener("hashchange", shiftWindow);
document.getElementsByClassName("search-box")[0].addEventListener("focus", function (e) {
var w = document.getElementsByClassName("h-user")[0].offsetWidth;
document.getElementsByClassName("h-user")[0].style.display = "none";
document.getElementsByClassName("search-box")[0].style.width = document.getElementsByClassName("search-box")[0].offsetWidth + w + "px";
});
document.getElementsByClassName("search-box")[0].addEventListener("blur", function (e) {
document.getElementsByClassName("search-box")[0].style.width = "";
document.getElementsByClassName("h-user")[0].style.display = "inline-block";
});
});
function playVoice() {
var mascotAudio = document.getElementById("explosion") || document.getElementById("nyanpassu")|| document.getElementById("nyanpassu2") || document.getElementById("kawaii");
if (mascotAudio !== undefined) {
mascotAudio.volume = 0.2;
mascotAudio.play();
} else {
console.log("Your mascot doesn't support yet audio files!")
}
}
document.getElementsByClassName("form-input refine")[0].addEventListener("click", function (e) {
document.getElementsByClassName("box refine")[0].style.display = document.getElementsByClassName("box refine")[0].style.display == "none" ? "block" : "none";
if(document.getElementsByClassName("form-input refine-searchbox")[0].value != document.getElementsByClassName("form-input search-box")[0].value)
document.getElementsByClassName("form-input refine-searchbox")[0].value = document.getElementsByClassName("form-input search-box")[0].value;
if(document.getElementsByClassName("form-input refine-category")[0].selectedIndex != document.getElementsByClassName("form-input form-category")[0].selectedIndex)
document.getElementsByClassName("form-input refine-category")[0].selectedIndex = document.getElementsByClassName("form-input form-category")[0].selectedIndex;
e.preventDefault();
if(document.getElementsByClassName("box refine")[0].style.display == "block")
scrollTo(0, 0);
});
function humanFileSize(bytes, si) {
var k = si ? 1000 : 1024;
var i = ~~(Math.log(bytes) / Math.log(k));
return i == 0 ? bytes + " B" : (bytes / Math.pow(k, i)).toFixed(1) + " " + "KMGTPEZY"[i - 1] + (si ? "" : "i") + "B";
}
function flagCode(language) {
split = language.split("-");
if (split.length > 1) {
return split[0];
}
return language;
}
// @license-end