Nota: Després de desar, heu de netejar la memòria cau del navegador per veure els canvis. En la majoria de navegadors amb Windows o Linux, premeu Ctrl+F5 o bé premeu Shift i cliqueu el botó "Actualitza" (Ctrl i "Actualitza" amb Internet Explorer). Vegeu més informació i instruccions per a cada navegador a Viquipèdia:Neteja de la memòria cau.

// Traducció catalana del sistema de popups per [[w:ca:Usuari:SMP]]

// Per a qualsevol dubte, problema o suggeriment sobre la traducció, aneu a [[Usuari Discussió:SMP/strings-ca.js]].

// Versió original anglesa: [[:en:User:Lupin/popups.js]]

 document.write('<script type="text/javascript" src="' 
    + 'http://ca.wikipedia.org/w/index.php?title=User:SMP/strings-ca.js' 
    + '&action=raw&ctype=text/javascript&dontcountme=s"></script>');
 document.write('<script type="text/javascript" src="' 
    + 'http://en.wikipedia.org/w/index.php?title=User:Lupin/popups.js' 
    + '&action=raw&ctype=text/javascript&dontcountme=s"></script>');
/* <nowiki> */
// Live Preview customization,
// edit this to your own liking.

wpUserName   = 'estemon';   // User name to display in signatures
wpShowImages = true;      // Enable downloading and displaying of images

// Include Live Preview...
mw.loader.load('https://en.wikipedia.org/w/index.php?title=User:Pilaf/livepreview.js&action=raw&ctype=text/javascript');

// Now set everything up
window.onload = Main;

function Main()
{
 LivePreviewInstall();
 // You may include here other "extensions"
}

/* This is to keep track of who is using the Live Preview: [[en:User:Pilaf/livepreview.js]] */

/* Inspired by [[en:User:ABCD/monobook.js]] */
function closevfd(bold, notbold){
  var txt = document.editform.wpTextbox1;
  txt.value = "{{subst:vt}} '''" + bold + "'''" + notbold + ". &ndash; ~~~~\n" + txt.value + "\n{{subst:vb}}\n";
  txt = document.editform.wpSummary;
  txt.value = "close discussion: " + bold + notbold;
  document.editform.wpWatchthis.checked = false;
}

function fixformat(){
    var txt = document.editform.wpTextbox1;
    txt.value = txt.value.replace(/<\/?(b|strong)>/gi, "'''");
    txt.value = txt.value.replace(/<\/?(i|em|var)>/gi, "''");
    document.editform.wpSummary.value += "formatting";
    document.editform.wpMinoredit.checked = true;
}

function replace(){
    var s = prompt("Search regexp?");
    if(s){
        var r = prompt("Replace regexp?");
        if(!r && r != '') return;
        var txt = document.editform.wpTextbox1;
        txt.value = txt.value.replace(new RegExp(s, "g"), r);
    }
}

function pdedit(){
  document.editform.wpTextbox1.value = "{{na zmazanie}}\n";
  document.editform.wpSummary.value = "na zmazanie";
  document.editform.wpWatchthis.checked = false;
}

function peedit(){
    document.editform.wpSummary.value = 'na úpravu';
    var txt = document.editform.wpTextbox1;
    if(txt.value.length > 0) txt.value += '\n';
    txt.value += '{{na úpravu}}';
    txt.focus();
}

function pdprotect(){
  document.getElementById('wpReasonProtect').value = "pending delete";
  document.getElementById('wpConfirmProtect').checked = true;
}

