< User:Shane | bsgbook.js
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)
- Internet Explorer / Edge: Hold Ctrl while clicking Refresh, or press Ctrl-F5
- Opera: Press Ctrl-F5.
// ========== Hardcoded Vars Needed ============= pre_noinclude_var = "<noinclude>"; suf_noinclude_var = "</noinclude>"; // ========== Basic Functions Needed ========== 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); na.accesskey = key; var pref = 'alt-'; if ((((clientPC.indexOf('AppleWebKit') != -1) && (clientPC.indexOf('spoofer') == -1)) || navigator.userAgent.toLowerCase().indexOf( 'mac' ) != -1 )) { pref = 'control-'; } if (clientPC.indexOf('opera') != -1) { pref = 'shift-esc-'; } if (key && title) { na.title = title + ' [' + pref + key + ']'; } else if (title) { na.title = title; } else if (key) { na.title = '[' + pref + key + ']'; } akeytt(); return li; } function addToolboxLink(url, name, id){ var tb = document.getElementById('p-tb').getElementsByTagName('ul')[0]; addlilink(tb, url, name, id); } function addTab(url, name, id, title, key) { var tabs = document.getElementById('p-cactions').getElementsByTagName('ul')[0]; addlilink(tabs, url, name, id, title, key); } function getPname(alt) { z = document.getElementById("content").childNodes; for (var n = 0; n < z.length; n++) { if (z[n].className == "firstHeading") { stmpPage = z[n].textContent.replace(/Editing /,""); if (alt == "name") { stmpPage = stmpPage.replace(getNameSpace()+":",""); } return stmpPage; } }; } function getNameSpace() { z = document.getElementById("content").childNodes; for (var n = 0; n < z.length; n++) { if (z[n].className == "firstHeading") { if (z[n].textContent.indexOf("Template") != -1) { return "Template"; } if (z[n].textContent.indexOf("Battlestar Wiki") != -1) { return "Battlestar Wiki"; } if (z[n].textContent.indexOf("Podcast") != -1) { return "Podcast"; } if (z[n].textContent.indexOf("Sources") != -1) { return "Sources"; } if (z[n].textContent.indexOf("Quotes") != -1) { return "Quotes"; } if (z[n].textContent.indexOf("Image") != -1) { return "Image"; } if (z[n].textContent.indexOf("User") != -1) { return "User"; } return "Article"; } }; } function checkContent() { if (document.editform.wpTextbox1.value == "") { return false; } else { return true; } } if (document.title.indexOf("Editing ") == 0) { if (window.addEventListener) window.addEventListener("load", loadTabs, false); else if (window.attachEvent) window.attachEvent("onload", loadTabs); } else { addEditSection0(); } if (window.location.href.indexOf("Special") == -1) { if (window.addEventListener) window.addEventListener("load", loadNonEdit, false); else if (window.attachEvent) window.attachEvent("onload", loadNonEdit); } function loadTabs() { sNamespace = getNameSpace(); bContent = checkContent(); if (sNamespace == "Template") { if (bContent) { addQdd(); // Mark as "Delete" addQcl(); // Mark as "Cleanup" addQrp(); // Revert Page Option } } if (sNamespace == "Quotes") { if (bContent) { addQdd(); // Mark as "Delete" addQcl(); // Mark as "Cleanup" addQrp(); // Revert Page Option } } if (sNamespace == "Image") { addQnt(); // Add {{no tag}} } addQfp(); // Mark as Featured Picture addQrp(); // Revert Page Option } if (sNamespace == "User") { if (bContent) { addQdd(); // Mark as "Delete" addQsd(); // Mark as "Speedy Delete" addQrp(); // Revert Page Option } } if ((sNamespace == "Article") || (sNamespace == "Battlestar Wiki") || (sNamespace == "Sources")) { if (bContent) { addQdd(); // Mark as "Delete" addQcl(); // Mark as "Cleanup" addQsd(); // Mark as "Speedy Delete" if (sNamespace == "Article") { addQfa(); // Mark as Featured Article } addQae(); // Mark as "Expantion" addQrt(); // Replace Text Option addQrp(); // Revert Page Option } else { addQar(); // Mark as "Requested" } } } function loadNonEdit() { addLastDiff(); // Last Diff Button addQpp(); // Purge Page Button } // ========== Add Last Diff ========== function doLastDiff() { var nurl = "http://www.battlestarwiki.org/en/index.php?title=" + getPname() + "&diff=cur&oldid=prev"; document.location = nurl; } function addLastDiff() { var tabs = document.getElementById('p-cactions').getElementsByTagName('ul')[0]; var l = addlilink(tabs, "javascript:doLastDiff()", 'last', ''); l.lastChild.title = "Show most recent diff"; } // ========== Repalce ========== function doQrt() { sPagename = "[["+getPname()+"]]"; var sReplace_input = prompt('Please enter the text you are looking for and that you will be replacing. (Case Sensitive)', ''); var sReplace_new = prompt('Plase enter the text that is new.', ''); if ( ((sReplace_input != null) || (sReplace_new != null)) && (sReplace_input != sReplace_new) ) { // Working on this.. document.editform.wpSummary.value = "Replaced '''" + sReplace_input + "''' with '''" + sReplace_new + "''' on " + sPagename + "."; //document.editform.submit(); } } function addQrt() { //addTab("javascript:doQrt()", "replace", "ca-rt", "Do a mass replace.", ""); } // ========== Revert ========== function doQrp() { sPagename = "[["+getPname()+"]]"; document.editform.wpSummary.value = "Reverted to an old version of " + sPagename; document.editform.submit(); } function addQrp() { if (window.location.href.indexOf("&oldid=") != -1) { addTab("javascript:doQrp()", "revert", "ca-rp", "Revert this page to this version.", ""); } } // ========== Delete ========== function doQdd() { sNamespace = getNameSpace(); sPagename = "[["+getPname()+"]]"; if (sNamespace == "Template") { document.editform.wpTextbox1.value = pre_noinclude_var + "{{tfd}}" + suf_noinclude_var + "\n\n" + document.editform.wpTextbox1.value; } else if (sNamespace == "Quotes") { document.editform.wpTextbox1.value = pre_noinclude_var + "{{qfd}}" + suf_noinclude_var + "\n\n" + document.editform.wpTextbox1.value; } else { document.editform.wpTextbox1.value = "{{delete}}\n\n" + document.editform.wpTextbox1.value; } document.editform.wpSummary.value = sPagename + " - marked for deletion."; document.editform.submit(); } function addQdd() { addTab("javascript:doQdd()", "del", "ca-dd", "Mark for deletion.", ""); } // ========== Cleanup========== function doQcl() { sNamespace = getNameSpace(); sPagename = "[["+getPname()+"]]"; if ((sNamespace == "Quotes") || (sNamespace == "Template")) { document.editform.wpTextbox1.value = pre_noinclude_var + "{{cleanup}}" + suf_noinclude_var + "\n\n" + document.editform.wpTextbox1.value; } else { document.editform.wpTextbox1.value = "{{cleanup}}\n\n" + document.editform.wpTextbox1.value; } document.editform.wpSummary.value = sPagename + " - marked for cleanup."; document.editform.submit(); } function addQcl() { addTab("javascript:doQcl()", "clp", "ca-cp", "Mark for Cleanup.", ""); } // ========== Quick Speedy delete ========== function doQsd() { sPagename = "[["+getPname()+"]]"; if ((sNamespace == "Quotes") || (sNamespace == "Template")) { document.editform.wpTextbox1.value = pre_noinclude_var + "{{speedydelete}}" + suf_noinclude_var + "\n\n" + document.editform.wpTextbox1.value; } else { document.editform.wpTextbox1.value = "{{speedydelete}}\n\n" + document.editform.wpTextbox1.value; } document.editform.wpSummary.value = sPagename + " - marked for speedy deletion."; document.editform.submit(); } function addQsd() { addTab("javascript:doQsd()", "sd", "ca-sd", "Mark for speedy deletion.", ""); } // ========== 'No Tag' ========== function doQnt() { document.editform.wpTextbox1.value = "{{no tag|Monday, June 12, 2006 at 22:03}}\n\n" + document.editform.wpTextbox1.value; document.editform.wpSummary.value = "Tag needs to be updated."; document.editform.submit(); } function addQnt() { addTab("javascript:doQnt()", "nt", "ca-nt", "Tag needs to be updated.", ""); } // ========== FA Candidate Buttons ========== function doQfa() { sPagename = "[["+getPname()+"|"+getPname('name')+"]]"; document.editform.wpTextbox1.value = document.editform.wpTextbox1.value + "\n{{featured article candidate}}"; document.editform.wpSummary.value = "Marked " + sPagename + " as [[Battlestar Wiki:Featured articles|featured article candidate.]]"; document.editform.submit(); } function doQfp() { sPagename = "[["+getPname()+"|"+getPname('name')+"]]"; document.editform.wpTextbox1.value = document.editform.wpTextbox1.value + "\n{{featured picture candidate}}"; document.editform.wpSummary.value = "Marked " + sPagename + " as [[Battlestar Wiki:Featured pictures|featured picture candidate.]]"; document.editform.submit(); } function addQfa() { addTab("javascript:doQfa()", "fa", "ca-fa", "Mark as Featured Article Candidate.", ""); } function addQfp() { addTab("javascript:doQfp()", "fp", "ca-fp", "Mark as Featured Picture Candidate.", ""); } // ========== Requested ========== function doQar() { sPagename = getPname(); document.editform.wpTextbox1.value = "{{requested}}"; document.editform.wpSummary.value = "Marked [[" + sPagename + "]] as [[Battlestar Wiki:Requested pages|a requested pages.]]"; document.editform.submit(); } function addQar() { addTab("javascript:doQar()", "req", "ca-ar", "Mark as Requested.", ""); } // ========== Requested ========== function doQae() { sPagename = getPname(); document.editform.wpTextbox1.value = "{{expansion}}"; document.editform.wpSummary.value = "Marked [[" + sPagename + "]] as [[Battlestar Wiki:Requests for expansion|a expansion request.]]"; document.editform.submit(); } function addQae() { addTab("javascript:doQae()", "exp", "ca-ae", "Mark as Expansion.", ""); } // ========== Edit Section 0 ========== function addEditSection0() { ta['ca-edit-0'] = ['', 'Edit the 0th section of this page.']; if (!document.getElementById) { return; } x = document.getElementById('ca-edit'); if (!x) { return; } y = document.createElement('LI'); y.id = 'ca-edit-0'; if (x.className == 'selected') { if (/&action=edit§ion=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§ion=0$/.test(window.location.href)) { x.className = 'istalk'; y.className = 'selected istalk'; } else { y.className = 'istalk'; } } else { y.className = x.className; x.className = 'istalk'; } z = document.createElement('A'); if (x.children) { z.href = x.children[0].href + '§ion=0'; z.appendChild(document.createTextNode('Edit Section 0')); y.appendChild(z); document.getElementById('p-cactions').children[1].insertBefore(y,x.nextSibling); } else { z.href = x.childNodes[0].href + '§ion=0'; z.appendChild(document.createTextNode('Edit Section 0')); y.appendChild(z); document.getElementById('p-cactions').childNodes[3].insertBefore(y,x.nextSibling); } } // ========== Purge Button ========== function doQpp() { var nurl = "http://www.battlestarwiki.org/en/index.php?title=" + getPname() + "&action=purge"; document.location = nurl; } function addQpp() { addTab("javascript:doQpp()", "purge", "ca-pp", "Purge this page.", ""); }