User:Zhuyifei1999/common.js: Difference between revisions

From WikiIndex
Jump to navigation Jump to search
(Add)
(replace)
Line 1: Line 1:
/*
/* _____________________________________________________________________________
  * Change [[MediaWiki:Edittools]] into true buttons.
* |                                                                            |
* |                    === WARNING: GLOBAL GADGET FILE ===                      |
  * |                  Changes to this page affect many users.                    |
* | Please discuss changes on the talk page or on [[WT:Gadget]] before editing. |
* |_____________________________________________________________________________|
  *
  *
  * @source mediawiki.org/wiki/Snippets/Edittools_as_buttons
  * Add a toolbox link to display the current page with MediaWiki message names replacing their text
  * @revision 3
* Revision: 1.0
  * Author: Edokter
  */
  */
   
   
$( document ).ready( function( $ ) {
$( document ).ready( function() {
        var $sb = $( '#specialchars' ).find( '.specialbasic' ), bl = $sb.length, $sel, ci = 0;
  mw.util.addPortletLink(
     'p-tb',
        if ( bl > 1 ) {
    location.href.replace( location.hash, '' ) + ( location.search ? '&' : '?' ) + 'uselang=qqx',
                ci = Number( $.cookie('mw-charinsert') ) || 0;
    'Message names',
                if ( ci > bl ) {
    't-messagenames',
                        $.cookie( 'mw-charinsert', 0, { expires: 30, path: '/' } );
    'Display the current page with MediaWiki message names replacing their text'
                        ci = 0;
  );
                }
                $sel = $( '<select>' ).change( function(e) {
                        var     $this = $( this ),
                                i = Number( $this.val() ),
                                last = Number( $.cookie('mw-charinsert') ) || 0;
                        if ( last !== i ) {
                                $sb.eq( last ).css( 'display', 'none' );
                                $sb.eq( i ).css( 'display', 'inline' );
                                $.cookie( 'mw-charinsert', i, { expires: 30, path: '/' } );
                        }
                });
        }
        $sb.each( function( i ) {
                var id = $( this )
                        .css( 'display', i !== ci ? 'none' : 'inline' )
                        .find( 'a' ).replaceWith( function() {
                                var $this = $( this ), onclick = $this.attr( 'onclick' );
                                return $( '<button>', { type: 'button', text: $this.text() } )
                                        .blur()
                                        .click( $.isFunction( onclick ) ? onclick : Function( onclick ) );
                        })
                        .end()
                        .attr( 'id' )
                        .replace( /\.([0-9A-F]{2})/g, '%$1' )
                        .replace( /_/g, ' ' );
                if ( bl > 1 ) {
                        $sel.append(
                                '<option value="' + i + '"' + (i === ci ? ' selected="selected"' : '') + '>'
                                + decodeURIComponent( id )
                                + '</option>'
                        );
                }
        }).end().prepend( $sel );
        ci = null;
});
});

Revision as of 08:48, 29 June 2013

/*  _____________________________________________________________________________
 * |                                                                             |
 * |                    === WARNING: GLOBAL GADGET FILE ===                      |
 * |                  Changes to this page affect many users.                    |
 * | Please discuss changes on the talk page or on [[WT:Gadget]] before editing. |
 * |_____________________________________________________________________________|
 *
 * Add a toolbox link to display the current page with MediaWiki message names replacing their text
 * Revision: 1.0
 * Author: Edokter
 */
 
$( document ).ready( function() {
  mw.util.addPortletLink(
    'p-tb',
    location.href.replace( location.hash, '' ) + ( location.search ? '&' : '?' ) + 'uselang=qqx',
    'Message names',
    't-messagenames',
    'Display the current page with MediaWiki message names replacing their text'
  );
});