<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="uk">
	<id>https://wiki.nuwm.edu.ua/index.php?action=history&amp;feed=atom&amp;title=MediaWiki%3ACommon.js</id>
	<title>MediaWiki:Common.js - Історія редагувань</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.nuwm.edu.ua/index.php?action=history&amp;feed=atom&amp;title=MediaWiki%3ACommon.js"/>
	<link rel="alternate" type="text/html" href="https://wiki.nuwm.edu.ua/index.php?title=MediaWiki:Common.js&amp;action=history"/>
	<updated>2026-04-04T11:40:12Z</updated>
	<subtitle>Історія редагувань цієї сторінки в вікі</subtitle>
	<generator>MediaWiki 1.36.0</generator>
	<entry>
		<id>https://wiki.nuwm.edu.ua/index.php?title=MediaWiki:Common.js&amp;diff=1517&amp;oldid=prev</id>
		<title>Олександр Юрійович Старовєров: Створена сторінка: /**  * Намагайтеся тримати мінімум коду в MediaWiki:Common.js, оскільки він вантажиться для всіх ко...</title>
		<link rel="alternate" type="text/html" href="https://wiki.nuwm.edu.ua/index.php?title=MediaWiki:Common.js&amp;diff=1517&amp;oldid=prev"/>
		<updated>2015-09-17T07:19:50Z</updated>

		<summary type="html">&lt;p&gt;Створена сторінка: /**  * Намагайтеся тримати мінімум коду в MediaWiki:Common.js, оскільки він вантажиться для всіх ко...&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Нова сторінка&lt;/b&gt;&lt;/p&gt;&lt;div&gt;/**&lt;br /&gt;
 * Намагайтеся тримати мінімум коду в MediaWiki:Common.js, оскільки він вантажиться для всіх користувачів на кожній&lt;br /&gt;
 * сторінці. Якщо можливо, створіть натомість додаток, який буде вантажитися за замовчуванням (оскільки додатки є&lt;br /&gt;
 * оптимізованими модулями ResourceLoader з можливістю додавати залежності тощо).&lt;br /&gt;
 *&lt;br /&gt;
 * Оскільки Common.js не є додатком, немає місця, де можна задекларувати його залежності, то ж ми вантажимо їх за&lt;br /&gt;
 * допомогою mw.loader.using і лише в колбек-функції виконуємо решту коду. У більшості випадків ці залежності вже будуть&lt;br /&gt;
 * завантажені (або будуть вантажитися) і колбек-функція не буде мати затримки. Проте, якщо залежності ще не&lt;br /&gt;
 * завантажилися, у нашому випадку ми будемо впевнені, що ми дочекалися їхнього завантаження.&lt;br /&gt;
 */&lt;br /&gt;
