Википедия:Персональное оформление/Ограничение списка интервики-ссылок

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску

/* Интервики в выпадающем списке.

Код для monobook.js

 */

  // Список кодов языков, которые нужно показывать.
  // Раскоментируйте нужную строчку или исправьте список так, как Вам нужно.
  //
  //var myLangs = ['en','de']; // английский и немецкий
    var myLangs = ['en'];      // английский 

  function iw_compact() {    

    var n = 0;
    
    var my_langs = "^interwiki-" + "(" + myLangs.join('|') + ")"; // Create regex 
     
    var div1 = document.getElementById("p-lang");    // Find interwiki block and...
    if(!div1) return;
    var div2 = div1.getElementsByTagName("div")[0];
    var li = div2.getElementsByTagName("li");        // ...interwiki list

    var form = document.createElement("form");       // Create hidden form
    form.style.display = "none";
    form.innerHTML = '<select id="iw-dropdown-list" ' + 
        'onchange = "if(this.value) location.href=this.value;" ' +
        'style = "margin: 0.5em 0.4em 0.4em; font-size:95%; width:10.9em;">' + 
        '<option id="iw-dropdown-first" value=""></option></select>';
    div2.appendChild(form);

    var sel = document.getElementById("iw-dropdown-list"); // Save reference 
                                                           // to dropdown list

    for(var i=0; e = li[i]; i++) {           // iterate over iwiki list 
      if(!(e.className.match(my_langs) || e.title == "Избранная статья")) { 
                                             // for all, except user's favorits                       
        e.style.display = "none";                   // hide iwiki
        var a = e.getElementsByTagName("a")[0];
        var opt = document.createElement("option"); // create option for 
        opt.innerHTML = a.innerHTML;                // dropdown list
        opt.value = a.href;
        sel.appendChild(opt);
        n++;
      }
    }
    
    if (n>0) { // if dropdown list isn't empty display it
      document.getElementById("iw-dropdown-first").text = " +" + n;
      form.style.display = "block";
    }

  } //function

  addOnloadHook(iw_compact);

//