Benutzer:DerHexer/countarticlesincategory.js
Erscheinungsbild
Hinweis: Leere nach dem Veröffentlichen den Browser-Cache, um die Änderungen sehen zu können.
- Firefox/Safari: Umschalttaste drücken und gleichzeitig Aktualisieren anklicken oder entweder Strg+F5 oder Strg+R (⌘+R auf dem Mac) drücken
- Google Chrome: Umschalttaste+Strg+R (⌘+Umschalttaste+R auf dem Mac) drücken
- Edge: Strg+F5 drücken oder Strg drücken und gleichzeitig Aktualisieren anklicken
/* if(wgPageName=='Benutzer:DerHexer/Countarticlesincategory' && wgAction=='edit') {
// als erstes wird der Kategoriebaum geschrieben
var searchcategory = prompt('Enter category:','Kategorie:Antike');
var allcategories = new Array(searchcategory);
var allarticles = new Array("Augustus");
var integer = 0;
var newline = "\n";
var XXX = '';
function addcategoriestoarray (getcategories){ // schreibe gefundene Kategorien in Array; Hilfsfunktion
for(i=0;i<getcategories.length;i++){
if (getcategories[i].getAttribute('ns') == '14') {
for(j=0;j<allcategories.length;j++){
if(getcategories[i].getAttribute('title') == allcategories[j]) break;
if(j==allcategories.length-1) allcategories[allcategories.length] = getcategories[i].getAttribute('title');
}
}
}
}
function addarticlestoarray (getarticles){ // schreibe gefundene Kategorien in Array; Hilfsfunktion
for(i=0;i<getarticles.length;i++){
for(j=0;j<allarticles.length;j++){
if(getarticles[i].getAttribute('title') == allarticles[j]) break;
if(j==allarticles.length-1) allarticles[allarticles.length] = getarticles[i].getAttribute('title');
}
}
}
function getarticlesfunction(){
if (allcategories[integer]) {
var req2;
if (req2 = sajax_init_object()) {
var text = '/w/api.php?action=query&format=xml&list=categorymembers&cmtitle='+allcategories[integer].replace(/\s/g, "_").replace(/\&/g, "%26").replace(/\"/g, "%22").replace(/\+/g, "%2B").replace(/\#/g, "%23")+'&cmnamespace=0&cmprop=title&cmlimit=5000';
req2.open("GET", text, false);
req2.send("");
if(req2.responseXML.getElementsByTagName("query-continue")[0]) { alert('Warning:'+allcategories[integer]); }
addarticlestoarray(req2.responseXML.getElementsByTagName("cm"));
integer++;
getarticlesfunction();
}
} else {
alert(allarticles.length);
}
}
function createcategorytree() {
var req;
if (req = sajax_init_object()) {
if (allcategories[integer]) {
var text = '/w/api.php?action=query&format=xml&list=categorymembers&cmtitle='+allcategories[integer]+'&cmprop=title&cmlimit=5000';
req.open("GET", text, false);
req.send("");
var getcategories = req.responseXML.getElementsByTagName("cm");
if(getcategories) {
addcategoriestoarray(getcategories);
}
integer++;
createcategorytree();
} else {
integer = 0;
alert(allcategories.length+' Kategorien');
getarticlesfunction();
}
}
}
$(createcategorytree);
}
*/