MediaWiki:Monobook.js

Vikipediya, ochiq ensiklopediya

Eʼtibor bering: Oʻzgartirishlaringizni koʻrish uchun, yangi moslamalaringizning saqlashdan keyin, brauzer keshini tozalash kerak:
Mozilla / Firefox: Ctrl+Shift+R, IE: Ctrl+F5, Safari: Cmd+Shift+R, Konqueror: F5, Opera: Tools → Preferences orqali keshni tozalang.

 // kengaytirilgan YangiOʻzgarishlar uchun
 function toggleVisibility( _levelId, _otherId, _linkId) {
 	var thisLevel = document.getElementById( _levelId );
 	var otherLevel = document.getElementById( _otherId );
 	var linkLevel = document.getElementById( _linkId );
 	if ( thisLevel.style.display == 'none' ) {
 		thisLevel.style.display = 'block';
 		otherLevel.style.display = 'none';
 		linkLevel.style.display = 'inline';
 	} else {
 		thisLevel.style.display = 'none';
 		otherLevel.style.display = 'inline';
 		linkLevel.style.display = 'none';
 		}
 }

 // page history stuff
 // attach event handlers to the input elements on history page
 function histrowinit () {
     hf = document.getElementById('pagehistory');
     if(!hf) return;
     lis = hf.getElementsByTagName('li');
     for (i=0;i<lis.length;i++) {
         inputs=lis[i].getElementsByTagName('input');
         if(inputs[0] && inputs[1]) {
                 inputs[0].onclick = diffcheck;
                 inputs[1].onclick = diffcheck;
         }
     }
     diffcheck();
 }


 // ============================================================
 // BEGIN Dynamic Navigation Bars (experimantal)
 
 // set up the words in your language
 var NavigationBarHide = '[ Yashir ]';
 var NavigationBarShow = '[ Koʻrsat ]';
 
 // set up max count of Navigation Bars on page,
 // if there are more, all will be hidden
 // NavigationBarShowDefault = 0; // all bars will be hidden
 // NavigationBarShowDefault = 1; // on pages with more than 1 bar all bars will be hidden
 var NavigationBarShowDefault = 1;
 
 
 // shows and hides content and picture (if available) of navigation bars
 // Parameters:
 //     indexNavigationBar: the index of navigation bar to be toggled
 function toggleNavigationBar(indexNavigationBar)
 {
    var NavToggle = document.getElementById("NavToggle" + indexNavigationBar);
    var NavFrame = document.getElementById("NavFrame" + indexNavigationBar);
 
    if (!NavFrame || !NavToggle) {
        return false;
    }
 
    // if shown now
    if (NavToggle.firstChild.data == NavigationBarHide) {
        for (
                var NavChild = NavFrame.firstChild;
                NavChild != null;
                NavChild = NavChild.nextSibling
            ) {
            if (NavChild.className == 'NavPic') {
                NavChild.style.display = 'none';
            }
            if (NavChild.className == 'NavContent') {
                NavChild.style.display = 'none';
            }
        }
    NavToggle.firstChild.data = NavigationBarShow;
 
    // if hidden now
    } else if (NavToggle.firstChild.data == NavigationBarShow) {
        for (
                var NavChild = NavFrame.firstChild;
                NavChild != null;
                NavChild = NavChild.nextSibling
            ) {
            if (NavChild.className == 'NavPic') {
                NavChild.style.display = 'block';
            }
            if (NavChild.className == 'NavContent') {
                NavChild.style.display = 'block';
            }
        }
    NavToggle.firstChild.data = NavigationBarHide;
    }
 }
 
 // adds show/hide-button to navigation bars
 function createNavigationBarToggleButton()
 {
    var indexNavigationBar = 0;
    // iterate over all < div >-elements
    for(
            var i=0; 
            NavFrame = document.getElementsByTagName("div")[i]; 
            i++
        ) {
        // if found a navigation bar
        if (NavFrame.className == "NavFrame") {
 
            indexNavigationBar++;
            var NavToggle = document.createElement("a");
            NavToggle.className = 'NavToggle';
            NavToggle.setAttribute('id', 'NavToggle' + indexNavigationBar);
            NavToggle.setAttribute('href', 'javascript:toggleNavigationBar(' + indexNavigationBar + ');');
            
            var NavToggleText = document.createTextNode(NavigationBarHide);
            NavToggle.appendChild(NavToggleText);
            // Find the NavHead and attach the toggle link (Must be this complicated because Moz's firstChild handling is borked)
            for(
              var j=0; 
              j < NavFrame.childNodes.length; 
              j++
            ) {
              if (NavFrame.childNodes[j].className == "NavHead") {
                NavFrame.childNodes[j].appendChild(NavToggle);
              }
            }
            NavFrame.setAttribute('id', 'NavFrame' + indexNavigationBar);
        }
    }
    // if more Navigation Bars found than Default: hide all
    if (NavigationBarShowDefault < indexNavigationBar) {
        for(
                var i=1; 
                i<=indexNavigationBar; 
                i++
        ) {
            toggleNavigationBar(i);
        }
    }
 
 }
 
 addLoadEvent(createNavigationBarToggleButton);
 
 // END Dynamic Navigation Bars
 // ============================================================

 // ============================================================
 // BEGIN import Onlyifediting-functions
 // SEE ALSO [[MediaWiki:Onlyifediting.js]]
 
 if (document.URL.indexOf("action=edit") > 0 || document.URL.indexOf("action=submit") > 0) {
 mw.loader.load('//uz.wikipedia.org/w/index.php?title=MediaWiki:Onlyifediting.js&action=raw&ctype=text/javascript');
 }
 
 // END import Onlyifediting-functions
 // ============================================================

 // ============================================================
 // BEGIN import Wikificator
 // SEE ALSO [[MediaWiki:Wikificator.js]]
 
 mw.loader.load('//uz.wikipedia.org/w/index.php?title=MediaWiki:Wikificator.js&action=raw&ctype=text/javascript');
 
 // END import Wikificator
 // ============================================================

 function addLoadEvent(func) 
 {
	$(document).ready(func);
 }

  //
  // Замена неправильного заголовка правильным by SergV
  //
  
  // Все неправильные заголовки
  title_restr_alerts = ["trestrictions_replace", "trestrictions_alert"];

  // Только шаблон title
  //title_restr_alerts = ["trestrictions_replace"];

  function display_correct_title () {
    var title_restr_alert1, a1;
    if (document.getElementsByTagName && document.getElementById) {  
      for(var i=0; i < title_restr_alerts.length; i++) { 
        title_restr_alert1 = title_restr_alerts[i];
        a1 = document.getElementById(title_restr_alert1);
        if(a1) {
          ct = document.getElementById("trestrictions_correct");
          if(ct) {
            document.getElementsByTagName("h1")[0].innerHTML  = ct.innerHTML;
            a1.style.display = "none";
            document.getElementById("trestrictions_replaced").style.display = "block";
          }
          break;
        }
      }
    }
  }

 addLoadEvent(display_correct_title);


 /* add menu for selecting subsets of secial characters */
 /***** must match MediaWiki:Edittools *****/
 
 function addCharSubsetMenu() {
  var specialchars = document.getElementById('specialchars');
 
   if (specialchars) {
     var menu = "<select id=\"charsetBox\" style=\"display:inline\" onkeyup=\"chooseCharSubset(selectedIndex)\" onChange=\"chooseCharSubset(selectedIndex)\">";
     menu += "<option>Koʻproq maxsus belgilar</option>";
     menu += "<option>Отметки заготовок</option>";
     menu += "<option>Grek alifbosi</option>";
     menu += "<option>XFA (IPA)</option>";
     menu += "<option>Matem./TeX</option>";
     menu += "</select>";
     specialchars.innerHTML = menu + specialchars.innerHTML;

    /* default subset - try to use a cookie some day */
    chooseCharSubset(0);
  }
 }

 /* select subsection of special characters */
 function chooseCharSubset(s) {
   var l = document.getElementById('specialchars').getElementsByTagName('p');
   for (var i = 0; i < l.length ; i++) {
     l[i].style.display = i == s ? 'inline' : 'none';
     l[i].style.visibility = i == s ? 'visible' : 'hidden';
   }
 }
 
 addLoadEvent(addCharSubsetMenu);