User:1234qwer1234qwer4/warnings.js

From Meta, a Wikimedia project coordination wiki

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.
//Warning: Does not work with syntax highlighting
//Fork of [[ru:Участник:OneLittleMouse/warnings.js]]
//Автор исходного скрипта - DerLetzteRegenbogen
( function () {
function warnbuttons() {
	if (!$('#warnbuttonselect').length) {
		$('<div id="warnbuttonselect">').append([
			$('<input type="button" value="Vandalism" />').click(qwarnVandalism)[0],
			$('<input type="button" value="Spam" />').click(qwarnSpam)[0],
			$('<input type="button" value="Offtopic" />').click(qwarnOfftopic)[0],
			$('<input type="button" value="Offtopic-edits" />').click(qwarnOfftopicEdits)[0],
			$('<input type="button" value="Test" />').click(qwarnTest)[0],
			$('<input type="button" value="Test2" />').click(qwarnTest2)[0],
			$('<input type="button" value="Test3" />').click(qwarnTest3)[0],
			$('<input type="button" value="Test4" />').click(qwarnTest4)[0],
			$('<input type="button" value="Test4im" />').click(qwarnTest4im)[0],
			$('<input type="button" value="Blocked" />').click(qwarnBlocked)[0],
			$('<input type="button" value="Welcome" />').click(qwarnWelcome)[0]
		]).prependTo($('#editform'));
	} else {
		$('#warnbuttonselect').toggle();
	}
}
 
function hideInitialWarnbuttonselect() {
	document.getElementById('warnbuttonselect').style.display = 'none';
}
 
function postWarn(sumString, warnString) {
	var text = document.getElementById('wpTextbox1');
	text.value += warnString+'\n';
	var minorcb = document.getElementById('wpMinoredit');
	if (minorcb && minorcb.checked) minorcb.checked = false;
        var section = document.getElementsByName('wpSection')[0];
	var sum = document.getElementById('wpSummary');
	if (sum && (section.value != "new")) sum.value = sumString + ' (using [[User:1234qwer1234qwer4/warnings.js|warnings.js]])';
}
 
function qwarnVandalism() {
	postWarn('Warning: Blatant vandalism', '\n== Vandalism ==\n\{\{subst:bv\}\}');
}
 
function qwarnSpam() {
	postWarn('Warning: Spamming or promotional content', '\n== Spamming or promotion ==\n\{\{subst:spam\}\}');
}

function qwarnOfftopic() {
	postWarn('Warning: Your page was outside of Meta\'s [[Meta:Inclusion policy|scope]]', '\n== Off-topic contributions ==\n\{\{subst:offtopic\}\}');
}

function qwarnOfftopicEdits() {
	postWarn('Warning: Your contribution was outside of Meta\'s [[Meta:Inclusion policy|scope]]', '\n== Off-topic edits ==\n\{\{subst:offtopic-edits\}\}');
}

function qwarnTest() {
	postWarn('Warning: Please use the [[Meta:Sandbox|Sandbox]] for testing', '\n== Editing tests ==\n\{\{subst:test1\}\}');
}

function qwarnTest2() {
	postWarn('Warning: Please use the [[Meta:Sandbox|Sandbox]] for testing (level 2)', '\{\{subst:test2\}\}');
}

function qwarnTest3() {
	postWarn('Warning: Please use the [[Meta:Sandbox|Sandbox]] for testing (level 3)', '\{\{subst:test3\}\}');
}

function qwarnTest4() {
	postWarn('Last warning: Please use the [[Meta:Sandbox|Sandbox]] for testing', '\{\{subst:test4\}\}');
}

function qwarnTest4im() {
	postWarn('Only warning: Please use the [[Meta:Sandbox|Sandbox]] for testing', '\n== Only warning ==\n\{\{subst:test4im\}\}');
}

function qwarnBlocked() {
	postWarn('You have been blocked from editing Meta', '\n== Blocked ==\n\{\{subst:blocked|1=<!--length-->|2=<!--reason-->|sig=\~\~\~\~\}\}');
}

function qwarnWelcome() {
	postWarn('Welcome!', '\n\{\{subst:welcome\}\} \~\~\~\~');
}

var customizeToolbar = function () {
/*start*/
$( '#wpTextbox1' ).wikiEditor( 'addToToolbar', {
	'section': 'main',
        'group': 'insert',
	'tools': {
		'warnbuttons': {
			label: 'Warnings', // or use labelMsg for a localized label, see above
			type: 'button',
			icon: '//upload.wikimedia.org/wikipedia/commons/6/6d/Button_exclamation_1.png',
			filters: [ 'body.ns-3' ],
			action: {
				type: 'callback',
				execute: function(context){
					warnbuttons();
				}
			}
		}
	}
} );

/*end*/
};


if ( $.inArray( mw.config.get( 'wgAction' ), [ 'edit', 'submit' ] ) !== -1 ) {
	mw.loader.using( 'user.options' ).then( function () {
			if ( mw.user.options.get( 'usebetatoolbar' ) == 1 ) {
			$.when(
				mw.loader.using( 'ext.wikiEditor' ), $.ready
			).then( customizeToolbar );
		}
	} );
}
}() );