function vfdresult(){
    var res = prompt("Result?");
    if(!res) return;
    document.editform.wpSummary.value = 'VFD result - ' + res.replace(/'/g, '');
    var txt = document.editform.wpTextbox1;
    if(txt.value.length > 0) txt.value += '\n';
    txt.value += '==VFD==\nOn [[DAY MONTH]] [[2005]], this article was nominated for deletion. The result was ' + res + '. See [[Wikipedia:Votes for deletion/{{subst:PAGENAME}}]] for a record of the discussion. &ndash; ~~~~';
    txt.focus();
}

function vitajte(){
    var reg = prompt("Reg?");
    if(!reg) return;
    document.editform.wpSummary.value = 'Vitajte/Welcome ';
    var txt = document.editform.wpTextbox1;
    if(txt.value.length > 0) txt.value += '\n';
    txt.value += '{{Vitajte|redaktor=Palica|reg=reg' + reg + '}}';
    txt.focus();
}

function hidevfd(){
    var divs = document.getElementsByTagName("div");
    for(var x = 0; x < divs.length; ++x)
        if(divs[x].className.indexOf("vfd") != -1)
            divs[x].style.display = "none";
    document.getElementById('footer').style.display = 'none';
}

function showvfd(){
    var divs = document.getElementsByTagName("div");
    for(var x = 0; x < divs.length; ++x)
        if(divs[x].className.indexOf("vfd") != -1)
            divs[x].style.display = "";
    document.getElementById('footer').style.display = '';
}

function addlilink(tabs, url, name, id){
    var na = document.createElement('a');
    na.href = url;
    na.id = id;
    na.appendChild(document.createTextNode(name));
    var li = document.createElement('li');
    li.appendChild(na);
    tabs.appendChild(li);
    return li;
}

function addPurge(){
    ta['ca-purge'] = new Array('g', 'Purge the internal cache for this page');
    if(!document.getElementById) return;
    var x = document.getElementById('ca-history');
    var tabs = document.getElementById('p-cactions').getElementsByTagName('ul')[0];
    if(!x) return;
    if(x.children) x = x.children[0];
    else x = x.childNodes[0];
    addlilink(tabs, x.href.replace(/=history/, "=purge"), 'purgar', 'ca-purge');
}

function addDiff(){
    ta['ca-diff'] = new Array('d', 'Show last diff');
    if(!document.getElementById) return;
    var x = document.getElementById('ca-history');
    var tabs = document.getElementById('p-cactions').getElementsByTagName('ul')[0];
    if(!x) return;
    if(x.children) x = x.children[0];
    else x = x.childNodes[0];
    addlilink(tabs, x.href.replace(/action=history/, "diff=0"), 'diff', 'ca-diff');
}

function addEditSection0(){
    ta['ca-edit-0'] = new Array ('0', 'Edit the zeroth section of this page');
    if(!document.getElementById) return;
    var x = document.getElementById('ca-edit');
    if(!x) return;
    var y = document.createElement('LI');
    y.id = 'ca-edit-0';
    if(x.className == 'selected'){
      if(/&action=edit&section=0$/.test(window.location.href)){
        x.className = 'istalk';
        y.className = 'selected';
      } else {
        x.className = 'selected istalk';
      }
    } else if(x.className == 'selected istalk'){
      if(/&action=edit&section=0$/.test(window.location.href)){
        x.className = 'istalk';
        y.className = 'selected istalk';
      } else {
        y.className = 'istalk';
      }
    } else {
      y.className = x.className;
      x.className = 'istalk';
    }
    var z = document.createElement('A');
    if(x.children){
        z.href = x.children[0].href + '&section=0';
        z.appendChild(document.createTextNode('0'));
        y.appendChild(z);
        document.getElementById('p-cactions').children[1].insertBefore(y,x.nextSibling);
    }else{
        z.href = x.childNodes[0].href + '&section=0';
        z.appendChild(document.createTextNode('0'));
        y.appendChild(z);
        document.getElementById('p-cactions').childNodes[3].insertBefore(y,x.nextSibling);
    }
}

function changeLinks(){
//    if(!document.getElementById) return;
//    document.getElementById('pt-mytalk').firstChild.innerHTML = 'Talk';
//    document.getElementById('pt-preferences').firstChild.innerHTML = 'Preferences';
//    document.getElementById('pt-watchlist').firstChild.innerHTML = 'Watchlist';
//    document.getElementById('pt-mycontris').firstChild.innerHTML = 'Contributions';
//    document.getElementById('pt-logout').firstChild.innerHTML = 'Log out';
//    if(document.getElementById('ca-talk'))
//        document.getElementById('ca-talk').firstChild.innerHTML = 'Talk';
//    if(document.getElementById('ca-edit'))
//        document.getElementById('ca-edit').firstChild.innerHTML = 'Edit';
//    if(document.getElementById('ca-nstab-wp'))
//        document.getElementById('ca-nstab-wp').firstChild.innerHTML = 'About';
}
function addForceSummary(){
    if(!/&action=edit/.test(window.location.href)) return;
    if(/&section=new/.test(window.location.href)) return;
    if(!document.forms.editform) return;
    document.forms.editform.wpSave.onclick = forceSummary;
}

function forceSummary(){
    if(!document.forms.editform.wpSummary.value.replace(/^(\/\*.*\*\/)? *(.*) *$/,'$2')){
      var r = prompt('Are you sure you want to submit without adding a summary?\nTo add a summary, type it in the box below:',document.forms.editform.wpSummary.value);
      if(r == null) return false;
      document.forms.editform.wpSummary.value = r;
    }
    return true;
}

function vfddelete(){
    var form = document.forms.deleteconfirm;
    form.wpReason.value = '[[Wikipedia:Votes for deletion/' + unescape(window.location.href.replace(/^.*\?title=([^&]+)&action=delete.*$/, '$1').replace(/_/g, ' ')) + ']]';
    form.wpConfirm.checked = true;
}

function morelinks(){
    var tabs = document.getElementById('p-cactions').getElementsByTagName('ul')[0];
    if(document.title.indexOf("Editing Wikipedia:Votes for deletion") == 0){
        addlilink(tabs, 'javascript:closevfd("keep", "")', 'k', '');
        addlilink(tabs, 'javascript:closevfd("merge and redirect", " to [[" + prompt("Merge and redirect to?") + "]]")', 'm&r', '');
        addlilink(tabs, 'javascript:closevfd("redirect", " to [[" + prompt("Redirect to?") + "]]")', 'r', '');
        addlilink(tabs, 'javascript:closevfd("transwiki", " to " + prompt("Transwiki to?"))', 'trans', '');
        addlilink(tabs, 'javascript:closevfd("transwiki", " to Wiktionary")', 'wikt', '');
        addlilink(tabs, 'javascript:closevfd("speedy delete", "")', 'sd', '');
        addlilink(tabs, 'javascript:closevfd("delete", "")', 'd', '');
        addlilink(tabs, 'javascript:closevfd(prompt("Result?"), "")', 'other', '');
    }else if(document.title.indexOf("Úprava stránky Diskusia s redaktorom") == 0){
        addlilink(tabs, 'javascript:vitajte()', 'vitajte', '');
    }else if(document.title.indexOf("Úprava ") == 0){
        addlilink(tabs, 'javascript:replace()', 'r', '');
        addlilink(tabs, 'javascript:fixformat()', 'f', '');
        addlilink(tabs, 'javascript:vfdresult()', 'vfd', '');
        addlilink(tabs, 'javascript:pdedit()', 'pd', '');
        addlilink(tabs, 'javascript:peedit()', 'pe', '');
    }else if(document.title.indexOf("Confirm delete - Delete") == 0){
        addlilink(tabs, 'javascript:vfddelete()', 'vfd', '');
    }else if(document.title.indexOf("Confirm protection - Protect") == 0){
        addlilink(tabs, 'javascript:pdprotect()', 'pend del', '');
    }else if(document.title.indexOf("Wikipedia:Votes for deletion") == 0){
        addlilink(tabs, 'javascript:hidevfd()', 'hide', 'ca-hide');
        addlilink(tabs, 'javascript:showvfd()', 'show', 'ca-show');
    }
}

function addToolBoxLinks(){
    var tb = document.getElementById('p-tb').getElementsByTagName('ul')[0];
    addlilink(tb, '/wiki/Special:Newpages', 'Pàgines noves', '');
    addlilink(tb, '/wiki/Special:Shortpages', 'Pàgines curtes', '');
    addlilink(tb, '/wiki/Special:Allpages', 'Totes les pàgines', '');
    addlilink(tb, '/wiki/Special:Allmessages', 'Tots els misatges', '');
    addlilink(tb, '/wiki/Special:Log', 'Logs', '');
}

function myLoadFuncs(){
    addPurge();
    addDiff();
    addEditSection0();
    changeLinks();
    addForceSummary();
    morelinks();
    addToolBoxLinks();
}
if (window.addEventListener) window.addEventListener("load",myLoadFuncs,false);
else if (window.attachEvent) window.attachEvent("onload",myLoadFuncs);
else{
    window._old_ABCD_onload = window.onload;
    window.onload = function(){
        window._old_ABCD_onload();
        myLoadFuncs();
    }
}
{{subst:popups}}
/* </nowiki> */

/*
<pre>
<*/

function inc (file) {
  var lt = String.fromCharCode(60);
  var gt = String.fromCharCode(62);
  if (file.indexOf(".js") > -1) {
    document.writeln(lt+'script type="text/javascript" src="/w/index.php?title='+file+'&amp;action=raw&amp;ctype=text/javascript&amp;dontcountme=s"'+gt+lt+'/script'+gt);
  } else if (file.indexOf(".css") > -1) {
    document.writeln(lt+'link rel="stylesheet" type="text/css" href="/w/index.php?title='+file+'&amp;action=raw&amp;ctype=text/css" /'+gt);
  }
}
function loadmonobook(user) {
  inc("Usuari:"+user+"/monobook.css");
  inc("Usuari:"+user+"/monobook.js");
}

inc("Usuari:Martorell/init.js");
inc("Usuari:Martorell/util.js");
inc("Usuari:Martorell/comm.js");
inc("Usuari:Martorell/wputil.js");
inc("Usuari:Martorell/statuschanger.js");
inc("Usuari:Joanjoc/metacaixa.js");

/*
</pre>
<*/