// Make sure the utilities module is loaded (will only load if not already)
mw.loader.using( ['mediawiki.util', 'mediawiki.api'], function () {
var API = new mw.Api( {
ajax: {
headers: { 'Api-User-Agent': 'Qwikify/1.2 ( https://en.wikipedia.org/wiki/User:Primefac/Qwikify.js )' }
}
} );
//see below "Portlets" subsection
var link = mw.util.addPortletLink( 'p-cactions', '#', 'Wikify', 'ca-wikify', 'Mark for wikification');
$( link ).click( function doQwikify() {
API.postWithToken( "edit", {
action: "edit",
title: mw.config.get( "wgPageName" ),
prependtext: "{" + "{wikify}}\n\n",
summary: "Mark for wikification"
} ).done( function() {
// Code to execute if saved successfully
// Maybe reload the page:
location.reload();
} ).fail( function( code, jqxhr ) {
// Edit failed. The reason will be in the code and/or jqxhr parameters...
if ( code === "http" && jqxhr.textStatus === "error" ) {
console.log( "HTTP error " + jqxhr.xhr.status );
} else if ( code === "http" ) {
console.log( "HTTP error: " + jqxhr.textStatus );
} else if ( code === "ok-but-empty" ) {
console.log( "Error: Got an empty response from the server" );
} else {
console.log( "API error: " + code );
}
} );
} );
} );