Benutzer:J*/lib/nulledit.js

aus Kamelopedia, der wüsten Enzyklopädie
Zur Navigation springen Zur Suche springen

Hinweis: Leere nach dem Speichern 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
  • Internet Explorer: Strg+F5 drücken oder Strg drücken und gleichzeitig Aktualisieren anklicken
  • Opera: Gehe zu Menü → Einstellungen (Opera → Einstellungen auf dem Mac) und dann auf Datenschutz & Sicherheit → Browserdaten löschen → Gespeicherte Bilder und Dateien.
/*
 * libnulledit
 *
 * do nulledits to a page or members of a category
 */


function pageNulledit(page)
{
    getNulleditTokens([page]);
}

function multipageNulledit(pages)
{
    getNulleditTokens(pages);
}

function categoryNulledit(category,cont)
{
	if(!cont)
		cont = "";

	jQuery.ajax({
		url: "/api.php",
		data: {
			action: "query",
			list: "categorymembers",
			cmtitle: category,
			format: "xml",
			cmcontinue: cont
		},
		context: {category: category},
		dataType: "xml",
		success: parseCategoryNulleditMembers
	});
}

function parseCategoryNulleditMembers(xml)
{
	var $xml = jQuery(xml);
	var category = this.category;

	var $members = $xml.find("api query categorymembers cm");

	$members.each( function () {
		$this = jQuery(this);
		title = $this.attr("title");
		console.log(title);
	});

	var cont = $xml.find("query-continue categorymembers").attr("cmcontinue");
	if (cont)
		window.setTimeout(function () {categoryNulledit(category,cont)}, 2000);
}

function getNulleditTokens(pages)
{
	var titlearray = [];
	for(var i=0; i<pages.length; i++)
	{
		titlearray.push(encodeURIComponent(pages[i]));
	}
	var titlestring = titlearray.join("|");

	jQuery.ajax({
		url: "/api.php",
		data: {
			action: "query",
			prop: "info",
			intoken: "edit",
			titles: titlestring,
			format: "xml"
		},
		dataType: "xml",
		success: parseNulleditTokens
});

}

function parseNulleditTokens(xml)
{
	var $xml = jQuery(xml);
	$xml.find("api query pages page").each( function () {
		var $this = jQuery(this);
		doNulledit($this.attr("title"),$this.attr("edittoken"));
	})
}

function doNulledit(page,token)
{
	console.log([page,token]);

	jQuery.ajax({
		url: "/api.php",
		type: "POST",
		data: {
			action: "edit",
			appendtext: "",
			token: token,
			title: page,
			nocreate: "1",
			format: "xml"
		},
		dataType: "xml",
	});
}

//categoryNulledit("Kategorie:Commons: Kamel");
pageNulledit("Hauptseite")