MediaWiki:Monobook.js

Z Wikibooks, biblioteki wolnych podręczników.

Uwaga: Zmiany po zapisaniu nowych ustawień mogą nie być widoczne. Należy wyczyścić zawartość pamięci podręcznej przeglądarki internetowej.

  • Mozilla, Firefox lub Safari – przytrzymaj wciśnięty Shift i kliknij na Odśwież lub wciśnij Ctrl‐F5 lub Ctrl‐R (Cmd‐Shift‐R na Macintoshu)
  • Konqueror – kliknij przycisk Odśwież lub wciśnij F5
  • Opera – wyczyść pamięć podręczną w menu Narzędzia → Preferencje
  • Internet Explorer – przytrzymaj Ctrl i kliknij na Odśwież lub wciśnij Ctrl‐F5
/* Umieszczony tu kod JavaScript zostanie załadowany wyłącznie przez użytkowników korzystających ze skórki MonoBook
 
Zobacz też: [[MediaWiki:Common.js]] (JavaScript używany we wszystkich skórkach)
 
{{Podświetl|js}}
__TOC__
<pre>
*/
 
 
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/commons/6/60/LinkFA-star.png')";
               b.style.backgroundRepeat = "no-repeat";
               b.title = "Ten artykuł zdobył wyróżnienie";
            }
         }
      }
   }
}
 
/*
</pre>
 
== Poprawki dla strony głównej ==
<pre>
// */
 
var isDiff = (document.location.search && (document.location.search.indexOf("diff=") != -1 || document.location.search.indexOf("oldid=") != -1));
 
if (wgPageName == "Wikibooks:Strona_główna" && !isDiff) 
{
   document.write('<style type="text/css">/*<![CDATA[*/ #siteSub, #contentSub, h1.firstHeading { display: none !important; } /*]]>*/</style>');
}
 
addLoadEvent(LinkFA);
 
/*
</pre>
 
== Dynamiczne szablony nawigacyjne ==
<pre>
// */
 
// ============================================================
// BEGIN Dynamic Navigation Bars
 
// set up the words in your language
var NavigationBarHide = '[ Ukryj ]';
var NavigationBarShow = '[ Pokaż ]';
 
// 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 = 0;
 
 
// shows and hides content and picture (if available) of navigation bars
// Parameters:
//     indexNavBar: the index of navigation bar to be toggled
function toggleNavigationBar(indexNavBar)
{
   var NavToggle = document.getElementById("NavToggle" + indexNavBar);
   var NavFrame = document.getElementById("NavFrame" + indexNavBar);
 
   if (!NavFrame || !NavToggle)
      return;
 
   // values to be set
   var currDisplay;
   var currTitle;
 
   // if shown now
   if (NavToggle.firstChild.data == NavigationBarHide) {
      currDisplay = 'none';
      currTitle = NavigationBarShow;
   } // if hidden now
   else if (NavToggle.firstChild.data == NavigationBarShow) {
      currDisplay = 'block';
      currTitle = NavigationBarHide;
   }
 
   for (var NavChild=NavFrame.firstChild; NavChild!=null; NavChild=NavChild.nextSibling) {
      if (NavChild.nodeType==1) {      // only if this is an element node
         if (NavChild.className=='NavPic' || NavChild.className=='NavContent')
            NavChild.style.display = currDisplay
         else if (NavChild.className == 'NavToggle')
            NavChild.firstChild.data = currTitle;
      }
   }
}
 
// adds show/hide-button to navigation bars
function createNavigationBarToggleButton()
{
   // stop before starting
   if (window.createNavigationBarToggleButtonDone)
      return;
 
   var i;
   var indexNavBar = 0;
   var divs = document.getElementById('bodyContent').getElementsByTagName("div");
   // iterate over all < div >-elements
   for (i=0; i<divs.length; i++) {
      // if found a navigation bar
      if (divs[i].className == "NavFrame") {
         var NavFrame = divs[i];
         indexNavBar++;
         var NavToggle = document.createElement("a");
         NavToggle.className = 'NavToggle';
         NavToggle.setAttribute('id', 'NavToggle' + indexNavBar);
         NavToggle.setAttribute('href', 'javascript:toggleNavigationBar(' + indexNavBar + ');');
 
         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' + indexNavBar);
      }
   }
 
   // if more Navigation Bars found than Default then hide all
   if (NavigationBarShowDefault < indexNavBar)
   {
      for(i=1; i<=indexNavBar; i++)
         toggleNavigationBar(i);
   }
}
 
addOnloadHook(createNavigationBarToggleButton);
 
// END Dynamic Navigation Bars
// ============================================================
 
/*</pre>
== Wyszukiwanie Google ==
<pre>// */
 
var googleSearchInitialized = false;
function insertGoogleSearch() {
   if ( wgNamespaceNumber != 0 || googleSearchInitialized ) {
      return;
   }
   googleSearchInitialized = true;
 
   var google = "http://www.google.com/custom?sa=Google+Search&domains=pl.wikibooks.org/wiki/PAGE&sitesearch=pl.wikibooks.org/wiki/PAGE";
   var tb = document.getElementById('p-tb').getElementsByTagName('ul')[0];
   var link = document.createElement('a');
 
   var book = pageInfo.book;
   if ( book.length == 1 || book.indexOf('++') != -1 || encodeURIComponent(book) != book ) {
       google = "http://www.google.com/custom?sa=Google+Search&domains=pl.wikibooks.org/wiki/&sitesearch=pl.wikibooks.org/wiki/&q=%22PAGE%22"
   }
 
   link.href = google.replace(/PAGE/g, encodeURIComponent(book));
   link.appendChild(document.createTextNode("Szukaj w podręczniku"));
 
   var li = document.createElement('li');
   li.id = "google-trick-search";
 
   li.appendChild(link);
   tb.insertBefore(li, tb.firstChild);
}
 
addOnloadHook(insertGoogleSearch);
// ==================
/*
</pre>
 
== Dodanie linka [edytuj] dla sekcji nagłówkowej ==
* Pomysł: [[w:en:User:Pile0nades]]
* Wykonanie: Maciej Jaros [[w:pl:User:Nux]]
* Licencja: [http://opensource.org/licenses/gpl-license.php GNU General Public License v2]
<pre>
// */
window.disableEditTopLink = true;
function addEditTopLink() {
   //
   // somehow it gets run twice on some pages - stop that
   if (window.addEditTopLinkDone || wgPageName == "Strona_główna" || window.disableEditTopLink)
      return;
 
   window.addEditTopLinkDone = true;
 
   //      
   // if this is preview page or there is no edit tab, stop
   if (!wgIsArticle)
      return;
 
   //
   // Creating elements
   //
   // create div
   var div = document.createElement("DIV");
   div.className = 'editsection';
 
   // create link
   var link = document.createElement("A");
   link.href = document.getElementById("ca-edit").getElementsByTagName("a")[0].href + '&section=0';
   link.setAttribute('title', 'edytuj sekcję nagłówkową artykułu');
   link.appendChild(document.createTextNode('edytuj'));
 
   // append link and stuff to div
   div.appendChild(document.createTextNode('['));
   div.appendChild(link);
   div.appendChild(document.createTextNode(']'));
 
   var bodyContent = document.getElementById("bodyContent");
   bodyContent.parentNode.insertBefore(div, bodyContent);
 
   div2 = document.createElement("DIV");
   div2.setAttribute("style", "clear: both");
   bodyContent.insertBefore(div2, bodyContent.firstChild);
}
 
addOnloadHook(addEditTopLink);
 
/*
</pre>
*/