|
|
Linje 2: |
Linje 2: |
| /* Javascript inkluderet her vil være aktivt for alle brugere. */ | | /* 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 ******************************************************* | | /** WikiMiniAtlas ******************************************************* |
| * | | * |
Linje 11: |
Linje 16: |
| */ | | */ |
| | | |
| document.write('<script type="text/javascript" src="' | | //document.write('<script type="text/javascript" src="' |
| + 'http://meta.wikimedia.org/w/index.php?title=MediaWiki:Wikiminiatlas.js'
| | // + 'http://meta.wikimedia.org/w/index.php?title=MediaWiki:Wikiminiatlas.js' |
| + '&action=raw&ctype=text/javascript&dontcountme=s"></script>');
| | // + '&action=raw&ctype=text/javascript&dontcountme=s"></script>'); |
| // This is a 3 set parts script | | // This is a 3 set parts script |
| // This script is from Wikipedia. For author attribution, please see | | // This script is from Wikipedia. For author attribution, please see |
Linje 34: |
Linje 39: |
| // 2nd part is the Scrip for Wikitables | | // 2nd part is the Scrip for Wikitables |
| /* <pre style="height: 45em"><nowiki> */ | | /* <pre style="height: 45em"><nowiki> */ |
| | |
| | |
| /** Collapsible tables ********************************************************* | | /** Collapsible tables ********************************************************* |
| * | | * |
Linje 40: |
Linje 47: |
| * Maintainers: [[Wikipedia:User:R. Koot]] | | * Maintainers: [[Wikipedia:User:R. Koot]] |
| */ | | */ |
| | /*importScriptPage('ShowHide/code.js', 'dev');*/ |
| | |
| | |
| | | |
| var autoCollapse = 2; | | var autoCollapse = 2; |
Linje 119: |
Linje 129: |
| | | |
| addOnloadHook( createCollapseButtons ); | | 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 | | //Hjemmelavede knapper specielt til Spademanns |
Linje 282: |
Linje 182: |
| "tagClose": "", | | "tagClose": "", |
| "sampleText": ""}; | | "sampleText": ""}; |
| | } |
| | |
| | // ================================================================== |
| | // 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> |
| | |
| | |
| | /* 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 changeLogoLinks() { | | (function() { |
| if (wgCanonicalNamespace == 'U') {
| | var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true; |
| document.getElementById('p-logo').getElementsByTagName('A')[0].href = '/wiki/U:Forside';
| | 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': '', |
| | 'Nyhed': '', |
| | |
| | // Make sure all lines in this list except the last one have a comma after! |
| } | | } |
| addOnloadHook(changeLogoLinks);
| | |
| | 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 = '[skjul]'; |
| | var NavigationBarShow = '[vis]'; |
| | |
| | // 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-filer, #p-tb, #p-wikicities-nav, #p-lang').hidingToolbox({'initClosed':[false, true, true, false, false]}); |
| | jQuery('#column-one').addClass('collapsible_pile'); |
| | jQuery('slider').hidingToolbox({'initClosed':[false]}); |
| | }); |
| | |
| | |
| | /** 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' ); |
| | |
| | |
| | /** |
| | * 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> |
| | |
| | |
| | |
| | //<nowiki> |
| | /*ajaxwatch.js*/ |
| | |
| | /* search default text provided by Nachteule */ |
| | jQuery(document).ready(function() { |
| | jQuery("#searchInput").val("Søg"); |
| | jQuery("#searchInput").css("color", "#888"); |
| | jQuery("#searchInput").bind("focus", function(event) { |
| | jQuery("#searchInput").val(""); |
| | jQuery("#searchInput").css("color", ""); |
| | }); |
| | jQuery("#searchInput").bind("blur", function(event) { |
| | if (jQuery("#searchInput").val() === "") { |
| | jQuery("#searchInput").val("Søg"); |
| | jQuery("#searchInput").css("color", "#888"); |
| | } |
| | }); |
| | }) |
| | |
| | |
| | if(typeof AjaxWatch==="undefined"||!AjaxWatch){ |
| | var AjaxWatch={ |
| | watchMsg:"Taco", |
| | unwatchMsg:"Detaco", |
| | watchingMsg:"Tacoing...", |
| | unwatchingMsg:"Detacoing...", |
| | 'tooltip-ca-watchMsg':"Tilføj denne side til din overvågningsliste", |
| | 'tooltip-ca-unwatchMsg':"Fjern denne side fra din overvågningsliste" |
| | }; |
| | } |
| | |
| | AjaxWatch.supported=true; |
| | AjaxWatch.watching=false; |
| | AjaxWatch.inprogress=false; |
| | AjaxWatch.timeoutID=null; |
| | AjaxWatch.watchLinks=[]; |
| | AjaxWatch.imgBasePath=""; |
| | |
| | AjaxWatch.setLinkText=function(newText) { |
| | for(i=0; i<AjaxWatch.watchLinks.length; i++){ |
| | changeText(AjaxWatch.watchLinks[i], ''); |
| | |
| | // Because firefox keeps the old children |
| | if (!document.getElementById('watch-star') && !document.getElementById('unwatch-star')) |
| | var innera = document.createElement("img"); |
| | else if (document.getElementById('watch-star')) |
| | var innera = document.getElementById('watch-star'); |
| | else var innera = document.getElementById('unwatch-star'); |
| | innera.src = 'http://images4.wikia.nocookie.net/__cb20060516011831/uncyclopedia/images/5/52/Spacer.gif'; |
| | innera.id = 'watch-star'; |
| | innera.setAttribute('width', '17px'); |
| | innera.setAttribute('height', '17px'); |
| | |
| | if(newText==AjaxWatch.unwatchingMsg || newText==AjaxWatch.unwatchMsg) { |
| | innera.id = 'unwatch-star'; |
| | } |
| | if(newText==AjaxWatch.watchMsg||newText==AjaxWatch.unwatchMsg){ |
| | var keyCommand=AjaxWatch.watchLinks[i].title.match(/\[.*?\]$/)?AjaxWatch.watchLinks[i].title.match(/\[.*?\]$/)[0]:""; |
| | AjaxWatch.watchLinks[i].title=(newText==AjaxWatch.watchMsg?AjaxWatch['tooltip-ca-watchMsg']:AjaxWatch['tooltip-ca-unwatchMsg'])+" "+keyCommand; |
| | } |
| | if (!(document.getElementById('watch-star') || document.getElementById('unwatch-star')) ) |
| | AjaxWatch.watchLinks[i].appendChild(innera); |
| | } |
| | }; |
| | |
| | AjaxWatch.setLinkID=function(newId){ |
| | AjaxWatch.watchLinks[0].parentNode.setAttribute('id',newId); |
| | }; |
| | |
| | AjaxWatch.setHref=function(string){ |
| | for(i=0; i<AjaxWatch.watchLinks.length; i++) { |
| | if(string=='watch'){ |
| | AjaxWatch.watchLinks[i].href=AjaxWatch.watchLinks[i].href.replace(/&action=unwatch/,'&action=watch'); |
| | }else if(string=='unwatch'){ |
| | AjaxWatch.watchLinks[i].href=AjaxWatch.watchLinks[i].href.replace(/&action=watch/,'&action=unwatch'); |
| | } |
| | } |
| | } |
| | |
| | AjaxWatch.ajaxCall=function(){ |
| | if(!AjaxWatch.supported){ |
| | return true; |
| | }else if(AjaxWatch.inprogress){ |
| | return false; |
| | } |
| | if(!wfSupportsAjax()){ |
| | AjaxWatch.supported=false; |
| | return true; |
| | } |
| | |
| | AjaxWatch.inprogress=true; |
| | AjaxWatch.setLinkText(AjaxWatch.watching?AjaxWatch.unwatchingMsg:AjaxWatch.watchingMsg); |
| | var old_sajax_request_type=sajax_request_type; |
| | sajax_request_type="POST"; |
| | sajax_do_call("wfAjaxWatch",[wgPageName,(AjaxWatch.watching?"u":"w")],AjaxWatch.processResult); |
| | sajax_request_type=old_sajax_request_type; |
| | |
| | AjaxWatch.timeoutID=window.setTimeout(function(){ |
| | AjaxWatch.inprogress=false; },10000); |
| | return false; |
| | }; |
| | |
| | AjaxWatch.processResult=function(request){ |
| | if(!AjaxWatch.supported){ |
| | return; |
| | } |
| | var response=request.responseText; |
| | if(response.match(/^<w#>/)){ |
| | AjaxWatch.watching=true; |
| | AjaxWatch.setLinkText(AjaxWatch.unwatchMsg); |
| | AjaxWatch.setLinkID("ca-unwatch"); |
| | AjaxWatch.setHref('unwatch'); |
| | }else if(response.match(/^<u#>/)){ |
| | AjaxWatch.watching=false; |
| | AjaxWatch.setLinkText(AjaxWatch.watchMsg); |
| | AjaxWatch.setLinkID("ca-watch"); |
| | AjaxWatch.setHref('watch'); |
| | }else{ |
| | window.location.href=AjaxWatch.watchLinks[0].href; |
| | return; |
| | } |
| | if(typeof wgEnableWikiaFollowedPages==="undefined"||!wgEnableWikiaFollowedPages){ |
| | jsMsg(response.substr(4),'watch'); |
| | } |
| | AjaxWatch.inprogress=false; |
| | if(AjaxWatch.timeoutID){ |
| | window.clearTimeout(AjaxWatch.timeoutID); |
| | } |
| | var watchthis=document.getElementById("wpWatchthis"); |
| | if(watchthis&&response.match(/^<[uw]#>/)){ |
| | watchthis.checked=response.match(/^<w#>/)?"checked":""; |
| | } |
| | return; |
| | }; |
| | |
| | AjaxWatch.onLoad=function(){ |
| | var el1=document.getElementById("ca-unwatch"); |
| | var el2=null; |
| | if(!el1){ |
| | el1=document.getElementById("mw-unwatch-link1"); |
| | el2=document.getElementById("mw-unwatch-link2"); |
| | } |
| | if(el1){ |
| | AjaxWatch.watching=true; |
| | }else{ |
| | AjaxWatch.watching=false; |
| | el1=document.getElementById("ca-watch"); |
| | if(!el1){ |
| | el1=document.getElementById("mw-watch-link1"); |
| | el2=document.getElementById("mw-watch-link2"); |
| | } |
| | if(!el1){ |
| | AjaxWatch.supported=false; |
| | return; |
| | } |
| | } |
| | AjaxWatch.watchLinks.push(el1.tagName.toLowerCase()=="a"?el1:el1.firstChild); |
| | if(el2){ |
| | AjaxWatch.watchLinks.push(el2); |
| | } |
| | for(i=0; i<AjaxWatch.watchLinks.length; i++){ |
| | AjaxWatch.watchLinks[i].onclick=AjaxWatch.ajaxCall; |
| | if (AjaxWatch.watching == false) AjaxWatch.setLinkText(AjaxWatch.watchMsg); |
| | else AjaxWatch.setLinkText(AjaxWatch.unwatchMsg); |
| | } |
| | return; |
| | }; |
| | |
| | // IE doesn't work and I don't know how/can't be arsed to fix it |
| | if(typeof hookEvent!='undefined' && navigator.appName != 'Microsoft Internet Explorer') YAHOO.util.Event.onContentReady('p-cactions', AjaxWatch.onLoad ); |
| | if(typeof hookEvent!='undefined' && navigator.appName != 'Microsoft Internet Explorer') hookEvent("load",AjaxWatch.onLoad); |
| | |
| | |
| | //*************************** Quiz om Nationen************************************************ |
| | |
| | var quizName = "Nationen"; |
| | var quizLang = "da"; |
| | var resultsTextArray = [ |
| | "Du har den laveste score af os alle velkommen til Nationen!", |
| | "Din score var ikke tilpas lav til at blive taget i betragtning som medlem af Nationen!", |
| | "Du havde den højeste score. Hold dig til dit gode faste atbejde...og Nationen!.....DROP DET!!!!!" |
| | ]; |
| | var questions = [ |
| | |
| | ["Du graver et hul som er 2 meter langt, 3 meter bredt og en meter dybt. Hvor meget jord er der i hullet?", |
| | "Det er umuligt at svare på", |
| | "Ingen af svarmulighederne1", |
| | "6 kubikmeter", |
| | "9.5 kubikmeter"], |
| | |
| | ["Der er 10 æbler. Du tager de 3. Hvor mange æbler har du nu?", |
| | "3", |
| | "7", |
| | "10", |
| | "Ved ikke"] |
| | |
| | ]; |
| | |
| | importArticles({ |
| | type: 'script', |
| | articles: [ |
| | 'Mediawiki:Quiz.js' |
| | ] |
| | }); |
| | |
| | // </nowiki></pre> |
| | |
| | // </nowiki></pre> |
| /*</pre>*/ | | /*</pre>*/ |