MediaWiki:Common.js

El Komunejo

(Malsamoj inter versioj)
Iri al: navigado, serĉi
E (if (document.getElementById('KaŝSkatolChefpagho' + id).innerHTML != visible) ligilo = 'montri';)
E (if !(document.getElementById('KaŝSkatolChefpagho' + i).innerHTML == visible) ligilo = 'montri';)
Linio 461: Linio 461:
     if (!titolo) break;
     if (!titolo) break;
     var ligilo = 'kaŝi';
     var ligilo = 'kaŝi';
-
     if (document.getElementById('KaŝSkatolChefpagho' + id).innerHTML != visible) ligilo = 'montri';
+
     if !(document.getElementById('KaŝSkatolChefpagho' + i).innerHTML == visible) ligilo = 'montri';
     titolo.innerHTML += " <span style='font-size: xx-small; font-weight: normal; float: none; margin-right:100px' class='editsection'>[<a id='KaŝSkatolChefpagho" + i + "' href='javascript:montruSkatolChefpagho(" + i + ");'>" + ligilo + "</a>] </span>";
     titolo.innerHTML += " <span style='font-size: xx-small; font-weight: normal; float: none; margin-right:100px' class='editsection'>[<a id='KaŝSkatolChefpagho" + i + "' href='javascript:montruSkatolChefpagho(" + i + ");'>" + ligilo + "</a>] </span>";
     KaŝSkatolVal[i] = true;
     KaŝSkatolVal[i] = true;

Kiel registrite je 19:05, 16. Jun 2008

/* Ĉiu ajn JavaSkriptaĵo ĉi tie estos ŝarĝita por ĉiu uzanto sur ĉiu paĝo. 
*/
/* <pre> <nowiki> 
iletikedoj kaj rektaj klavoj */   
ta = new Object();  
ta['pt-userpage'] = new Array('.','Mia uzantopaĝo');  
ta['pt-anonuserpage'] = new Array('.','La uzantopaĝo por la IP adreso sub kiu vi estas redaktanta');  
ta['pt-mytalk'] = new Array('n','Mia diskutpaĝo');  ta['pt-anontalk'] = new Array('n','Diskuto pri redaktoj sub tiu ĉi IP adreso');  
ta['pt-preferences'] = new Array('','Miaj preferoj');  
ta['pt-watchlist'] = new Array('l','Listo de paĝoj kies ŝanĝojn vi priatentas.');   
ta['pt-mycontris'] = new Array('y','Listo de miaj kontribuoj');  
ta['pt-login'] = new Array('o','Vi estas invitita ensaluti, tamen ne estas devige.');  
ta['pt-anonlogin'] = new Array('o','Vi estas invitita ensaluti, tamen ne estas devige.');  
ta['pt-logout'] = new Array('o','Elsalutu');  
ta['ca-talk'] = new Array('t','Diskuto pri la artikolo');  
ta['ca-edit'] = new Array('e','Vi povas redakti tiun ĉi paĝon. Bv uzi la antaŭvidbutonon antaŭ ol konservi.'); 
ta['ca-addsection'] = new Array('+','Aldonu komenton al tiu diskuto.');  
ta['ca-viewsource'] = new Array('e','Tiu paĝo estas protektita. Vi povas nur rigardi ties fonton.'); 
ta['ca-history'] = new Array('h','Antaŭaj versioj de tiu ĉi paĝo.'); 
ta['ca-protect'] = new Array('=','Protektu tiun ĉi paĝon'); 
ta['ca-delete'] = new Array('d','Forigu tiun ĉi paĝon'); 
ta['ca-undelete'] = new Array('d','Restarigu la redaktojn faritajn al tiu ĉi paĝo antaŭ ties forigo'); 
ta['ca-move'] = new Array('m','Renomu tiun ĉi paĝon'); 
ta['ca-nomove'] = new Array('','Vi ne rajtas renomi tiun ĉi paĝon');  ta['ca-watch'] = new Array('w','Aldonu tiun ĉi paĝon al via atentaro'); 
ta['ca-unwatch'] = new Array('w','Forigu tiun ĉi paĝon el via atentaro');  ta['search'] = new Array('f','Traserĉu tiun ĉi vikion'); 
ta['p-logo'] = new Array('','Ĉefpaĝo'); 
ta['n-mainpage'] = new Array('z','Vizitu la Ĉefpaĝon'); 
ta['n-portal'] = new Array('','Pri la projekto, kion vi povas fari, kie vi povas trovi ion'); 
ta['n-currentevents'] = new Array('','Trovu fonajn informojn pri nunaj eventoj'); 
ta['n-recentchanges'] = new Array('r','Listo de la lastaj ŝanĝoj en la vikio.'); 
ta['n-randompage'] = new Array('x','Vidu hazardan paĝon');  ta['n-help'] = new Array('','Serĉopaĝo.'); 
ta['n-sitesupport'] = new Array('','Subtenu nin per mono'); 
ta['t-whatlinkshere'] = new Array('j','Listo de ĉiuj vikiaj paĝoj kij ligas ĉi tien'); 
ta['t-recentchangeslinked'] = new Array('k','Lastaj ŝanĝoj en paĝoj kiuj ligas al tiu ĉi paĝo'); 
ta['feed-rss'] = new Array('','RSS-fonto por tiu ĉi paĝo'); 
ta['feed-atom'] = new Array('','Atom-fonto por ĉi paĝo'); 
ta['t-contributions'] = new Array('','Vidu la liston de kontribuoj de tiu ĉi uzanto'); 
ta['t-emailuser'] = new Array('','Sendu retmesaĝon al tiu ĉi uzanto'); 
ta['t-upload'] = new Array('u','Alŝutu bildojn aŭ dosierojn'); 
ta['t-specialpages'] = new Array('q','Listo de ĉiuj specialaj paĝoj'); 
ta['ca-nstab-main'] = new Array('c','Vidu la artikolon'); 
ta['ca-nstab-user'] = new Array('c','Vidu la personan paĝon de la uzanto'); 
ta['ca-nstab-media'] = new Array('c','Vidu la paĝon de la dosiero'); 
ta['ca-nstab-special'] = new Array('','Estas speciala paĝo, vi ne rajtas redakti ĝin.'); 
ta['ca-nstab-wp'] = new Array('a','Vidu la paĝon de la projekto'); 
ta['ca-nstab-image'] = new Array('c','Vidu la paĝon de la bildo'); 
ta['ca-nstab-mediawiki'] = new Array('c','Vidu la sisteman mesaĝon'); 
ta['ca-nstab-template'] = new Array('c','Vidu la ŝablonon'); 
ta['ca-nstab-help'] = new Array('c','Vidu la helppaĝon'); 
ta['ca-nstab-category'] = new Array('c','Vidu la paĝon de kategorioj');
 
 
//============================================================
//
// KAŜSKATOLOJ
//
//============================================================
// BEGIN Dynamic Navigation Bars (eksperimenta)
 
