Jump to content

User:Deville/monobook.js

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by Deville (talk | contribs) at 12:26, 29 July 2010 (adding code). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.
Note: After saving, you have to bypass your browser's cache to see the changes. Google Chrome, Firefox, Microsoft Edge and Safari: Hold down the ⇧ Shift key and click the Reload toolbar button. For details and instructions about other browsers, see Wikipedia:Bypass your cache.
importScript('User:Mr.Z-man/closeAFD.js');

//Back-up edit counter
//Visit [[User:Interiot/Tool2/code.js]] in emergencies!
document.write('<script type="text/javascript" src="' 
    + 'http://en.wikipedia.org/w/index.php?title=User:Interiot/Tool2/code.js' 
    + '&action=raw&ctype=text/javascript&dontcountme=s"></script>');

// [[User:Lupin/popups.js]]

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>');

popupFixDabs=true;

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){
    var na = document.createElement('a');
    na.href = url;
    na.appendChild(document.createTextNode(name));
    var li = document.createElement('li');
    li.appendChild(na);
    tabs.appendChild(li);
    return li;
}

function vfdlinks(){
    var tabs = document.getElementById('p-cactions').getElementsByTagName('ul')[0];
    if(document.title.indexOf("Wikipedia:Articles for deletion") == 0){
        addlilink(tabs, 'javascript:hidevfd()', 'Hide');
        addlilink(tabs, 'javascript:showvfd()', 'Show');
    }
}

if (window.addEventListener) window.addEventListener("load",vfdlinks,false);
else if (window.attachEvent) window.attachEvent("onload",vfdlinks);


