User:Psl631/common.js

From TestWiki

Note: After publishing, you may have to bypass your browser's cache to see the changes.

  • Firefox / Safari: Hold Shift while clicking Reload, or press either Ctrl-F5 or Ctrl-R (⌘-R on a Mac)
  • Google Chrome: Press Ctrl-Shift-R (⌘-Shift-R on a Mac)
  • Internet Explorer / Edge: Hold Ctrl while clicking Refresh, or press Ctrl-F5
  • Opera: Press Ctrl-F5.
mw.loader.load('//en.wikipedia.org/w/index.php?title=User:Animum/easyblock.js&action=raw&ctype=text/javascript');

mw.loader.load('//en.wikipedia.org/w/index.php?title=User:Mr. Stradivarius/gadgets/SpamUserPage.js&ctype=text/javascript');

importScript('User:Psl631/block.js');

importScriptURI('//en.wikipedia.org/w/index.php?title=User:Technical_13/Scripts/OneClickArchiver.js&action=raw&ctype=text/javascript');

/* Make so I can choose custom roll back summary instead of de fault */
/**
 * Ajax Undo links
 *
 * Adds an Ajax undo link next to the normal undo link on page histories
 * and on diff pages
 * Based on [[User:Abelmoschus Esculentus/AjaxRollback.js]]
 */
 //<nowiki>
//<nowiki>
//Modified from [[User:BenjaminWillJS/AjaxRollback.js]]
jQuery(document).ready(function ($) {
	function SetAjaxRollback() {
		$('span.mw-rollback-link').click(function(e) {
			e.preventDefault();
			var $rblink = $(this);
			var href = this.getElementsByTagName('a')[0].href;
			this.innerHTML = '<img src="https://upload.wikimedia.org/wikipedia/commons/d/de/Ajax-loader.gif" style="vertical-align: baseline;" height="15" width="15" border="0" alt="Rollingback..." />';
			$.ajax({
				url: href,
				success: function() {
					$rblink.text(function (i, val) {return val + '[reverted]';});
				},
				error: function() {
					$rblink.text(function (i, val) {return val + '[rollback failed]';});
				}
			});
		});
	}
	mw.loader.using(['mediawiki.util', 'mediawiki.api', 'mediawiki.Title', 'mediawiki.RegExp'], function() {
		SetAjaxRollback();
	});
});
//</nowiki>
$( document ).ready( function() {
	"use strict";
	document.getElementById( "pt-logout" ).addEventListener( "click", function( evt ) {
		if ( !confirm( "Are you really sure to log out?" ) ) {
			evt.preventDefault();
		}
	} );
} );


$( document ).ready( function() {
	"use strict";
	document.getElementById( "wpConfirmB" ).addEventListener( "click", function( evt ) {
		if ( !confirm( "Are you sure to delete this page?" ) ) {
			evt.preventDefault();
		}
	} );
} );

$( document ).ready( function() {
	"use strict";
	document.getElementById( "t-upload" ).addEventListener( "click", function( evt ) {
		if ( !alert( "Please upload files to Commons. Images used here are hosted by Wikimedia Commons." ) ) {
			evt.preventDefault();
		}
	} );
} );


$( document ).ready( function() {
	"use strict";
	document.getElementByClass( "mw-rollback-link" ).addEventListener( "click", function( evt ) {
		if ( !confirm( "Are you sure to rollback that user's edits?" ) ) {
			evt.preventDefault();
		}
	} );
} );
mw.loader.load('//meta.wikimedia.org/w/index.php?title=Mediawiki:Gadget-popups.js&action=raw&ctype=text/javascript');

(mw.loader.getState('ext.gadget.rtrc') ? mw.loader.load('ext.gadget.rtrc') : mw.loader.load('https://www.mediawiki.org/w/load.php?debug=false&modules=ext.gadget.rtrc&lang=' + mw.config.get('wgUserLanguage', 'en')));

/**
 * Add "Purge" content action link.
 *
 * Dependencies: mediawiki.util
 *
 * @source www.mediawiki.org/wiki/Snippets/Purge_action
 * @revision 2014-05-14
 */
$( function () {
    if ( !$( '#ca-purge' ).length && mw.config.get( 'wgIsArticle' ) ) {
        mw.util.addPortletLink(
            'p-cactions',
            mw.util.wikiScript() + '?' + $.param({ title: mw.config.get( 'wgPageName' ), action: 'purge' }),
            mw.config.get( 'skin' ) === 'vector' ? 'Purge' : '*',
            'ca-purge',
            'Purge the server cache of this page',
            '*'
        );
    }
} );
mw.loader.load('//www.mediawiki.org/w/index.php?title=MediaWiki:Gadget-UTCLiveClock.js&action=raw&ctype=text/javascript');
mw.loader.load( '//commons.wikimedia.org/w/index.php?title=MediaWiki:Gadget-HotCat.js&action=raw&ctype=text/javascript' );
mw.loader.load('//meta.miraheze.org/w/index.php?title=User:Void/createWikiNotify.js&action=raw&ctype=text/javascript');
mw.loader.load('//testwiki.wiki/index.php?title=User:MacFan4000/massRevdel.js&action=raw&ctype=text/javascript');

