MediaWiki:Monobook.js

De Viquinotícies

Dreceres ràpides: navegació, Recerca

Nota: Després de desar, heu de posar al dia la memòria cau del vostre navegador per veure els canvis. Mozilla / Firefox / Safari: Premeu Shift mentre cliqueu Actualitza (Reload), o premeu Ctrl+Shift+R (Cmd+Shift+R en un Mac Apple); Internet Explorer: premeu Ctrl mentre cliqueu Actualtiza (Refresh), o premeu Ctrl+F5; Konqueror:: simplement cliqueu el botó Recarregar (Reload), o premeu F5; Opera haureu d'esborrar completament la vostra memòria cau (caché) a Tools→Preferences.

/*
Vegeu també [[:w:MediaWiki:Monobook.js]]
<pre> */
/*
 
 */
/* tooltips and access keys */
ta = new Object();
ta['pt-userpage'] = new Array('.','La vostra pàgina d\'usuari.'); 
ta['pt-anonuserpage'] = new Array('.','La pàgina d\'usuari per la ip que estau editant com'); 
ta['pt-mytalk'] = new Array('n','La vostra pàgina de discussió.'); 
ta['pt-anontalk'] = new Array('n','Discussió sobre les edicions per aquesta adreça ip.'); 
ta['pt-preferences'] = new Array('','Les vostres preferències.'); 
ta['pt-watchlist'] = new Array('l','La llista de pàgines de les que estau vigilant els canvis.'); 
ta['pt-mycontris'] = new Array('y','Llista de les vostres contribucions.'); 
ta['pt-login'] = new Array('o','Us animam a registrar-vos, però no és obligatori.'); 
ta['pt-anonlogin'] = new Array('o','Us animam a registrar-vos, però no és obligatori.'); 
ta['pt-logout'] = new Array('o','Tanca la sessió.'); 
ta['ca-talk'] = new Array('t','Discussió sobre el contingut d\'aquesta pàgina.'); 
ta['ca-edit'] = new Array('e','Podeu editar aquesta pàgina. S. u. p. previsualitzau abans de desar.'); 
ta['ca-addsection'] = new Array('+','Afegeix un comentari a aquesta discussió.'); 
ta['ca-viewsource'] = new Array('e','Aquesta pàgina està protegida. Podeu veure el seu codi font.'); 
ta['ca-history'] = new Array('h','Versions antigues d\'aquesta pàgina.'); 
ta['ca-protect'] = new Array('=','Protegeix aquesta pàgina.'); 
ta['ca-delete'] = new Array('d','Esborra aquesta pàgina.'); 
ta['ca-undelete'] = new Array('d','Restaura les edicions fetes a aquesta pàgina abans de que fos esborrada.'); 
ta['ca-move'] = new Array('m','Reanomena aquesta pàgina.'); 
ta['ca-nomove'] = new Array('','No teniu permís per moure aquesta pàgina.'); 
ta['ca-watch'] = new Array('w','Afegiu aquesta pàgina a la vostra llista de seguiment.'); 
ta['ca-unwatch'] = new Array('w','Llevau aquesta pàgina de la vostra llista de seguiment.'); 
ta['search'] = new Array('f','Cerca aquesta viqui.'); 
ta['p-logo'] = new Array('','Pàgina principal.'); 
ta['n-mainpage'] = new Array('z','Visiteu la pàgina principal.'); 
ta['n-portal'] = new Array('','Sobre el projecte, què podeu fer, on podeu trobar coses.'); 
ta['n-currentevents'] = new Array('','Per trobar informació general sobre l\'actualitat.'); 
ta['n-recentchanges'] = new Array('r','La llista de canvis recents de Viquinotícies.'); 
ta['n-randompage'] = new Array('x','Vés a una pàgina aleatòria.'); 
ta['n-help'] = new Array('','El lloc per esbrinar.'); 
ta['n-sitesupport'] = new Array('','Feu-nos una donació.'); 
ta['t-whatlinkshere'] = new Array('j','Llista de totes les pàgines viqui que enllacen ací.'); 
ta['t-recentchangeslinked'] = new Array('k','Canvis recents a pàgines que enllacen amb aquesta pàgina.'); 
ta['feed-rss'] = new Array('','RSS feed for this page'); 
ta['feed-atom'] = new Array('','Atom feed for this page'); 
ta['t-contributions'] = new Array('','Vegeu la llista de contribucions d\'aquest usuari.'); 
ta['t-emailuser'] = new Array('','Envia un correu en aquest usuari.'); 
ta['t-upload'] = new Array('u','Càrrega d\'imatges o altres fitxers.'); 
ta['t-specialpages'] = new Array('q','Llista de totes les pàgines especials.'); 
ta['ca-nstab-main'] = new Array('c','Vegeu el contingut de la pàgina.'); 
ta['ca-nstab-user'] = new Array('c','Vegeu la pàgina de l\'usuari.'); 
ta['ca-nstab-media'] = new Array('c','Vegeu la pàgina multimèdia'); 
ta['ca-nstab-special'] = new Array('','Aquesta pàgina és una pàgina especial, no podeu editar-la.'); 
ta['ca-nstab-wp'] = new Array('a','Vegeu la pàgina protegida'); 
ta['ca-nstab-image'] = new Array('c','Vegeu la pàgina de la imatge'); 
ta['ca-nstab-mediawiki'] = new Array('c','Vegeu el missatge de sistema.'); 
ta['ca-nstab-template'] = new Array('c','Vegeu la plantilla.'); 
ta['ca-nstab-help'] = new Array('c','Vegeu la pàgina d\'ajuda.'); 
ta['ca-nstab-category'] = new Array('c','Vegeu la pàgina de la categoria.');
 
