User:Metju12/monobook.js

From Wikipedia, the free encyclopedia

If a message on your talk page led you here, please be wary of who left it. The code below could contain malicious content capable of compromising your account; if your account appears to be compromised, it will be blocked. If you are unsure whether the code is safe, you can ask at the appropriate village pump.
Note: After saving, you have to bypass your browser's cache to see the changes. In Internet Explorer and Firefox, hold down the Ctrl key and click the Refresh or Reload button. Opera users have to clear their caches through Tools→Preferences, see the instructions for Opera. Konqueror and Safari users can just click the Reload button.
// Live Preview customization,
// edit this to your own liking.
 
wpUserName   = 'Metju12';   // User name to display in signatures
wpShowImages = true;      // Enable downloading and displaying of images
 
// Include Live Preview...
document.write('<script type="text/javascript" src="http://en.wikipedia.org/w/index.php?title=User:Pilaf/livepreview.js&action=raw&ctype=text/javascript&dontcountme=s"></script>');
 
// 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: [[User:Pilaf/livepreview.js]] */
 
/* <nowiki> */
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, "''");
    txt.value = txt.value.replace(/<\/?(h1)>/gi, "==");
    txt.value = txt.value.replace(/<\/?(li)>/gi, "*");
    document.editform.wpSummary.value += "preformá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 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=Metju12|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'] = ['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 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('Si si istý, že nechceš prida&#357; žiadne zhrnutie?\nMôžeš tak urobi&#357; sem:',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 Komentár k redaktorovi") == 0){
        addlilink(tabs, 'javascript:vitajte()', 'vitajte', '');
    }else if(document.title.indexOf("Úprava ") == 0){
        addlilink(tabs, 'javascript:replace()', 'replace', '');
        addlilink(tabs, 'javascript:fixformat()', 'format', '');
    }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', 'Nové stránky', '');
    addlilink(tb, '/wiki/Special:Shortpages', 'Krátke stránky', '');
    addlilink(tb, '/wiki/Special:Newimages', 'Nové obrázky', '');
}
 
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> */