Aller au contenu

Utilisateur:Antimuonium/SuppressionDeluxe.js

Une page de Wikipédia, l'encyclopédie libre.
Note : après avoir enregistré la page, vous devrez forcer le rechargement complet du cache de votre navigateur pour voir les changements.

Mozilla / Firefox / Konqueror / Safari : maintenez la touche Majuscule (Shift) en cliquant sur le bouton Actualiser (Reload) ou pressez Maj-Ctrl-R (Cmd-R sur Apple Mac) ;

Firefox (sur GNU/Linux) / Chrome / Internet Explorer / Opera : maintenez la touche Ctrl en cliquant sur le bouton Actualiser ou pressez Ctrl-F5.
/*
* This script enables the user to customise the deletion reasons.
* This script was originally written at https://fr.wikipedia.org/wiki/MediaWiki:Gadget-SuppressionDeluxe.js and can be activated in the preferences.
* I have edited it to better suit my needs.
*/


/* globals mw, OO, $ */

if ( mw.config.get( 'wgAction' ) === 'delete' ) {
    mw.loader.using( [ 'user', 'oojs-ui-core' ], function () {

        //////////// Zone personnalisable //////////
        var suppressiondeluxeMessages = window.suppressiondeluxeMessages || [
            "Test de débutant ; merci d'utiliser le [[Aide:Bac à sable|bac à sable]] pour vos [[Aide:Essais|essais]]",
            "Article [[Wikipédia:Wikipédia est une encyclopédie|non encyclopédique]] en l'état",
        ];
        //////////// Fin de la zone personnalisable //////////

        function SuppressionResume() {
            var $wpReason = $( '#wpReason' );
			if ( !$wpReason.length ) {
				return;
			}
			try {
				var widget = OO.ui.infuse( $wpReason );
				widget.setValue( $( this ).data( 'message' ) );
			} catch ( err ) {
				return;
			}
            $( '#deleteconfirm' ).trigger( 'submit' );
        }

        function SuppressionDeluxe( $ ) {
            var $mainForm = $( '#deleteconfirm' );
            if ( !$mainForm.length ) {
                return;
            }
            var $ul = $( '<ul>' ).css( {
                'list-style-type': 'none',
                'list-style-image': 'none',
                'margin-left': 0,
                'display': 'flex',
                'justify-content': 'center',
                'gap': '10%',
            } );

            for ( var i = 0; i < suppressiondeluxeMessages.length; ++i ) {
                var $inputConfirm = $( '<input>' ).attr( 'type', 'button' );
                $inputConfirm.attr( 'class', 'mw-ui-button mw-ui-neutral' );
                $inputConfirm.attr( 'style', 'max-width: none;')
                $inputConfirm.attr( 'value', suppressiondeluxeMessages[ i ].replace( /\[\[(?:.*?\|)?(.*?)\]\]/g, '$1' ).replace( /&nbsp;/g, ' ') );
                $inputConfirm.attr( 'title', suppressiondeluxeMessages[ i ] );
                $inputConfirm.data( 'message', suppressiondeluxeMessages[ i ] );
                $inputConfirm.click( SuppressionResume );

                var $li = $( '<li>' );
                $li.append( $inputConfirm );
                $ul.append( $li );
            }

            var $separation = $( '<p>' ).append( '<hr>' );

            $mainForm.append( $separation, $ul );
        }

        $( SuppressionDeluxe );

    } );
}