if (!window.aOnloadFunctions) {
  var aOnloadFunctions = new Array();
}
 
window.onload = function() {
  if (window.aOnloadFunctions) {
    for (var _i=0; _i<aOnloadFunctions.length; _i++) {
      aOnloadFunctions[_i]();
    }
  }
}
 
 
 // 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);
        }
    }
 
 }
 
 if (window.addEventListener) window.addEventListener("load",createNavigationBarToggleButton,false);
 else if (window.attachEvent) window.attachEvent("onload",createNavigationBarToggleButton);
 
 
var NavigationBarHide = '▲ Amaga';
var NavigationBarShow = '▼ Mostra';
 
var NavigationBarShowDefault = 0;
 
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;
            }
        }
    }
}
 
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 == "destacat") {
         // 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 = "Aquest article ha estat destacat en la seua viqui";
            }
         }
      }
   }
}
 
if (window.addEventListener) window.addEventListener("load",LinkFA,false);
else if (window.attachEvent) window.attachEvent("onload",LinkFA);
 
function addLoadEvent(func) {
   if (window.addEventListener) {
       window.addEventListener("load", func, false);
   } else if (window.attachEvent) {
       window.attachEvent("onload", func);
   }
}
 
 
function DiscussioTaverna() 
{
  if(document.title.search("Viquinotícies:La cantina") != -1)
    document.body.className = "ns-1";
}
 
addLoadEvent(DiscussioTaverna);
 
 
//**************************************************************
// Permet configurar el joc de caràcters especials.
// Adaptat de la versió anglesa
// per ca:Usuari:Martorell
//
// Afegida possibilitat de personalització (Vegeu [[w:Viquipèdia:Scripts]])
// per ca:Usuari:Joanjoc
//**************************************************************
 
