MediaWiki:Gadget-SetGender.js

From Tsadra Foundation Advanced Contemplative Scholarships
Revision as of 05:22, 8 April 2024 by Jeremi (talk | contribs) ((by SublimeText.Mediawiker))
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

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)
  • Edge: Hold Ctrl while clicking Refresh, or press Ctrl-F5.
const element = document.querySelector("#SetGender");
if (element) {
    $( function () {
    	var setFemaleBtn = new OO.ui.ButtonWidget( {
				framed: false,
				flags: [
					'progressive'
				],
				label: 'female'
			} ),
    		setMaleBtn = new OO.ui.ButtonWidget( {
				framed: false,
				flags: [
					'progressive'
				],
				label: 'male'
			} ),
			setNeitherBtn = new OO.ui.ButtonWidget( {
				framed: false,
				flags: [
					'progressive'
				],
				label: 'nonbinary/other'
			} )

		$( '#SetGender' ).append( "<div class='d-inline-block'>", setFemaleBtn.$element, "</div>", "<div class='d-inline-block'>", setMaleBtn.$element, "</div>", "<div class='d-inline-block'>", setNeitherBtn.$element, "</div>" );

		setFemaleBtn.on( 'click', function UpgradePplData(){
			var editParams = {
					action: 'pfautoedit',
					form: 'Application',
					target: work,
					query: 'Application[gender]=Female',
					summary: 'Female gender added to application',
					bot: true
				},
				api = new mw.Api();
			api.postWithToken( 'csrf', editParams ).done( function UpgradePplData( data ) {
				$( '#SetGender' ).append( '<div class="alert alert-success" role="alert">Gender successfully set to "Female". Refresh page to display.</div>' );
			});
		});

		setMaleBtn.on( 'click', function UpgradePplData(){
			var editParams = {
					action: 'pfautoedit',
					form: 'Application',
					target: work,
					query: 'Application[gender]=Male',
					summary: 'Male gender added to application',
					bot: true
				},
				api = new mw.Api();
			api.postWithToken( 'csrf', editParams ).done( function UpgradePplData( data ) {
				$( '#SetGender' ).append( '<div class="alert alert-success" role="alert">Gender successfully set to "Male". Refresh page to display.</div>' );
			});
		});

		setNeitherBtn.on( 'click', function UpgradePplData(){
			var editParams = {
					action: 'pfautoedit',
					form: 'Application',
					target: work,
					query: 'Application[gender]=Nonbinary/Other',
					summary: 'Nonbinary/Other gender added to application',
					bot: true
				},
				api = new mw.Api();
			api.postWithToken( 'csrf', editParams ).done( function UpgradePplData( data ) {
				$( '#SetGender' ).append( '<div class="alert alert-success" role="alert">Gender successfully set to "Nonbinary/Other". Refresh page to display.</div>' );
			});
		});

    });
}