Category
You're no bot and a page you've created got automatically deleted? Add your name to FreewarWiki:NoSpamUser |
Difference between revisions of "MediaWiki:Common.js"
From FreewarWiki
(reinsert partial) |
(+snow) |
||
(5 intermediate revisions by 2 users not shown) | |||
Line 354: | Line 354: | ||
/* END Kampfrechner */ | /* END Kampfrechner */ | ||
// ============================================================ | // ============================================================ | ||
+ | |||
+ | /*** Questpassagen für Karten ***/ | ||
+ | |||
+ | function showQP(bool) | ||
+ | { | ||
+ | if (bool) | ||
+ | { | ||
+ | document.cookie="tiramon_deShowQP=1"; | ||
+ | } | ||
+ | else | ||
+ | { | ||
+ | document.cookie="tiramon_deShowQP=0"; | ||
+ | } | ||
+ | location.reload(); | ||
+ | } | ||
+ | |||
+ | function work_on_questpassages() | ||
+ | { | ||
+ | // add show/hide links to all maps | ||
+ | findmenu = document.getElementById("QPinout"); | ||
+ | if (findmenu) | ||
+ | { | ||
+ | showlink=document.createElement("a"); | ||
+ | showlink.setAttribute("href","Javascript:showQP(true)"); | ||
+ | showlink.appendChild(document.createTextNode('anzeigen')); | ||
+ | hidelink=document.createElement("a"); | ||
+ | hidelink.setAttribute("href","Javascript:showQP(false)"); | ||
+ | hidelink.appendChild(document.createTextNode('verbergen')); | ||
+ | findmenu.appendChild(showlink); | ||
+ | findmenu.appendChild(document.createTextNode('/')); | ||
+ | findmenu.appendChild(hidelink); | ||
+ | } | ||
+ | |||
+ | // enable display of QPs if wished | ||
+ | for(var i=0; foundspan = document.getElementsByTagName("span")[i]; i++) | ||
+ | { | ||
+ | var tiramon_deShowQP=document.cookie; | ||
+ | if (tiramon_deShowQP.indexOf("tiramon_deShowQP=")=="-1") return(-1); | ||
+ | if (tiramon_deShowQP.charAt(tiramon_deShowQP.indexOf("tiramon_deShowQP=")+17)!="1") return(-1); | ||
+ | if (foundspan.className == "QP") | ||
+ | { | ||
+ | foundspan.setAttribute("style", "display:inline;"); | ||
+ | } | ||
+ | } | ||
+ | |||
+ | } | ||
+ | jQuery( document ).ready( function( $ ) { | ||
+ | work_on_questpassages(); | ||
+ | } ); | ||
+ | // addOnloadHook(work_on_questpassages); | ||
+ | |||
+ | /*** END: QuestPassages ***/ | ||
+ | |||
+ | // ============================================================ | ||
+ | |||
+ | /*** [[CompleteMap]] ***/ | ||
+ | // BEGIN import code used by [[CompleteMap]] | ||
+ | // SEE ALSO [[MediaWiki:CompleteMap.js]] | ||
+ | mw.loader.load('/index.php?title=MediaWiki:CompleteMap.js&action=raw&ctype=text/javascript'); | ||
+ | mw.loader.load('/index.php?title=MediaWiki:Autorouter.js&action=raw&ctype=text/javascript'); | ||
+ | /* | ||
+ | document.write('<script type="text/javascript" src="/index.php?title=MediaWiki:CompleteMap.js&action=raw&ctype=text/javascript&dontcountme=s"></script>'); | ||
+ | document.write('<script type="text/javascript" src="/index.php?title=MediaWiki:Autorouter.js&action=raw&ctype=text/javascript&dontcountme=s"></script>'); | ||
+ | *7 | ||
+ | /* END import code used by [[CompleteMap]] */ | ||
+ | |||
+ | /*** END: [[CompleteMap]] == ***/ | ||
+ | |||
+ | // ============================================================ | ||
+ | |||
+ | /*** Charakterfähigkeitsrechner ***/ | ||
+ | // SEE ALSO [[:Kategorie:Charakterfähigkeiten]] | ||
+ | mw.loader.load('/index.php?title=MediaWiki:CFoptions.js&action=raw&ctype=text/javascript'); | ||
+ | // document.write('<script type="text/javascript" src="/index.php?title=MediaWiki:CFoptions.js&action=raw&ctype=text/javascript&dontcountme=s"></script>'); | ||
+ | |||
+ | /*** END: Charakterfähigkeitsrechner ***/ | ||
+ | |||
+ | //============================================================= | ||
+ | /*** Snow ***/ | ||
+ | |||
+ | // Ist in [[MediaWiki:Snow.js]] ausgelagert | ||
+ | if (mw.config.get('wgTitle') === 'Main Page') { | ||
+ | mw.loader.load('/index.php?title=MediaWiki:Snow.js&action=raw&ctype=text/javascript'); | ||
+ | } | ||
+ | |||
+ | /*** END: Snow ***/ | ||
+ | |||
+ | //============================================================= | ||
+ | |||
+ | /* Favicon Austausch - Entfernen sobald das Favicon durch einen Systemadministrator ausgetauscht wurde */ | ||
+ | var head = document.getElementsByTagName('head')[0]; | ||
+ | var links = document.getElementsByTagName('link'); | ||
+ | for (var i = 0; i < links.length; i++) { | ||
+ | if (links[i].rel == 'shortcut icon') { | ||
+ | head.removeChild(links[i]); | ||
+ | break; | ||
+ | } | ||
+ | } | ||
+ | var icon = document.createElement('link'); | ||
+ | icon.setAttribute('type', 'image/x-icon'); | ||
+ | icon.setAttribute('rel', 'shortcut icon'); | ||
+ | icon.setAttribute('href', 'http://fwwiki.staticdata.de/images/2/26/Favicon.png'); | ||
+ | head.appendChild(icon); | ||
+ | /* ENDE: Favicon Austausch */ |
Latest revision as of 15:11, 12 December 2018
/* Any JavaScript here will be loaded for all users on every page load. */ /* Hinweis: Die Wiki-Überschriften sind JavaScript-technisch auskommentiert == Dynamic Navigation Bars == */ // set up the words in your language var NavigationBarHide = 'Hide'; var NavigationBarShow = 'Show'; // set up max count of Navigation Bars on page, // if there are more, all will be hidden // NavigationBarShowDefault = 0; // all bars will be hidden // NavigationBarShowDefault = 1; // on pages with more than 1 bar all bars will be hidden var NavigationBarShowDefault = 1; // shows and hides content and picture (if available) of navigation bars // Parameters: // indexNavigationBar: the index of navigation bar to be toggled function toggleNavigationBar(indexNavigationBar) { var NavToggle = document.getElementById("NavToggle" + indexNavigationBar); var NavFrame = document.getElementById("NavFrame" + indexNavigationBar); if (!NavFrame || !NavToggle) { return false; } // if shown now if (NavToggle.firstChild.data == NavigationBarHide) { for ( var NavChild = NavFrame.firstChild; NavChild != null; NavChild = NavChild.nextSibling ) { if (NavChild.className == 'NavPic') { NavChild.style.display = 'none'; } if (NavChild.className == 'NavContent') { NavChild.style.display = 'none'; } if (NavChild.className == 'NavToggle') { NavChild.firstChild.data = NavigationBarShow; } } // if hidden now } else if (NavToggle.firstChild.data == NavigationBarShow) { for ( var NavChild = NavFrame.firstChild; NavChild != null; NavChild = NavChild.nextSibling ) { if (NavChild.className == 'NavPic') { NavChild.style.display = 'block'; } if (NavChild.className == 'NavContent') { NavChild.style.display = 'block'; } if (NavChild.className == 'NavToggle') { NavChild.firstChild.data = NavigationBarHide; } } } } // adds show/hide-button to navigation bars function createNavigationBarToggleButton() { var indexNavigationBar = 0; // iterate over all < div >-elements for( var i=0; NavFrame = document.getElementsByTagName("div")[i]; i++ ) { // if found a navigation bar if (NavFrame.className == "NavFrame") { indexNavigationBar++; var NavToggle = document.createElement("a"); NavToggle.className = 'NavToggle'; NavToggle.setAttribute('id', 'NavToggle' + indexNavigationBar); NavToggle.setAttribute('href', 'javascript:toggleNavigationBar(' + indexNavigationBar + ');'); var NavToggleText = document.createTextNode(NavigationBarHide); NavToggle.appendChild(NavToggleText); // add NavToggle-Button as first div-element // in < div class="NavFrame" > NavFrame.insertBefore( NavToggle, NavFrame.firstChild ); NavFrame.setAttribute('id', 'NavFrame' + indexNavigationBar); } } // if more Navigation Bars found than Default: hide all if (NavigationBarShowDefault < indexNavigationBar) { for( var i=1; i<=indexNavigationBar; i++ ) { toggleNavigationBar(i); } } } jQuery( document ).ready( function( $ ) { createNavigationBarToggleButton(); } ); // addOnloadHook(createNavigationBarToggleButton); /* END Dynamic Navigation Bars // ============================================================ == Vertical Tabbing == */ var shownTab = Array(); var disabledLink = Array(); // switches between tabs function showVTab(area, tab) { var div = document.getElementById('VTabContent_' + String(area) + '_' + String(tab)); var a = document.getElementById('VTabLink_' + String(area) + '_' + String(tab)); if (!div || !a) return; div.style.height = 'auto'; if (shownTab[area]) shownTab[area].style.height = '0'; shownTab[area] = div; var strong = document.getElementById('VTabStrong_' + String(area)); if (!strong) { strong = document.createElement('strong'); strong.id = 'VTabStrong_' + String(area); strong.className = 'selflink'; } if (disabledLink[area]) { disabledLink[area].appendChild(strong.firstChild); strong.parentNode.appendChild(disabledLink[area]); } strong.appendChild(a.firstChild); a.parentNode.appendChild(strong); a.parentNode.removeChild(a); disabledLink[area] = a; } // initiates vertically tabbed areas function initVTabs() { var indexVTabs = 0; // iterate over all tables for (var i = 0; table = document.getElementsByTagName('table')[i]; i++) { if (table.className != 'VTabs') continue; table.id = 'VTabs_' + String(++indexVTabs); shownTab[indexVTabs] = disabledLink[indexVTabs] = 0; var numTabs = 0; var contents; for (var j = 0; tr = table.getElementsByTagName('tr')[j]; j++) { var caption = tr.getElementsByTagName('td')[0]; caption.className = 'VTabCaption'; caption.id = 'VTabCaption_' + String(indexVTabs) + '_' + String(++numTabs); var a = document.createElement('a'); a.id = 'VTabLink_' + String(indexVTabs) + '_' + String(++numTabs); a.href = 'javascript:showVTab(' + String(indexVTabs) + ', ' + String(numTabs) + ');'; a.appendChild(caption.firstChild); caption.appendChild(a); var content = tr.getElementsByTagName('td')[1]; var div = document.createElement('div'); div.className = 'VTabContent'; div.id = 'VTabContent_' + String(indexVTabs) + '_' + String(numTabs); while (content.childNodes.length) { div.appendChild(content.childNodes[0]); } if (contents) { tr.removeChild(content); } else { contents = content } contents.rowSpan = numTabs; contents.appendChild(div); } } } jQuery( document ).ready( function( $ ) { initVTabs(); } ); // addOnloadHook(initVTabs); /* END Vertical Tabbing // ============================================================ == Kampfrechner == */ var global_lp_a, global_a_a, global_v_a, global_lp_v, global_a_v, global_v_v; var global_fightresult_1, global_fightresult_2, global_fightresult_3; function calc_fight() { dif_a = global_a_a.value - global_v_v.value; dif_v = global_a_v.value - global_v_a.value; if (dif_a < 1) dif_a = 1; if (dif_v < 1) dif_v = 1; fac_a = global_lp_v.value / dif_a; fac_v = global_lp_a.value / dif_v; if (fac_a > fac_v) { if ((global_a_a.value - global_v_v.value) > 0) lp_v = global_a_a.value - global_v_v.value; else lp_v = 1; end_v_lp = Math.floor(global_lp_v.value - fac_v * lp_v); global_fightresult_1.nodeValue = 'Verteidiger gewinnt mit ' + end_v_lp + ' LP' if (((global_lp_a.value / dif_v) < 1) && ((global_lp_a.value / dif_v) < (global_lp_v.value / dif_a))) { global_fightresult_2.nodeValue = 'Der Angreifer stirbt schon nach einem Schlag'; global_fightresult_3.nodeValue = ' ' } else { global_fightresult_2.nodeValue = 'Der Angreifer benötigt ' + Math.ceil(global_lp_v.value / dif_a) + ' Schläge für Sieg'; global_fightresult_3.nodeValue = 'Der Angreifer verliert ' + String(dif_v) + ' LP pro Schlag'; } } else { if ((global_a_v.value - global_v_a.value) > 0) lp_a = global_a_v.value - global_v_a.value; else lp_a = 1; end_a_lp = Math.floor(global_lp_a.value - fac_a * lp_a); global_fightresult_1.nodeValue = 'Angreifer gewinnt mit ' + end_a_lp + ' LP' global_fightresult_2.nodeValue = 'Minimale LP für Sieg: ' + String(global_lp_a.value - end_a_lp); global_fightresult_3.nodeValue = ' ' } return false; } function init_fightcalc() { fc = document.getElementById('Kampfrechner'); if (fc) { table = document.createElement('TABLE'); tr = document.createElement('TR'); td = document.createElement('TD'); tr.appendChild(td); td = document.createElement('TH'); td.appendChild(document.createTextNode('Angreifer')); tr.appendChild(td); td = document.createElement('TH'); td.appendChild(document.createTextNode('Verteidiger')); tr.appendChild(td); table.appendChild(tr); // LP-Werte tr = document.createElement('TR'); td = document.createElement('TD'); td.appendChild(document.createTextNode('LP')); tr.appendChild(td); td = document.createElement('TD'); global_lp_a = document.createElement('INPUT'); global_lp_a.setAttribute('type', 'text'); td.appendChild(global_lp_a); tr.appendChild(td); td = document.createElement('TD'); global_lp_v = document.createElement('INPUT'); global_lp_v.setAttribute('type', 'text'); td.appendChild(global_lp_v); tr.appendChild(td); table.appendChild(tr); // A-Werte tr = document.createElement('TR'); td = document.createElement('TD'); td.appendChild(document.createTextNode('A')); tr.appendChild(td); td = document.createElement('TD'); global_a_a = document.createElement('INPUT'); global_a_a.setAttribute('type', 'text'); td.appendChild(global_a_a); tr.appendChild(td); td = document.createElement('TD'); global_a_v = document.createElement('INPUT'); global_a_v.setAttribute('type', 'text'); td.appendChild(global_a_v); tr.appendChild(td); table.appendChild(tr); // V-Werte tr = document.createElement('TR'); td = document.createElement('TD'); td.appendChild(document.createTextNode('V')); tr.appendChild(td); td = document.createElement('TD'); global_v_a = document.createElement('INPUT'); global_v_a.setAttribute('type', 'text'); td.appendChild(global_v_a); tr.appendChild(td); td = document.createElement('TD'); global_v_v = document.createElement('INPUT'); global_v_v.setAttribute('type', 'text'); td.appendChild(global_v_v); tr.appendChild(td); table.appendChild(tr); tr = document.createElement('TR'); td = document.createElement('TD'); td.setAttribute('colspan', '3') td.style.textAlign = 'center'; inp = document.createElement('INPUT'); inp.setAttribute('type', 'submit'); inp.setAttribute('name', 'calc'); inp.setAttribute('value', 'Berechnen'); td.appendChild(inp); tr.appendChild(td); table.appendChild(tr); tr = document.createElement('TR'); td = document.createElement('TD'); td.setAttribute('colspan', '3') td.style.textAlign = 'center'; global_fightresult_1 = document.createTextNode('Werte eingeben und auf Berechnen klicken'); global_fightresult_2 = document.createTextNode(' '); global_fightresult_3 = document.createTextNode(' '); td.appendChild(global_fightresult_1); td.appendChild(document.createElement('BR')); td.appendChild(global_fightresult_2); td.appendChild(document.createElement('BR')); td.appendChild(global_fightresult_3); tr.appendChild(td); table.appendChild(tr); form = document.createElement('FORM'); form.setAttribute('action', '#') form.setAttribute('method', 'POST') form.setAttribute('name', 'fightcalc') form.onsubmit = calc_fight; form.appendChild(table); fc.appendChild(form); } } jQuery( document ).ready( function( $ ) { init_fightcalc(); } ); // addOnloadHook(init_fightcalc); /* END Kampfrechner */ // ============================================================ /*** Questpassagen für Karten ***/ function showQP(bool) { if (bool) { document.cookie="tiramon_deShowQP=1"; } else { document.cookie="tiramon_deShowQP=0"; } location.reload(); } function work_on_questpassages() { // add show/hide links to all maps findmenu = document.getElementById("QPinout"); if (findmenu) { showlink=document.createElement("a"); showlink.setAttribute("href","Javascript:showQP(true)"); showlink.appendChild(document.createTextNode('anzeigen')); hidelink=document.createElement("a"); hidelink.setAttribute("href","Javascript:showQP(false)"); hidelink.appendChild(document.createTextNode('verbergen')); findmenu.appendChild(showlink); findmenu.appendChild(document.createTextNode('/')); findmenu.appendChild(hidelink); } // enable display of QPs if wished for(var i=0; foundspan = document.getElementsByTagName("span")[i]; i++) { var tiramon_deShowQP=document.cookie; if (tiramon_deShowQP.indexOf("tiramon_deShowQP=")=="-1") return(-1); if (tiramon_deShowQP.charAt(tiramon_deShowQP.indexOf("tiramon_deShowQP=")+17)!="1") return(-1); if (foundspan.className == "QP") { foundspan.setAttribute("style", "display:inline;"); } } } jQuery( document ).ready( function( $ ) { work_on_questpassages(); } ); // addOnloadHook(work_on_questpassages); /*** END: QuestPassages ***/ // ============================================================ /*** [[CompleteMap]] ***/ // BEGIN import code used by [[CompleteMap]] // SEE ALSO [[MediaWiki:CompleteMap.js]] mw.loader.load('/index.php?title=MediaWiki:CompleteMap.js&action=raw&ctype=text/javascript'); mw.loader.load('/index.php?title=MediaWiki:Autorouter.js&action=raw&ctype=text/javascript'); /* document.write('<script type="text/javascript" src="/index.php?title=MediaWiki:CompleteMap.js&action=raw&ctype=text/javascript&dontcountme=s"></script>'); document.write('<script type="text/javascript" src="/index.php?title=MediaWiki:Autorouter.js&action=raw&ctype=text/javascript&dontcountme=s"></script>'); *7 /* END import code used by [[CompleteMap]] */ /*** END: [[CompleteMap]] == ***/ // ============================================================ /*** Charakterfähigkeitsrechner ***/ // SEE ALSO [[:Kategorie:Charakterfähigkeiten]] mw.loader.load('/index.php?title=MediaWiki:CFoptions.js&action=raw&ctype=text/javascript'); // document.write('<script type="text/javascript" src="/index.php?title=MediaWiki:CFoptions.js&action=raw&ctype=text/javascript&dontcountme=s"></script>'); /*** END: Charakterfähigkeitsrechner ***/ //============================================================= /*** Snow ***/ // Ist in [[MediaWiki:Snow.js]] ausgelagert if (mw.config.get('wgTitle') === 'Main Page') { mw.loader.load('/index.php?title=MediaWiki:Snow.js&action=raw&ctype=text/javascript'); } /*** END: Snow ***/ //============================================================= /* Favicon Austausch - Entfernen sobald das Favicon durch einen Systemadministrator ausgetauscht wurde */ var head = document.getElementsByTagName('head')[0]; var links = document.getElementsByTagName('link'); for (var i = 0; i < links.length; i++) { if (links[i].rel == 'shortcut icon') { head.removeChild(links[i]); break; } } var icon = document.createElement('link'); icon.setAttribute('type', 'image/x-icon'); icon.setAttribute('rel', 'shortcut icon'); icon.setAttribute('href', 'http://fwwiki.staticdata.de/images/2/26/Favicon.png'); head.appendChild(icon); /* ENDE: Favicon Austausch */