/*global mw, $, importStylesheet, importScript */&lt;br /&gt;
/*jshint curly:false eqnull:true, strict:false, browser:true, */&lt;br /&gt;
mw.loader.using( ['mediawiki.util', 'mediawiki.notify', 'jquery.client'], function () {&lt;br /&gt;
/* Початок колбеку mw.loader.using */&lt;br /&gt;
&lt;br /&gt;
/* для виборів АК */&lt;br /&gt;
&lt;br /&gt;
function voting7(){&lt;br /&gt;
 if (votingTrigger = document.getElementById('voting-trigger'))&lt;br /&gt;
  importScriptURI(mw.config.get('wgServer') + mw.config.get('wgScript')&lt;br /&gt;
   +'?title=MediaWiki:Voting7.js&amp;amp;action=raw&amp;amp;ctype=text/javascript&amp;amp;cversion='&lt;br /&gt;
   +encodeURIComponent(votingTrigger.innerHTML.replace(/\D+/g, '.')))&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
$(voting7)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/**&lt;br /&gt;
 * Функція, що на головній сторінці в кінці списку інтервікі ставить посилання на повний список всіх вікіпедій.&lt;br /&gt;
 */&lt;br /&gt;
if ( mw.config.get( 'wgPageName' ) === 'Головна_сторінка') {&lt;br /&gt;
    $( document ).ready( function () {&lt;br /&gt;
        mw.util.addPortletLink( 'p-lang', '//uk.wikipedia.org/wiki/Вікіпедія:Список_Вікіпедій',&lt;br /&gt;
            'Повний список', 'interwiki-completelist', 'Повний список Вікіпедій' );&lt;br /&gt;
    } );&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
mw.config.set( 'tableSorterCollation', {'ґ':'гя', 'і':'ия', 'ї':'ияя', 'є':'ея'} )&lt;br /&gt;
&lt;br /&gt;
/**&lt;br /&gt;
 * Скрипти для списку спостереження.&lt;br /&gt;
 */&lt;br /&gt;
if( $( '#watchlist-message' ).length &amp;gt; 0 ) {&lt;br /&gt;
	importScript( 'MediaWiki:Common.js/watchlist.js' );&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/**&lt;br /&gt;
 * @source www.mediawiki.org/wiki/Snippets/Load_JS_and_CSS_by_URL&lt;br /&gt;
 * @rev 5&lt;br /&gt;
 */&lt;br /&gt;
// CSS&lt;br /&gt;
var extraCSS = mw.util.getParamValue( 'withCSS' );&lt;br /&gt;
if ( extraCSS ) {&lt;br /&gt;
	if ( extraCSS.match( /^MediaWiki:[^&amp;amp;&amp;lt;&amp;gt;=%#]*\.css$/ ) ) {&lt;br /&gt;
		importStylesheet( extraCSS );&lt;br /&gt;
	} else {&lt;br /&gt;
		mw.notify( 'Only pages from the MediaWiki namespace are allowed.', { title: 'Invalid withCSS value' } );&lt;br /&gt;
	}&lt;br /&gt;
}&lt;br /&gt;
 &lt;br /&gt;
// JS&lt;br /&gt;
var extraJS = mw.util.getParamValue( 'withJS' );&lt;br /&gt;
if ( extraJS ) {&lt;br /&gt;
	if ( extraJS.match( /^MediaWiki:[^&amp;amp;&amp;lt;&amp;gt;=%#]*\.js$/ ) ) {&lt;br /&gt;
		importScript( extraJS );&lt;br /&gt;
	} else {&lt;br /&gt;
		mw.notify( 'Only pages from the MediaWiki namespace are allowed.', { title: 'Invalid withJS value' } );&lt;br /&gt;
	}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/**&lt;br /&gt;
 * WikiMiniAtlas&lt;br /&gt;
 *&lt;br /&gt;
 * Description: WikiMiniAtlas is a popup click and drag world map.&lt;br /&gt;
 *              This script causes all of our coordinate links to display the WikiMiniAtlas popup button.&lt;br /&gt;
 *              The script itself is located on meta because it is used by many projects.&lt;br /&gt;
 *              See [[Meta:WikiMiniAtlas]] for more information. &lt;br /&gt;
 * Maintainers: [[User:Dschwen]]&lt;br /&gt;
 */&lt;br /&gt;
( function () {&lt;br /&gt;
    var require_wikiminiatlas = false;&lt;br /&gt;
    var coord_filter = /geohack/;&lt;br /&gt;
    $( document ).ready( function() {&lt;br /&gt;
        $( 'a.external.text' ).each( function( key, link ) {&lt;br /&gt;
            if ( link.href &amp;amp;&amp;amp; coord_filter.exec( link.href ) ) {&lt;br /&gt;
                require_wikiminiatlas = true;&lt;br /&gt;
                // break from loop&lt;br /&gt;
                return false;&lt;br /&gt;
            }&lt;br /&gt;
        } );&lt;br /&gt;
        if ( $( 'div.kmldata' ).length ) {&lt;br /&gt;
            require_wikiminiatlas = true;&lt;br /&gt;
        }&lt;br /&gt;
        if ( require_wikiminiatlas ) {&lt;br /&gt;
            mw.loader.load( '//meta.wikimedia.org/w/index.php?title=MediaWiki:Wikiminiatlas.js&amp;amp;action=raw&amp;amp;ctype=text/javascript' );&lt;br /&gt;
        }&lt;br /&gt;
    } );&lt;br /&gt;
} )();&lt;br /&gt;
&lt;br /&gt;
/**&lt;br /&gt;
 * Collapsible tables *********************************************************&lt;br /&gt;
 *&lt;br /&gt;
 * Description: Allows tables to be collapsed, showing only the header. See&lt;br /&gt;
 *              [[:en:Wikipedia:NavFrame]].&lt;br /&gt;
 * Maintainers: [[:en:User:R. Koot]]&lt;br /&gt;
 */&lt;br /&gt;
&lt;br /&gt;
var autoCollapse = 2;&lt;br /&gt;
var collapseCaption = &amp;quot;сховати&amp;quot;;&lt;br /&gt;
var expandCaption = &amp;quot;показати&amp;quot;;&lt;br /&gt;
 &lt;br /&gt;
window.collapseTable = function ( tableIndex ) {&lt;br /&gt;
    var Button = document.getElementById( 'collapseButton' + tableIndex );&lt;br /&gt;
    var Table = document.getElementById( 'collapsibleTable' + tableIndex );&lt;br /&gt;
&lt;br /&gt;
    if ( !Table || !Button ) {&lt;br /&gt;
        return false;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    var Rows = Table.rows;&lt;br /&gt;
    var i;&lt;br /&gt;
&lt;br /&gt;
    if ( Button.firstChild.data === collapseCaption ) {&lt;br /&gt;
        for ( i = 1; i &amp;lt; Rows.length; i++ ) {&lt;br /&gt;
            Rows[i].style.display = 'none';&lt;br /&gt;
        }&lt;br /&gt;
        Button.firstChild.data = expandCaption;&lt;br /&gt;
    } else {&lt;br /&gt;
        for ( i = 1; i &amp;lt; Rows.length; i++ ) {&lt;br /&gt;
            Rows[i].style.display = Rows[0].style.display;&lt;br /&gt;
        }&lt;br /&gt;
        Button.firstChild.data = collapseCaption;&lt;br /&gt;
    }&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
function createCollapseButtons() {&lt;br /&gt;
    var tableIndex = 0;&lt;br /&gt;
    var NavigationBoxes = {};&lt;br /&gt;
    var Tables = document.getElementsByTagName( 'table' );&lt;br /&gt;
    var i;&lt;br /&gt;
&lt;br /&gt;
    function handleButtonLink( index, e ) {&lt;br /&gt;
        window.collapseTable( index );&lt;br /&gt;
        e.preventDefault();&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    for ( i = 0; i &amp;lt; Tables.length; i++ ) {&lt;br /&gt;
        if ( $( Tables[i] ).hasClass( 'collapsible' ) ) {&lt;br /&gt;
&lt;br /&gt;
            /* only add button and increment count if there is a header row to work with */&lt;br /&gt;
            var HeaderRow = Tables[i].getElementsByTagName( 'tr' )[0];&lt;br /&gt;
            if ( !HeaderRow ) continue;&lt;br /&gt;
            var Header = HeaderRow.getElementsByTagName( 'th' )[0];&lt;br /&gt;
            if ( !Header ) continue;&lt;br /&gt;
&lt;br /&gt;
            NavigationBoxes[ tableIndex ] = Tables[i];&lt;br /&gt;
            Tables[i].setAttribute( 'id', 'collapsibleTable' + tableIndex );&lt;br /&gt;
&lt;br /&gt;
            var Button     = document.createElement( 'span' );&lt;br /&gt;
            var ButtonLink = document.createElement( 'a' );&lt;br /&gt;
            var ButtonText = document.createTextNode( collapseCaption );&lt;br /&gt;
&lt;br /&gt;
            Button.className = 'collapseButton';  /* Styles are declared in Common.css */&lt;br /&gt;
&lt;br /&gt;
            ButtonLink.style.color = Header.style.color;&lt;br /&gt;
            ButtonLink.setAttribute( 'id', 'collapseButton' + tableIndex );&lt;br /&gt;
            ButtonLink.setAttribute( 'href', '#' );&lt;br /&gt;
            $( ButtonLink ).on( 'click', $.proxy( handleButtonLink, ButtonLink, tableIndex ) );&lt;br /&gt;
            ButtonLink.appendChild( ButtonText );&lt;br /&gt;
&lt;br /&gt;
            Button.appendChild( document.createTextNode( '[' ) );&lt;br /&gt;
            Button.appendChild( ButtonLink );&lt;br /&gt;
            Button.appendChild( document.createTextNode( ']' ) );&lt;br /&gt;
&lt;br /&gt;
            Header.insertBefore( Button, Header.firstChild );&lt;br /&gt;
            tableIndex++;&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    for ( i = 0;  i &amp;lt; tableIndex; i++ ) {&lt;br /&gt;
        if ( $( NavigationBoxes[i] ).hasClass( 'collapsed' ) || ( tableIndex &amp;gt;= autoCollapse &amp;amp;&amp;amp; $( NavigationBoxes[i] ).hasClass( 'autocollapse' ) ) ) {&lt;br /&gt;
            window.collapseTable( i );&lt;br /&gt;
        } &lt;br /&gt;
        else if ( $( NavigationBoxes[i] ).hasClass ( 'innercollapse' ) ) {&lt;br /&gt;
            var element = NavigationBoxes[i];&lt;br /&gt;
            while ((element = element.parentNode)) {&lt;br /&gt;
                if ( $( element ).hasClass( 'outercollapse' ) ) {&lt;br /&gt;
                    window.collapseTable ( i );&lt;br /&gt;
                    break;&lt;br /&gt;
                }&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
$( createCollapseButtons );&lt;br /&gt;
&lt;br /&gt;
/**&lt;br /&gt;
 * Dynamic Navigation Bars (experimental)&lt;br /&gt;
 *&lt;br /&gt;
 * Description: See [[:en:Wikipedia:NavFrame]].&lt;br /&gt;
 * Maintainers: UNMAINTAINED&lt;br /&gt;
 */&lt;br /&gt;
&lt;br /&gt;
/* set up the words in your language */&lt;br /&gt;
var NavigationBarHide = '[' + collapseCaption + ']';&lt;br /&gt;
var NavigationBarShow = '[' + expandCaption + ']';&lt;br /&gt;
&lt;br /&gt;
/**&lt;br /&gt;
 * Shows and hides content and picture (if available) of navigation bars&lt;br /&gt;
 * Parameters:&lt;br /&gt;
 *     indexNavigationBar: the index of navigation bar to be toggled&lt;br /&gt;
 **/&lt;br /&gt;
window.toggleNavigationBar = function ( indexNavigationBar, event ) {&lt;br /&gt;
    var NavToggle = document.getElementById( 'NavToggle' + indexNavigationBar );&lt;br /&gt;
    var NavFrame = document.getElementById( 'NavFrame' + indexNavigationBar );&lt;br /&gt;
    var NavChild;&lt;br /&gt;
&lt;br /&gt;
    if ( !NavFrame || !NavToggle ) {&lt;br /&gt;
        return false;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    /* if shown now */&lt;br /&gt;
    if ( NavToggle.firstChild.data === NavigationBarHide ) {&lt;br /&gt;
        for ( NavChild = NavFrame.firstChild; NavChild != null; NavChild = NavChild.nextSibling ) {&lt;br /&gt;
            if ( $( NavChild ).hasClass( 'NavContent' ) || $( NavChild ).hasClass( 'NavPic' ) ) {&lt;br /&gt;
                NavChild.style.display = 'none';&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
    NavToggle.firstChild.data = NavigationBarShow;&lt;br /&gt;
&lt;br /&gt;
    /* if hidden now */&lt;br /&gt;
    } else if ( NavToggle.firstChild.data === NavigationBarShow ) {&lt;br /&gt;
        for ( NavChild = NavFrame.firstChild; NavChild != null; NavChild = NavChild.nextSibling ) {&lt;br /&gt;
            if ( $( NavChild ).hasClass( 'NavContent' ) || $( NavChild ).hasClass( 'NavPic' ) ) {&lt;br /&gt;
                NavChild.style.display = 'block';&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
        NavToggle.firstChild.data = NavigationBarHide;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    event.preventDefault();&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
/* adds show/hide-button to navigation bars */&lt;br /&gt;
function createNavigationBarToggleButton() {&lt;br /&gt;
    var indexNavigationBar = 0;&lt;br /&gt;
    var NavFrame;&lt;br /&gt;
    var NavChild;&lt;br /&gt;
    /* iterate over all &amp;lt; div &amp;gt;-elements */&lt;br /&gt;
    var divs = document.getElementsByTagName( 'div' );&lt;br /&gt;
    for ( var i = 0; (NavFrame = divs[i]); i++ ) {&lt;br /&gt;
        /* if found a navigation bar */&lt;br /&gt;
        if ( $( NavFrame ).hasClass( 'NavFrame' ) ) {&lt;br /&gt;
&lt;br /&gt;
            indexNavigationBar++;&lt;br /&gt;
            var NavToggle = document.createElement( 'a' );&lt;br /&gt;
            NavToggle.className = 'NavToggle';&lt;br /&gt;
            NavToggle.setAttribute( 'id', 'NavToggle' + indexNavigationBar );&lt;br /&gt;
            NavToggle.setAttribute( 'href', '#' );&lt;br /&gt;
            $( NavToggle ).on( 'click', $.proxy( window.toggleNavigationBar, window, indexNavigationBar ) );&lt;br /&gt;
&lt;br /&gt;
            var isCollapsed = $( NavFrame ).hasClass( 'collapsed' );&lt;br /&gt;
            /**&lt;br /&gt;
             * Check if any children are already hidden.  This loop is here for backwards compatibility:&lt;br /&gt;
             * the old way of making NavFrames start out collapsed was to manually add style=&amp;quot;display:none&amp;quot;&lt;br /&gt;
             * to all the NavPic/NavContent elements.  Since this was bad for accessibility (no way to make&lt;br /&gt;
             * the content visible without JavaScript support), the new recommended way is to add the class&lt;br /&gt;
             * &amp;quot;collapsed&amp;quot; to the NavFrame itself, just like with collapsible tables.&lt;br /&gt;
             */&lt;br /&gt;
            for ( NavChild = NavFrame.firstChild; NavChild != null &amp;amp;&amp;amp; !isCollapsed; NavChild = NavChild.nextSibling ) {&lt;br /&gt;
                if ( $( NavChild ).hasClass( 'NavPic' ) || $( NavChild ).hasClass( 'NavContent' ) ) {&lt;br /&gt;
                    if ( NavChild.style.display === 'none' ) {&lt;br /&gt;
                        isCollapsed = true;&lt;br /&gt;
                    }&lt;br /&gt;
                }&lt;br /&gt;
            }&lt;br /&gt;
            if ( isCollapsed ) {&lt;br /&gt;
                for ( NavChild = NavFrame.firstChild; NavChild != null; NavChild = NavChild.nextSibling ) {&lt;br /&gt;
                    if ( $( NavChild ).hasClass( 'NavPic' ) || $( NavChild ).hasClass( 'NavContent' ) ) {&lt;br /&gt;
                        NavChild.style.display = 'none';&lt;br /&gt;
                    }&lt;br /&gt;
                }&lt;br /&gt;
            }&lt;br /&gt;
            var NavToggleText = document.createTextNode( isCollapsed ? NavigationBarShow : NavigationBarHide );&lt;br /&gt;
            NavToggle.appendChild( NavToggleText );&lt;br /&gt;
&lt;br /&gt;
            /* Find the NavHead and attach the toggle link (Must be this complicated because Moz's firstChild handling is borked) */&lt;br /&gt;
            for( var j = 0; j &amp;lt; NavFrame.childNodes.length; j++ ) {&lt;br /&gt;
                if ( $( NavFrame.childNodes[j] ).hasClass( 'NavHead' ) ) {&lt;br /&gt;
                    NavToggle.style.color = NavFrame.childNodes[j].style.color;&lt;br /&gt;
                    NavFrame.childNodes[j].appendChild( NavToggle );&lt;br /&gt;
                }&lt;br /&gt;
            }&lt;br /&gt;
            NavFrame.setAttribute( 'id', 'NavFrame' + indexNavigationBar );&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
$( createNavigationBarToggleButton );&lt;br /&gt;
&lt;br /&gt;
$(function(){&lt;br /&gt;
  var plus = document.getElementById('ca-addsection');&lt;br /&gt;
  if (!plus) return;&lt;br /&gt;
  var custom = document.getElementById('add-custom-section');&lt;br /&gt;
  if (!custom) return;&lt;br /&gt;
  plus.getElementsByTagName('A')[0].setAttribute('href', custom.getElementsByTagName('A')[0].href);&lt;br /&gt;
})&lt;br /&gt;
&lt;br /&gt;
 /** Import module *************************************************************&lt;br /&gt;
  *&lt;br /&gt;
  *  Предложен [[Участник:Alex_Smotrov]], на основе аналогичной английской функции&lt;br /&gt;
  *&lt;br /&gt;
  *  Description: Includes a raw wiki page as javascript or CSS, &lt;br /&gt;
  *               used for including user made modules.&lt;br /&gt;
  */&lt;br /&gt;
&lt;br /&gt;
window.importScript = function(page, lang) {&lt;br /&gt;
     var url = mw.config.get('wgScriptPath') + '/index.php?title='&lt;br /&gt;
                            + encodeURIComponent(page.replace(' ','_'))&lt;br /&gt;
                            + '&amp;amp;action=raw&amp;amp;ctype=text/javascript&amp;amp;dontcountme=s';&lt;br /&gt;
     if (lang) {&lt;br /&gt;
          url = '//' + lang + '.wikipedia.org' + url;&lt;br /&gt;
     }else{&lt;br /&gt;
          url = '//uk.wikipedia.org' + url;&lt;br /&gt;
     }&lt;br /&gt;
     mw.loader.load(url);&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
/* При загрузке [[Special:Upload]] вставляет в поле описания [[Шаблон:Изображение]]&lt;br /&gt;
    Автор - [[User:Alex Smotrov]]&lt;br /&gt;
 */&lt;br /&gt;
&lt;br /&gt;
if (mw.config.get('wgCanonicalNamespace') == 'Special' &amp;amp;&amp;amp; mw.config.get('wgCanonicalSpecialPageName') == 'Upload' &amp;amp;&amp;amp; document.URL.indexOf(&amp;quot;&amp;amp;wpForReUpload=1&amp;quot;) &amp;lt; 0)&lt;br /&gt;
 $(document).ready(function() {&lt;br /&gt;
 	window.uploadp = {&lt;br /&gt;
 		uploadPage: function() {&lt;br /&gt;
 			//автоматически вставить {Изображение}&lt;br /&gt;
 			var desc = document.getElementById('wpUploadDescription');&lt;br /&gt;
 			var temp = document.getElementById('imageinfo');&lt;br /&gt;
			if (temp &amp;amp;&amp;amp; desc &amp;amp;&amp;amp; !desc.value) &lt;br /&gt;
				desc.value = temp.innerHTML;&lt;br /&gt;
			//создать ссылку для вставки {Обоснование}&lt;br /&gt;
			var span = document.getElementById('insertlink');&lt;br /&gt;
			if (!span) return;&lt;br /&gt;
			var a = document.createElement('a');&lt;br /&gt;
			a.href = 'javascript:uploadp.addRationaleTemplate()';&lt;br /&gt;
			span.parentNode.insertBefore(a, span);&lt;br /&gt;
			a.appendChild(span);&lt;br /&gt;
			span.style.display = 'inline';&lt;br /&gt;
 		},&lt;br /&gt;
 		&lt;br /&gt;
 		addRationaleTemplate: function() {&lt;br /&gt;
 			var desc = document.getElementById( 'wpUploadDescription' );&lt;br /&gt;
			var temp = document.getElementById( 'rationale' );&lt;br /&gt;
			if(!desc || !temp) &lt;br /&gt;
				return;&lt;br /&gt;
			if (desc.value.indexOf(temp.innerHTML.substring(0,8)) == -1) {&lt;br /&gt;
				desc.value += '\n' + temp.innerHTML;&lt;br /&gt;
				desc.rows = 15;&lt;br /&gt;
			}&lt;br /&gt;
 		}&lt;br /&gt;
 	};&lt;br /&gt;
 	uploadp.uploadPage();&lt;br /&gt;
 });&lt;br /&gt;
 &lt;br /&gt;
/** Обработка сортировки чисел с плавающей точкой с разделителем-запятой&lt;br /&gt;
  * Взято из шведской Википедии, автор - [[:sv:Användare:Skagedal]]&lt;br /&gt;
  * &lt;br /&gt;
  */&lt;br /&gt;
 function ts_parseFloat(num) {&lt;br /&gt;
        if (!num) return 0;&lt;br /&gt;
        num = num.replace(/\./g, &amp;quot;&amp;quot;);&lt;br /&gt;
        num = num.replace(/,/, &amp;quot;.&amp;quot;);&lt;br /&gt;
        num = parseFloat(num);&lt;br /&gt;
        return (isNaN(num) ? 0 : num);&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
if( mw.config.get('wgAction') == 'edit' || mw.config.get('wgAction') == 'submit' ) {&lt;br /&gt;
	mw.loader.load('//uk.wikipedia.org/w/index.php?title=MediaWiki:Onlyifediting.js&amp;amp;action=raw&amp;amp;ctype=text/javascript'); &lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// Розширений пошук&lt;br /&gt;
// Автор: ru:User:Не А&lt;br /&gt;
&lt;br /&gt;
function SpecialSearchEnhanced() &lt;br /&gt;
{&lt;br /&gt;
    var mainNode = document.getElementsByTagName(&amp;quot;form&amp;quot;);&lt;br /&gt;
    if (!mainNode) return;&lt;br /&gt;
    &lt;br /&gt;
    var searchValue = document.forms[0].search.value&lt;br /&gt;
	var safeSearchValue = searchValue.replace(/&amp;amp;/g, &amp;quot;&amp;amp;amp;&amp;quot;).replace(/&amp;lt;/g, &amp;quot;&amp;amp;lt;&amp;quot;).replace(/&amp;gt;/g, &amp;quot;&amp;amp;gt;&amp;quot;).replace(/&amp;quot;/g, &amp;quot;&amp;amp;quot;&amp;quot;);&lt;br /&gt;
    var firstForm = mainNode[0];&lt;br /&gt;
&lt;br /&gt;
    var node = document.createElement('div');&lt;br /&gt;
    &lt;br /&gt;
var googleSearch  = '&amp;lt;form action=&amp;quot;http://www.google.com/custom&amp;quot; method=&amp;quot;get&amp;quot; name=&amp;quot;google&amp;quot; target=&amp;quot;_blank&amp;quot; id=&amp;quot;google&amp;quot;&amp;gt;';&lt;br /&gt;
    googleSearch += '&amp;lt;input type=&amp;quot;hidden&amp;quot; name=&amp;quot;hl&amp;quot; value=&amp;quot;uk&amp;quot; /&amp;gt;';&lt;br /&gt;
    googleSearch += '&amp;lt;input type=&amp;quot;hidden&amp;quot; name=&amp;quot;domains&amp;quot; value=&amp;quot;uk.wikipedia.org&amp;quot; /&amp;gt;';&lt;br /&gt;
    googleSearch += '&amp;lt;input type=&amp;quot;hidden&amp;quot; name=&amp;quot;q&amp;quot; maxlength=&amp;quot;2048&amp;quot; value=&amp;quot;' + safeSearchValue + '&amp;quot; /&amp;gt;'&lt;br /&gt;
    googleSearch += '&amp;lt;input type=&amp;quot;hidden&amp;quot; name=&amp;quot;sitesearch&amp;quot; value=&amp;quot;uk.wikipedia.org&amp;quot; /&amp;gt;'&lt;br /&gt;
    googleSearch += '&amp;lt;input type=&amp;quot;button&amp;quot; value=&amp;quot;Google по Вікіпедії&amp;quot; onclick=&amp;quot;document.google.q.value = document.forms[0].search.value; this.form.submit();&amp;quot; style=&amp;quot;width: 12em;&amp;quot; /&amp;gt;'&lt;br /&gt;
    googleSearch += '&amp;lt;/form&amp;gt;'&lt;br /&gt;
&lt;br /&gt;
    node.innerHTML = node.innerHTML + '&amp;lt;table style=&amp;quot;margin-left: 75%;  padding-left:4px;&amp;quot;&amp;gt;&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;' + googleSearch + '&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&amp;lt;/table&amp;gt;';&lt;br /&gt;
        &lt;br /&gt;
    firstForm.parentNode.insertBefore(node, firstForm.nextSibling);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
if (mw.config.get('wgCanonicalNamespace') == 'Special')&lt;br /&gt;
{&lt;br /&gt;
 if (mw.config.get('wgCanonicalSpecialPageName') == 'Search') { $(document).ready(SpecialSearchEnhanced); } else&lt;br /&gt;
 if (mw.config.get('wgCanonicalSpecialPageName') == 'Newpages') { importScript('MediaWiki:Newpages.js'); }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
var auto_comment = 0&lt;br /&gt;
&lt;br /&gt;
//Для Шаблон:Виконати скрипт&lt;br /&gt;
&lt;br /&gt;
window.execJS = $('.executeJS');&lt;br /&gt;
if (execJS.length &amp;gt; 0)&lt;br /&gt;
 execJS.each(function(){&lt;br /&gt;
    var sc = this.className.split(' ')[1];&lt;br /&gt;
    sc = $.trim( sc.replace(/[^\w ]/g,'') );&lt;br /&gt;
    if( sc ) importScript('MediaWiki:Script/'+sc+'.js');&lt;br /&gt;
  });&lt;br /&gt;
  &lt;br /&gt;
//AdvancedSiteNotices — замість сайтнотіса&lt;br /&gt;
//importScript( &amp;quot;MediaWiki:Script/AdvancedSiteNotices.js&amp;quot; )&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 /** Для шаблону Шаблон:Scroll Gallery&lt;br /&gt;
 *   &lt;br /&gt;
 */&lt;br /&gt;
 $(function() {&lt;br /&gt;
  if (document.URL.match(/printable/g)) return;&lt;br /&gt;
 &lt;br /&gt;
  function toggleImageFunction(group,  remindex, shwindex) {&lt;br /&gt;
    return function() {&lt;br /&gt;
      document.getElementById(&amp;quot;ImageGroupsGr&amp;quot; + group + &amp;quot;Im&amp;quot; + remindex).style[&amp;quot;display&amp;quot;] = &amp;quot;none&amp;quot;;&lt;br /&gt;
      document.getElementById(&amp;quot;ImageGroupsGr&amp;quot; + group + &amp;quot;Im&amp;quot; + shwindex).style[&amp;quot;display&amp;quot;] = &amp;quot;block&amp;quot;;&lt;br /&gt;
      return false;&lt;br /&gt;
    };&lt;br /&gt;
  }&lt;br /&gt;
 &lt;br /&gt;
  var divs = document.getElementsByTagName(&amp;quot;div&amp;quot;);&lt;br /&gt;
  var i = 0, j = 0;&lt;br /&gt;
  var units, search;&lt;br /&gt;
  var currentimage;&lt;br /&gt;
  var UnitNode, rightlink, commentText;&lt;br /&gt;
  for (i = 0; i &amp;lt; divs.length; i++) {&lt;br /&gt;
    if (divs[i].className !== &amp;quot;ImageGroup&amp;quot;) { continue; }&lt;br /&gt;
    UnitNode = undefined;&lt;br /&gt;
    search = divs[i].getElementsByTagName(&amp;quot;div&amp;quot;);&lt;br /&gt;
    for (j = 0; j &amp;lt; search.length; j++) {&lt;br /&gt;
      if (search[j].className !== &amp;quot;ImageGroupUnits&amp;quot;) { continue; }&lt;br /&gt;
      UnitNode=search[j];&lt;br /&gt;
      break;&lt;br /&gt;
    }&lt;br /&gt;
    if (UnitNode === undefined) { continue; }&lt;br /&gt;
    units = [];&lt;br /&gt;
    for (j = 0 ; j &amp;lt; UnitNode.childNodes.length ; j++ ) {&lt;br /&gt;
      var temp = UnitNode.childNodes[j];&lt;br /&gt;
      if (temp.className === &amp;quot;center&amp;quot;) { units.push(temp); }&lt;br /&gt;
    }&lt;br /&gt;
    for (j = 0; j &amp;lt; units.length; j++) {&lt;br /&gt;
      currentimage = units[j];&lt;br /&gt;
      currentimage.id = &amp;quot;ImageGroupsGr&amp;quot; + i + &amp;quot;Im&amp;quot; + j;&lt;br /&gt;
      var leftlink = document.createElement(&amp;quot;a&amp;quot;);&lt;br /&gt;
      if (commentText !== undefined) {&lt;br /&gt;
        leftlink.setAttribute(&amp;quot;title&amp;quot;, commentText);&lt;br /&gt;
      }&lt;br /&gt;
      var comment;&lt;br /&gt;
      if (typeof(currentimage.getAttribute(&amp;quot;title&amp;quot;)) !== &amp;quot;string&amp;quot;) {&lt;br /&gt;
        commentText = (j+1) + &amp;quot;/&amp;quot; + units.length;&lt;br /&gt;
        comment = document.createElement(&amp;quot;tt&amp;quot;).appendChild(document.createTextNode(&amp;quot;(&amp;quot;+ commentText + &amp;quot;)&amp;quot;));&lt;br /&gt;
      }&lt;br /&gt;
      else {&lt;br /&gt;
        commentText = currentimage.getAttribute(&amp;quot;title&amp;quot;);&lt;br /&gt;
        comment = document.createElement(&amp;quot;span&amp;quot;).appendChild(document.createTextNode(commentText));&lt;br /&gt;
        currentimage.removeAttribute(&amp;quot;title&amp;quot;);&lt;br /&gt;
      }&lt;br /&gt;
      if(rightlink !== undefined) {&lt;br /&gt;
        rightlink.setAttribute(&amp;quot;title&amp;quot;, commentText);&lt;br /&gt;
      }&lt;br /&gt;
      var imghead = document.createElement(&amp;quot;div&amp;quot;);&lt;br /&gt;
      rightlink = document.createElement(&amp;quot;a&amp;quot;);&lt;br /&gt;
      if (j !== 0) {&lt;br /&gt;
        leftlink.href = &amp;quot;#&amp;quot;;&lt;br /&gt;
        leftlink.onclick = toggleImageFunction(i, j, j-1);&lt;br /&gt;
        leftlink.appendChild(document.createTextNode(&amp;quot;◀&amp;quot;));&lt;br /&gt;
      }&lt;br /&gt;
      if (j != units.length - 1) {&lt;br /&gt;
        rightlink.href = &amp;quot;#&amp;quot;;&lt;br /&gt;
        rightlink.onclick = toggleImageFunction(i, j, j+1);&lt;br /&gt;
        rightlink.appendChild(document.createTextNode(&amp;quot;▶&amp;quot;));&lt;br /&gt;
      }&lt;br /&gt;
      imghead.style[&amp;quot;fontSize&amp;quot;] = &amp;quot;110%&amp;quot;;&lt;br /&gt;
      imghead.style[&amp;quot;fontweight&amp;quot;] = &amp;quot;bold&amp;quot;;&lt;br /&gt;
      imghead.appendChild(leftlink);&lt;br /&gt;
      imghead.appendChild(document.createTextNode(&amp;quot;\xA0&amp;quot;));&lt;br /&gt;
      imghead.appendChild(comment);&lt;br /&gt;
      imghead.appendChild(document.createTextNode(&amp;quot;\xA0&amp;quot;));&lt;br /&gt;
      imghead.appendChild(rightlink);&lt;br /&gt;
      if (units.length &amp;gt; 1) {&lt;br /&gt;
        currentimage.insertBefore(imghead,currentimage.childNodes[0]);&lt;br /&gt;
      }&lt;br /&gt;
      if (j !== 0) {&lt;br /&gt;
        currentimage.style.display = &amp;quot;none&amp;quot;;&lt;br /&gt;
      }&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
 });&lt;br /&gt;
 //Кінець блоку для шаблону Scroll Gallery&lt;br /&gt;
&lt;br /&gt;
$( '#t-upload' ).find( 'a' ).prop( {&lt;br /&gt;
    href: '/wiki/Вікіпедія:Майстер завантаження файлів'&lt;br /&gt;
} );&lt;br /&gt;
/* Кінець колбеку mw.loader.using */&lt;br /&gt;
} );&lt;br /&gt;
/* НЕ ДОДАВАЙТЕ КОД НИЖЧЕ ЦІЄЇ ЛІНІЇ */&lt;/div&gt;</summary>
		<author><name>Олександр Юрійович Старовєров</name></author>
	</entry>
</feed>