Jump to content

User:DannyS712 test/AD clerk bot.js

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by DannyS712 test (talk | contribs) at 19:56, 27 March 2019 (don't edit). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.
Note: After saving, you have to bypass your browser's cache to see the changes. Google Chrome, Firefox, Microsoft Edge and Safari: Hold down the ⇧ Shift key and click the Reload toolbar button. For details and instructions about other browsers, see Wikipedia:Bypass your cache.
//<nowiki>
$(function (){
var AD_config = {
	name: '[[User:DannyS712/Abandoned drafts|Abandoned drafts.js]]',
	version: 1.0,
	debug: true
};
var AD_summary = 'Remove deleted and redirected pages with ' + AD_config.name + ' (version ' + AD_config.version + ')';
var scriptUrl = mw.config.get( 'wgScriptPath' ) + '/api.php';

mw.loader.using( 'mediawiki.util', function () {
	importScript( 'User:DannyS712 test/page.js' );
    $(document).ready( function () { 
    	mw.util.addPortletLink ( 'p-cactions', 'javascript:void(0)', 'Abandoned drafts', 'ca-AD-clerk', 'TOOLTIP');
    	$('#ca-AD-clerk').on('click', function() {
        	AD();
    	} );
    } );
} );
function AD(){
	// Gather all links with class "new" or "mw-redirect"
	var links = [];
	var a = document.getElementsByTagName('a');
	for (var i = 0; i < a.length; i++) {
		if ((a[i].getAttribute('class') == "new") || (a[i].getAttribute('class') == "mw-redirect")) {
			links.push( a[i].getAttribute('title') );
		}
	}
	console.log( links );
	
	var page_name = mw.config.get( 'wgPageName' );
	var page_content = get_page( page_name );
	console.log( page_content );
	
	var lines = page_content.split('\n');
	var new_lines = [];
	for (var jjj = 0; jjj < lines.length; jjj++){
		if (should_keep(links, lines[jjj])) new_lines.push(lines[jjj]);
	}
	console.log( new_lines );
	var new_content = new_lines.join('\n');
	console.log( new_content );
	
	set_new( page_name, new_content );
}
function should_keep( links, line ){
	for (var iii = 0; iii < links.length; iii++){
		if (line.indexOf(links[iii]) > -1) return false;
	}
	return true;
}
function set_new ( page, new_content ){
	if( AD_config.debug) console.log( page, new_content );
    var to_send = {
        action: 'edit',
        title: page,
		//pageid: mw.config.get( 'wgArticleId' ),
        text: new_content,
        notminor: true,
        bot: false,
        summary: AD_summary,
        token: mw.user.tokens.get( 'editToken' )
    };
    console.log( to_send );
    /**
    $.when(
        $.post( scriptUrl, to_send, function( response ){ } )
    ).done( function() {
        //alert('Short description added');
        console.log( response );
        //location.reload();
    } );**/
}
});
//</nowiki>