MediaWiki:Gadget-DraftReview.js

Da Wikipedia, l'enciclopedia libera.
Vai alla navigazione Vai alla ricerca

Questa pagina definisce alcuni parametri di aspetto e comportamento generale di tutte le pagine. Per personalizzarli vedi Aiuto:Stile utente.


Nota: dopo aver salvato è necessario pulire la cache del proprio browser per vedere i cambiamenti (per le pagine globali è comunque necessario attendere qualche minuto). Per Mozilla / Firefox / Safari: fare clic su Ricarica tenendo premuto il tasto delle maiuscole, oppure premere Ctrl-F5 o Ctrl-R (Command-R su Mac); per Chrome: premere Ctrl-Shift-R (Command-Shift-R su un Mac); per Konqueror: premere il pulsante Ricarica o il tasto F5; per Opera può essere necessario svuotare completamente la cache dal menù Strumenti → Preferenze; per Internet Explorer: mantenere premuto il tasto Ctrl mentre si preme il pulsante Aggiorna o premere Ctrl-F5.

 /**
 * Questo accessorio inserisce un pulsante nel template Bozza quando si visita
 * la pagina di una bozza da revisionare. Il pulsante apre una finestra di
 * dialogo che rende più facile ai revisori indicare l'esito della revisione e
 * avvisare il richiedente.
 * 
 * @author https://it.wikipedia.org/wiki/Utente:ValeJappo and contributors
 */
 /* global mediaWiki, jQuery, OO */

( function ( mw, $ ) {
	'use strict';

	var conf = mw.config.get( [
		'wgCurRevisionId',
		'wgNamespaceNumber',
		'wgRevisionId',
		'wgUserGroups'
	] );

	/**
	 * Controlla se si sta visualizzando una bozza da revisionare
	 * 
	 * @return {boolean}
	 */
	function isDraftWaitingForReview() {
		return conf.wgNamespaceNumber === 118 &&
			conf.wgCurRevisionId === conf.wgRevisionId &&
			$( '.bozza-stato-R.pulsanti-revisione-bozza' ).length;
	}

	$( function () {
		// Controlli prima di avviare
		if ( !isDraftWaitingForReview() || !conf.wgUserGroups.includes( 'autoconfirmed' ) ) {
			return;
		}

		var windowManager;
		var dependencies = [
			'mediawiki.api',
			'mediawiki.ui.button',
			'mediawiki.util',
			'mediawiki.widgets.UserInputWidget',
			'oojs-ui-core',
			'oojs-ui-widgets',
			'oojs-ui-windows',
			'oojs-ui.styles.icons-alerts',
			'oojs-ui.styles.icons-editing-core',
			'oojs-ui.styles.icons-interactions',
			'oojs-ui.styles.icons-moderation',
			'oojs-ui.styles.icons-movement'
		];

		// Carica le dipendenze
		mw.loader.load( dependencies );

		// Crea il pulsante
		var label = $( '<span>' )
			.addClass( 'mw-ui-button mw-ui-progressive' )
			.text( 'Effettua revisione' );
		var link = $( '<a>' )
			.css( 'user-select', 'none' )
			.append( label );
		var button = $( '<div>' )
			.addClass( 'pulsante-effettua-revisione' )
			.append( link );

		button.on( 'click', function () {
			mw.loader.using( dependencies ).done( function () {
				if ( !windowManager ) {
					// Crea il window manager
					windowManager = new OO.ui.WindowManager();
					// Aggiunge il window manager
					$( document.body ).append( windowManager.$element );
					// Carica la finestra di dialogo
					var dialog = require( './DraftReview-MenuDialog.js' );
					// Aggiunge la finestra di dialogo al window manager
					windowManager.addWindows( [ new dialog( { size: 'medium' } ) ] );
				}
				windowManager.openWindow( 'menuDialog' );
			} );
		} );

		// Aggiunge il pulsante
		mw.loader.using( 'mediawiki.ui.button' ).done( function () {
			$( '.pulsanti-revisione-bozza' ).append( button );
		} );
	} );
} )( mediaWiki, jQuery );