Uporabnik:GeographieMan/MoveToDraft.js

Opomba: Da bodo spremembe prišle do veljave, po objavi izpraznite predpomnilnik svojega brskalnika.

  • Firefox/Safari: Držite Shift in kliknite Znova naloži (Reload) ali pritisnite Ctrl + Shift + R ali Ctrl + R (⌘ + R v sistemu Mac)
  • Internet Explorer/Edge: Držite Ctrl + F5 in kliknite Osveži (Refresh) ali pritisnite Ctrl + F5
  • Google Chrome: Pritisnite Ctrl + Shift + R (⌘ + Shift + R v sistemu Mac)
  • Opera: Pritisnite Ctrl + F5.
/******************************************************************************
 MoveToDraft
-------------
Version 2.5.8
-------------
A script to move unsourced articles to draft space, including cleanup and author notification.
- Moves page to draftspace
- Checks if any files used are non-free
- Checks if any redirects pointed to the page
- Comments out non-free files, turn categories into links, add afc draft template, add redirects
- Adds notification message on author talk page
- Updates talk page banners
- Logs draftification in user subpage

 derived from https://en.wikipedia.org/wiki/User:Evad37/MoveToDraft.js
******************************************************************************/
/* jshint laxbreak: true, undef: true, maxerr:999 */
/* globals console, window, document, $, mw */
// <nowiki>

// Script info
var config = {
	script: {
		// For window header
		location: "Uporabnik:GeographieMan/MoveToDraft",
		version: "2.5.8"
	}
},
	API;

$.when(
	// Resource loader modules
	mw.loader.using( [ 'mediawiki.util', 'mediawiki.api', 'mediawiki.Title' ] ),
	// Page ready
	$.ready
).then( function() {
/* ========== Config ======================================================= */
	// MediaWiki configuration values
config.mw = mw.config.get( [
		"wgArticleId",
		"wgCurRevisionId",
		"wgPageName",
		"wgUserGroups",
		"wgUserName",
		"wgMonthNames",
		"wgNamespaceNumber",
		"wgTitle",
		"wgArticlePath",
		"wgIsMainPage"
	]
);

/* ========== API ========================================================== */
API = new mw.Api( {
	ajax: {
		headers: { 
			"Api-User-Agent": "MoveToDraft/" + config.script.version + 
				" ( https://sl.wikipedia.org/wiki/Uporabnik:GeographieMan/MoveToDraft )"
		}
	}
} );

var dynamicallyLoadScript = function( url ) {
	let loadScript = document.createElement( 'script' );
	loadScript.src = url + '?action=raw&ctype=text/javascript';
	document.head.appendChild( loadScript );
};

/* ========== Setup ============================================================================= */
// Access draftifications using Special:Draftify_log/USER_NAME
var isDraftifyLogPage = config.mw.wgPageName.indexOf( "Posebno:Draftify_log" ) === 0;
var isUserPage = config.mw.wgNamespaceNumber === 2 || config.mw.wgNamespaceNumber === 3;
if ( isDraftifyLogPage ) {
	dynamicallyLoadScript(
		config.mw.wgArticlePath.replace( '$1', 'Uporabnik:GeographieMan/MoveToDraft/draftifyLog.js' )
	);
	return;
} else if ( isUserPage ) {
	var user = config.mw.wgTitle.split( '/' )[ 0 ];
	var url = mw.util.getUrl( "Posebno:Draftify_log/" + user );
	mw.util.addPortletLink( ( window.m2d_portlet || 'p-cactions' ), url, 'Draftify log', 'ca-m2dlog', null, null, "#ca-move" );
	return;
}

// Only operate in article namespace
if( config.mw.wgNamespaceNumber !== 0 ) {
	return;
}

// Don't draftify MainPage
if( config.mw.wgIsMainPage === true ) {
	return;
}

// Only operate for existing pages
if ( config.mw.wgCurRevisionId === 0 ) {
	return;
}

dynamicallyLoadScript(
	config.mw.wgArticlePath.replace( '$1', 'Uporabnik:GeographieMan/MoveToDraft/core.js' )
);

});
// </nowiki>