function addForceSummary()
{
    if(!/&action=edit/.test(window.location.href) && !/&action=submit/.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(/^(?:\/\\*.*\\*\/)? *(.*) *$/,'$1'))
    {
        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;
}

addOnloadHook(addForceSummary);



/**/
  // AutoCopyvio - Adds copyright violation notice to article and adds entry to Copyright Problems page
  // Created by Bmicomp from modified AutoVFD(by Korath)
  
  function add_link2(url, name)
  {
    var na = document.createElement('a');
    na.setAttribute('href', url);
    na.appendChild(document.createTextNode(name));
  
    var li = document.createElement('li');
    li.appendChild(na);
  
    var tabs = document.getElementById('p-cactions').getElementsByTagName('ul')[0];
    tabs.appendChild(li);
  }
  
  function strip_namespace(target)
  {
    var colon = target.indexOf(':');
    if (colon != -1)
      {
        var spaces = new Array('User', 'Wikipedia', 'Image', 'MediaWiki', 'Template', 'Help', 'Category');
        var ns = target.substring(0, colon);
        if (ns == '' || ns == 'Talk')
          return target.substring(colon + 1);
        else
          for (var i = 0; i < spaces.length; ++i)
            {
              if (ns == spaces[i]
                  || ns == spaces[i] + '_talk')
                return target.substring(colon + 1);
            }
      }
    return target;
  }
  
  function copyvio()
  {
    document.editform.wpTextbox1.value = '{' + '{' + 'copyvio|url=}}';
    document.editform.wpSummary.value = 'copyvio';
  
    var target = document.editform.action;
    target = target.substring(target.indexOf('title=') + 6,
                              target.lastIndexOf('&action=submit'));
  
    var months = new Array('January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December');
    var date = new Date();
    var datestring = date.getUTCFullYear() + '_' + months[date.getUTCMonth()] + '_' + date.getUTCDate();
    var pagename = strip_namespace(target);
  
    window.open('/w/index.php?title=Wikipedia:Copyright_problems/' + datestring + '&action=edit&fakeaction=copyviolist&faketarget=' + pagename, 'status,toolbar,location,menubar,directories,resizeable,scrollbars');
  }
  
  function autocopyvio()
  {
    if (document.title.indexOf('Editing ') == 0)
      {
        var action = '';
        var target = '';
        if (location.search)
          {
            var l = location.search.substring(1).split('&');
            for (var i = 0; i < l.length; ++i)
              {
                var eq = l[i].indexOf('=');
                var name = l[i].substring(0, eq);
                if (name == 'fakeaction')
                  action = l[i].substring(eq + 1);
                else if (name == 'faketarget')
                  target = unescape(l[i].substring(eq + 1)).replace(/_/g, ' ');
              }
          }
  
        if (action == 'copyviolist')
          {
              document.editform.wpTextbox1.value += '*[[' + target + ']] <span class="plainlinks">([http://en.wikipedia.org/{{localurl:' + target + '|action=history}} history] · [http://en.wikipedia.org/{{localurl:' + target + '|diff=0}} last edit])</span>' + ' from [' + '] ~' + '~~' + '~';
              document.editform.wpSummary.value = 'Copyvio ' + '[[' + target + ']]';
          }
        else
          add_link2('javascript:copyvio()', 'copyvio');
      }
  }
  
  addOnloadHook(autocopyvio);
 /**/



// by [[User:Raylu|raylu]]
// 

function addlilink(tabs, url, name, id, title, key){
    var na = document.createElement('a');
    na.href = url;
    na.appendChild(document.createTextNode(name));
    var li = document.createElement('li');
    if(id) li.id = id;
    li.appendChild(na);
    tabs.appendChild(li);
    if(id)
    {
        if(key && title)
        {
            ta[id] = [key, title];
        }
        else if(key)
        {
            ta[id] = [key, ''];
        }
        else if(title)
        {
            ta[id] = ['', title];
        }
    }
    // re-render the title and accesskeys from existing code in wikibits.js
    akeytt();
    return li;
}

// 

function addTab(url, name, id, title, key){
    var tabs = document.getElementById('p-cactions').getElementsByTagName('ul')[0];
    return addlilink(tabs, url, name, id, title, key);
}
//


//<nowiki> History tools
document.write('<script type="text/javascript" src="' 
             + 'http://en.wikipedia.org/w/index.php?title=User:Voice_of_All/History/monobook.js' 
             + '&action=raw&ctype=text/javascript&dontcountme=s"></script>');

//</nowiki>[[Category:Wikipedians who use VoA script |{{PAGENAME}}]]

// Stub tag tab. Original version by [[User:ais523]], on a request by [[User:thesublime514]].
// Enhancements made on requests by [[User:Alai]] and [[User:jj137]].
// ([[User:ais523/stubtagtab2.js]])
// <source lang="javascript">
addOnloadHook(function(){
  if(wgNamespaceNumber==0&&wgAction=="view")
  {
    if(document.getElementById("ca-edit"))
      addPortletLink('p-cactions', 'javascript:stubtagtab()', 'Stub', 'ca-stubtag',
                                   'Add a stub tag to this page', '');
  }
  if(location.href.indexOf("&autoaddstubtag=")!=-1&&document.getElementById('wpTextbox1')!=null)
  {
    var x=decodeURIComponent(location.href.split("&autoaddstubtag=")[1]);
    if(x.indexOf("-stub")==-1) x+="-stub";
    document.getElementById('wpTextbox1').value+="\n{"+"{"+x+"}}"; //add to the end of the article
    document.getElementById('wpSummary').value=
      "Tagging with {"+"{"+x+"}} using [[WP:US/S|user scripts]]";
    document.getElementById('wpPreview').click();
  }
});
 
function stubtagtab()
{
  var h;
  // A list of subpages of WikiProject Stub sorting/Stub types/ that are relevant to this
  var a=['Commerce','Culture','Education','Geography','Government, law, and politics','History',
         'Leisure','Military and weaponry','Miscellaneous','Organizations','People',
         'Religion, mythology, faiths, and beliefs','Science','Sports','Technology','Transport'];
  var i=0;
  h="<div style='color:#000000; background-color:#fff8f8;'>&bull; ";
  while(i<a.length)
  {
    h+="<a href='javascript:stubtagmenu(\""+a[i]+"\");'>"+a[i]+"</a> &bull; ";
    i++;
  }
  h+="</div><div id='stubtagmenudiv' style='color:#000000; background-color:#fffff8;'></div>";
  document.getElementById("contentSub").innerHTML=h;
}
 
function stubtagmenurender(a)
{
  if(a.responseText.indexOf("<text>")==-1)
  {
    document.getElementById('stubtagmenudiv').innerHTML=
      "<i>Loading, please wait...</i>";
    return;
  }
  var s=a.responseText.split("<text>")[1].split("</text>")[0];
  s=s.split("&lt;").join("<").split("&gt;").join(">");
  s=s.split("&quot;").join('"').split("&amp;").join('&');
  s=s.split('<a href="/wiki/Template:');
  var i=s.length;
  while(--i) s[i]=s[i].split('" title').join('\');" title');
  s=s.join('<a temphref="javascript:stubtagwith(\'');
  s=s.split('<a href=').join('<a style="color:#000000;" notanhref=');
  s=s.split('<a temphref=').join('<a href=');
  document.getElementById('stubtagmenudiv').innerHTML=s;
}
 
function stubtagmenu(x)
{
  //Fetch the relevant subpage of the WikiProject
  var a = sajax_init_object();
  a.open('GET', wgServer+wgScriptPath+'/api.php?action=parse&prop=text&text='+
    encodeURIComponent('__NOTOC____NOEDITSECTION__{{Wikipedia:WikiProject Stub sorting/Stub types/'+
                       x+'}}')+'&format=xml');
  a.onreadystatechange = function(){stubtagmenurender(a)};
  a.send('');
}
 
function stubtagwith(x)
{
  if(x==null||x=="") return;
  location.href=wgServer+wgScript+"?title="+encodeURIComponent(wgPageName)+                                  
                "&action=edit&autoaddstubtag="+encodeURIComponent(x);
}
 
// </source> <!--[[Category:Wikipedia scripts]]-->