// set up the words in your language
var NavigationBarHide = '[ Kaŝi ]';
var NavigationBarShow = '[ Montri ]';
 
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;
   }
 
   // ajout par Dake - permet de créer un titre en lieu et place du "Dérouler" grâce
   // à l'attribut "title" du tag.
   var ShowText;
 
   if (NavFrame.title == undefined || NavFrame.title.length == 0 ) {
    ShowText = NavigationBarShow;
   } else {
    ShowText = NavFrame.title;
   }
 
   // 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 = ShowText;
           }
       }
 
   // if hidden now
   } else if (NavToggle.firstChild.data == ShowText) {
       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);
       }
   }
}
 
addOnloadHook(createNavigationBarToggleButton);
  // END Dynamic Navigation Bars
 
//============================================================
//
// ELSTARAJ KAJ LEGINDAJ ARTIKOLOJ
//
//============================================================
 
/**
* Aldonas apartan signon al interlingvaj ligiloj al elstaraj au legindaj artikoloj 
*/
function LinkFA() {
  // links are only replaced in p-lang
  var pLang = document.getElementById("p-lang");
  if (!pLang) return;
  var lis = pLang.getElementsByTagName("li");
  for (var i=0; i<lis.length; i++) {
    var li = lis[i];
    // FA- estas celita por respndi al ŝablono LigoElstara : nepre ne ŝanĝenda 
    if (document.getElementById("FA-" + li.className)) {
      li.className += " FA";
      li.title = "Ĉi tiu estas elstara artikolo.";
    } else if (document.getElementById("BA-" + li.className)) {
      li.className += " BA";
      li.title = "Ĉi tiu estas leginda artikolo.";
    } else if (document.getElementById("PdQ-" + li.className)) {
      li.className += " PdQ";
      li.title = "Ĉi tiu estas elstara portalo";
    }
  }
}
addOnloadHook(LinkFA);
 
 
//============================================================
//
// ILARO
//
//============================================================
 
//============================================================
// Tabelkreilo
//============================================================
 
/**
*
* English: Generate an array using Mediawiki syntax
*
* @author: fr:user:dake
* @version: 0.1
*/
 
