MediaWiki:Common.js bak
Scoutpedia.nl, dé Scouting wiki
Opmerking: nadat u de wijzigingen hebt gepubliceerd is het wellicht nodig uw browsercache te legen.
- Firefox / Safari: houd Shift ingedrukt terwijl u op Vernieuwen klikt of druk op Ctrl-F5 of Ctrl-R (⌘-Shift-R op een Mac)
- Google Chrome: druk op Ctrl-Shift-R (⌘-Shift-R op een Mac)
- Internet Explorer / Edge: houd Ctrl ingedrukt terwijl u op Vernieuwen klikt of druk op Ctrl-F5
- Opera: druk op Ctrl-F5.
/* JavaScript hier zal invloed hebben op elke pagina voor elke gebruiker. */ /* == Extra knopje in de toolbar == <pre> */ if (mwCustomEditButtons) { mwCustomEditButtons[mwCustomEditButtons.length] = { "imageFile": "http://upload.wikimedia.org/wikipedia/commons/0/04/Button_array.png", "speedTip": "Voeg tabel in", "tagOpen": '{| class="prettytable"\n|-\n', "tagClose": "\n|}", "sampleText": "! kop 1\n! kop 2\n! kop 3\n|-\n| rij 1, cel 1\n| rij 1, cel 2\n| rij 1, cel 3\n|-\n| rij 2, cel 1\n| rij 2, cel 2\n| rij 2, cel 3"}; } /* </pre> == NavFrame == Van [[:en:MediaWiki:Common.js]] Test if an element has a certain class Description: Uses regular expressions and caching for better performance. Maintainers: [[:en:User:Mike Dillon]], [[:en:User:R. Koot]], [[:en:User:SG]] <pre> */ var hasClass = (function () { var reCache = {}; return function (element, className) { return (reCache[className] ? reCache[className] : (reCache[className] = new RegExp("(?:\\s|^)" + className + "(?:\\s|$)"))).test(element.className); }; })(); /* </pre> Collapsible tables Description: Allows tables to be collapsed, showing only the header. See [[:en:Wikipedia:NavFrame]]. Maintainers: [[:en:User:R. Koot]] <pre> */ var autoCollapse = 2; var collapseCaption = "verberg"; var expandCaption = "toon"; function collapseTable( tableIndex ) { var Button = document.getElementById( "collapseButton" + tableIndex ); var Table = document.getElementById( "collapsibleTable" + tableIndex ); if ( !Table || !Button ) { return false; } var Rows = Table.getElementsByTagName( "tr" ); 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" ) ) { 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.setAttribute( "id", "collapseButton" + tableIndex ); ButtonLink.setAttribute( "href", "javascript:collapseTable(" + tableIndex + ");" ); ButtonLink.appendChild( ButtonText ); Button.appendChild( document.createTextNode( "[" ) ); Button.appendChild( ButtonLink ); Button.appendChild( document.createTextNode( "]" ) ); var Header = Tables[i].getElementsByTagName( "tr" )[0].getElementsByTagName( "th" )[0]; /* only add button and increment count if there is a header row to work with */ if (Header) { 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 ); /* </pre> ==Numerieke sortering in sortable-tabellen== Aangepaste functie voor het parseren van getallen in numerieke kolommen van tabellen met class="sortable". Deze zorgt ervoor dat getallen in de Nederlandse notatie (punten voor de duizendtallen, komma's voor de decimalen) juist worden gesorteerd. <pre> */ function ts_parseFloat(num) { if (!num) return 0; num = parseFloat(num.replace(/\./g, "").replace(/,/, ".")); return (isNaN(num) ? 0 : num); } /* </pre> */ /* </pre> == begin SpecialSearchEnhanced == Dit voegt twee externe zoekmachines toe aan Speciaal:Search Het is een bewerking van fr:MediaWiki:Monobook.js en en:MediaWiki:Common.js wat gemaakt is door fr:User:Dake en de auteurs van en:MediaWiki:Common.js onder de licentie GFDL Deze functie is aangepast aan MWSearch. <pre> */ if (wgCanonicalSpecialPageName == "Search") { addOnloadHook(SpecialSearchEnhanced); } function SpecialSearchEnhanced() { if (document.forms['powersearch']) var searchForm = document.forms['powersearch']; if (document.forms['search']) var searchForm = document.forms['search']; if (searchForm.lsearchbox) { var searchBox = searchForm.lsearchbox; } else { var searchBox = searchForm.search; } var searchValue = searchBox.value var safeSearchValue = searchValue.replace(/&/g, "&").replace(/</g, "<").replace(/>/g, ">").replace(/"/g, """); var node = document.createElement('div'); var SearchEnhancedText = '<p/><br/>U kunt ook met onderstaande externe zoekmachines zoeken in Wikipedia. Deze kunnen resultaten opleveren die met de interne zoekmachine niet gevonden worden. Bij Google kunt u ook andere taalversies van Wikipedia selecteren.'; var googleSearch = '<p/><table width=100%><tr valign=top><td align=left>'; googleSearch += '<form method=get action="http://www.google.nl/search">'; googleSearch += '<input type=text name=q value="' + safeSearchValue + '">'; googleSearch += '<input type=hidden name=hl value=nl>'; googleSearch += ' <select name=sitesearch>'; googleSearch += '<option value="nl.scoutwiki.org"> Nederlands </option>'; googleSearch += '<option value="en.scoutwiki.org"> Engels </option>'; googleSearch += '<option value="de.scoutwiki.org"> Duits </option>'; googleSearch += '<option value="fr.scoutwiki.org"> Frans </option>'; googleSearch += '<option value="es.scoutwiki.org"> Spaans </option>'; googleSearch += '<option value="pt.scoutwiki.org"> Portugees </option>'; googleSearch += '<option value="it.scoutwiki.org"> Italiaans </option>'; googleSearch += '<option value="sv.scoutwiki.org"> Zweeds </option>'; googleSearch += '<option value="da.scoutwiki.org"> Deens </option>'; googleSearch += '<option value="fi.scoutwiki.org"> Fins </option>'; googleSearch += '<option value="eo.scoutwiki.org"> Fries </option>'; googleSearch += '</select> <input type=submit value="Zoek met Google">'; googleSearch += '</form></td>'; var wikiwixSearch = '<td> </td><td align=right>'; wikiwixSearch += '<form method=get action="http://nl.wikiwix.com/">'; wikiwixSearch += '<input type=text name=action value="' + safeSearchValue + '">'; wikiwixSearch += ' <input type=submit value="Zoek met Wikiwix">'; wikiwixSearch += '</form></td>'; var yahooSearch = '<td> </td><td align=right>'; yahooSearch += '<form method=get action="http://nl.search.yahoo.com/search">'; yahooSearch += '<input type=text name=p value="' + safeSearchValue + '">'; yahooSearch += '<input type=hidden name=vs value=nl.wikipedia.org>'; yahooSearch += ' <input type=submit value="Zoek met Yahoo">'; yahooSearch += '</form></td></tr></table><br/>'; node.innerHTML = node.innerHTML + SearchEnhancedText + googleSearch + wikiwixSearch + yahooSearch; var nonefound = document.getElementById("nonefound") if (nonefound) { nonefound.innerHTML = nonefound.innerHTML + '<div>' + node.innerHTML + '</div>'; } else { searchForm.parentNode.insertBefore(node, searchForm.nextSibling); } } /* * 10 regels in plaats van 7 bij suggestiefunctie bij zoekvak. * Dit voorkomt het tonen van een scrollbalk. */ os_max_lines_per_suggest = 10;