Redaktor:Maros/monobook.js

Z Wikipédie

Poznámka: Aby sa zmeny prejavili, po uložení musíte vymazať vyrovnávaciu pamäť vášho prehliadača: Mozilla: Ctrl-Shift-R, IE: Ctrl-F5, Safari: Cmd-Shift-R, Konqueror: F5.

/* <nowiki> */
// Live Preview customization,
// edit this to your own liking.

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

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

function Main()
{
 // 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 += "formátovanie";
    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 temp(){
    var txt = document.editform.wpTextbox1;
    txt.value = txt.value.replace(new RegExp("Stub Category", "g"), "Kategória Výhonku");
    txt.value = txt.value.replace(new RegExp("substub", "g"), "podvýhonok");
    txt.value = txt.value.replace(new RegExp("stuby", "g"), "výhonky");
    txt.value = txt.value.replace(new RegExp("Stuby", "g"), "Výhonky");
    txt.value = txt.value.replace(new RegExp("stub", "g"), "výhonok");
    txt.value = txt.value.replace(new RegExp("Stub", "g"), "Výhonok");
    document.editform.wpSummary.value += "Stub -> Výhonok";
//    var txt = document.editform.wpTextbox1;
//    txt.value = txt.value.replace(new RegExp("stub", "ig"), "Biografický stub");
//    document.editform.wpSummary.value += "Stub -> Biografický stub";
//    document.editform.wpMinoredit.checked = true;
}

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

function psedit(){
  document.editform.wpSummary.value = 'Pracuje sa';
  var txt = document.editform.wpTextbox1;
  if(txt.value.length > 0) txt.value += '\n';
  txt.value = '{{Pracuje sa}}\n' + txt.value;
  txt.focus();
}

function disambig(){
  var txt = document.editform.wpTextbox1;
  if(txt.value.length > 0) txt.value += '\n';
  txt.value += '{{Rozlišovacia stránka}}';
  txt.focus();
}

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}}\n' + txt.value;
    txt.focus();
}

function BioInfoedit(){
    document.editform.wpSummary.value = 'Pridaný Infobox';
    var txt = document.editform.wpTextbox1;
    if(txt.value.length > 0) txt.value += '\n';
    txt.value = '{{Infobox Osobnosť\n  |Meno = xxx\n  |Portrét = xxxx\n  |Popis = xxxx\n  |Dátum narodenia = [[xxx]] [[xxx]]\n  |Miesto narodenia = [[xxx]], [[xxx]] (dnes [[xxx]])\n  |Dátum úmrtia = [[xxx]] [[xxx]]\n  |Miesto úmrtia = [[xxx]], [[xxx]] (dnes [[xxx]])\n}}' + txt.value;
    txt.focus();
}

function NerastInfoedit(){
    document.editform.wpSummary.value = 'Pridaný Infobox Nerast';
    var txt = document.editform.wpTextbox1;
    if(txt.value.length > 0) txt.value += '\n';
    txt.value = '{{Nerast|\nNázov               =  |\nObrázok             =  |\nChemická značka     =  |\nTrieda              =  |\nKryštálová sústava  =  |\nTvrdosť             =  |\nHustota             =  |\nŠtiepateľnosť       =  |\nLom nerastu         =  |\n}}\n' + txt.value;
    txt.focus();
}