function generateTableau(nbCol, nbRow, border, styleHeader, styleLine)
{
        var code = "\n";
        if (styleHeader==1) {
                code += '{'+'{TabelKapoLaŭĈarta}'+'}\n';
        } else {
                code += '{| border="' + border + '"\n';
                code += '|+ Tabeltitolo\n';
        }
 
        for (var i=0;i<nbCol;i++) code += '! kapo ' + i + '\n'
 
        for (var j=0;j<nbRow;j++) {
                if ((j+1)%2==0 && styleLine==1) {
                        code += '|-{'+'{GrizaLinio}'+'}\n'
                } else {                
                        code += '|-----\n'
                }
 
                for (var i=0;i<nbCol;i++) code += '| elemento\n';
        }
 
        code += '|}';
        insertTags('','', code); 
}
 
/**
*
* English: Open a popup with parameters to generate an array. 
* The number of rows/columns can be modified. Some additional
* parameters are related to templates available on :fr
*
* @author: fr:user:dake
* @version: 0.1
*/
 
function popupTableau()
{
  var popup = window.open('','name','height=400,width=500');
 
  javaCode =  '<script type="text\/javascript">function insertCode(){';
  javaCode += 'var row = parseInt(document.paramForm.inputRow.value); '
  javaCode += 'var col = parseInt(document.paramForm.inputCol.value); '
  javaCode += 'var bord = parseInt(document.paramForm.inputBorder.value); '
  javaCode += 'var styleHeader = document.paramForm.inputHeader.checked; '
  javaCode += 'var styleLine = document.paramForm.inputLine.checked; '
  javaCode += 'window.opener.generateTableau(col,row,bord,styleHeader,styleLine); '
  javaCode += '}<\/script>';
 
    popup.document.write('<html><head><title>Parametroj de la tabelo</title>');
  popup.document.write('<script type="text\/javascript" src="\/skins-1.5\/common\/wikibits.js"><!-- wikibits js --><\/script>');
  popup.document.write('<style type="text\/css" media="screen,projection">/*<![CDATA[*/ @import "\/skins-1.5\/monobook\/main.css?5"; *]]>*/<\/style>');
  popup.document.write(javaCode); 
  popup.document.write('</head><body>');
  popup.document.write('<p>Bonvolu entajpi la parametrojn de la tabelo : </p>');
  popup.document.write('<form name="paramForm">');
  popup.document.write('Lininombro : <input type="text" name="inputRow" value="3" ><p>');
  popup.document.write('Kolumnnombro : <input type="text" name="inputCol" value="3" ><p>');
  popup.document.write('Randolarĝeco  : <input type="text" name="inputBorder" value="1" ><p>');
  popup.document.write('Griza tabelkapo (stilo lauĉarta) : <input type="checkbox" name="inputHeader" checked="1" ><p>');
  popup.document.write('Alternaj grizaj linioj (stilo lauĉarta) : <input type="checkbox" name="inputLine" checked="1" ><p>');
  popup.document.write('</form">');
  popup.document.write('<p><a href="javascript:insertCode()"> Enmetu la kodon en la redaktofenestron</a></p>');
  popup.document.write('<p><a href="javascript:self.close()"> Fermu</a></p>');
  popup.document.write('</body></html>');
  popup.document.close();
}
 
//============================================================
// Enmeto de novaj butonoj en la redaktilarstrio
//============================================================
 