// [[File:Krinkle_RTRC.js]]
mw.loader.load('//meta.wikimedia.org/w/index.php?title=User:Krinkle/RTRC.js&action=raw&ctype=text/javascript');
/*
== Informacja o niewpisaniu opisu zmian ==
; Autorzy (Authors): [[:pl:User:Adziura|Adam Dziura]], [[:pl:User:Nux|Maciej Jaros]]
; Wyłączenie (disable): window.NoSummaryWarningDone = true;
<pre>
*/

window.oSummaryWarning = new Object();
oSummaryWarning.version = 1;

oSummaryWarning.init = function ()
{
	var that = this;

	if (window.NoSummaryWarningDone) {
		return;
	}

	// Ignore user's own pages
	if ( mw.config.get('wgCanonicalNamespace') == "User" ) {
		var m = mw.config.get('wgPageName').match(/^[^:]+:([^\/]+)(?:$|\/)/);
		if (m && m[1] == mw.config.get('wgUserName')) {
			return;
		}
	}

	jQuery('#wpSave').click(function(event) {
		if (!that.validateForm()) {
			event.preventDefault();
		}
	});
}

oSummaryWarning.validateForm = function()
{
	var input_el = document.getElementById('wpSummary');
	if (!input_el) {
		return true;
	}
	var summary = input_el.value;

	// user has been warned
	if (input_el.warningSet) {
		return true;
	}

	// empty or nothing but section comment
	if (summary == '' || summary.substring(summary.indexOf('*/'))=='*/ ')
	{
		// ignore redirects - there is autosummary
		var wpTextbox1 = document.getElementById('wpTextbox1');
		if (wpTextbox1.value.match(/^#(?:REDIRECT|PRZEKIERUJ|TAM|PATRZ)/i)) {
			return true;
		}

		// do not check titles of sections on non-talk pages
		if (mw.config.get('wgNamespaceNumber') % 2 == 0 && input_el.form.wpSection.value == 'new') {
			return true;
		}

		// set warning, do not submit form
		input_el.warningSet = true;
		input_el.className = 'summaryWarning';
		document.getElementById('wpSummaryLabel').className = 'summaryWarning';
		return false;
	}
	return true;
}

jQuery(document).ready(function() { oSummaryWarning.init() });

// Dołączenie skryptu ze strony: [[MediaWiki:LiveRC.js]]
if ( mw.config.get( 'wgPageName' ) === "Wikipedia:Narzędzia/LiveRC/podgląd" ) {
	importScript( 'MediaWiki:LiveRC.js' );
}

//
// Link w menu (obok obserwowanych)
//
mw.loader.using( "mediawiki.util", function() {
	$( function() {
		mw.util.addPortletLink( 'p-personal', mw.util.getUrl( 'user:Psl631/liveRC' ), 'LiveRC', 'pt-liverc', null, '', '#pt-watchlist' );
	} );
} );

	// [[File:Krinkle_WhatLeavesHere.js]]
	mw.loader.load('//meta.wikimedia.org/w/index.php?title=User:Krinkle/Tools/WhatLeavesHere.js&action=raw&ctype=text/javascript');

	// [[File:Krinkle_CVNSimpleOverlay_wiki.js]]
	mw.loader.load('//meta.wikimedia.org/w/index.php?title=User:Krinkle/Scripts/CVNSimpleOverlay_wiki.js&action=raw&ctype=text/javascript');

	mw.loader.using(['mediawiki.util', 'mediawiki.user'], function () {
		$(function () {
			// Clone .mw-contributions-footer to the top aswell
			if (mw.config.get('wgCanonicalSpecialPageName') === 'Contributions' && $('.mw-contributions-footer').length) {
				$('#contentSub').after($('.mw-contributions-footer').eq(0).clone());
			}

			// Extra links
			mw.util.addPortletLink('p-tb', mw.util.getUrl('Special:Prefixindex/' + mw.config.get('wgPageName')), 'Prefixindex', 'tb-prefixindex');
		});
	});

	/* Vector only */
	if (mw.config.get('skin') === 'vector') {
		/**
		 * Add "Purge" content action link.
		 *
		 * Dependencies: mediawiki.util, mediawiki.api
		 *
		 * @source https://www.mediawiki.org/wiki/Snippets/Purge_action
		 * @revision 2016-05-17
		 */
		$.when(mw.loader.using(['mediawiki.util', 'mediawiki.api', 'mediawiki.notify']), $.ready).then(function () {
			if ($('#ca-purge').length) return;
			var node = mw.util.addPortletLink( 'p-cactions',
				mw.util.getUrl(null, { action: 'purge' }),
				'Purge',
				'ca-purge',
				'Purge the server cache of this page'
			);
			$(node).on('click', function (e) {
				new mw.Api().post({ action: 'purge', titles: mw.config.get('wgPageName') }).then(function () {
					location.reload();
				}, function () {
					mw.notify('Purge failed', { type: 'error' });
				});
				e.preventDefault();
			});
		});
	}
}());