/* Encapsulem la funció amb paràmetres, ja que l'addLoadEvent no n'accepta */
function addCharSubsetMenu()
{
   addCharSubsetMenuVar(21);
}
 
 
/* Afegeix un menu per a seleccionar subconjunts de caràcters especials */
/***** ha d'avenir-se amb MediaWiki:Copyrightwarning *****/
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';
  }
}
 
 
function addCharSubsetMenuVar(s) {
  var copywarn = document.getElementById('specialchars');
 
  if (copywarn) {
    var aIdx = new Array();
    aIdx[s] = "selected=\"selected\"";
 
    var menu = "<span style=\"margin-top:1px 1px 1px 1px;border-width:1px;border-style:solid;border-color:#aaaaaa;padding:2px 2px 2px 2px;position:relative;\"><b><a href=\"http://meta.wikipedia.org/Help:Special_characters\" ALT=\"meta:Help:Special_characters\">Caràcters especials</a></b>: <select id=\"charsetBox\" style=\"display:inline\" onChange=\"chooseCharSubset(selectedIndex)\">";
    menu += "<option "+aIdx[0]+">AHD</option>";
    menu += "<option "+aIdx[1]+">Alemany</option>";
    menu += "<option "+aIdx[2]+">Anglés antic</option>";
    menu += "<option "+aIdx[3]+">Castellà</option>";
    menu += "<option "+aIdx[4]+">Català</option>";
    menu += "<option "+aIdx[5]+">Croata</option>";
    menu += "<option "+aIdx[6]+">Ciríl·lic</option>";
    menu += "<option "+aIdx[7]+">Escandinau</option>";
    menu += "<option "+aIdx[8]+">Esperanto</option>";
    menu += "<option "+aIdx[9]+">Estonià</option>";
    menu += "<option "+aIdx[10]+">Fonètica</option>";
    menu += "<option "+aIdx[11]+">Formatació</option>";
    menu += "<option "+aIdx[12]+">Francés</option>";
    menu += "<option "+aIdx[13]+">Galés</option>";
    menu += "<option "+aIdx[14]+">Grec</option>";
    menu += "<option "+aIdx[15]+">Hawaià</option>";
    menu += "<option "+aIdx[16]+">Islandés</option>";
    menu += "<option "+aIdx[17]+">Italià</option>";
    menu += "<option "+aIdx[18]+">Japonés (romaji)</option>";
    menu += "<option "+aIdx[19]+">Llatí</option>";
    menu += "<option "+aIdx[20]+">Maltés</option>";
    menu += "<option "+aIdx[21]+">Misc.</option>";
    menu += "<option "+aIdx[22]+">Pinyin</option>";
    menu += "<option "+aIdx[23]+">Portugués</option>";
    menu += "<option "+aIdx[24]+">Romanés</option>";
    menu += "<option "+aIdx[25]+">Serbi</option>";
    menu += "<option "+aIdx[26]+">Txec</option>";
    menu += "<option "+aIdx[27]+">Vietnamés</option>";
    menu += "</select></span>";
    copywarn.innerHTML = menu + copywarn.innerHTML;
 
    chooseCharSubset(s);
  }
}
 
 
/* select subsection of special characters */
 
addLoadEvent(addCharSubsetMenu);
 
 
/*** Per a amagar títol de portada*/
 
function trobaElementXSelectorCSS(selName)
{
        var arr = new Array();
        var elems = document.getElementsByTagName("*");
        for ( var cls, i = 0; ( elem = elems[i] ); i++ )
        {
                if (( elem.className == selName ) || ( elem.idName == selName ))
                {
                        arr[arr.length] = elem;
                }
        }
        return arr;
}
 
function AmagaTitolPortada()
{
    if(document.title.search("Usuari:Martorell/Laboratori/Reforma portada 2") != -1)
    {
        trobaElementXSelectorCSS('firstHeading')[0].style.display = 'none';
        trobaElementXSelectorCSS('firstHeading')[0].style.visibility = 'hidden';
        trobaElementXSelectorCSS('subpages')[0].style.display = 'none';
        trobaElementXSelectorCSS('subpages')[0].style.visibility = 'hidden';
    }
 
    if((document.title.search("Portada") != -1) && (document.title.search("Discussió:Portada") == -1))
    {
        trobaElementXSelectorCSS('firstHeading')[0].style.display = 'none';
        trobaElementXSelectorCSS('firstHeading')[0].style.visibility = 'hidden';
        trobaElementXSelectorCSS('subpages')[0].style.display = 'none';
        trobaElementXSelectorCSS('subpages')[0].style.visibility = 'hidden';
    } else if (document.title.search("Discussió:Portada") != -1)
      {
          for(var i=0; etiqueta = document.getElementsByTagName("div")[i]; i++)
          {
              if (etiqueta.IDName == "contentSub")
              { etiqueta.setAttribute('style', 'display:none; visibility:hidden;'); }
          }
       }
}
 
