MediaWiki:Monobook.js: Porovnání verzí

Přejít na: navigace, hledání
(Test)
(Aktualisováno)
 
(Nejsou zobrazeny 3 mezilehlé verze od stejného uživatele.)
Řádka 1: Řádka 1:
/*
+
/* JavaScript pro uživatele používající vzhled MonoBook */
<pre>
 
*/
 
 
 
// ============================================================
 
// BEGIN Enable multiple onload functions
 
 
// setup onload functions this way:
 
// aOnloadFunctions[aOnloadFunctions.length] = function_name; // without brackets!
 
 
if (!window.aOnloadFunctions) {
 
  var aOnloadFunctions = new Array();
 
}
 
 
window.onload = function() {
 
  alert('Onload test');
 
  if (window.aOnloadFunctions) {
 
    for (var _i=0; _i<aOnloadFunctions.length; _i++) {
 
      aOnloadFunctions[_i]();
 
    }
 
  }
 
}
 
 
// END Enable multiple onload functions
 
// ============================================================
 
 
 
// ============================================================
 
// BEGIN Externhinweis
 
// NEEDS Enable multiple onload functions
 
 
/*
 
function externHinweis() {
 
    if (
 
      (document.getElementById("pt-login")) &&  // ob der Benutzer NICHT angemeldet ist
 
      (document.getElementById("ca-edit")) &&  // ob die seite nicht geschützt ist
 
      (!document.getElementById("ca-nstab-user")) &&  // ob die seite keine benutzerseite ist
 
      (document.referrer != "") &&            // ob der referrer nicht leer ist
 
      (document.referrer.search(/wikipedia\.org/) == -1) // ob der Referrer NICHT wikipedia.org enthält
 
      )
 
    {
 
        var externHinweis = document.createElement("div");
 
        externHinweis.setAttribute('id','externHinweis');
 
            // Hier kann der Text verändert werden.
 
            // Bitte keine einfachen Anführungsstriche im Text verwenden!
 
            // Wikisyntax funktioniert nicht!
 
        externHinweis.innerHTML = '<a href="/iuridictum/Iuridictum:Vítejte" title="Iuridictum:Vítejte">Opravte chybu nebo článek rozšiřte!</</a>';
 
      document.getElementById("content").appendChild(externHinweis);
 
    }
 
}
 
 
aOnloadFunctions[aOnloadFunctions.length] = externHinweis;
 
*/
 
 
// END Externhinweis
 
// ============================================================
 
 
 
// ============================================================
 
// BEGIN Dynamic Navigation Bars
 
// NEEDS Enable multiple onload functions
 
 
// set up the words in your language
 
var NavigationBarHide = 'Skrýt';
 
var NavigationBarShow = 'Zobrazit';
 
 
// 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
 
if (typeof NavigationBarShowDefault == 'undefined' ) {
 
    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';
 
            }
 
            if (NavChild.className == 'NavToggle') {
 
                NavChild.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';
 
            }
 
            if (NavChild.className == 'NavToggle') {
 
                NavChild.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);
 
 
            // add NavToggle-Button as first div-element
 
            // in < div class="NavFrame" >
 
            NavFrame.insertBefore(
 
                NavToggle,
 
                NavFrame.firstChild
 
            );
 
            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);
 
        }
 
    }
 
 
}
 
 
aOnloadFunctions[aOnloadFunctions.length] = createNavigationBarToggleButton;
 
 
// END Dynamic Navigation Bars
 
// ============================================================
 
 
 
// ============================================================
 
// BEGIN Moving of the editsection links
 
 
/*
 
* moveEditsection
 
* Dieses Script verschiebt die [Bearbeiten]-Buttons vom rechten Fensterrand
 
* direkt rechts neben die jeweiligen Überschriften.
 
* This script moves the [edit]-buttons from the right border of the window
 
* directly right next to the corresponding headings.
 
*
 
* Zum Abschalten die folgende Zeile (ohne führendes Sternchen) in die eigene
 
* monobook.js (zu finden unter [[Special:Mypage/monobook.js|Benutzer:Name/monobook.js]]) kopieren:
 
* var oldEditsectionLinks = true;
 
*
 
* dbenzhuser (de:Benutzer:Dbenzhuser)
 
*/
 
