MediaWiki:Common.js — различия между версиями

Материал из ВикиМИРЭА
Перейти к: навигация, поиск
(Метка: отмена)
 
(не показаны 3 промежуточные версии этого же участника)
Строка 1: Строка 1:
 
/* Размещённый здесь код JavaScript будет загружаться пользователям при обращении к каждой странице */
 
/* Размещённый здесь код JavaScript будет загружаться пользователям при обращении к каждой странице */
  
//Edit zero section
+
/*WikiEditor/Викификатор*/
if (wgAction == 'view' && wgNamespaceNumber >=0)
+
if ( $.inArray( mw.config.get( 'wgAction' ), ['edit', 'submit'] ) !== -1 ) {
addOnloadHook(function(){
+
        mw.loader.load( '//ru.wikipedia.org/w/index.php?title=MediaWiki:Gadget-wikificator.js&action=raw&ctype=text/javascript' );
var h2s = document.getElementsByTagName('H2');
+
}
var h2 = h2s[0];
 
if (!h2) return;
 
if (h2.parentNode.id == 'toctitle') h2 = h2s[1];
 
if (!h2) return;
 
var span = h2.firstChild;
 
if (!span || span.className != 'editsection') return;
 
var zero = span.cloneNode(true);
 
if (document.getElementById('featured-star')) zero.style.marginRight = '25px'
 
var parent = document.getElementsByTagName('H1')[0];
 
parent.insertBefore(zero, parent.firstChild);
 
var a = zero.getElementsByTagName('A')[0];
 
a.title = a.title.replace(/:.*$/,' после заголовка');
 
a.setAttribute('href', a.href.replace(/&section=1/,'&section=0'));
 
})
 
  
// hasClass()
+
var customizeToolbar = function() {
var hasClass = (function () {
+
 
    var reCache = {};
+
$( '#wpTextbox1' ).wikiEditor( 'addToToolbar', {
    return function (element, className) {
+
        'section': 'advanced',
      return (reCache[className] ? reCache[className] : (reCache[className] = new RegExp("(?:\\s|^)" + className + "(?:\\s|$)"))).test(element.className);
+
        'group': 'format',
    };
+
        'tools': {
})();
+
                'wikify': {
 +
                        label: 'Викификатор',
 +
                        type: 'button',
 +
                        icon: '//upload.wikimedia.org/wikipedia/commons/0/06/Wikify-toolbutton.png',
 +
                            action: {
 +
                                  type: 'callback',
 +
                                      execute: function(context){
 +
                                              Wikify();
 +
                                      }
 +
                            }
 +
                }
 +
        }
 +
} );
 +
};
 +
 +
if ( $.inArray( mw.config.get( 'wgAction' ), ['edit', 'submit'] ) !== -1 ) {
 +
        mw.loader.using( 'user.options', function () {
 +
                if ( mw.user.options.get('usebetatoolbar') ) {
 +
                        mw.loader.using( 'ext.wikiEditor.toolbar', function () {
 +
                                $(document).ready( customizeToolbar );
 +
                        } );
 +
                }
 +
        } );
 +
}

Текущая версия на 17:25, 12 февраля 2023

/* Размещённый здесь код JavaScript будет загружаться пользователям при обращении к каждой странице */

/*WikiEditor/Викификатор*/
if ( $.inArray( mw.config.get( 'wgAction' ), ['edit', 'submit'] ) !== -1 ) {
        mw.loader.load( '//ru.wikipedia.org/w/index.php?title=MediaWiki:Gadget-wikificator.js&action=raw&ctype=text/javascript' );
}

var customizeToolbar = function() {

$( '#wpTextbox1' ).wikiEditor( 'addToToolbar', {
        'section': 'advanced',
        'group': 'format',
        'tools': {
                'wikify': {
                        label: 'Викификатор',
                        type: 'button',
                        icon: '//upload.wikimedia.org/wikipedia/commons/0/06/Wikify-toolbutton.png',
                             action: {
                                  type: 'callback',
                                       execute: function(context){
                                              Wikify();
                                       } 
                             }
                }
        }
} );
};
 
if ( $.inArray( mw.config.get( 'wgAction' ), ['edit', 'submit'] ) !== -1 ) {
        mw.loader.using( 'user.options', function () {
                if ( mw.user.options.get('usebetatoolbar') ) {
                        mw.loader.using( 'ext.wikiEditor.toolbar', function () {
                                $(document).ready( customizeToolbar );
                        } );
                }
        } );
}