Difference between revisions of "User:Kernigh sockpuppet/monobook.js"
Jump to navigation
Jump to search
m (Test this script against User:Jayt/Sandbox/Main Page.) |
m (Text replace - "Wikihack" to "NetHackWiki") |
||
Line 2: | Line 2: | ||
/* | /* | ||
− | * Monobook script of Kernigh sockpuppet at | + | * Monobook script of Kernigh sockpuppet at NetHackWiki - public domain |
* | * | ||
* ATTENTION! Do not copy to MediaWiki:Monobook.js without | * ATTENTION! Do not copy to MediaWiki:Monobook.js without | ||
Line 11: | Line 11: | ||
// customise the script here | // customise the script here | ||
scr = new Object(); | scr = new Object(); | ||
− | scr.wikiName = " | + | scr.wikiName = "NetHackWiki"; // from title bar |
scr.frontPageName = "User:Jayt/Sandbox/Main Page"; // from title bar | scr.frontPageName = "User:Jayt/Sandbox/Main Page"; // from title bar | ||
scr.frontPagePhp = "User:Jayt/Sandbox/Main_Page"; // from index.php?title= | scr.frontPagePhp = "User:Jayt/Sandbox/Main_Page"; // from index.php?title= |
Latest revision as of 18:43, 11 November 2010
// <pre>
/*
* Monobook script of Kernigh sockpuppet at NetHackWiki - public domain
*
* ATTENTION! Do not copy to MediaWiki:Monobook.js without
* configuring correct main page and changing ca-nstab-user
* to ca-nstab-main.
*/
// customise the script here
scr = new Object();
scr.wikiName = "NetHackWiki"; // from title bar
scr.frontPageName = "User:Jayt/Sandbox/Main Page"; // from title bar
scr.frontPagePhp = "User:Jayt/Sandbox/Main_Page"; // from index.php?title=
/*
* Monobook "front page" formatting script
* by Kernigh - public domain
*
* The purpose of this script is remove the heading from
* the wiki's front page and to rename the article tab.
*/
// is this article being the named page?
function isNamedPage( wikiName, pageName ) {
return document && document.title && document.title.indexOf &&
document.title.indexOf( pageName + " - " + wikiName ) == 0;
}
// use DOM to remove siteSub, firstHeading
function removeFirstHeading() {
if( document && document.getElementById && document.getElementsByTagName ) {
var h1s = document.getElementsByTagName( "h1" );
var siteSub = document.getElementById( "siteSub" );
if( h1s && h1s.item ) {
var firstHeading = h1s.item(0);
if( firstHeading && firstHeading.parentNode && firstHeading.parentNode.removeChild )
firstHeading.parentNode.removeChild( firstHeading );
}
if( siteSub && siteSub.parentNode && siteSub.parentNode.removeChild )
siteSub.parentNode.removeChild( siteSub );
}
}
if( isNamedPage( scr.wikiName, scr.frontPageName ) )
addOnloadHook( removeFirstHeading );
// does the article tab go to the named page?
function isNearNamedPage( wikiName, pageName ) {
if( isNamedPage( wikiName, pageName ) ) return true;
if( isNamedPage( wikiName, "Talk:" + pageName ) ) return true;
// else check the title= argument in the url
if( document && document.URL ) {
var url = document.URL + "&";
return url.indexOf( "?title=" + scr.frontPagePhp + "&" ) > -1 ||
url.indexOf( "?title=Talk:" + scr.frontPagePhp + "&" ) > -1 ||
url.indexOf( "&title=" + scr.frontPagePhp + "&" ) > -1 ||
url.indexOf( "&title=Talk:" + scr.frontPagePhp + "&" ) > -1;
}
return false;
}
// use DOM to rename "article" tab to "front page"
function formatFrontPageTab() {
if( document && document.getElementById ) {
var mainTab = document.getElementById( "ca-nstab-user" );
if( document.createTextNode && mainTab && mainTab.firstChild ) {
var frontPageLink = mainTab.firstChild;
var frontPageText = document.createTextNode("front page");
if( frontPageLink.replaceChild && frontPageLink.firstChild )
frontPageLink.replaceChild( frontPageText, frontPageLink.firstChild );
}
}
}
if ( isNearNamedPage( scr.wikiName, scr.frontPageName ) )
addOnloadHook( formatFrontPageTab );