function moveEditsection() {
 
    if (typeof oldEditsectionLinks == 'undefined' || oldEditsectionLinks == false) {
 
        var spans = document.getElementsByTagName("span");
 
        for(var i = 0; i < spans.length; i++) {
 
            if(spans[i].className == "editsection") {
 
                spans[i].style.fontSize = "x-small";
 
                spans[i].style.fontWeight = "normal";
 
                spans[i].style.cssFloat = "none";
 
                spans[i].style.marginLeft = "0px";
 
                spans[i].parentNode.appendChild(document.createTextNode(" "));
 
                spans[i].parentNode.appendChild(spans[i]);
 
            }
 
        }
 
    }
 
}
 
// onload
 
addOnloadHook(moveEditsection);
 
 
// END Moving of the editsection links
 
// ============================================================
 
 
 
// ============================================================
 
// BEGIN import Onlyifediting-functions
 
// SEE ALSO [[MediaWiki:Onlyifediting.js]]
 
 
if (document.URL.indexOf("action=edit") > 0 || document.URL.indexOf("action=submit") > 0) {
 
  document.write('<script type="text/javascript" src="/iuridictum/index.php?title=MediaWiki:Onlyifediting.js&action=raw&ctype=text/javascript&dontcountme=s"></script>');
 
}
 
 
// END import Onlyifediting-functions
 
// ============================================================
 
 
 
// ============================================================
 
// BEGIN pageview counter
 
// SEE ALSO [[MediaWiki:Pagecounter.js]]
 
//    Please talk to User:LeonWeber before changing anything or
 
//    if there are any issues with this.
 
 
// disable the counter
 
var disable_counter = 0;
 
 
document.write('<script type="text/javascript" src="/iuridictum/index.php?title=MediaWiki:Pagecounter.js&action=raw&ctype=text/javascript&dontcountme=s&smaxage=3600"></script>');
 
 
// END pageview counter
 
// ============================================================
 
 
 
/* tooltips and access keys */
 
ta = new Object();
 
ta['pt-userpage'] = new Array('.','Vaše uživatelská stránka');
 
ta['pt-anonuserpage'] = new Array('.','Uživatelská stránka pro IP adresu, ze které editujete jako');
 
ta['pt-mytalk'] = new Array('n','Vaše diskusní stránka');
 
ta['pt-anontalk'] = new Array('n','Diskuse o editacích provedených z této IP adresy');
 
ta['pt-preferences'] = new Array('','Vaše nastavení');
 
ta['pt-watchlist'] = new Array('l','Seznam stránek, jejichž změny sledujete');
 
ta['pt-mycontris'] = new Array('y','Seznam vašich příspěvků');
 
ta['pt-login'] = new Array('o','Přihlášení není povinné, ale přináší mnoho výhod.');
 
ta['pt-anonlogin'] = new Array('o','Přihlášení není povinné, ale přináší mnoho výhod.');
 
ta['pt-logout'] = new Array('o','Odhlášení');
 
ta['ca-talk'] = new Array('t','Diskuse o stránce');
 
ta['ca-edit'] = new Array('e','Tuto stránku můžete editovat. Prosím, před uložením použijte tlačítko \'Zobrazit náhled\'.');
 
ta['ca-addsection'] = new Array('+','Přidat komentář');
 
ta['ca-viewsource'] = new Array('e','Tato stránka je uzamčena. Můžete zobrazit její zdrojový kód.');
 
ta['ca-history'] = new Array('h','Minulé verse této stránky.');
 
ta['ca-protect'] = new Array('=','Zamknout tuto stránku');
 
ta['ca-delete'] = new Array('d','Smazat tuto stránku');
 
ta['ca-undelete'] = new Array('d','Obnovit editace provedené na této stránce před smazáním');
 
ta['ca-move'] = new Array('m','Přesunout tuto stránku');
 
ta['ca-nomove'] = new Array('','Nemáte dovoleno přesunout tuto stránku');
 
ta['ca-watch'] = new Array('w','Přidat tuto stránku mezi sledované');
 
ta['ca-unwatch'] = new Array('w','Odebrat tuto stránku ze seznamu sledovaných');
 
ta['search'] = new Array('f','Hledat na Iuridictu');
 
ta['p-logo'] = new Array('','Hlavní strana');
 
ta['n-mainpage'] = new Array('z','Navštívit hlavní stranu');
 
ta['n-portal'] = new Array('','O projektu, jak můžete pomoci, kde co najít');
 
ta['n-currentevents'] = new Array('','Informace o aktuálních událostech');
 
ta['n-recentchanges'] = new Array('r','Seznam posledních změn na Iuridictu');
 
