/*<pre>*/
/* Javascript inkluderet her vil være aktivt for alle brugere. */
/* ********************************ImageMapEditor********************
document.write('<script type="text/javascript" src="'
+ 'http://spademanns.wikia.com/index.php?title=Bruger:Frode_Fenis/ime.js'
+ '&action=raw&ctype=text/javascript&dontcountme=s"></script>');
*/
/** WikiMiniAtlas *******************************************************
*
* Description: WikiMiniAtlas is a popup click and drag world map.
* This script causes all of our coordinate links to display the WikiMiniAtlas popup button.
* The script itself is located on meta because it is used by many projects.
* See [[Meta:WikiMiniAtlas]] for more information.
* Created by: [[User:Dschwen]]
*/
document.write('<script type="text/javascript" src="'
+ 'http://meta.wikimedia.org/w/index.php?title=MediaWiki:Wikiminiatlas.js'
+ '&action=raw&ctype=text/javascript&dontcountme=s"></script>');
// This is a 3 set parts script
// This script is from Wikipedia. For author attribution, please see
// http://en.wikipedia.org/w/index.php?title=MediaWiki:Common.js
// 1st part will look for the class name
/* Test if an element has a certain class **************************************
*
* Description: Uses regular expressions and caching for better performance.
* Maintainers: [[Wikipedia:User:Mike Dillon]], [[Wikipedia:User:R. Koot]], [[Wikipedia:User:SG]]
*/
var hasClass = (function () {
var reCache = {};
return function (element, className) {
return (reCache[className] ? reCache[className] : (reCache[className] = new RegExp("(?:\\s|^)" + className + "(?:\\s|$)"))).test(element.className);
};
})();
// 2nd part is the Scrip for Wikitables
/* <pre style="height: 45em"><nowiki> */
/** Collapsible tables *********************************************************
*
* Description: Allows tables to be collapsed, showing only the header. See
* [[Wikipedia:Wikipedia:NavFrame]].
* Maintainers: [[Wikipedia:User:R. Koot]]
*/
/*importScriptPage('ShowHide/code.js', 'dev');*/
var autoCollapse = 2;
var collapseCaption = "skjul";
var expandCaption = "vis";
function collapseTable( tableIndex )
{
var Button = document.getElementById( "collapseButton" + tableIndex );
var Table = document.getElementById( "collapsibleTable" + tableIndex );
if ( !Table || !Button ) {
return false;
}
var Rows = Table.rows;
if ( Button.firstChild.data == collapseCaption ) {
for ( var i = 1; i < Rows.length; i++ ) {
Rows[i].style.display = "none";
}
Button.firstChild.data = expandCaption;
} else {
for ( var i = 1; i < Rows.length; i++ ) {
Rows[i].style.display = Rows[0].style.display;
}
Button.firstChild.data = collapseCaption;
}
}
function createCollapseButtons()
{
var tableIndex = 0;
var NavigationBoxes = new Object();
var Tables = document.getElementsByTagName( "table" );
for ( var i = 0; i < Tables.length; i++ ) {
if ( hasClass( Tables[i], "collapsible" ) ) {
/* only add button and increment count if there is a header row to work with */
var HeaderRow = Tables[i].getElementsByTagName( "tr" )[0];
if (!HeaderRow) continue;
var Header = HeaderRow.getElementsByTagName( "th" )[0];
if (!Header) continue;
NavigationBoxes[ tableIndex ] = Tables[i];
Tables[i].setAttribute( "id", "collapsibleTable" + tableIndex );
var Button = document.createElement( "span" );
var ButtonLink = document.createElement( "a" );
var ButtonText = document.createTextNode( collapseCaption );
Button.style.styleFloat = "right";
Button.style.cssFloat = "right";
Button.style.fontWeight = "normal";
Button.style.textAlign = "right";
Button.style.width = "6em";
ButtonLink.style.color = Header.style.color;
ButtonLink.setAttribute( "id", "collapseButton" + tableIndex );
ButtonLink.setAttribute( "href", "javascript:collapseTable(" + tableIndex + ");" );
ButtonLink.appendChild( ButtonText );
Button.appendChild( document.createTextNode( "[" ) );
Button.appendChild( ButtonLink );
Button.appendChild( document.createTextNode( "]" ) );
Header.insertBefore( Button, Header.childNodes[0] );
tableIndex++;
}
}
for ( var i = 0; i < tableIndex; i++ ) {
if ( hasClass( NavigationBoxes[i], "collapsed" ) || ( tableIndex >= autoCollapse && hasClass( NavigationBoxes[i], "autocollapse" ) ) ) {
collapseTable( i );
}
}
}
addOnloadHook( createCollapseButtons );
/* </nowiki></pre> */
// 3er part is the Scrip for NavFram
/* <pre style="height: 45em"><nowiki> */
/** Dynamic Navigation Bars (experimental) *************************************
*
* Description: See [[Wikipedia:Wikipedia:NavFrame]].
* Maintainers: UNMAINTAINED
*/
// set up the words in your language
var NavigationBarHide = '[' + collapseCaption + ']';
var NavigationBarShow = '[' + expandCaption + ']';
// shows and hides content and picture (if available) of navigation bars
// Parameters:
// indexNavigationBar: the index of navigation bar to be toggled
function toggleNavigationBar(indexNavigationBar)
{
var NavToggle = document.getElementById("NavToggle" + indexNavigationBar);
var NavFrame = document.getElementById("NavFrame" + indexNavigationBar);
if (!NavFrame || !NavToggle) {
return false;
}
// if shown now
if (NavToggle.firstChild.data == NavigationBarHide) {
for (
var NavChild = NavFrame.firstChild;
NavChild != null;
NavChild = NavChild.nextSibling
) {
if ( hasClass( NavChild, 'NavPic' ) ) {
NavChild.style.display = 'none';
}
if ( hasClass( NavChild, 'NavContent') ) {
NavChild.style.display = 'none';
}
}
NavToggle.firstChild.data = NavigationBarShow;
// if hidden now
} else if (NavToggle.firstChild.data == NavigationBarShow) {
for (
var NavChild = NavFrame.firstChild;
NavChild != null;
NavChild = NavChild.nextSibling
) {
if (hasClass(NavChild, 'NavPic')) {
NavChild.style.display = 'block';
}
if (hasClass(NavChild, 'NavContent')) {
NavChild.style.display = 'block';
}
}
NavToggle.firstChild.data = NavigationBarHide;
}
}
// adds show/hide-button to navigation bars
function createNavigationBarToggleButton()
{
var indexNavigationBar = 0;
// iterate over all < div >-elements
var divs = document.getElementsByTagName("div");
for(
var i=0;
NavFrame = divs[i];
i++
) {
// if found a navigation bar
if (hasClass(NavFrame, "NavFrame")) {
indexNavigationBar++;
var NavToggle = document.createElement("a");
NavToggle.className = 'NavToggle';
NavToggle.setAttribute('id', 'NavToggle' + indexNavigationBar);
NavToggle.setAttribute('href', 'javascript:toggleNavigationBar(' + indexNavigationBar + ');');
var NavToggleText = document.createTextNode(NavigationBarHide);
for (
var NavChild = NavFrame.firstChild;
NavChild != null;
NavChild = NavChild.nextSibling
) {
if ( hasClass( NavChild, 'NavPic' ) || hasClass( NavChild, 'NavContent' ) ) {
if (NavChild.style.display == 'none') {
NavToggleText = document.createTextNode(NavigationBarShow);
break;
}
}
}
NavToggle.appendChild(NavToggleText);
// Find the NavHead and attach the toggle link (Must be this complicated because Moz's firstChild handling is borked)
for(
var j=0;
j < NavFrame.childNodes.length;
j++
) {
if (hasClass(NavFrame.childNodes[j], "NavHead")) {
NavFrame.childNodes[j].appendChild(NavToggle);
}
}
NavFrame.setAttribute('id', 'NavFrame' + indexNavigationBar);
}
}
}
addOnloadHook( createNavigationBarToggleButton );
//Hjemmelavede knapper specielt til Spademanns
if (mwCustomEditButtons) {
mwCustomEditButtons[mwCustomEditButtons.length] = {
"imageFile": "http://images.wikia.com/da.uncyclopedia/images/1/11/Button_category.png",
"speedTip": "Kategori",
"tagOpen": "[[Kategori:",
"tagClose": "]]",
"sampleText": "Indsæt en kategori"};
mwCustomEditButtons[mwCustomEditButtons.length] = {
"imageFile": "http://images.wikia.com/da.uncyclopedia/images/1/13/Button_enter.png",
"speedTip": "Linieskift",
"tagOpen": "<br />",
"tagClose": "",
"sampleText": ""};
mwCustomEditButtons[mwCustomEditButtons.length] = {
"imageFile": "http://images.wikia.com/da.uncyclopedia/images/e/ea/Button_easy_cite.png",
"speedTip": "Citat",
"tagOpen": "\{\{citat|",
"tagClose": "|En eller anden|et eller andet\}\}",
"sampleText": "Indsæt din citattekst her"};
mwCustomEditButtons[mwCustomEditButtons.length] = {
"imageFile": "http://images.wikia.com/da.uncyclopedia/images/c/c4/Button_ref.png",
"speedTip": "Fodnote",
"tagOpen": "<ref>",
"tagClose": "</ref>",
"sampleText": "Indsæt fodnote her"};
mwCustomEditButtons[mwCustomEditButtons.length] = {
"imageFile": "http://images.wikia.com/da.uncyclopedia/images/b/bf/WP-icon.png",
"speedTip": "Wikipedia",
"tagOpen": "\{\{wikipedia|",
"tagClose": "\}\}",
"sampleText": "Navnet på linkartikel"};
mwCustomEditButtons[mwCustomEditButtons.length] = {
"imageFile": "http://images.wikia.com/da.uncyclopedia/images/8/8e/Button_stub.png",
"speedTip": "Under konstruktion",
"tagOpen": "\{\{Under konstruktion\}\}",
"tagClose": "",
"sampleText": ""};
mwCustomEditButtons[mwCustomEditButtons.length] = {
"imageFile": "http://images1.wikia.nocookie.net/da.uncyclopedia/images/4/49/Button_talk.png",
"speedTip": "Egen signatur",
"tagOpen": "~~~",
"tagClose": "",
"sampleText": ""};
}
//Slideshow
addOnloadHook(function() {
if (document.URL.match(/printable/g)) return;
function toggleImageFunction(group, remindex, shwindex) {
return function() {
document.getElementById("ImageGroupsGr" + group + "Im" + remindex).style["display"] = "none";
document.getElementById("ImageGroupsGr" + group + "Im" + shwindex).style["display"] = "block";
return false;
};
}
var divs = document.getElementsByTagName("div");
var i = 0, j = 0;
var units, search;
var currentimage;
var UnitNode;
for (i = 0; i < divs.length; i++) {
if (divs[i].className !== "ImageGroup") { continue; }
UnitNode = undefined;
search = divs[i].getElementsByTagName("div");
for (j = 0; j < search.length; j++) {
if (search[j].className !== "ImageGroupUnits") { continue; }
UnitNode=search[j];
break;
}
if (UnitNode === undefined) { continue; }
units = [];
for (j = 0 ; j < UnitNode.childNodes.length ; j++ ) {
var temp = UnitNode.childNodes[j];
if (temp.className === "center") { units.push(temp); }
}
var rightlink = undefined;
var commentText = undefined;
for (j = 0; j < units.length; j++) {
currentimage = units[j];
currentimage.id = "ImageGroupsGr" + i + "Im" + j;
var leftlink = document.createElement("a");
if (commentText !== undefined) {
leftlink.setAttribute("title", commentText);
}
var comment;
if (typeof(currentimage.getAttribute("title")) !== "string") {
commentText = (j+1) + "/" + units.length;
comment = document.createElement("tt").appendChild(document.createTextNode("("+ commentText + ")"));
}
else {
commentText = currentimage.getAttribute("title");
comment = document.createElement("span").appendChild(document.createTextNode(commentText));
currentimage.removeAttribute("title");
}
if(rightlink !== undefined) {
rightlink.setAttribute("title", commentText);
}
var imghead = document.createElement("div");
rightlink = document.createElement("a");
if (j != 0) {
leftlink.href = "#";
leftlink.onclick = toggleImageFunction(i, j, j-1);
leftlink.appendChild(document.createTextNode("◀"));
}
if (j != units.length - 1) {
rightlink.onclick = toggleImageFunction(i, j, j+1);
rightlink.appendChild(document.createTextNode("▶"));
}
imghead.style["font-size"] = "110%";
imghead.style["font-weight"] = "bold";
imghead.appendChild(leftlink);
imghead.appendChild(document.createTextNode("\xA0"));
imghead.appendChild(comment);
imghead.appendChild(document.createTextNode("\xA0"));
imghead.appendChild(rightlink);
if (units.length > 1) {
currentimage.insertBefore(imghead,currentimage.childNodes[0]);
}
if (j != 0) {
currentimage.style["display"] = "none";
}
}
}
});
// ==================================================================
// Added SiteNotice Functionality
//
// Functions:
// * Moves the dismiss link into the SiteNotice table.
// * Saves the show/hide status of the SiteNotice in a cookie.
// * Automatically expands the SiteNotice when the ID is updated.
// ==================================================================
var dCookieName = "dismissSiteNotice=";
var msgClose = "dismiss";
var hCookieName = "hideSiteNotice=";
var hCookiePos = document.cookie.indexOf(hCookieName);
var hCookieValue = "";
function editSiteNotice() {
var snbox = document.getElementById('mw-dismissable-notice');
if (snbox != null){
if (hCookiePos > -1) {
hCookiePos = hCookiePos + hCookieName.length;
var hideEndPos = document.cookie.indexOf(";", hCookiePos);
if (hideEndPos > -1) {
hCookieValue = document.cookie.substring(hCookiePos, hideEndPos);
} else {
hCookieValue = document.cookie.substring(hCookiePos);
}
}
var newLink = document.createElement('a');
newLink.setAttribute('href', "javascript:dismissNotice();");
newLink.setAttribute('title', 'Luk banneret');
newLink.innerHTML = msgClose;
var newSpan = document.createElement('span');
newSpan.id = 'siteNoticeDismiss';
newSpan.appendChild(document.createTextNode(' ['));
newSpan.appendChild(newLink);
newSpan.appendChild(document.createTextNode(']'));
var hideLink = document.getElementById( "collapseButton" + "0" );
hideLink.href = "javascript:hideSiteNotice();"
hideLink.parentNode.style.width = "12em";
hideLink.parentNode.appendChild(newSpan);
if (hCookieValue != siteNoticeID && hideLink.innerHTML == "show") {
collapseTable(0);
}
if (hCookieValue == siteNoticeID && hideLink.innerHTML == "hide") {
collapseTable(0);
}
}
}
function hideSiteNotice() {
var hideLink = document.getElementById( "collapseButton" + "0" );
var date = new Date();
if (hideLink.innerHTML == 'hide'){
date.setTime(date.getTime() + 30*86400*1000);
} else {
date.setTime(date.getTime() - 30*86400*1000);
}
document.cookie = hCookieName + siteNoticeID + "; expires="+date.toGMTString() + "; path=/";
collapseTable(0);
}
addOnloadHook(editSiteNotice);
// ==================================================================
// End of Added SiteNotice Functionality
// ==================================================================
/**
* Some tips when editing this page...
*
** Make sure that your code has been tested in the latest version of Firefox AND Internet Explorer! (Nobody cares about older versions)
** No compressed JS. Ever. Compressed JS is fucking annoying for sausages to edit or debug.
** Make sure that your code follows some coding conventions, preferrably MediaWiki's (see http://www.mediawiki.org/wiki/Manual:Coding_conventions)
*
* Your friendly neighborhood MediaWiki developer,
* --Jack Phoenix, 26 July 2009
* <jack@countervandalism.net>
*/
// Tools: [http://uncyclopedia.wikia.com/index.php?title=-&action=raw&smaxage=0&gen=js reload cache]
// <pre><nowiki>
/* Nachteule told me to add this on my talkpage - Dr. S */
window.wgMWSuggestTemplate = "http://uncyclopedia.wikia.com/api.php?action=opensearch\x26search={searchTerms}\x26namespace={namespaces}\x26suggest";
window.wgSearchNamespaces = [0];
/* Analytics - if you're going to fuck with this, TEST IT first */
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-23952241-1']);
_gaq.push(['_trackPageview']);
(function() {
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();
/* Non-namespace logos */
//===================================================
// faux-namespace fixes
// (including hack for browsers with NO CSS3 support [IE6, etc])
// - Bizzeebeever, 2011 (if this breaks shit, you know who to ban)
//===================================================
//add faux namespaces to {namespaces} as follows:
// "namespaceName" : { tabText : "Tab text goes here", className : "Logo CSS class name" }
// //tabText: [optional] default is namespaceName
// //className [optional] will be given prefix "ns-". default is "ns-[namespaceName]"
//make sure if you are adding more than one to use a comma after each line except the last.
//<body> element for specified namespaces will be given the "ns-[className]" class.
//create your new stylesheet selector + rule in MediaWiki:Common.css accordingly
// i.e. "body.ns-why #p-logo > a { background-image:url( someimage.png ) };")
YAHOO.util.Event.onContentReady( 'p-logo', function() {
var namespaces = {
$className : function( str ) { if ( str in this ) return " ns-" + ( this[ str ].className || str ).replace( /[\W]*/g, "" ).toLowerCase(); },
$tabText : function ( str ) { if ( str in this ) return this[ str ].tabText || str },
//===add faux-namespaces below this line===
"Un-Bestiary" : { tabText : "Bestiary" },
"Uncycloversity" : { tabText : "Resource" }
}
var namespace = wgPageName.match( /^(Talk:)?[-\w\?]+/ )[ 0 ].replace( "Talk:", "" );
//grab namespace, stripping off "Talk:" if this is a talk page
if ( !namespace ) return;
//if empty namespace, probably an error
if ( namespace in namespaces )
//if a namespace hack is defined above...
{
try {
document.body.className += namespaces.$className( namespace );
//apply custom style
document.getElementById( "ca-nstab-main" ).firstChild.innerHTML = namespaces.$tabText( namespace );
//Change tab text
}
catch( e ) { return; }
}
} )
// end faux-namespace fixes
/** Reskin parser ***********************************************************
* Instructions:
* 1) Add the page title and namespace exactly ("Name_space:Page_name") as new skin, use
* UNDERSCORES *NOT* SPACES: ("Main_Page": "", should be first line). The next parameter
* is optionally an existing "MediaWiki:Skin/"-prefixed file (in which case you can skip
* step 2).
* 2) Create MediaWiki:Skin/Name_Space:Page_Name.css and place reskin CSS content there.
*/
reskin = {
'Main_Page': '',
'Main_Page_test': 'Fullscreen.css',
'UnNews:Main_Page': 'UnNewsNew.css',
'UnNews:Main_Page_Beta': 'UnNewsNew.css',
'UnNews:Religion_Section': 'UnNewsNew.css',
')': 'Sdrawkcab.css',
'AAAAAAAAA!': 'Aaaa.css',
'An:': '',
'Babel:666': '',
'Babel:96': '',
'Babel:Aa': 'Aaaa.css',
'Babel:Ap': 'Fullscreen.css',
'Babel:APPL': 'Fullscreen.css',
'Babel:CaD': '',
'Babel:Communpedia': 'Communpedia.css',
'Babel:F@H': '',
'Babel:Gbs': '',
'Babel:Hi': '',
'Babel:Pumpkin': 'Fullscreen.css',
'Babel:Newspeak': '',
'Babel:Vogon': 'Vg:.css',
'Babel:W2': 'Fullscreen.css',
'Bad_title': 'Nocategories.css',
'Broken_Redirect': 'Nocategories.css',
'Cart': 'Fullscreen.css',
'Drawing': 'Nocategories.css',
'EBay': '',
'Ea:': 'Fullscreen.css',
'Em:': '',
'File_8AO4F:_The_God_Case': 'Fullscreen.css',
'Gullible': 'Nocategories.css',
'Half-Life_2:_Episode_Three': 'Fullscreen.css',
'Holocaust_denial_denial_denial_denial_denial': 'Nocategories.css',
'International_Page_Blanking_Day': 'Nocategories.css',
'Kenny_McCormick': '',
'Loneliness': 'Em:.css',
'Talk:Loneliness': 'Em:.css',
'Marty_Friedman': 'Nocategories.css',
'Memento': '',
'Misleading': 'Nocategories.css',
'Movie_Trailer_Announcer_Guy': '',
'MS_Paint': '',
'Namespace:Main_Page': '',
'Nihilism': '',
'Rafael_Nadal': '',
'Rp:': '',
'ROT13': '',
'Sdrawkcab': '',
'Socratic_method': 'Nocategories.css',
'Slime_Cube': '',
'Time_Cubicle': 'Slime Cube.css',
'The_Consumerist': '',
'Tlh:': '',
'Tx:': '',
'UnTunes:Artsy_and_Misunderstood:_A_Bedroom_Emo_Song': 'Em:.css',
'Uncyclopedia!_Answers': 'Fullscreen.css',
'Upside_Down': '',
'User:02barryc/UnNews/Site2': '',
'User:Algorithm': 'Nocategories.css',
'User:Bradaphraser/SupperBowl': '',
'User:Codeine/Em:': 'Em:.css',
'User:Mhaille/UnTube': 'UnTube.css',
'User:Mhaille/Rufus': 'Rufus.css',
'User:Nacky/Phantom_of_the_Drama': 'Phantom_of_the_Drama.css',
'User:Severian/Germ_Warfare': 'Germ_Warfare.css',
'User:Spintherism/Penmanship': '',
'User:Zombiebaron/wip/Deeply_Undercovered': 'Fullscreen.css',
'User:Zombiebaron/Uncyclopedia_Reskin_Committee/Defacebook': 'Defacebook.css',
'User:Kelpan/Conservapedia': 'Conservapedia.css',
'Vd:': '',
'Visual_puns': 'Nocategories.css',
'Wikimedia_fundraising': '',
'Wikimedia_fundraising/Zombiebaron': '',
'Wikipedia': '',
'Yahoo!': 'Fullscreen.css'
// Make sure all lines in this list except the last one have a comma after!
}
var skinName;
if( reskin[wgPageName] != undefined && wgIsArticle == true ) {
skinName = ( reskin[wgPageName].length > 0 ) ? reskin[wgPageName] : wgPageName + '.css';
document.write('<style type="text/css">/*<![CDATA[*/ @import "/index.php?title=MediaWiki:Skin/' + skinName + '&action=raw&ctype=text/css"; /*]]>*/</style>');
}
/* drop-downs for cactions tabs and whatnot */
importScript('User:Lyrithya/dropdown.js');
function noLogo() {
if( document.getElementById( 'nologo' ) ) {
document.getElementById( 'p-logo' ).style.display = 'none';
}
}
YAHOO.util.Event.onContentReady('p-logo', noLogo);
function validateImageURL(textval) {
var urlregex = new RegExp(
"^(http|https)\://(images[0-9]|images)\.wikia.([a-zA-Z0-9\.\-]+(\:[a-zA-Z0-9\.&%\$\-]+)*@)*((25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9])\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]|0)\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]|0)\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[0-9])|([a-zA-Z0-9\-]+\.)*[a-zA-Z0-9\-]+\.(com|edu|gov|int|mil|net|org|biz|arpa|info|name|pro|aero|coop|museum|[a-zA-Z]{2}))(\:[0-9]+)*(/($|[a-zA-Z0-9\.\,\?\'\\\+&%\$#\=~_\-]+))*\.(gif|GIF|jpg|JPG|jpeg|JPEG|png|PNG)$");
return ( urlregex.test(textval) & (textval.length < 200) );
}
function logotipo() {
if( document.getElementById( 'logotipo' ) ) {
if ( document.getElementById( 'logotipo' ).firstChild.src != null ) {
var logoURL = document.getElementById( 'logotipo' ).firstChild.src;
if ( validateImageURL( logoURL ) ) {
document.getElementById( 'p-logo' ).innerHTML= '<a style="background-image: url(' + logoURL + ')" href="/wiki/Main_Page" title="Visit the main page"/>';
}
} else {
if ( document.getElementById( 'logotipo' ).firstChild.firstChild.src != null) {
logoURL = document.getElementById( 'logotipo' ).firstChild.firstChild.src;
if ( validateImageURL( logoURL ) ) {
document.getElementById( 'p-logo' ).innerHTML= '<a style="background-image: url(' + logoURL + ')" href="/wiki/Main_Page" title="Visit the main page"/>';
}
}
}
}
}
YAHOO.util.Event.onContentReady('p-logo', logotipo);
// - addOnloadHook only fires after all content on the page has loaded, including images. Which is not very useful if you're trying to hide an image.
// It's especially bad if there's a large image(s) in the article. This YUI function will fire it as soon as the logo div is loaded. Which is better.
/** Dismiss notice remover
* (only removes if you have made a custom sitenotice designed to use its own close button)
*/
function removeSitenoticeDismiss() {
snh = document.getElementById( 'siteNoticehide' );
if( !snh ) {
return;
}
snh = snh.parentNode;
snh.href = 'javascript:dismissNotice();';
snh.firstChild.style.display = 'block !important';
noticetr = document.getElementById( 'mw-dismissable-notice' );
if( !noticetr ) {
snh.parentNode.removeChild( snh );
return;
}
noticetr = noticetr.firstChild.firstChild;
noticetr.removeChild( noticetr.lastChild );
}
YAHOO.util.Event.onContentReady('siteNoticehide', removeSitenoticeDismiss);
/** Username replace function ([[template:USERNAME]]) *******************************
* Inserts user name into <span class="insertusername"></span>
* Originally by [[wikia:User:Splarka|Splarka]]
* New version by [[User:Spang|Spang]]
*/
function UserNameReplace() {
if( typeof( disableUsernameReplace ) != 'undefined' && disableUsernameReplace || wgUserName == null ) {
return;
}
var n = YAHOO.util.Dom.getElementsByClassName( 'insertusername', 'span', document.getElementById( 'bodyContent' ) );
for ( var x in n ) {
n[x].innerHTML = wgUserName;
}
}
addOnloadHook( UserNameReplace );
/** Title rewrite ********************************************************
* Rewrites the page's title, used by [[Template:Title]]
* By [[User:Sikon|Sikon]]
*/
function rewriteTitle() {
if( typeof( SKIP_TITLE_REWRITE ) != 'undefined' && SKIP_TITLE_REWRITE ) {
return;
}
var titleDiv = document.getElementById( 'title-meta' );
if( titleDiv == null || titleDiv == undefined ) {
return;
}
var cloneNode = titleDiv.cloneNode( true );
var firstHeading = document.getElementById( 'firstHeading' );
var node = firstHeading.childNodes[0];
// new, then old!
firstHeading.replaceChild( cloneNode, node );
cloneNode.style.display = 'inline';
if ( titleDiv.childNodes[0].nodeValue.toLowerCase() == wgPageName.replace( /_/g, ' ' ).toLowerCase() ) {
document.title = titleDiv.childNodes[0].nodeValue;
}
var titleAlign = document.getElementById( 'title-align' );
firstHeading.style.textAlign = titleAlign.childNodes[0].nodeValue;
}
// You can use addOnloadHook (MW native function, defined in wikibits.js) or
// jQuery( document ).ready( rewriteTitle ); (jQuery implementation) if you're
// copying this code over to another wiki
YAHOO.util.Event.onDOMReady( rewriteTitle );
/** Dynamic navigation bars ************************************************
* Allows navigations templates to expand and collapse their content to save space
* Documentation on Wikipedia at [[wikipedia:Wikipedia:NavFrame|Wikipedia:NavFrame]]
*/
// set up the words in your language
var NavigationBarHide = '[hide]';
var NavigationBarShow = '[show]';
// set up max count of Navigation Bars on page,
// if there are more, all will be hidden
// NavigationBarShowDefault = 0; // all bars will be hidden
// NavigationBarShowDefault = 1; // on pages with more than 1 bar all bars will be hidden
var NavigationBarShowDefault = 1;
// shows and hides content and picture (if available) of navigation bars
// Parameters:
// indexNavigationBar: the index of navigation bar to be toggled
function toggleNavigationBar( indexNavigationBar ) {
var NavToggle = document.getElementById( 'NavToggle' + indexNavigationBar );
var NavFrame = document.getElementById( 'NavFrame' + indexNavigationBar );
if( !NavFrame || !NavToggle ) {
return false;
}
// if shown now
if( NavToggle.firstChild.data == NavigationBarHide ) {
for (
var NavChild = NavFrame.firstChild;
NavChild != null;
NavChild = NavChild.nextSibling
) {
if( NavChild.className == 'NavPic' ) {
NavChild.style.display = 'none';
}
if( NavChild.className == 'NavContent' ) {
NavChild.style.display = 'none';
}
}
NavToggle.firstChild.data = NavigationBarShow;
// if hidden now
} else if( NavToggle.firstChild.data == NavigationBarShow ) {
for (
var NavChild = NavFrame.firstChild;
NavChild != null;
NavChild = NavChild.nextSibling
) {
if( NavChild.className == 'NavPic' ) {
NavChild.style.display = 'block';
}
if( NavChild.className == 'NavContent' ) {
NavChild.style.display = 'block';
}
}
NavToggle.firstChild.data = NavigationBarHide;
}
}
// adds show/hide-button to navigation bars
function createNavigationBarToggleButton() {
var indexNavigationBar = 0;
// iterate over all < div >-elements
for(
var i = 0;
NavFrame = document.getElementsByTagName( 'div' )[i];
i++
) {
// if found a navigation bar
if( NavFrame.className == 'NavFrame' ) {
indexNavigationBar++;
var NavToggle = document.createElement( 'a' );
NavToggle.className = 'NavToggle';
NavToggle.setAttribute( 'id', 'NavToggle' + indexNavigationBar );
NavToggle.setAttribute( 'href', 'javascript:toggleNavigationBar(' + indexNavigationBar + ');' );
var NavToggleText = document.createTextNode( NavigationBarHide );
NavToggle.appendChild( NavToggleText );
// Find the NavHead and attach the toggle link (Must be this complicated because Moz's firstChild handling is borked)
for( var j = 0; j < NavFrame.childNodes.length; j++ ) {
if( NavFrame.childNodes[j].className == 'NavHead' ) {
NavFrame.childNodes[j].appendChild( NavToggle );
}
}
NavFrame.setAttribute( 'id', 'NavFrame' + indexNavigationBar );
}
}
// if more Navigation Bars found than Default: hide all
if( NavigationBarShowDefault < indexNavigationBar ) {
for( var i = 1; i <= indexNavigationBar; i++ ) {
toggleNavigationBar( i );
}
}
}
addOnloadHook( createNavigationBarToggleButton, false );
/** Another collapsible whatnits implementation - for the sidebar mostly, but can be used with whatever
I'd write some documentation or something, but I can't be arsed. -Lyrithya
********************************************* star */
jQuery( document ).ready( function() {
$( '.collapsed > *' ).next().css( 'display', 'none' );
$( '.expanded > *' ).click( function() {
$( this ).next().toggle();
$( this ).parent().toggleClass( 'expanded' );
$( this ).parent().toggleClass( 'collapsed' );
});
$( '.collapsed > *' ).click( function() {
$( this ).next().toggle();
$( this ).parent().toggleClass( 'collapsed' );
$( this ).parent().toggleClass( 'expanded' );
});
});
/*
* Trivial plugin for hiding the portals in the sidebar panel
* Written by Silent Penguin
*/
(function( $ ){
$.fn.hidingToolbox = function(options) {
var settings = {
'initClosed' : true,
'duration' : 200,
'contentSelector' : '.pBody',
'handleSelector' : 'h5',
'slide': function (visible) { if(visible){ this.parent().addClass('hidden').removeClass('visible') } else { this.parent().addClass('visible').removeClass('hidden') } }
};
//where the magic happens
var handleClick = function (){
var handle = $(this).parent().find(settings['contentSelector']);
var visible = handle.is(':visible')
handle[ visible
? 'slideUp'
: 'slideDown' ](settings['duration'], function () {
return settings['slide'].apply($(this),[visible]);
});
}
var handleHoverIn = function () {
$(this).addClass('hover');
}
var handleHoverOut = function () {
$(this).removeClass('hover');
}
var length = this.length;
if ( typeof(options) == typeof(Object()) ) {
$.extend( settings, options );
}
// If options exist and is the right type, lets merge them with our default settings
if ( typeof(settings['initClosed']) == typeof(Array()) &&
!settings['initClosed'].length) {
settings['initClosed'] = true;
}
// if our init closed is an empty array, define it to the default again.
return this.each(function(key) {
var self = $(this);
self.find(settings['handleSelector'])
.hover(handleHoverIn, handleHoverOut) //detect hovers, style accordingly
.click(handleClick); //click event to open and close
var initClosed = typeof(settings['initClosed']) == typeof(Array())
? settings['initClosed'][Math.min(key, length - 1)]
: settings['initClosed'];
self.find(settings['contentSelector'])[initClosed ? 'hide' : 'show']().parent().addClass(initClosed ? 'hidden' : 'visible' );
});
};
})( jQuery );
jQuery(document).ready(function(){
jQuery('.generated-sidebar:not(#p-navigation), #p-tb, #p-wikicities-nav, #p-lang').hidingToolbox({'initClosed':[false, true, false, false]});
jQuery('#column-one').addClass('collapsible_pile');
});
/** Archive edit tab disabling *************************************
* Disables the edit tab on old forum topic pages to stop noobs bumping old topics.
* Page can still be edited by going via the edit tab on the history etc, or by
* typing the edit address manually.
* By [[User:Spang|Spang]]
*/
function disableOldForumEdit() {
if( typeof( enableOldForumEdit ) != 'undefined' && enableOldForumEdit ) {
return;
}
if( !document.getElementById( 'ca-edit' ) || !document.getElementById( 'old-forum-warning' ) ) {
return;
}
editLink = document.getElementById( 'ca-edit' ).firstChild;
editLink.removeAttribute( 'href', 0 );
editLink.style.color = 'gray';
editLink.innerHTML = 'No Editing';
}
addOnloadHook( disableOldForumEdit );
/** Forum talkpages - adds talkpage tab back if present.
* Blame <name missing>
*/
function forumTalkTab() {
if( document.getElementById( 'talkforum' ) ) {
document.getElementById( 'talkforum' ).style.display = 'none';
document.getElementById( 'ca-talk' ).style.display = 'block !important';
}
}
addOnloadHook( forumTalkTab );
/** Add section tab disabling *************************************
* Disables the add section tab on any page you like, mainly useful for your userpage
* (depending on how you have your userpage setup)
* In order to use it, simply include any HTML element with an ID of disableAddSection such as <div id="disableAddSection"></div>
* By [[User:Olipro|Olipro]]
*/
function disableAddSection() {
if( !( addsect = document.getElementById( 'ca-addsection' ) ) || !document.getElementById( 'disableAddSection' ) ) {
return;
}
addsect.parentNode.removeChild( addsect );
}
addOnloadHook( disableAddSection );
/** Remove example text **************************************************
* Automatically removes any example text left on the page upon saving.
* By [[User:Spang]]
*/
function stripExamples() {
try {
var tb = document.forms[0].wpTextbox1;
var tbh = tb.scrollTop;
tb.value = tb.value.replace(/(\'\'\'Bold text\'\'\'|\'\'Italic text\'\'|\[\[Link title\]\]|\[http:\/\/www\.example\.com link title\]|\n== Headline text ==\n|\[\[Image:Example\.jpg\]\]|\[\[File:Example\.jpg\]\]|<math>Insert formula here<\/math>|<nowiki>Insert non-formatted text here<\/nowiki>|<code><\/code>|\[\[Media:Example\.ogg\]\]|\n(?=\n\n\n))/g,'');
tb.scrollTop = tbh;
return true;
} catch( e ) {
return true;
}
}
addOnloadHook(
function() {
if ( ( wgAction == 'edit' || wgAction == 'submit' ) && wgCanonicalSpecialPageName == false ) {
document.forms[0].wpSave.setAttribute( 'onclick', 'return stripExamples()' );
}
}
)
/** Embed flash movies **************************************************
* Allows embedding of flash files in a page. Only enabled in userspace currently.
* See [[Template:Flash]]
* By [[User:Olipro|Olipro]]
*/
var flashOk;
function embedFlashMovie( flashOk ) {
mainbody = document.getElementById( 'bodyContent' );
mainbody.innerHTML = contentTempHolder;
spancheck = document.getElementsByTagName( 'span' );
for( i = 0; i < spancheck.length; i++ ) {
if( spancheck[i].getAttribute( 'id' ) != 'embedFlashDoc' ) {
continue;
}
obj = spancheck[i].innerHTML.split( '@' );
flwidth = obj[0];
flheight = obj[1];
flfile = obj[2].replace( 'fullurl://', 'http://' );
showFlash = ' ';
if( flashOk ) {
showFlash = '<object width="' + flwidth + '" height="' + flheight + '"';
showFlash += 'classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"';
showFlash += 'codebase="http://fpdownload.macromedia.com/pub/';
showFlash += 'shockwave/cabs/flash/swflash.cab#version=8,0,0,0">';
showFlash += '<param name="movie" value="' + flfile + '" />';
showFlash += '<embed src="' + flfile + '" width="' + flwidth + '" height=';
showFlash += '"' + flheight + '" type="application/x-shockwave-flash" ';
showFlash += 'pluginspage="http://www.macromedia.com/go/getflashplayer" />';
showFlash += '</object>';
} else {
showFlash = '<a class="plainlinks" href="javascript:embedFlashMovie(true)" onClick="embedFlashMovie(true)">' + flfile + '</a> (Click to Show)';
}
spancheck[i].innerHTML = showFlash;
spancheck[i].style.display = 'inline';
}
}
var contentTempHolder;
function embedFlashCheck() {
if( !document.getElementById( 'embedFlashDoc' ) ) {
return;
}
mainbody = document.getElementById( 'bodyContent' );
contentTempHolder = mainbody.innerHTML;
if( typeof displayFlashOverride != 'undefined' ) {
embedFlashMovie( displayFlashOverride );
return;
}
askmessage = '<div align="center" id="askflash">This page contains ';
askmessage += '<a href="/wiki/Flash_Gordon" class="plainlinks">Flash</a>; would you ';
askmessage += 'like to see it? <b><a href="javascript:embedFlashMovie(true)" ';
askmessage += 'onClick="embedFlashMovie(true)">Yes</a> | <a ';
askmessage += 'href="javascript:embedFlashMovie(false)" ';
askmessage += 'onClick="embedFlashMovie(false)">No</a> | <a ';
askmessage += 'href="/index.php?title=User:' + wgUserName + '/' + skin + '.js&';
askmessage += 'action=edit§ion=new&preload=Template:Flash/disable">';
askmessage += 'Don\'t show this again</a></b></div>';
mainbody.innerHTML = askmessage;
}
addOnloadHook( embedFlashCheck );
/** Edit Link remover *****************************************************
* Removes the little edit links from the UnNews Main Page if you're not
* signed in as a user since these pages are semi-protected and always
* will be.
*/
function unNewsEditLinkChecker() {
if( wgPageName != 'UnNews:Main_Page' || wgIsLogin ) {
return;
}
editlinks = document.getElementsByTagName( 'span' );
for( i = 0; i < editlinks.length; i++ ) {
if( editlinks[i].className != 'editor' ) {
continue;
}
editlinks[i].parentNode.removeChild( editlinks[i] );
}
}
addOnloadHook( unNewsEditLinkChecker );
/** Sortable table fixes **************************************************
* Fixes some problems the default sortable table script has.
* Slightly modifies the ts_resortTable function found in wikibits.js
*/
function ts_resortTable( lnk ) {
var span = lnk.getElementsByTagName( 'span' )[0];
var td = lnk.parentNode;
var tr = td.parentNode;
var column = td.cellIndex;
var table = tr.parentNode;
while( table && !( table.tagName && table.tagName.toLowerCase() == 'table' ) ) {
table = table.parentNode;
}
if( !table ) {
return;
}
if( table.rows.length <= 1 ) {
return;
}
if( ts_number_transform_table == null ) {
ts_initTransformTable();
}
var rowStart = table.tHead && table.tHead.rows.length > 0 ? 0 : 1;
var itm = '';
for( var i = rowStart; i < table.rows.length; i++ ) {
if( table.rows[i].cells.length > column ) {
itm = ts_getInnerText( table.rows[i].cells[column] );
itm = itm.replace(/^[\s\xa0]+/,"").replace(/[\s\xa0]+$/,"");
if( itm != '' ) {
break;
}
}
}
var sortfn = ts_sort_generic;
var preprocessor = ts_toLowerCase;
if( /^\d\d[\/. -][a-zA-Z]{3}[\/. -]\d\d\d\d$/.test( itm ) ) {
preprocessor = ts_dateToSortKey;
} else if( /^\d\d[\/.-]\d\d[\/.-]\d\d\d\d$/.test( itm ) ) {
preprocessor = ts_dateToSortKey;
} else if( /^\d\d[\/.-]\d\d[\/.-]\d\d$/.test( itm ) ) {
preprocessor = ts_dateToSortKey;
} else if( /(^[\u00a3$\u20ac\u00a4\u00a5]|\u00a2$)/.test( itm ) ) {
preprocessor = ts_currencyToSortKey;
} else if( ts_number_regex.test( itm ) || /sm=n$/.test( itm ) ) {
preprocessor = ts_parseFloat;
}
var reverse = span.getAttribute( 'sortdir' ) == 'down';
var newRows = new Array;
var staticRows = new Array;
for( var j = rowStart; j < table.rows.length; j++ ) {
var row = table.rows[j];
if( ( ' ' + row.className + ' ' ).indexOf( ' unsortable ' ) < 0 ) {
var keyText = ts_getInnerText( row.cells[column] );
var oldIndex = reverse ? -j : j;
var preprocessed = preprocessor( keyText );
newRows[newRows.length] = new Array( row, preprocessed, oldIndex );
} else {
staticRows[staticRows.length] = new Array( row, false, j-rowStart );
}
}
newRows.sort( sortfn );
var arrowHTML;
if( reverse ) {
arrowHTML = "<img src=\"" + ts_image_path + ts_image_down + "\" alt=\"↓\"/>";
newRows.reverse();
span.setAttribute( 'sortdir', 'up' );
} else {
arrowHTML = "<img src=\"" + ts_image_path + ts_image_up + "\" alt=\"↑\"/>";
span.setAttribute( 'sortdir', 'down' );
}
for( var i = 0; i < staticRows.length; i++ ) {
var row = staticRows[i];
newRows.splice( row[2], 0, row );
}
for( var i = 0; i < newRows.length; i++ ) {
if( ( ' ' + newRows[i][0].className + ' ' ).indexOf( ' sortbottom ' ) == -1 ) {
table.tBodies[0].appendChild( newRows[i][0] )
}
}
for( var i = 0; i < newRows.length; i++ ) {
if( ( ' ' + newRows[i][0].className + ' ' ).indexOf( ' sortbottom ' ) != -1 ) {
table.tBodies[0].appendChild( newRows[i][0] )
}
}
var spans = getElementsByClassName( tr, 'span', 'sortarrow' );
for( var i = 0; i < spans.length; i++ ) {
spans[i].innerHTML = "<img src=\"" + ts_image_path + ts_image_none + "\" alt=\"↓\"/>";
}
span.innerHTML = arrowHTML;
if( ts_alternate_row_colors ) {
ts_alternate( table );
}
}
/** IP template for ban patrol ******
* Others can be added for other or all pages.
*/
if( mwCustomEditButtons && wgPageName == 'Uncyclopedia:Ban_Patrol' ) {
mwCustomEditButtons[mwCustomEditButtons.length] = {
'imageFile': 'http://images1.wikia.com/uncyclopedia/images/d/d7/IP_button.png',
'speedTip': 'IP template',
'tagOpen': '{' + '{' + 'IP|',
'tagClose': '}' + '}',
'sampleText': '127.0.0.1'
};
}
/** Fastdelete *******************************
* By Splarka
* The page that uses this is http://wikia.50webs.com/massdelete/uncyclopedia/index.htm .
*/
if( wgUserGroups && wgUserGroups.join( ' ' ).indexOf( 'sysop' ) != -1 ) {
importScriptURI( 'http://community.wikia.com/index.php?title=User:Splarka/fastdelete.js&action=raw&ctype=text/javascript&dontcountme=s' );
}
/** Fix XML bugs *******************************
* By [[User:Spang|Spang]]
* Eliminates bugs caused by invalid XHTML
* The first parameter is the text of the page. Default is to return the XML, set the second parameter to false to return as text.
*/
function fixXML( text, parsetext ) {
var bug1a = text.indexOf( '<head>' );
var bug1b = text.indexOf( '<!-- start content -->' );
if( bug1a != -1 || bug1b != -1 ) {
var text = text.substring( 0, bug1a ) + '<body><div id="bodyContent">' + text.substring( bug1b );
}
var bug2 = text.indexOf( '<!-- end content -->' );
if( bug2 != -1 ) {
var text = text.substring( 0, bug2 ) + '</div></body></html>';
} else {
return null;
}
if( parsetext == false ) {
return text;
}
try {
var fixedXML = new ActiveXObject("Microsoft.XMLDOM");
fixedXML.async = 'false';
fixedXML.loadXML( text );
return fixedXML;
} catch( e ) {
try {
var parser = new DOMParser();
var fixedXML = parser.parseFromString( text, "text/xml" );
return fixedXML;
} catch( e ) {
return false;
}
}
}
/** Featured Interwiki *******************************
* Stolen from Wikipedia
*/
function linkFA() {
if ( document.getElementById( 'p-lang' ) ) {
interwikiLinks = document.getElementById( 'p-lang' ).getElementsByTagName( 'li' );
for ( var i in interwikiLinks ) {
if ( document.getElementById( interwikiLinks[i].className + '-fa' ) ) {
interwikiLinks[i].className += ' FA';
interwikiLinks[i].title = 'This is a featured article in another language';
}
}
}
};
YAHOO.util.Event.onContentReady( 'column-one', linkFA );
importScript( 'User:Spang/vote.js' );
/** StatCounter Code *******************************
* To count stats, eh.
*/
var sc_project = 4143615;
var sc_invisible = 1;
var sc_partition = 51;
var sc_click_stat = 1;
var sc_security = '936a4d05';
var sc_width = screen.width;
var sc_height = screen.height;
var sc_referer = '' + document.referrer;
try {
sc_referer = '' + parent.document.referrer;
} catch( ex ) {
sc_referer = '' + document.referrer;
}
var sc_os = '';
var sc_title = '';
var sc_url = '';
var sc_unique = 0;
var sc_returning = 0;
var sc_returns = 0;
var sc_base_dir;
var sc_click_dir;
var sc_error = 0;
var sc_remove = 0;
var sc_http_url = 'http';
var sc_link_back_start = '';
var sc_link_back_end = '';
var sc_security_code = '';
var sc_cls = -1;
var sc_host = 'statcounter.com';
if( window.sc_click_stat ) {
sc_cls = window.sc_click_stat;
}
if( window.sc_https ) {
if( sc_https == 1 ) {
sc_doc_loc = '' + document.location;
myRE = new RegExp( "^https", "i" );
if( sc_doc_loc.match( myRE ) ) {
sc_http_url = 'https';
}
}
}
if( window.sc_local ) {
sc_base_dir = sc_local;
} else {
if( window.sc_partition ) {
if( sc_cls == -1 && sc_partition == 3 ) {
sc_cls = 1;
}
var sc_counter = '';
if( window.sc_partition != 34 && sc_partition <= 45 ) {
sc_counter = sc_partition + 1;
}
sc_base_dir = sc_http_url + '://c' + sc_counter + '.' + sc_host + '/';
} else {
sc_base_dir = sc_http_url + '://c1.' + sc_host + '/';
}
}
sc_click_dir = sc_base_dir;
if( window.sc_text ) {
sc_base_dir += 'text.php?';
} else {
sc_base_dir += 't.php?';
}
if( window.sc_project ) {
sc_base_dir += "sc_project=" + sc_project;
} else if( window.usr ) {
sc_base_dir += "usr=" + usr;
} else {
sc_error = 1;
}
if( window.sc_remove_link ) {
sc_link_back_start = '';
sc_link_back_end = '';
} else {
sc_link_back_start = "<a class=\"statcounter\" href=\"http://www." + sc_host + "\" target=\"_blank\">";
sc_link_back_end = "<\/a>";
}
sc_date = new Date();
sc_time = sc_date.getTime();
sc_time_difference = 3600000;
sc_title = '' + document.title;
sc_url= '' + document.location;
sc_referer = sc_referer.substring( 0, 255 );
sc_title = sc_title.substring( 0, 150 );
sc_url = sc_url.substring( 0, 150 );
sc_referer = escape( sc_referer );
if( encodeURIComponent ) {
sc_title = encodeURIComponent( sc_title );
} else {
sc_title = escape( sc_title );
}
sc_url = escape( sc_url );
if( window.sc_security ) {
sc_security_code = sc_security;
}
var sc_tracking_url = sc_base_dir + '&resolution=' + sc_width + '&h=' + sc_height + '&camefrom=' + sc_referer + '&u=' + sc_url + '&t=' + sc_title + '&java=1&security=' + sc_security_code + '&sc_random=' + Math.random();
var sc_clstr = '<span class="statcounter">';
var sc_cltext = "\" alt=\"StatCounter - Free Web Tracker and Counter\" border=\"0\">";
var sc_strout = sc_clstr + sc_link_back_start + "<img src=\"" + sc_tracking_url + sc_cltext + sc_link_back_end + '</span>';
if( sc_error == 1 ) {
document.writeln( 'Code corrupted. Insert fresh copy.' );
} else if( sc_remove == 1 ) {
} else if( window.sc_invisible ) {
if( window.sc_invisible == 1 ) {
if( window.sc_call ) {
sc_call++;
} else {
sc_call = 1;
}
eval( "var sc_img" + sc_call + " = new Image();sc_img" + sc_call + ".src = \"" + sc_tracking_url + "&invisible=1\"" );
} else {
document.writeln( sc_strout );
}
} else if( window.sc_text ) {
document.writeln( '<scr' + 'ipt language="JavaScript"' + ' src=' + sc_tracking_url + "&text=" + sc_text + '></scr' + 'ipt>' );
} else {
document.writeln( sc_strout );
}
if( sc_cls > 0 ) {
if( clickstat_done != 1 ) {
var clickstat_done = 1;
var clickstat_project = window.sc_project;
var clickstat_security = window.sc_security_code;
var dlext = "7z|aac|avi|csv|doc|exe|flv|gif|gz|jpe?g|js|mp(3|4|e?g)|mov|pdf|phps|png|ppt|rar|sit|tar|torrent|txt|wma|wmv|xls|xml|zip";
if( typeof( window.sc_download_type ) == 'string' ) {
dlext = window.sc_download_type;
}
var ltype = "https?|ftp|telnet|ssh|ssl|mailto";
var second = "ac|co|gov|ltd|me|mod|net|nic|nhs|org|plc|police|sch|com";
var dl = new RegExp( "\\.(" + dlext + ")$", "i" );
var lnk = new RegExp( "^(" + ltype + "):", "i" );
var domsec = new RegExp( "\^(" + second + ")$", "i" );
var host_name = location.host.replace(/^www\./i, "");
var host_splitted = host_name.split( '.' );
var domain = host_splitted.pop();
var host_split = host_splitted.pop();
if( domsec.test( host_split ) ) {
domain = host_split + '.' + domain;
host_split = host_splitted.pop();
}
domain = host_split + '.' + domain;
var lnklocal_mask = "^https?:\/\/(.*)" + domain;
var lnklocal = new RegExp( lnklocal_mask, "i" );
if( document.getElementsByTagName ) {
var anchors = document.getElementsByTagName( 'a' );
for( var i = 0; i < anchors.length; i++ ) {
var anchor = anchors[i];
if( anchor.onmousedown ) {
var original_click = anchor.onmousedown;
var s = original_click.toString().split( "\n" ).join( ' ' );
var bs = s.indexOf( '{' );
var head = s.substr( 0, bs );
var ps = head.indexOf( '(' );
var pe = head.indexOf( ')' );
var params = head.substring( ps + 1, pe );
var plist = params.split( ',' );
var body = s.substr( bs + 1, s.length - bs - 2 );
var insert = "sc_clickstat_call(this,'" + sc_click_dir + "');";
var final_body = insert + body;
var ev_head = "new Function (";
var ev_params = '';
var ev_sep = '';
for( var sc_i = 0; sc_i < plist.length; sc_i++ ) {
ev_params = ev_sep + "'" + plist[sc_i] + "'";
ev_sep = ',';
}
if( ev_sep == ',' ) {
ev_params += ',';
}
var ev_foot = "final_body);";
var ev_final = ev_head + ev_params + ev_foot;
anchor.onmousedown = eval( ev_final );
} else {
anchor.onmousedown = new Function( "event", "sc_clickstat_call(this,'" + sc_click_dir + "');return true;" );
}
}
}
function sc_none() {
return;
}
function sc_clickstat_call( adata, sc_click_dir ) {
if( adata ) {
var clickmode = 0;
if( lnk.test( adata ) ) {
if( ( lnklocal.test( adata ) ) ) {
if( dl.test( adata ) ) {
clickmode = 1;
} else {
if( sc_cls == 2 ) {
clickmode = 2;
}
}
} else {
clickmode = 2;
}
}
if( clickmode != 0 ) {
var sc_link = escape( adata );
if( sc_link.length > 0 ) {
var sc_req = sc_click_dir + 'click.gif?sc_project=' + clickstat_project + '&security=' + clickstat_security + '&c=' + sc_link + '&m=' + clickmode + '&rand=' + Math.random();
var sc_req_image = new Image( 1, 1 );
sc_req_image.onload = sc_none;
sc_req_image.src = sc_req;
var d = typeof( window.sc_delay ) != 'undefined' ? sc_delay : 250;
var n = new Date();
var t = n.getTime() + d;
while( n.getTime() < t ) {
var n = new Date();
}
}
}
}
}
}
}
// </nowiki></pre>
/*</pre>*/