addLoadEvent(AmagaTitolPortada);
 
 
//********************************************************************************
// Funció copiada de la versió francesa, 
// per arreglar error de botons de la barra d'eines d'edició detectat el 19/4/2006
// versió de mediawiki 1.7alpha (r13579)
// Pot ser que en el pròxim canvi de versió del programari, s'hagi d'eliminar
//********************************************************************************
function mwInsertEditButton(parent, item) {
        var image = document.createElement("img");
        image.width = 23;
        image.height = 22;
        image.src = item.imageFile;
        image.border = 0;
        image.style.cursor = "pointer";
        var ref = document.createElement("a")
        ref.setAttribute("href", "javascript:insertTags(\"" + item.tagOpen + "\",\"" + item.tagClose + "\",\"" + item.sampleText + "\");")
        ref.setAttribute("title", item.speedTip);
        ref.appendChild(image);
 
        parent.appendChild(ref);
}
 
//============================================================
// Afegir botons extres  a la barra d'eines d'edició 
//============================================================
 
/* Adaptat dee la Viquipèdia francesa
 * @autor: fr:user:dake
 * @versió: 0.1
 */
 
function InserirBotonsBarraEines()
{
 tooly = document.getElementById('toolbar');
 if (tooly == null) return;
// Botó per a enllaçar articles amb la Viquipèdia. 
WikipediaTextButton = "<a href=\"javascript:insertTags('{{w{{!}}','}}','Article de la Viquipèdia a enllaçar');\"><img src=\"http://upload.wikimedia.org/wikipedia/commons/9/9c/Wikipedia-button-logo.PNG\" alt=\"Enllaç a la Viquipèdia\" title=\"Enllaçar a un article de la Viquipèdia\"></a>";
StrikeTextButton = "<a href=\"javascript:insertTags('<s>','</s>','');\"><img src=\"http://upload.wikimedia.org/wikipedia/commons/3/30/Btn_toolbar_rayer.png\" alt=\"Ratllar el text\" title=\"Ratllar el text\"></a>";
 EnumTextButton = "<a href=\"javascript:insertTags('\\n# element 1\\n# element 2\\n# element 3','','');\"><img src=\"http://upload.wikimedia.org/wikipedia/commons/8/88/Btn_toolbar_enum.png\" alt=\"Enumeració\" title=\"Enumeració\"></a>";
 ListTextButton = "<a href=\"javascript:insertTags('\\n* element A\\n* element B\\n* element C','','');\"><img src=\"http://upload.wikimedia.org/wikipedia/commons/1/11/Btn_toolbar_liste.png\" alt=\"Llista\" title=\"Llista\"></a>";
 GalleryButton = "<a href=\"javascript:insertTags('\\n<gallery>\\nImage:Vista-openbsd.png|Llegenda\\nImage:AMule.png|Llegenda\\nImage:Cyberduck icon.png|Llegenda\\n</gallery>','','');\"><img src=\"http://upload.wikimedia.org/wikipedia/commons/9/9e/Btn_toolbar_gallery.png\" alt=\"Galeria d'imatges\" title=\"Galeria d'imatges\"></a>";
 CommentTextButton = "<a href=\"javascript:insertTags('<!--','-->','');\"><img src=\"http://upload.wikimedia.org/wikipedia/commons/3/37/Btn_toolbar_commentaire.png\" alt=\"Comentari ocult\" title=\"Comentari ocult\"></a>";
 RedirectButton = "<a href=\"javascript:insertTags('#REDIRECT [[',']]','Article destí');\"><img src=\"http://upload.wikimedia.org/wikipedia/commons/c/c8/Button_redirect.png\" alt=\"Redirecció\" title=\"Redirecció\"></a>";
 tooly.innerHTML = tooly.innerHTML + StrikeTextButton + EnumTextButton + 
ListTextButton + CommentTextButton + GalleryButton + RedirectButton + WikipediaTextButton;
}
addLoadEvent(InserirBotonsBarraEines);
 
 
//---------------------------------------------------------
// 
// CODI PER AL FUNCIONAMENT DE LA NOVA METACAIXA
//
// Implementat per: Usuari:Peleguer.
//
//---------------------------------------------------------
 
 
function MetaCaixa() {
    //---------------------------------------------------------
    // FUNCIONS D'AJUDA
    //---------------------------------------------------------
 
    // Pren tots els subelements de 'element' ignorant altres
    // subelements que no ens interessen (com comentaris o text).
    // Torna una llista de subelements.
    function PrendreSubElements(element) {
        var resultat = [];                      // llista per al resultat;
        var childNodes = element.childNodes;    // llista de subelements
        var n = childNodes.length;              // nombre de subelements
 
        for (var i = 0; i < n; i++) {
            // si el subelement 'i' es un element dels que busquem
            if (childNodes[i].nodeType == 1) {
                // el guardem en la llista
                resultat.push(childNodes[i] );
            }
        }
 
        return resultat; // tornem la llista de subelements que volem
    }
 
    // Afegix codi a tots els botons per a que es cride a la funció
    // MostrarPestanya quan es faça click sobre un botó.
    function AfegirEventsBotons() {
        var n = botons.length;
        for (var i = 0; i < n; i++) {
            botons[i].onclick = MostrarPestanya;
            botons[i].contingut = continguts[i];
        }
    }
 
    // Mostra una pestanya amagant la resta. 'this' conté
    // el botó sobre el que se ha fet click.
    function MostrarPestanya() {
        // amaguem totes les pestanyes
        var n = continguts.length;
        for (var i = 0; i < n; i++) {
            botons[i].className = "Boto-mc";
            continguts[i].style.display = "none";
        }
        // mostrem la pestanya corresponent
        this.contingut.style.display = "";
        this.className = "BotoSeleccionat-mc";
    }
 
    //---------------------------------------------------------
    // CODI PRINCIPAL
    //---------------------------------------------------------
 
    // Buscar l'element pel seu ID. De moment, solament podem tindre
    // UNA caixa, ja que els ID han de ser únics al codi html.
    var MetaCaixa = document.getElementById("MetaCaixa");
    // si no existeix, eixim del programa
    if (!MetaCaixa) return;
 
    // Asociar els subelements amb variables. Este codi depén de 
    // l'estructura dels DIV. Dóna per suposat que el DIV principal 
    // conté dos DIV:
    //     el primer conté els DIV botons
    //     el segon els DIV de contingut
    var subElements = PrendreSubElements(MetaCaixa);
    var capaBotons      = subElements[0]; // primer subelement
    var capaContinguts  = subElements[1]; // segon subelement
    // tornem a repetir la faena per a trobar els botons i els continguts
    var botons      = PrendreSubElements(capaBotons);
    var continguts  = PrendreSubElements(capaContinguts);
 
    // afegim el codi necessari als botons
    AfegirEventsBotons();
    // fem click sobre el primer botó
 
    if(document.title.search("Plantilla:Metacaixa") != -1)    
    { var psNum = Math.round(3*Math.random()); }
    else
    { var psNum = 0; }
 
    MostrarPestanya.call(botons[psNum]);
}
window.onload = MetaCaixa;
 
/********************************************************************/
/*                                                                  */
/*                    f u n c i ó   b a s e                         */
/*                                                                  */
/********************************************************************/
 
function inclou(url,usuari,nom)   
{
   if (url=="") {url = 'ca.wikipedia.org'; }
   if (usuari=="") {usuari = 'Pepetps'; };  /*no canvieu */
   document.write('<script type="text/javascript" src="' 
+ 'http://' + url + '/w/index.php?title=User:' + usuari 
+ '/' + nom + '&action=raw&ctype=text/javascript&dontcountme=s"></script>');
}
 
/********************************************************************/
/*                                                                  */
/*                     Previsualització Instantània                 */
/*                                                                  */
/********************************************************************/
 
inclou ("","Pepetps","PrevInst.js");
 
//
 
/* </pre> */