MediaWiki:Common.js: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
Zink (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
Zink (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
||
| (12 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
| Zeile 6: | Zeile 6: | ||
// Local Maintainer: [[Commons:User:Dschwen]] | // Local Maintainer: [[Commons:User:Dschwen]] | ||
mw.loader.using(['mediawiki.util'], function () { | |||
//================================================================================ | //================================================================================ | ||
| Zeile 15: | Zeile 12: | ||
// SEE ALSO [[MediaWiki:Onlyifuploading.js]] | // SEE ALSO [[MediaWiki:Onlyifuploading.js]] | ||
function includePage(name) { | |||
mw.loader.load( | |||
} | mw.util.wikiScript() + | ||
'?title=' + encodeURIComponent(name) + | |||
'&action=raw&ctype=text/javascript' | |||
); | |||
} | |||
//================================================================================ | //================================================================================ | ||
| Zeile 24: | Zeile 25: | ||
// SEE ALSO [[MediaWiki:Onlyifediting.js]] | // SEE ALSO [[MediaWiki:Onlyifediting.js]] | ||
if ( | var special = mw.config.get('wgCanonicalSpecialPageName') || ''; | ||
includePage( | var action = mw.config.get('wgAction') || ''; | ||
} | var url = window.location.href; | ||
if (special === 'Upload') { | |||
includePage('MediaWiki:Onlyifuploading.js'); | |||
includePage('MediaWiki:Onlyifediting.js'); | |||
} | |||
if (action === 'edit' || action === 'submit' || url.indexOf('action=edit') > -1 || url.indexOf('action=submit') > -1) { | |||
includePage('MediaWiki:Onlyifediting.js'); | |||
} | |||
//================================================================================ | //================================================================================ | ||
| Zeile 116: | Zeile 126: | ||
//*** Fügt eine Betreffzeile auf leeren Diskussionsseiten ein | //*** Fügt eine Betreffzeile auf leeren Diskussionsseiten ein | ||
var ns = mw.config.get('wgNamespaceNumber'); | |||
if (ns === 0 || ns === 1) { | |||
var tab = document.getElementById('ca-talk'); | |||
if (tab && tab.className === 'new') { | |||
var link = tab.getElementsByTagName('a')[0]; | |||
if (link) link.href += '§ion=new'; | |||
} | |||
} | |||
}); | }); | ||
// Lessing-Wiki: Klappbox | |||
(function () { | |||
document.addEventListener('click', function (e) { | |||
var t = e.target; | |||
if (t && t.nodeType !== 1) t = t.parentElement; | |||
if (!t) return; | |||
var title = t.closest && t.closest('.lessing-klappbox-title'); | |||
if (!title) return; | |||
var table = title.closest && title.closest('table.lessing-klappbox'); | |||
if (!table) return; | |||
e.preventDefault(); | |||
table.classList.toggle('open'); | |||
}, true); | |||
})(); | |||
Aktuelle Version vom 15. Februar 2026, 23:58 Uhr
/* Jedes JavaScript hier wird für alle Benutzer für jede Seite geladen. */
//================================================================================
//*** force the loading of another JavaScript file (Kopie von [[Commons:Common.js]])
// Local Maintainer: [[Commons:User:Dschwen]]
mw.loader.using(['mediawiki.util'], function () {
//================================================================================
//*** import Onlyifuploading-functions
// SEE ALSO [[MediaWiki:Onlyifuploading.js]]
function includePage(name) {
mw.loader.load(
mw.util.wikiScript() +
'?title=' + encodeURIComponent(name) +
'&action=raw&ctype=text/javascript'
);
}
//================================================================================
//*** import Onlyifediting-functions
// SEE ALSO [[MediaWiki:Onlyifediting.js]]
var special = mw.config.get('wgCanonicalSpecialPageName') || '';
var action = mw.config.get('wgAction') || '';
var url = window.location.href;
if (special === 'Upload') {
includePage('MediaWiki:Onlyifuploading.js');
includePage('MediaWiki:Onlyifediting.js');
}
if (action === 'edit' || action === 'submit' || url.indexOf('action=edit') > -1 || url.indexOf('action=submit') > -1) {
includePage('MediaWiki:Onlyifediting.js');
}
//================================================================================
/** Skript für Vorlage:Galerie */
addOnloadHook(function() {
if (document.URL.match(/printable/g)) return;
function toggleImageFunction(group, remindex, shwindex) {
return function() {
document.getElementById("ImageGroupsGr" + group + "Im" + remindex).style["display"] = "none";
document.getElementById("ImageGroupsGr" + group + "Im" + shwindex).style["display"] = "block";
return false;
};
}
var divs = document.getElementsByTagName("div");
var i = 0, j = 0;
var units, search;
var currentimage;
var UnitNode;
for (i = 0; i < divs.length; i++) {
if (divs[i].className !== "ImageGroup") { continue; }
UnitNode = undefined;
search = divs[i].getElementsByTagName("div");
for (j = 0; j < search.length; j++) {
if (search[j].className !== "ImageGroupUnits") { continue; }
UnitNode=search[j];
break;
}
if (UnitNode === undefined) { continue; }
units = [];
for (j = 0 ; j < UnitNode.childNodes.length ; j++ ) {
var temp = UnitNode.childNodes[j];
if (temp.className === "center") { units.push(temp); }
}
var rightlink = undefined;
var commentText = undefined;
for (j = 0; j < units.length; j++) {
currentimage = units[j];
currentimage.id = "ImageGroupsGr" + i + "Im" + j;
var leftlink = document.createElement("a");
if (commentText !== undefined) {
leftlink.setAttribute("title", commentText);
}
var comment;
if (typeof(currentimage.getAttribute("title")) !== "string") {
commentText = (j+1) + "/" + units.length;
comment = document.createElement("tt").appendChild(document.createTextNode("("+ commentText + ")"));
}
else {
commentText = currentimage.getAttribute("title");
comment = document.createElement("span").appendChild(document.createTextNode(commentText));
currentimage.removeAttribute("title");
}
if(rightlink !== undefined) {
rightlink.setAttribute("title", commentText);
}
var imghead = document.createElement("div");
rightlink = document.createElement("a");
if (j != 0) {
leftlink.href = "#";
leftlink.onclick = toggleImageFunction(i, j, j-1);
leftlink.appendChild(document.createTextNode("◀"));
}
if (j != units.length - 1) {
rightlink.href = "#";
rightlink.onclick = toggleImageFunction(i, j, j+1);
rightlink.appendChild(document.createTextNode("▶"));
}
imghead.style["fontSize"] = "110%";
imghead.style["fontweight"] = "bold";
imghead.appendChild(leftlink);
imghead.appendChild(document.createTextNode("\xA0"));
imghead.appendChild(comment);
imghead.appendChild(document.createTextNode("\xA0"));
imghead.appendChild(rightlink);
if (units.length > 1) {
currentimage.insertBefore(imghead,currentimage.childNodes[0]);
}
if (j != 0) {
currentimage.style["display"] = "none";
}
}
}
});
//==============================================================================
//*** Fügt eine Betreffzeile auf leeren Diskussionsseiten ein
var ns = mw.config.get('wgNamespaceNumber');
if (ns === 0 || ns === 1) {
var tab = document.getElementById('ca-talk');
if (tab && tab.className === 'new') {
var link = tab.getElementsByTagName('a')[0];
if (link) link.href += '§ion=new';
}
}
});
// Lessing-Wiki: Klappbox
(function () {
document.addEventListener('click', function (e) {
var t = e.target;
if (t && t.nodeType !== 1) t = t.parentElement;
if (!t) return;
var title = t.closest && t.closest('.lessing-klappbox-title');
if (!title) return;
var table = title.closest && title.closest('table.lessing-klappbox');
if (!table) return;
e.preventDefault();
table.classList.toggle('open');
}, true);
})();