//Ressemble à la fonction de /skins-1.5/commons/wikibits.js pour insérer un autre lien que insertTags
 
 
//Plenigas la variablon mwCustomEditButtons (vidu /skins-1.5/commons/wikibits.js) por aldoni butonojn en la redaktostrio 
function addCustomButton(imageFile, speedTip, tagOpen, tagClose, sampleText, imageId) {
  mwCustomEditButtons[mwCustomEditButtons.length] =
    {"imageId": imageId,
     "imageFile": imageFile,
     "speedTip": speedTip,
     "tagOpen": tagOpen,
     "tagClose": tagClose,
     "sampleText": sampleText};
}
 
 
addCustomButton('http://upload.wikimedia.org/wikipedia/commons/0/04/Button_array.png','Tabelo','{|\n|-\n|\n|\n|}','','','mw-editbutton-array');
if (wgNamespaceNumber != 0) addCustomButton('http://upload.wikimedia.org/wikipedia/commons/c/c9/Button_strike.png','Forstreki','<s>','</s>','','mw-editbutton-strike');
addCustomButton('http://upload.wikimedia.org/wikipedia/commons/8/88/Btn_toolbar_enum.png','Numerita listo','\n# elemento 1\n# elemento 2\n# elemento 3','','','mw-editbutton-enum');
addCustomButton('http://upload.wikimedia.org/wikipedia/commons/1/11/Btn_toolbar_liste.png','Listo','\n* elemento A\n* elemento B\n* elemento C','','','mw-editbutton-liste');
addCustomButton('http://upload.wikimedia.org/wikipedia/commons/9/9e/Btn_toolbar_gallery.png','Bildaro','\n<gallery>\nDosiero:M63.jpg|[[M63]]\nDosiero:Mona Lisa.jpg|[[La Gioconda]]\nDosiero:Truite arc-en-ciel.jpg|[[Fiŝo|Ĉielarka truto]]\n</gallery>','','','mw-editbutton-gallery');
addCustomButton('http://upload.wikimedia.org/wikipedia/commons/3/37/Btn_toolbar_commentaire.png','Komento','<!--','-->','','mw-editbutton-comment');
addCustomButton('http://upload.wikimedia.org/wikipedia/en/c/c8/Button_redirect.png','Redirekto','#REDIRECT [[',']]','redirektocelo','mw-editbutton-redir'); 
addCustomButton('http://upload.wikimedia.org/wikipedia/commons/3/3b/Button_template_alt.png','Ŝablono','{{','}}','enmetenda ŝablono aŭ paĝo','mw-editbutton-template');
addCustomButton('http://upload.wikimedia.org/wikipedia/commons/c/c4/Button_ref.png','Referenco','<ref>','</ref>','reference, citaĵo aŭ ligilo','mw-editbutton-ref'); 
addCustomButton('http://upload.wikimedia.org/wikipedia/commons/6/64/Buttonrefvs8.png','Referenca sekcio','== Notoj kaj referencoj ==\n<references /> <!-- Helpo : http://eo.wikipedia.org/wiki/Helpo:Referencoj kaj piednotoj -->','','','mw-editbutton-references');
addCustomButton('http://upload.wikimedia.org/wikipedia/commons/b/b0/Button_category02.png','Kategorio','[[Kategorio:',']]','Kategorionomo','mw-editbutton-category');
var viduAnkau = '<!-- Aneksprezentsugesto  helpo : http://eo.wikipedia.org/wiki/Helpo:Referencoj kaj piednotoj -->\n'
+ '== Notoj kaj referencoj de la artikolo ==\n'
+ '<references/>\n'
+ '== Vidu ankaŭ ==\n'
+ '=== Rilataj artikoloj ===\n'
+ '* [[Anstataŭigenda]]\n'
+ '*\n'
+ '=== Eksteraj ligiloj kaj dokumentoj===\n'
+ '*\n';
addCustomButton('http://upload.wikimedia.org/wikipedia/commons/b/bb/Seealso.png','Sekcio Vidu ankaŭ',viduAnkau,'','','mw-editbutton-voiraussi');
 
 
// Ŝanĝi la ligilon de la tabelkrea butono kaj forigas la subskriban butonon el artikolaj paĝoj 
 
function chang_buttons() {
  toolbarArray = document.getElementById('mw-editbutton-array');
  if (toolbarArray) {
    toolbarArray.onclick = function() {
      popupTableau();
      return false;
    }
  }
 
  var btnSigImg = document.getElementById('mw-editbutton-signature');
  if (btnSigImg && wgNamespaceNumber == 0) btnSigImg.style.display = "none";
}
hookEvent('load', chang_buttons);
 
 
 
 
 
 
/** WikiMiniAtlas *******************************************************
   *
   *  Priskribo: WikiMiniAtlas estas ŝprucanta alklakebla kaj tirebla mondmapo. 
   *             La skripto estigas ke ĉiuj viaj koordinataj ligiloj montras la WikiMiniAtlas-ŝprucbutonon. 
   *             La skripto mem estas lokita sur meta ĉar ĝi estas uzata de multaj projektoj. 
   *             Vidu [[Meta:WikiMiniAtlas]] por plia informo. 
   *  Kreita de : [[:en:User:Dschwen]]
   */
 
document.write('<script type="text/javascript" src="' 
     + 'http://meta.wikimedia.org/w/index.php?title=MediaWiki:Wikiminiatlas.js' 
     + '&action=raw&ctype=text/javascript&smaxage=21600&maxage=86400"></script>');
 
 
 
 
// Ebligas montri kaŝitajn kategoriojn por enskribitaj uzuloj 
// aldonante (+) kiel ĉe kaŝskatoloj
 