function NerastInfocreate(){
    document.editform.wpSummary.value = 'Vytvorenie článku z www.mineraly.sk';
    var txt = document.editform.wpTextbox1;
    if(txt.value.length > 0) txt.value += '\n';
    txt.value = '{{Nerast|\nNázov               =  |\nObrázok             =  |\nChemická značka     =  |\nTrieda              =  |\nKryštálová sústava  =  |\nTvrdosť             =  |\nHustota             =  |\nŠtiepateľnosť       =  |\nLom nerastu         =  |\n}}\n\'\'\'\'\'\' je [[nerast]].\n\n==Charakteristika==\n\n==Vznik ==\n\n==Poznávanie ==\n\n==Výskyty na Slovensku ==\n\n==Externé odkazy==\n*{{Minerály|alunogen}}\n\n[[Category:Mineralógia]]\n[[iw:]]' + txt.value;
    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 uvodzovky() {
    var txt = document.editform.wpTextbox1;
    var txt1 = "";
    while (txt.value != txt1) {
        txt1 = txt.value ;
        txt.value = txt.value.replace('"', '„');
        txt.value = txt.value.replace('"', '“');
    }
}

function vitajte_Reg(){
    document.editform.wpSummary.value = 'Vitajte ~ Welcome ';
    var txt = document.editform.wpTextbox1;
    if(txt.value.length > 0) txt.value += '\n';
    txt.value += '{{Vitajte|redaktor=Maros|reg=regáno}}';
    txt.focus();
}

function vitajte_Anonym(){
    document.editform.wpSummary.value = 'Vitajte ~ Welcome ';
    var txt = document.editform.wpTextbox1;
    if(txt.value.length > 0) txt.value += '\n';
    txt.value += '{{Vitajte|redaktor=Maros|reg=regnie}}';
    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'] = ['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"), 'purge', 'ca-purge');
}
function addEditSection0(){
    ta['ca-edit-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 addNewSection(){
    ta['ca-edit-0'] = ['', 'Add new section for this page'];
    if(!document.getElementById) return;
    var x = document.getElementById('ca-edit');
    if(!x) return;
    var y = document.createElement('LI');
    y.id = 'ca-add-new';
    if(x.className == 'selected'){
      if(/&action=edit&section=new$/.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=new$/.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=new';
        z.appendChild(document.createTextNode('+'));
        y.appendChild(z);
        document.getElementById('p-cactions').children[1].insertBefore(y,x.nextSibling);
    }else{
        z.href = x.childNodes[0].href + '&section=new';
        z.appendChild(document.createTextNode('+'));
        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_Reg()', 'Vitajte - Registrovany', '');
        addlilink(tabs, 'javascript:vitajte_Anonym()', 'Vitajte - Neregistrovany', '');
    }else if(document.title.indexOf("Úprava ") == 0){
        addlilink(tabs, 'javascript:BioInfoedit()', 'IB-Bio', '');
//        addlilink(tabs, 'javascript:NerastInfoedit()', 'IB-Ner', '');
//        addlilink(tabs, 'javascript:NerastInfocreate()', 'IB-Ner+', '');
        addlilink(tabs, 'javascript:replace()', 'rplc', '');
//        addlilink(tabs, 'javascript:temp()', 'tmp', '');
//        addlilink(tabs, 'javascript:fixformat()', 'format', '');
//        addlilink(tabs, 'javascript:vfdresult()', 'vfd', '');
        addlilink(tabs, 'javascript:uvodzovky()', '„“', '');
        addlilink(tabs, 'javascript:disambig()', 'disambig', '');
        addlilink(tabs, 'javascript:pdedit()', 'NZ', '');
        addlilink(tabs, 'javascript:peedit()', 'NÚ', '');
        addlilink(tabs, 'javascript:psedit()', 'PrSa', '');
    }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');
    }else if(document.title.indexOf("Wikipédia:Krčma") == 0){
        addlilink(tabs, 'javascript:addNewSection()', '+', 'ca-new');
    }
}

function addToolBoxLinks(){
    var tb = document.getElementById('p-tb').getElementsByTagName('ul')[0];
    addlilink(tb, '/wiki/Special:Newpages', 'Nové stránky', '');
    addlilink(tb, '/wiki/Special:Allpages', 'Všetky stránky', '');
    addlilink(tb, '/wiki/Special:Allmessages', 'Všetky správy', '');
    addlilink(tb, '/wiki/Special:Log', 'Logs', '');
}

function myLoadFuncs(){
    addPurge();
    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();
    }
}
/* </nowiki> */