User:Spacebirdy/fastdelete.js
Appearance
Note: After publishing, you may have to bypass your browser's cache to see the changes.
- Firefox / Safari: Hold Shift while clicking Reload, or press either Ctrl-F5 or Ctrl-R (⌘-R on a Mac)
- Google Chrome: Press Ctrl-Shift-R (⌘-Shift-R on a Mac)
- Edge: Hold Ctrl while clicking Refresh, or press Ctrl-F5.
//<pre><nowiki>
// From http://www.wikia.com/wiki/User:Splarka/fastdelete.js by Splarka
if(wgNamespaceNumber != -1 && !window.DeleteButtonsLoaded) addOnloadHook(addDeleteButtons)
var DeleteButtonsLoaded = true; //prevent duplication
function addDeleteButtons() {
if(!window.fdButtons) return;
switch(skin) {
case 'quartz': /* for newer skin chooser implementation, pass to quartzslate */
case 'quartzsmoke': /* pass to quartzslate */
case 'quartzslate':
if(!document.getElementById('ca-delete')) return
for(var i=0;i<fdButtons.length;i ) {
addArticleBarlink(wgScriptPath '/index.php?title=' wgPageName '&action=delete&submitdelete=true&wpReason=' encodeURIComponent(fdButtons[i].summary),fdButtons[i].label);
}
break;
case 'wow': /* pass to slate */
case 'wookie': /* pass to slate */
case 'memalpha': /* pass to slate */
case 'smoke': /* pass to slate */
case 'slate':
if(!document.getElementById('delete')) return
for(var i=0;i<fdButtons.length;i ) {
addMSBlink(wgScriptPath '/index.php?title=' wgPageName '&action=delete&submitdelete=true&wpReason=' encodeURIComponent(fdButtons[i].summary),fdButtons[i].label);
}
break;
case 'chick': /* pass to monobook */
case 'simple': /* pass to monobook */
case 'myskin': /* pass to monobook */
case 'monobook':
if(!document.getElementById('ca-delete')) return
var url=document.getElementById('ca-delete').firstChild.href
for(var i=0;i<fdButtons.length;i ) {
if(fdButtons[i].hotkey) {
mw.util.addPortletLink('p-cactions', wgScriptPath '/index.php?title=' wgPageName '&action=delete&submitdelete=true&wpReason=' encodeURIComponent(fdButtons[i].summary),fdButtons[i].label,'ca-delete' i,'one-click delete: ' fdButtons[i].summary,fdButtons[i].hotkey);
} else {
mw.util.addPortletLink('p-cactions', wgScriptPath '/index.php?title=' wgPageName '&action=delete&submitdelete=true&wpReason=' encodeURIComponent(fdButtons[i].summary),fdButtons[i].label,'ca-delete' i,'one-click delete: ' fdButtons[i].summary);
}
}
break;
case 'classic': break; /* not supported yet */
case 'standard': break; /* not supported yet */
case 'cologneblue': break; /* not supported yet */
case 'nostalgia': break; /* not supported yet */
case 'monaco':
if(!document.getElementById('ca-delete')) { return; }
for(var i=0;i<fdButtons.length;i ) {
addPageBarlink(wgScriptPath '/index.php?title=' wgPageName '&action=delete&submitdelete=true&wpReason=' encodeURIComponent(fdButtons[i].summary),fdButtons[i].label);
}
break;
}
}
$(checkdelete);
function checkdelete() {
if(queryString('autoclose')=='true' && document.getElementById('deleteconfirm')) {
document.getElementById('deleteconfirm').action = '&autoclose=now';
document.getElementById('deleteconfirm').target = '_top';
}
if(queryString('submitdelete')=='true') {
var btn = (document.getElementById('mw-filedelete-submit')) ? document.getElementById('mw-filedelete-submit') : document.getElementById('wpConfirmB')
btn.click();
}
if(queryString('autoclose')=='now') {
try {
window.close();
} catch(e) {
// not a JS-created window.
}
}
}
function queryString(p) {
var re = RegExp('[&?]' p '=([^&]*)');
var matches;
if (matches = re.exec(document.location)) {
try {
return decodeURI(matches[1]);
} catch (e) {
}
}
return null;
}
function addMSBlink(url,text) {
var msbs = document.getElementById('myStuffBar').getElementsByTagName('a')[0].parentNode;
var link = document.createElement('a');
link.href = url;
link.appendChild(document.createTextNode(text));
link.style.marginLeft = '10px';
link.style.color = 'red';
msbs.appendChild(link);
}
function addArticleBarlink(url,text) {
var ab = getElementsByClassName(document,'div','articleBar');
if(ab.length < 1) return;
var obj = ab[0].getElementsByTagName('div')[0];
var link = document.createElement('a');
link.style.color = 'red';
link.href = url;
link.appendChild(document.createTextNode(text));
obj.appendChild(link);
}
function addPageBarlink(url,text) {
var pc = document.getElementById('page_controls');
if(pc.length < 1) { return;}
var d = document.createElement('div');
var link = document.createElement('a');
link.href = url;
link.appendChild(document.createTextNode(text));
var nuli = document.createElement('li');
nuli.id = 'control_delete';
nuli.appendChild(d);
nuli.appendChild(link);
pc.appendChild(nuli);
}
//</nowiki></pre>