Benutzer:Totto/common.js: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
Inhalt hinzugefügt Inhalt gelöscht
Totto (Diskussion | Beiträge) KKeine Bearbeitungszusammenfassung |
Totto (Diskussion | Beiträge) K (onlinecounter) |
||
Zeile 1: | Zeile 1: | ||
+ | |||
+ | |||
function mainTotto(){ |
function mainTotto(){ |
||
Zeile 18: | Zeile 20: | ||
container3.setAttribute("id","TottoScrollDown"); |
container3.setAttribute("id","TottoScrollDown"); |
||
containerQuickJump.prepend(container3); |
containerQuickJump.prepend(container3); |
||
+ | var container4 = document.createElement("li"); |
||
− | |||
+ | container4.setAttribute("class","TottoCustomContainer"); |
||
+ | container4.innerHTML='<a onclick="onlinecounter()" dir="auto" title="Online Counter">0</a>'; |
||
+ | container4.setAttribute("id","TottoOnlineCounter"); |
||
+ | containerQuickJump.prepend(container4); |
||
//addHotkey("s","scrollToBottom"); |
//addHotkey("s","scrollToBottom"); |
||
//addHotkey("u","scrollToTop"); |
//addHotkey("u","scrollToTop"); |
||
//addHotkey("p","preview"); |
//addHotkey("p","preview"); |
||
//AddAcessKeys(); |
//AddAcessKeys(); |
||
+ | onlinecounter() |
||
} |
} |
||
Zeile 103: | Zeile 110: | ||
} |
} |
||
+ | function refresh(){ |
||
+ | onlinecounter() |
||
+ | } |
||
+ | |||
+ | 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) { |
||
+ | 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") |
||
+ | num=c.getElementsByTagName("ul")[0].getElementsByTagName("li").length |
||
+ | cont.innerHTML=num; |
||
+ | console.log(num) |
||
+ | }).catch(function (err) { |
||
+ | // There was an error |
||
+ | console.warn('Something went wrong.', err); |
||
+ | document.getElementById("TottoOnlineCounter").getElementsByTagName("a")[0].innerHTML=0; |
||
+ | }); |
||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | } |
||
+ | |||
Version vom 17. April 2021, 23:10 Uhr
function mainTotto(){ 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="/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="onlinecounter()" 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() } 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(){ 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){ 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; } 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(){ onlinecounter() } 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) { 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") num=c.getElementsByTagName("ul")[0].getElementsByTagName("li").length cont.innerHTML=num; console.log(num) }).catch(function (err) { // There was an error console.warn('Something went wrong.', err); document.getElementById("TottoOnlineCounter").getElementsByTagName("a")[0].innerHTML=0; }); } mainTotto();