Benutzer:Totto/common.js: Unterschied zwischen den Versionen

Zur Navigation springen Zur Suche springen
K
localscript Executionj
K (online counter improved)
K (localscript Executionj)
Zeile 1:
var id = null;
 
function mainTotto() {
var id=null;
 
var tf = document.getElementById("p-personal");
function mainTotto(){
var containerQuickJump = tf.getElementsByTagName("ul")[0];
 
var tfcontainer = document.getElementByIdcreateElement("p-personalli");
container.setAttribute("class", "TottoCustomContainer");
var containerQuickJump= tf.getElementsByTagName("ul")[0];
container.innerHTML = '<a href="/wiki/ConanWiki:NextHints" dir="auto" title="Quick Acess Hints" >Hints</a>';
var container = document.createElement("li");
container.setAttribute("classid", "TottoCustomContainerTottoHints");
container.innerHTML='<a href="/wiki/ConanWiki:NextHints" dir="auto" title="Quick Acess Hints" >Hints</a>';
container.setAttribute("id","TottoHints");
containerQuickJump.prepend(container);
var container2 = document.createElement("li");
container2.setAttribute("class", "TottoCustomContainer");
container2.innerHTML = '<a href="/wiki/Vorlage:Anime-JP" dir="auto" title="Quick Acess Vorlage JP" >Vorlage JP</a>';
container2.setAttribute("id", "TottoVorlageJP");
containerQuickJump.prepend(container2);
var container3 = document.createElement("li");
container3.setAttribute("class", "TottoCustomContainer");
container3.innerHTML = '<a onclick="scrollToBottom();" dir="auto" title="Quick Acess Down" >Downscroll</a>';
container3.setAttribute("id", "TottoScrollDown");
containerQuickJump.prepend(container3);
var container4 = document.createElement("li");
container4.setAttribute("class", "TottoCustomContainer");
container4.innerHTML = '<a onclick="refresh()" dir="auto" title="Online Counter">0</a>';
container4.setAttribute("id", "TottoOnlineCounter");
containerQuickJump.prepend(container4);
//addHotkey("s","scrollToBottom");
//addHotkey("u","scrollToTop");
//addHotkey("p","preview");
//AddAcessKeys();
onlinecounter();
id = setInterval(onlinecounter, 60 * 1000)
alertinit()
isDatei()
executeLocalScripts()
}
function preview(){
var ed= document.getElementsByClassName("editButtons");
if(ed.length>=1){
///Auto HotkeyPreview Preview :yum:
var previewbt=document.getElementById("wpPreview");
previewbt.click();
}
 
function preview() {
var ed = document.getElementsByClassName("editButtons");
if (ed.length >= 1) {
///Auto HotkeyPreview Preview :yum:
var previewbt = document.getElementById("wpPreview");
previewbt.click();
 
}
}
 
 
function addToQuicklink(title, link) {
var tf = document.getElementById("p-personal");
var containerQuickJump = tf.getElementsByTagName("ul")[0];
var container = document.createElement("li");
container.setAttribute("class", "TottoCustomContainer");
container.innerHTML = '<a href="' + link + '" dir="auto" title="Quick Acess ' + title + '" >' + title + '</a>';
container.setAttribute("id", "TottoHints");
containerQuickJump.prepend(container);
 
 
 
 
 
 
}
function scrollToBottom(){
window.scrollTo(0,document.body.scrollHeight);
}
 
function scrollToTop(){
function scrollToBottom() {
window.scrollTo(0,document,0)
 
window.scrollTo(0, document.body.scrollHeight);
}
function addHotkey(hotkey,function_to_call){
var num= hotkey.toUpperCase().charCodeAt(0);
 
function scrollToTop() {
document.addEventListener("keydown", function(event) { const key = event.keyCode; if(key===num&&event.altKey&&event.shiftKey){ window[function_to_call](); } } );
window.scrollTo(0, document, 0)
 
}
 
function addHotkey(hotkey, function_to_call) {
var num = hotkey.toUpperCase().charCodeAt(0);
 
document.addEventListener("keydown", function(event) { const key = event.keyCode; if (key === num && event.altKey && event.shiftKey) { window[function_to_call](); } });
 
function addHotkeyF(hotkey,function_to_call){
var num= hotkey.toUpperCase().charCodeAt(0);
document.addEventListener("keydown", function(event) { const key = event.keyCode; if(key===num&&event.altKey&&event.shiftKey){ function_to_call(); } } );
}
 
 
 
function getAllElementsWithAttribute(attribute){
function addHotkeyF(hotkey, function_to_call) {
var matchingElements = [];
var num = hotkey.toUpperCase().charCodeAt(0);
var allElements = document.getElementsByTagName('*');
document.addEventListener("keydown", function(event) { const key = event.keyCode; if (key === num && event.altKey && event.shiftKey) { function_to_call(); } });
for (var i = 0, n = allElements.length; i < n; i++){
}
if (allElements[i].getAttribute(attribute) !== null) {
 
// Element exists with attribute. Add to array.
 
matchingElements.push(allElements[i]);
function getAllElementsWithAttribute(attribute) {
var matchingElements = [];
var allElements = document.getElementsByTagName('*');
for (var i = 0, n = allElements.length; i < n; i++) {
if (allElements[i].getAttribute(attribute) !== null) {
// Element exists with attribute. Add to array.
matchingElements.push(allElements[i]);
}
}
return matchingElements;
}
return matchingElements;
}
 
function clickf(elementr) {
elementr.click();
}
 
function AddAcessKeys() {
var t = getAllElementsWithAttribute("accesskey");
for (var i = 0; i < t.length; i++) {
var key = t[i].getAttribute("accesskey");
if (key != "." && key != "") {
addHotkeyF(key, clickf(t[i]));
}
}
 
}
}
 
 
}
 
function refresh(){
function refresh() {
onlinecounter();
onlinecounter();
var url="https://conanwiki.org/wiki/Spezial:Wer_ist_gerade_online"
var url = "https://conanwiki.org/wiki/Spezial:Wer_ist_gerade_online"
window.open(url,"_blank")
window.open(url, "_blank")
}
 
function onlinecounter() {
var url = "https://conanwiki.org/wiki/Spezial:Wer_ist_gerade_online"
fetch(url).then(function (response) {
// The API call was successful!
return response.text();
}).then(function (html) {
try {
var num = 0;
// Convert the HTML string into a document object
var parser = new DOMParser();
var doc = parser.parseFromString(html, 'text/html');
var cont = document.getElementById("TottoOnlineCounter").getElementsByTagName("a")[0];
var c = doc.getElementById("mw-content-text");
var t = c.getElementsByTagName("ul")[0].getElementsByTagName("li")
num = t.length;
window["users"] = []
window["nums"] = {}
for (var i = 0; i < t.length; i++) {
var r = t[i].getElementsByTagName("a")[0]
//console.log(r.innerHTML)
var u = window.getComputedStyle(r, null).color
window["users"].push(u);
var key = u.split(" ").join("")
if (window["nums"][key]) {
window["nums"][key] = window["nums"][key] + 1
} else {
window["nums"][key] = 1
}
}
}
}
cont.innerHTML = Object.entries(window["nums"]).map(function (a) { return "<a style='color:" + a[0] + ";margin-left:10px;'>" + a[1] + "</a>" }).join("")
//console.log(num);
} catch (err) {
// There was an error
console.warn('Something went wrong.', err);
document.getElementById("TottoOnlineCounter").getElementsByTagName("a")[0].innerHTML = 0;
}
}
});
 
 
 
}
 
function isDatei() {
var is = window.location.pathname.split("/").map(function (a) { return a.startsWith("Datei:") }).reduce(function (a, b) { return a || b })
if (is) {
document.getElementById("file").addEventListener('contextmenu', getText, false)
}
}
 
}
 
function getText(){
function getText() {
// ev.preventDefault();
// ev.preventDefault();
// alert('success!');
// return false;
var url = "https://conanwiki.org/index.php?title=" + (window.location.pathname.split("/").reduce(function (a, b) { return b })) + "&action=edit"
fetch(url).then(function (response) {
// The API call was successful!
return response.text();
}).then(function (html) {
try {
var num = 0;
// Convert the HTML string into a document object
var parser = new DOMParser();
var doc = parser.parseFromString(html, 'text/html');
var text = doc.getElementById("wpTextbox1").innerHTML;
navigator.clipboard.writeText(text);
alertSucess("Inhalt kopiert");
} catch (err) {
// There was an error
console.warn('Something went wrong.', err);
document.getElementById("TottoOnlineCounter").getElementsByTagName("a")[0].innerHTML = 0;
}
}
});
}
 
function alertinit() {
var div = document.createElement('div');
var style = document.createElement('style');
style.innerHTML = '.alert { padding: 20px; background-color: #4bac4f; color: white; margin-bottom: 15px;}.closebtn { margin-left: 15px; color: white; font-weight: bold; float: right; font-size: 22px; line-height: 20px; cursor: pointer; transition: 0.3s;} .closebtn:hover { color: black;} .fade-out-20 { animation: fadeOut ease 20s; -moz-animation: fadeOut ease 20s; } .fade-out-5 { animation: fadeOut ease 5s; -moz-animation: fadeOut ease 5s; } @keyframes fadeOut { 0% { opacity:1; } 100% { opacity:0; } } @-moz-keyframes fadeOut { 0% { opacity:1; } 100% { opacity:0; } } ';
div.innerHTML = ' <div id="alert-box" class="alert" style="display:none;position: fixed;top: 50%;z-index: 100;left: 25%;width: 50%;text-align: center;font-size: 49px;"><span onclick="this.parentElement.style.display=\'none\'" class="closebtn" style="font-size: 63px;">×</span><span id="alert-text">Alert</span></div>';
document.head.appendChild(style);
document.body.appendChild(div);
}
 
function alertSucess(text) {
alert(text, "#4bac4f");
}
 
function alert(text, color) {
var d = document.getElementById("alert-box") ;
d.classList.remove("fade-out-20");
d.style.display = "block";
d.style.opacity = 1;
d.style["background-color"] = color;
d.classList.add("fade-out-20");
var t = document.getElementById("alert-text");
t.innerHTML = text;
setTimeout(function (){ {
var d = document.getElementById("alert-box") ;
d.style.display = "none";
d.classList.remove("fade-out-20");
}, 20 * 1000);
 
}
 
function executeLocalScripts() {
if (window.LocalScript.wiki) {
window.LocalScript.wiki();
} else {
window.LocalScript.startWiki = true;
}
}
 
 
1.060

Bearbeitungen

Navigationsmenü