/* global mw:true, Flash:true */
/**
 * Mass Rollback Script
 * 
 * Creates a form to mass rollback edits
 * 
 * @author Kangaroopower
 * @credits Ale_jrb (UI)
 *
 * From: [[User:Kangaroopower/Scripts]]
 *
 * To Do : 
 * - From what time
 *
 */
 
;( function ( window, $, mw ) {
	
	var ns = {
		version: "2.34",
		active: false,
	};
	
	ns.init = function () {
		if (mw.config.get('wgCanonicalSpecialPageName') === "Contributions" && $.inArray(mw.config.get('wgUserGroups'), ["rollbacker", "sysop"])) {
			$("#firstHeading").append('<span style="margin-left:20px; font-size:20px">[<span id="mr-link" style="color:#0645ad; cursor:pointer;">Mass Rollback</span>]</span>');
			$("#mr-link").click(function () {
				MRollback.open();
			});
		}
	};
 
	/* GUI Module */
	ns.open = function () {
		if (!MRollback.active) {
			MRollback.active = true;
			var popupHTML = '<div id="mr-ui" style="display:none; z-index: 1000;background-color: white;padding: 4px;border: 1px solid rgb(170, 170, 170);border-radius: 6px;text-align: left;font-size: 11px;color: black;display: block;position: absolute;top: 244px;left: 207px;" class="ui-draggable"><div style="font-weight: bold;border-bottom: 1px solid #aaaaaa;padding: 4px;"><span id="mr-title">Mass Rollback</span><span style="float:right;text-transform:none;"><a id="mr-close" style="cursor:pointer" onclick="MRollback.close();"><img src="http://upload.wikimedia.org/wikipedia/commons/b/b6/Chrome_close_button.png"/></a></span></div><div><div style="display: inline-block;padding: 4px;vertical-align: middle;"><div style="margin: 4px auto;"><div style="display: inline-block;width: 4em;margin-right:10px;">Summary:</div><input id="mr-sum" size="58" type="text"></div><div style="margin: 4px auto;"><div style="display: inline-block;width: 4em;">How many:</div><input id="mr-limit" placeholder="Number of contribs to rollback" size="60" type="text" style="background-color: rgb(255, 255, 255);"></div></div><div style="display: inline-block;padding: 4px;width: 110px;vertical-align: middle;"><input id="mr-some" class="mr-button" type="button" value="Rollback Some"><input id="mr-all" class="mr-button" type="button" value="Rollback All"></div></div></div>';
			$('body').append(popupHTML);
			$('.mr-button').css({'width': '100px', 'font-size': '10px', 'margin-bottom': '4px'});
			$('#mr-ui').show().draggable();
			$("#mr-all, #mr-some").click(function (e) {
				var bool = e.toElement().id === "mr-all";
				MRollback.rollback(bool);
			});
		}
	};
 
	ns.close = function () {
		if (MRollback.active) {
			MRollback.active = false;
			$('#mr-ui').hide();
		}
	};
 
	/* API functions */
	ns.rollback = function (all) {
		var mrlimit = all ? 500 : parseInt($('#mr-limit').val(), 10),
			ucuser = encodeURIComponent($('#contentSub a:first').html()),
			rbcontribs = 0;

		if (isNaN(mrlimit) || /^\d+$/.test($('#mr-limit').val())) return;

		Flash('getUserContribs').load({number: mrlimit, user: ucuser}).wait(function (data) {
			for(var i in data.query.usercontribs) {
				if(data.query.usercontribs[i].top === '') {
					var rbsummary = $('#mr-sum').val() + ' ([[User:Kangaroopower/scripts/Mass_Rollback|MRollback]])',
						latestcontribs = data.query.usercontribs[i].title;
					console.log("Latest Contribs:" + latestcontribs);
						
					Flash('rollback').load({targ: latestcontribs, user: ucuser, summary: rbsummary}).wait(function () {
						rbcontribs++;
						console.log("rbcontribs:" + rbcontribs);
					}).run();
				}
			}	
		}).run();
	};
 
	window.MRollback = ns;
	
	if (typeof mw.loader.moduleRegistry.Flash === "undefined") {
		mw.loader.implement('Flash', ['//en.wikipedia.org/w/index.php?title=User:Kangaroopower/Flash.js&action=raw&ctype=text/javascript'], {}, {});
	}
 
	mw.loader.using(['Flash'], function () {
		MRollback.init();
	});
}( this, jQuery, mediaWiki ) );