Hauptmenü öffnen

Memory Alpha Nova β

Änderungen

Benutzer:D47h0r/Common.js

14.943 Bytes hinzugefügt, 00:09, 16. Nov. 2011
K
keine Bearbeitungszusammenfassung
/* Das folgende JavaScript wird für alle Benutzer geladen* * Redirect User:Name/skin.js and skin.css to the current skin's pages * (unless the 'skin' page really exists) * @source: http://www.mediawiki.org/wiki/Snippets/Redirect_skin. js * @rev: 2 */if ( mw.config.get( 'wgArticleId' ) === 0 && mw.config.get( 'wgNamespaceNumber' ) == 2 ) { var titleParts = mw.config.get( 'wgPageName' ).split( '/' ); // Make sure there was a part before and after the slash // And that the latter is 'skin.js' or 'skin.css' if ( titleParts.length == 2 ) { var userSkinPage = titleParts.shift() + '/' + mw.config.get( 'skin' ); if ( titleParts.slice(-1) == 'skin.js' ) { window.location.href = mw.util.wikiGetlink( userSkinPage + '.js' ); } else if ( titleParts.slice(-1) == 'skin.css' ) { window.location.href = mw.util.wikiGetlink( userSkinPage + '.css' ); } }}
/** Map addPortletLink to mw.util */window.addPortletLink ==============================================================================function(){ return mw.util.addPortletLink.apply( mw.util, arguments );//*** Fügt einen Link "Alle Sprachen" auf der Hauptseite unter die Sprachverweise hinzu};
/** extract a URL parameter from the current URL ********** * * @deprecated: Use mw.util.getParamValue with proper escaping */function getURLParamValue(paramName, url) { return mw.util.getParamValue(paramName, url);} /** &withCSS= and &withJS= URL parameters ******* * Allow to try custom scripts from MediaWiki space * without editing personal .css or .js files addOnloadHook*/var extraCSS = mw.util.getParamValue("withCSS");if ( extraCSS && extraCSS.match(/^MediaWiki:[^&<>=%]*\.css$/) ) { importStylesheet(extraCSS);}var extraJS = mw.util.getParamValue("withJS");if ( extraJS && extraJS.match(/^MediaWiki:[^&<>=%]*\.js$/) ) { importScript( functionextraJS);} /* Import more specific scripts if necessary */if (wgAction == 'edit' || wgAction == 'submit' || wgPageName == 'Special:Upload') {//scripts specific to editing pages importScript('MediaWiki:Common.js/edit.js');}else if (wgTitlemw.config.get('wgPageName') =='HauptseiteSpecial:Watchlist' ) { //watchlist scripts mw.loader.load(mw.config.get('wgServer') + mw.config.get('wgScript') + '?title=MediaWiki:Common.js/watchlist.js&action=raw&ctype=text/javascript& smaxage=21600&maxage=86400');} if ( wgNamespaceNumber==06 ) { addPortletLink importScript('pMediaWiki:Common.js/file.js');} /** For sysops and accountcreators ***************************************** * * Description: Allows for sysop-specific Javascript at [[MediaWiki:Sysop.js]], * and accountcreator-langspecific CSS at [[MediaWiki:Accountcreator.css]]. */if ( $.inArray( 'sysop', wgUserGroups) > -1 ) { if ( !window.disableSysopJS ) { $(function(){ importScript('MediaWiki:Sysop.js'http); }); }} /** 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. * Maintainers:[[User:Dschwen]] */ mw.loader.load('//meta.wikimedia.org/wikiw/index.php?title=MediaWiki:Wikiminiatlas.js&action=raw&ctype=text/List_of_Wikibooksjavascript&smaxage=21600&maxage=86400',); /* Scripts specific to Internet Explorer */ if (navigator.appName == 'Alle SprachenMicrosoft Internet Explorer'){ /** Internet Explorer bug fix ************************************************** * * Description: Fixes IE horizontal scrollbar bug * Maintainers: [[User:Tom-]]? */ var oldWidth; var docEl = document.documentElement; var fixIEScroll = function() { if (!oldWidth || docEl.clientWidth > oldWidth) { doFixIEScroll(); } else { setTimeout(doFixIEScroll, 'interwiki1); } oldWidth = docEl.clientWidth; }; var doFixIEScroll = function () { docEl.style.overflowX = (docEl.scrollWidth -completelist', 'Alle Sprachversionen der Wikibooks'docEl.clientWidth < 4)? "hidden" : "";
};
})
document.attachEvent("onreadystatechange", fixIEScroll); document.attachEvent("onresize", fixIEScroll); // In print IE (7?) does not like line-height mw.util.addCSS( '@media print { sup, sub, p, .documentDescription { line-height: normal; }}'); // IE overflow bug mw.util.addCSS('div.overflowbugx { overflow-x: scroll !important; overflow-y: hidden !important; } ' + 'div.overflowbugy { overflow-y: scroll !important; overflow-x: hidden !important; }'); // IE zoomfix //Use to fix right floating div/ table inside tables mw.util.addCSS('.iezoomfix div, .iezoomfix table { zoom: 1;}'); // Import scripts specific to Internet Explorer 6 if (navigator.appVersion.substr(22, 1) =='6') { importScript('MediaWiki:Common.js/IE60Fixes.js'); }} /* Load fixes for Windows font rendering */if( navigator.platform.indexOf( "Win" ) !=-1 ) { importStylesheet( 'MediaWiki:Common.css/WinFixes.css' );} /* Helper script for .hlist class in common.css * Maintainer: [[User:Edokter]] */ /* Used to fix interpunct after last nested item */$( '.hlist' ).find( 'dd dl, dt dl, ol li ol, ul li ul' ).parent() .addClass( 'hlist-parent' ); /* Used to remove the last interpunct in IE */if ( $.browser.msie && $.browser.version < '9.0' ) { $( '.hlist' ).find( 'li:last-child, dd:last-child, dt:last-child' ) .addClass( 'hlist-lastchild' );} /* Test if an element has a certain class * Maintainers: [[User:Mike Dillon]], [[User:R. Koot]], [[User:SG]] * * @deprecated: Use $(element).hasClass() instead. */ var hasClass =(function () { var reCache ={}; return function (element, className) { return (reCache[className] ? reCache[className] : (reCache[className] =new RegExp("(?:\\s|^)" + className + "(?:\\s|$)"))).test(element.className); };})(); /** Interwiki links to featured articles *************************************** * * Description: Highlights interwiki links to featured articles (or * equivalents) by changing the bullet before the interwiki link * into a star. * Maintainers: [[User:R. Koot]] */ function LinkFA() { if ( document.getElementById( "p-lang" ) ) { var InterwikiLinks =document.getElementById( "p-lang" ).getElementsByTagName( "li" ); for ( var i =0; i < InterwikiLinks.length; i++ ) { if ( document.getElementById( InterwikiLinks[i].className + "-fa" ) ) { InterwikiLinks[i].className +=" FA"; InterwikiLinks[i].title ="This is a featured article in another language."; } else if ( document.getElementById( InterwikiLinks[i].className + "-ga" ) ) { InterwikiLinks[i].className +=" GA"; InterwikiLinks[i].title ="This is a good article in another language."; } } }} $( LinkFA ); /** Collapsible tables ********************************************************* * * Description: Allows tables to be collapsed, showing only the header. See * [[Wikipedia:NavFrame]]. * Maintainers: [[User:R. Koot]] */ var autoCollapse =2;var collapseCaption ="hide";var expandCaption ="show"; 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.className ========================"collapseButton"; // BEGIN Enable multiple onload functionsStyles are declared in Common.css
ButtonLink.style.color = Header.style.color; ButtonLink.setAttribute( "id", "collapseButton" + tableIndex ); ButtonLink.setAttribute( "href", "#" ); addHandler( ButtonLink, // setup onload functions this way:"click", new Function( "evt", "collapseTable(" + tableIndex + " ); return killEvt( evt );") ); // aOnloadFunctions[aOnloadFunctions ButtonLink.length] = function_nameappendChild( ButtonText ); // without brackets!
if Button.appendChild(!windowdocument.aOnloadFunctionscreateTextNode( "[" ) ) {; var aOnloadFunctions = new Array Button.appendChild(ButtonLink ); } Button.appendChild( document.createTextNode( "]" ) );
window Header.onload = functioninsertBefore() { if (windowButton, Header.aOnloadFunctionschildNodes[0] ) {; for (var _i=0; _i<aOnloadFunctions.length; _i tableIndex++) { aOnloadFunctions[_i](); } } }
for ( var i = 0; // END Enable multiple onload functionsi < tableIndex; i++ ) { // ========================================================= if ( hasClass( NavigationBoxes[i], "collapsed" ) || ( tableIndex >=autoCollapse && hasClass( NavigationBoxes[i], "autocollapse" ) ) ) { collapseTable( i ); } else if ( hasClass( NavigationBoxes[i], "innercollapse" ) ) { var element =NavigationBoxes[i]; while (element =element.parentNode) { if ( hasClass( element, "outercollapse" ) ) { collapseTable ( i ); break; } } } }}
// ============================================================ // BEGIN Dynamic Navigation Bars // NEEDS Enable multiple onload functions $( createCollapseButtons );
// set up the words in your language
var NavigationBarHide = 'Einklappen';
var NavigationBarShow = 'Ausklappen';
// set up max count of ** Dynamic Navigation Bars on page,(experimental) ************************************* // if there are more, all will be hidden* // NavigationBarShowDefault = 0; // all bars will be hidden* Description: See [[Wikipedia:NavFrame]]. // NavigationBarShowDefault = 1; // on pages with more than 1 bar all bars will be hidden* Maintainers: UNMAINTAINED var NavigationBarShowDefault = 1;*/
// 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 shown now
if (NavToggle.firstChild.data == NavigationBarHide) {
for ( var NavChild = NavFrame.firstChild; NavChild != null; NavChild = NavChild.nextSibling ) { if (hasClass(NavChild.className == , 'NavContent') || hasClass(NavChild, 'NavPic')) {
NavChild.style.display = 'none';
}
if (NavChild.className == 'NavContent') {
NavChild.style.display = 'none';
}
if (NavChild.className == 'NavToggle') {
NavChild.firstChild.data = NavigationBarShow;
}
}
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.className == , 'NavContent') || hasClass(NavChild, 'NavPic')) {
NavChild.style.display = 'block';
}
if (NavChild.className == 'NavContent') {
NavChild.style.display = 'block';
}
if (NavChild.className == 'NavToggle') {
NavChild.firstChild.data = NavigationBarHide;
}
}
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 divs = document.getElementsByTagName("div"); for (var i = 0; NavFrame = divs[i]; i++) {
// if found a navigation bar
if (hasClass(NavFrame.className == , "NavFrame")) {
indexNavigationBar++;
NavToggle.setAttribute('href', 'javascript:toggleNavigationBar(' + indexNavigationBar + ');');
var isCollapsed = hasClass( NavFrame, "collapsed" ); /* * Check if any children are already hidden. This loop is here for backwards compatibility: * the old way of making NavFrames start out collapsed was to manually add style="display:none" * to all the NavPic/NavContent elements. Since this was bad for accessibility (no way to make * the content visible without JavaScript support), the new recommended way is to add the class * "collapsed" to the NavFrame itself, just like with collapsible tables. */ for (var NavChild = NavFrame.firstChild; NavChild != null && !isCollapsed; NavChild = NavChild.nextSibling) { if ( hasClass( NavChild, 'NavPic' ) || hasClass( NavChild, 'NavContent' ) ) { if ( NavChild.style.display == 'none' ) { isCollapsed = true; } } } if (isCollapsed) { for (var NavChild = NavFrame.firstChild; NavChild != null; NavChild = NavChild.nextSibling) { if ( hasClass( NavChild, 'NavPic' ) || hasClass( NavChild, 'NavContent' ) ) { NavChild.style.display = 'none'; } } } var NavToggleText = document.createTextNode(isCollapsed ? NavigationBarShow : NavigationBarHide);
NavToggle.appendChild(NavToggleText);
// add NavToggle-Button as first div-element Find the NavHead and attach the toggle link (Must be this complicated because Moz's firstChild handling is borked) // in for(var j=0; j < div classNavFrame.childNodes.length; j++) { if (hasClass(NavFrame.childNodes[j], "NavHead")) { NavToggle.style.color ="NavFrame" >.childNodes[j].style.color; NavFrame.insertBeforechildNodes[j].appendChild( NavToggle,); NavFrame.firstChild} );}
NavFrame.setAttribute('id', 'NavFrame' + indexNavigationBar);
}
}
} $( createNavigationBarToggleButton ); /** Main Page layout fixes ********************************************************* * * Description: Adds an additional link to the complete list of languages available. * Maintainers: [[User:AzaToth]], [[User:R. Koot]], [[User:Alex Smotrov]] */ if more Navigation Bars found than Default(wgPageName == 'Main_Page' || wgPageName == 'Talk: hide allMain_Page') { $(function () { mw.util.addPortletLink('p-lang', '//meta.wikimedia.org/wiki/List_of_Wikipedias', 'Complete list', 'interwiki-completelist', 'Complete list of Wikipedias'); });} /** Table sorting fixes ************************************************ * * Description: Disables code in table sorting routine to set classes on even/odd rows * Maintainers: [[User:Random832]] */ts_alternate_row_colors = false; /***** uploadwizard_newusers ******** * Switches in a message for non-autoconfirmed users at [[Wikipedia:Upload]] * * Maintainers: [[User:Krimpet]] */function uploadwizard_newusers() { if (NavigationBarShowDefault < indexNavigationBarwgNamespaceNumber == 4 && wgTitle == "Upload" && wgAction == "view") { var oldDiv = document.getElementById("autoconfirmedusers"), newDiv = document.getElementById("newusers") ; if (oldDiv && newDiv) { if (typeof wgUserGroups == "object" && wgUserGroups) { for(var i=10; i<=indexNavigationBarwgUserGroups.length; i++) { toggleNavigationBar if (wgUserGroups[i] == "autoconfirmed"); }{ if(window oldDiv.locationstyle.hash!display ="block"); { window newDiv.locationstyle.href display = window.location.hash"none"; return; } }
}
oldDiv.style.display = "none";
newDiv.style.display = "block";
return;
}
}}$(uploadwizard_newusers); }/** IPv6 AAAA connectivity testing
aOnloadFunctions[aOnloadFunctionsvar __ipv6wwwtest_factor = 100;var __ipv6wwwtest_done = 0;if ((wgServer != "https://secure.length] wikimedia.org") && (Math.floor(Math.random()*__ipv6wwwtest_factor)= createNavigationBarToggleButton=42)) { importScript("MediaWiki:Common.js/IPv6.js");}**/
/** Magic editintros **************************************************** * * Description: Adds editintros on disambiguation pages and BLP pages. * Maintainers: [[User:RockMFR]] *// END Dynamic Navigation Bars
// ==========================================================function addEditIntro( name ) { $( '.editsection, #ca-edit' ).find( 'a' ).each( function( i, el ) { el.href =$(this).attr("href") + '&editintro=' + name; // BEGIN import Onlyifediting-functions }); // SEE ALSO [[MediaWiki:Onlyifediting.js]]}
if (document.URL.indexOfwgNamespaceNumber === 0) { $(function("action=edit") > 0 || { if (document.URL.indexOfgetElementById("action=submit"'disambigbox') > 0) { addEditIntro('Template:Disambig_editintro'); } }); $(function(){ var cats = document.writegetElementById('<script typemw-normal-catlinks'); if (!cats) { return; } cats ="text/javascript" srccats.getElementsByTagName('a'); for (var i ="/w/index0; i < cats.length; i++) { if (cats[i].php?title=MediaWiki= 'Category:OnlyifeditingLiving people' || cats[i].js&actiontitle =raw&ctype=text/javascript&dontcountme=s"></script>'Category:Possibly living people') { addEditIntro('Template:BLP_editintro'); break; } } }); }
/** * Description: Stay on the secure server as much as possible * Maintainers: [[User:TheDJ]] */if ( mw.config.get('wgServer') == 'https:// END import Onlyifediting-functionssecure.wikimedia.org' ) { /* Old secure server */ importScript( 'MediaWiki:Common.js/secure.js');} else if( document.location && document.location.protocol && document.location.protocol ============================================================"https:" ) { /* New secure servers */ importScript('MediaWiki:Common.js/secure new.js');}
/** Text area function for the account creation process */ Klappboxen mwjQuery(function(){ if (!(document.loadergetElementById('signupuserpagefillmagic'))) return; /* * Puts an userpage edit-box inside a div with the ID 'signupuserpagefillmagic' * Created for [[:outreach:Account Creation Improvement Project]] by * [[:sv:User:Sertion]] on the behalf of [[:outreach:User:Hannibal]] * * Below are variables for internationalization.loadPlease use \n for linebreaks * and escape all single quotation marks ('http) with \' */ var preComment = '<!-- BELOW IS THE TEXT ABOUT YOU. YOU CAN CHANGE IT COMPLETELY OR IN PARTS AND THEN COME BACK TO IT. AFTER YOU ARE DONE, SCROLL DOWN A BIT FURTHER AND CLICK "SAVE PAGE".--\>{'+'{New user bar}}\n', postComment = '\n\n<!-- NOW, CLICK THE "SAVE PAGE" BUTTON. CONGRATULATIONS, YOU\'VE JUST MADE YOUR FIRST EDIT TO WIKIPEDIA. --\>', preSubmitButton ='Do not forget to click SAVE PAGE when you get to the next page!', submitText = 'Create my user page for me now!', SUPeditSummary = 'New user page through [[:outreach:Account Creation Improvement Project|Outreach:ACIP]]', preFilltemplate = 'Replace this example text with information about you. \n\n'; //en* * The actual magic: * Inserts a form with a single visible field that simulates the normal * edit-field. It uses the variables from above to set a text example (pre * filled), an automated edit summary and the label of the submit button.wikibooks * 'fakewpTextbox1' is used to hide the assembling of the final output that * is made below.org */w/index jQuery('#signupuserpagefillmagic').phphtml('<form action="'+wgServer+wgScript+'?title=MediaWiki'+wgFormattedNamespaces[2]+':Common.js/CollapseElements.js'+wgUserName+'&action=raw&ctypesubmit" method="post"><textarea id="fakewpTextbox1" style="width:46em;height:20em;">'+preFilltemplate+'</textarea><textarea name="wpTextbox1" id="wpTextbox1" style="display:none;"></textarea><input type="hidden" name="wpSummary" id="wpSummary" value="'+SUPeditSummary+'" /><br/>'+preSubmitButton+'<br/><input type="submit" value="'+submitText+'"/></form>'); // Waits for the form to be submitted. jQuery('#signupuserpagefillmagic form').live('submit',function(r){ // Stops the form from submitting r.preventDefault(); /* * Uses the previously defined variables preComment and postComment * to assemble the final output in the hidden textarea. */ $('#wpTextbox1').text( preComment + jQuery('#fakewpTextbox1').text() + postComment ); /* * Submits the form. * For unknown reasons jQuery('#signupuserpagefillmagic form').submit() crashes * Firefox (only tested in version 4.0). This method seam to work cross browser. */javascript document.getElementById('signupuserpagefillmagic').getElementsByTagName('form')[0].submit(); });});
Anonymer Benutzer