MediaWiki:Gadget-SureSureSure.js: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
rimuovo, visto il miglioramento senza la dipendenza
m namo bene
Etichetta: Annulla
 
(4 versioni intermedie di uno stesso utente non sono mostrate)
Riga 1:
/**
* Aggiunge una richiesta di conferma al primo click di un rollback nella pagina e
* Questo gadget è per te se non sai come mai MediaWiki chieda conferma
* consente a tutti i rollback successivi di partire all'istante come di consueto.
* per ringraziare qualcuno, mentre per rollbackare no. asd
* L'uso è configurabile a seconda di touch screen e dimensioni della finestra.
*
* This gadget is for you if you don't know why MediaWiki asks for confirmation
* to thank someone, but it doesn't for rollbacking. asd
*
* This snippet coexists with the MediaWiki core patrol.js code by making
* sure its code runs first, and then our code calls off('click') afterward.
*
* @license [[WTFPL]] or [[GNU GPL]] or [[CC BY SA 3.0]] at your opinion
* @author [[w:User:Valerio Bozzolan]] and contributors
* @see https://phabricator.wikimedia.org/T49782
*/
 
const defaultOpts = {
confirm: 'sicuro sicuro sicuro?',
disablePatrolAjax: false,
};
window.sureSureSure = window.sureSureSure || {};
var opts = $.extend( defaultOpts, window.sureSureSure );
$( function () {
const var defaultOpts = {
confirm: 'sicuro sicuro sicuro?',
disablePatrolAjax: false,
hasTouchScreen: undefined,
maxScreenWidth: Infinity
};
 
window.sureSureSure = window.sureSureSure || {};
 
var opts = $.extend( defaultOpts, window.sureSureSure );
var isIOS = /iPad|iPhone|iPod/.test( navigator.platform ); // Safari iOS pre 13
 
if (
opts.maxScreenWidth < window.innerWidth ||
opts.hasTouchScreen !== undefined &&
opts.hasTouchScreen !== ( isIOS ? isIOS : navigator.maxTouchPoints > 0 )
) {
return;
*}
 
mw.hook( 'wikipage.content' ).add( function () {
$( '.mw-rollback-link a' ).click( function ( event ) {
var yes = 'ok-guy-im-not-accidetallyaccidentally-clicking-this';
if( ! $( this ).hasClass( yes ) && ! window.sureSureSure._yetConfirmed ) {
var $t = $( this );
$t.addClass( yes ).text( $t.text() + ": " + opts.confirm );
event.preventDefault();
window.sureSureSure._yetConfirmed = true;
Line 32 ⟶ 41:
} );
 
if ( opts.disablePatrolAjax ) {
// actually this is the simpler way to prevent automatic patrol action
mw.loader.using( 'mediawiki.misc-authed-curate' ).catchthen( function () {
// @see mediawiki.page.patrol.ajax ResourceLoader module
if( opts.disablePatrolAjax ) {
mw.loader.using( 'mediawiki.misc-authed-curate' ).catch( function () {
// Temporary: Try old name instead <https://gerrit.wikimedia.org/r/598141> (until 1 June 2020)
return mw.loader.using( 'mediawiki.page.patrol.ajax' );
} ).then( function () {
$( '.patrollink[data-mw="interface"] a' ).off( 'click' );
} );