ta['n-randompage'] = new Array('x','Zobrazit náhodně zvolenou stránku');
 
ta['n-help'] = new Array('','Místo, kde najdete pomoc.');
 
ta['n-sitesupport'] = new Array('','Jak nás podpořit');
 
ta['t-whatlinkshere'] = new Array('j','Seznam všech stránek, které sem odkazují');
 
ta['t-recentchangeslinked'] = new Array('k','Nedávno editované stránky, na které tato stránka odkazuje');
 
ta['feed-rss'] = new Array('','RSS kanál pro tuto stránku');
 
ta['feed-atom'] = new Array('','Atom kanál pro tuto stránku');
 
ta['t-contributions'] = new Array('','Zobrazit seznam příspěvků tohoto uživatele');
 
ta['t-emailuser'] = new Array('','Poslat tomuto uživateli e-mail');
 
ta['t-upload'] = new Array('u','Načíst obrázky nebo multimediální soubory');
 
ta['t-specialpages'] = new Array('q','Seznam všech speciálních stránek');
 
ta['ca-nstab-main'] = new Array('c','Zobrazit článek');
 
ta['ca-nstab-user'] = new Array('c','Zobrazit stránku uživatele');
 
ta['ca-nstab-media'] = new Array('c','Zobrazit informační stránku souboru');
 
ta['ca-nstab-special'] = new Array('','To je speciální stránka, kterou nelze editovat.');
 
ta['ca-nstab-wp'] = new Array('c','Zobrazit informační stránku o projektu');
 
ta['ca-nstab-image'] = new Array('c','Zobrazit informační stránku obrázku');
 
ta['ca-nstab-mediawiki'] = new Array('c','Zobrazit systémového hlášení');
 
ta['ca-nstab-template'] = new Array('c','Zobrazit šablonu');
 
ta['ca-nstab-help'] = new Array('c','Zobrazit stránku nápovědy');
 
ta['ca-nstab-category'] = new Array('c','Zobrazit stránku kategorie');
 
 
 
 
 
if (window.showModalDialog && document.compatMode && document.compatMode == "CSS1Compat")
 
{
 
  var oldWidth;
 
  var docEl = document.documentElement;
 
 
 
  function fixIEScroll()
 
  {
 
    if (!oldWidth || docEl.clientWidth > oldWidth)
 
      doFixIEScroll();
 
    else
 
      setTimeout(doFixIEScroll, 1);
 
 
 
    oldWidth = docEl.clientWidth;
 
  }
 
 
 
  function doFixIEScroll() {
 
    docEl.style.overflowX = (docEl.scrollWidth - docEl.clientWidth < 4) ? "hidden" : "";
 
  }
 
 
 
  document.attachEvent("onreadystatechange", fixIEScroll);
 
  attachEvent("onresize", fixIEScroll);
 
}
 
 
 
function addLoadEvent(func)
 
{
 
  if (window.addEventListener)
 
    window.addEventListener("load", func, false);
 
  else if (window.attachEvent)
 
    window.attachEvent("onload", func);
 
}
 
 
 
function LinkFA()
 
{
 
  // iterate over all <span>-elements
 
  for(var i=0; a = document.getElementsByTagName("span")[i]; i++) {
 
      // if found a FA span
 
      if(a.className == "FA") {
 
        // iterate over all <li>-elements
 
        for(var j=0; b = document.getElementsByTagName("li")[j]; j++) {
 
            // if found a FA link
 
            if(b.className == "interwiki-" + a.id) {
 
              b.style.padding = "0 0 0 16px";
 
              b.style.backgroundImage = "url('http://upload.wikimedia.org/wikipedia/en/6/60/LinkFA-star.png')";
 
              b.style.backgroundRepeat = "no-repeat";
 
              b.title = "Tento článek byl vybrán jako článek týdne";
 
            }
 
        }
 
      }
 
  }
 
}
 
 
 
addLoadEvent(LinkFA);
 
 
 
// ============================================================
 
// BEGIN Dynamic Navigation Bars (experimantal)
 
 
// set up the words in your language
 
var NavigationBarHide = '[ Skrýt ]';
 
var NavigationBarShow = '[ Zobrazit ]';
 
 
// 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
 
// ============================================================
 
 
 
 
 
 
 
/*
 
</pre>
 
*/
 

Aktuální verse z 14. 10. 2010, 16:37

/* JavaScript pro uživatele používající vzhled MonoBook */