MediaWiki:CustomSearch.js
Jump to navigation
Jump to search
Note: After publishing, you may have to bypass your browser's cache to see the changes.
- Firefox / Safari: Hold Shift while clicking Reload, or press either Ctrl-F5 or Ctrl-R (⌘-R on a Mac)
- Google Chrome: Press Ctrl-Shift-R (⌘-Shift-R on a Mac)
- Internet Explorer / Edge: Hold Ctrl while clicking Refresh, or press Ctrl-F5
- Opera: Press Ctrl-F5.
// {{documentation}} /* ** This file should only be included for pages that use it. At the moment that is only [[Help:Tips_and_tricks]]. If you wish to add pages to use this, edit the relevant section of Common.js ** FireFox and IE 7 allow sites to customize the integrated search box. Below exposes that through [[WT:CUSTOM]]. */ $(function () { // Find the container node and bail if it's not there var searches = document.getElementById('wtCustomIntegratedSearchProviders'); if (!searches) return; // Remove all children from 'searches' while (searches.hasChildNodes()) { searches.removeChild(searches.firstChild); } // Bail out in unsupported browsers with a message that this doesn't work if (!(window.external && ("AddSearchProvider" in window.external))) { var span = document.createElement('em'); span.appendChild(document.createTextNode('This feature is not supported by your browser. Sorry!')); searches.appendChild(span); return; } // MediaWiki built-in search appendSearchProviderLink( 'MediaWiki:SearchEnWiktWithMediaWiki.xml', 'Add integrated search provider “English Wiktionary”.' ); // English Witionary search with Google appendSearchProviderLink( 'MediaWiki:SearchEnWiktWithGoogle.xml', 'Add integrated search provider “English Wiktionary via Google”.' ); // All Witionary search with Google appendSearchProviderLink( 'MediaWiki:SearchAllWiktWithGoogle.xml', 'Add integrated search provider “All Wiktionaries via Google”.' ); // English Witionary search with Ninjawords appendSearchProviderLink( 'MediaWiki:SearchWithNinjawords.xml', 'Add integrated search provider “English Wiktionary via Ninjawords”.' ); // Anchor creator helper function appendSearchProviderLink(providerXml, linkText) { var anchor = document.createElement("a"); anchor.setAttribute('href', '#'); anchor.appendChild(document.createTextNode(linkText)); var providerXmlUrl = 'http://en.wiktionary.org/w/index.php?action=raw&title=' + encodeURIComponent(providerXml); anchor.onclick = function () { window.external.AddSearchProvider(providerXmlUrl); return false; }; if (searches.hasChildNodes()) { searches.appendChild(document.createElement("br")); } searches.appendChild(anchor); } });