function hiddencat()
{
var cl = document.getElementById('catlinks');           if(!cl) return;
var hc = document.getElementById('mw-hidden-catlinks'); if(!hc) return;
var nc = document.getElementById('mw-normal-catlinks'); if(!nc) return;
if(hc.className == 'mw-hidden-cats-hidden')
{
var ahc = ' | <a onclick="javascript:toggleHiddenCats();" id="mw-hidden-cats-link" style="cursor:pointer; color:black;" title="Ĉi tiu artikolo apartenas al kaŝita(j) kategorio(j)">[+]</a>';
document.getElementById('mw-normal-catlinks').innerHTML += ahc;
}
}
function toggleHiddenCats()
{
var hc = document.getElementById('mw-hidden-catlinks');
if(hc.className == 'mw-hidden-cats-hidden')
{
hc.setAttribute('class', 'mw-hidden-cat-user-shown');
document.getElementById('mw-hidden-cats-link').innerHTML = '[–]';
}
else
{
hc.setAttribute('class', 'mw-hidden-cats-hidden');
document.getElementById('mw-hidden-cats-link').innerHTML = '[+]';
}
}
 
addOnloadHook(hiddencat);
 
/**
 * Por akiri la valoron de kuketo
 */
function getCookieVal(name) {
  var cookiePos = document.cookie.indexOf(name + "=");
  var cookieValue = false;
  if (cookiePos > -1) {
    cookiePos += name.length + 1;
    var endPos = document.cookie.indexOf(";", cookiePos);
    if (endPos > -1)
      cookieValue = document.cookie.substring(cookiePos, endPos);
    else
      cookieValue = document.cookie.substring(cookiePos);
  }
  return cookieValue;
}
 
/**
 * getElementsByClass : priserĉas la erojn de la paĝo kies parametro "class" estas tiu prioserĉata
 */
function getElementsByClass(searchClass, node, tag) {
  if (node == null) node = document;
  if (tag == null) tag = '*';
  return getElementsByClassName(node, tag, searchClass);
}
 
 
/**
 * Kaŝas la skatolojn de la ĉefpaĝo
 *
 * Aldonas ligilon sur la ĉefpaĝon por facile kaŝi la skatolojn 
 * Memorigita per kuketo
 * Kopirajto 2007, fr:user:Plyd kaj fr:User:IAlex. Licencoj GFDL kaj GPL.
 * Esperantigita de eo:Vikipediisto:ArnoLagrange
 */
var kuketKaŝSkatolNomo = "kaŝSkatolChefpagho";
var KaŝSkatolVal = {};
var sumSkatolChefpagho = 0;
 
function montruSkatolChefpagho(id) {
  visible = KaŝSkatolVal[id] = (!KaŝSkatolVal[id]);
  getElementsByClass('chefpagh_enteno',null,'div')[id].style.display = visible ? 'block' : 'none';
  document.getElementById('KaŝSkatolChefpagho' + id).innerHTML = visible ? 'kaŝi' : 'montri';
  konserviKuketonChefpagho();
}
 
function konserviKuketonChefpagho() {
  var date = new Date();
  date.setTime(date.getTime() + 30*86400*1000);
  var val = 0;
  for ( var i=0; i< sumSkatolChefpagho ; i++ ) {
    if (!KaŝSkatolVal[i]) val = val | Math.pow(2,i);
  }
  document.cookie = kuketKaŝSkatolNomo + "=" + val + "; expires="+date.toGMTString() + "; path=/";
}
 
function LigilojSkatolChefpagho() {
//  if (wgPageName != "Ĉefpaĝo") return;
  kuketSkatolChefpagho = getCookieVal(kuketKaŝSkatolNomo);
  for ( var i=0; i<11; i++) { 
    var titolo = getElementsByClass('grizakapo',document,'h2')[i];
    if (!titolo) break;
    var ligilo = 'kaŝi';
    if !(document.getElementById('KaŝSkatolChefpagho' + i).innerHTML == visible) ligilo = 'montri';
    titolo.innerHTML += " <span style='font-size: xx-small; font-weight: normal; float: none; margin-right:100px' class='editsection'>[<a id='KaŝSkatolChefpagho" + i + "' href='javascript:montruSkatolChefpagho(" + i + ");'>" + ligilo + "</a>] </span>";
    KaŝSkatolVal[i] = true;
    sumSkatolChefpagho++;
  }
  kuketSkatolChefpagho = getCookieVal(kuketKaŝSkatolNomo);
  for ( var i=0; i< sumSkatolChefpagho ; i++ ) {
    n =Math.pow(2,i);
    aff = !(kuketSkatolChefpagho & n);
    if (!aff) montruSkatolChefpagho(i);
  }
}
addOnloadHook(LigilojSkatolChefpagho);
 
/*  </nowiki> </pre>*/
Personaj iloj