MediaWiki:Gadget-ExternalSearchEngines.js

Från Wikipedia

OBS: Efter du har publicerat sidan kan du behöva tömma din webbläsares cache för att se ändringarna.

  • Firefox / Safari: Håll ned Skift och klicka på Uppdatera sidan eller tryck Ctrl-F5 eller Ctrl-R (⌘-R på Mac)
  • Google Chrome: Tryck Ctrl-Skift-R (⌘-Skift-R på Mac)
  • Internet Explorer / Edge: Håll ned Ctrl och klicka på Uppdatera eller tryck Ctrl-F5
  • Opera: Tryck Ctrl-F5.
$( function() {
	'use strict';
	var f,
		s = $( '#mw-search-top-table' ),
		b = s.find( '.oo-ui-buttonElement-button' ),
		i,
		v;
	if ( mw.config.get( 'wgCanonicalSpecialPageName' ) !== 'Search' ) {
		return;
	}
	if ( $( '#search' ).length ) {
		f = $( '#search' );
	} else if ( $( '#powersearch' ).length ) {
		f = $( '#powersearch' );
	}
	if ( $( '#searchText' ).find( 'input' ).length ) {
		i = $( '#searchText' ).find( 'input' );
	} else if ( $( '#powerSearchText' ).length ) {
		i = $( '#powerSearchText' );
	}
	if ( !f.length ) {
		return;
	}
	if ( !s.length ) {
		return;
	}
	if ( b.length !== 1 ) {
		return;
	}
	if ( !i.length ) {
		return;
	}
	$( '.mw-search-profile-tabs' ).before( '<div id="searchengineChoices"></div>' );
	$( '#searchengineChoices' ).append(
		'<input type="radio" name="searchengineselect" id="searchengineRadio-mediawiki" checked="checked"/><label for="searchengineRadio-mediawiki">Wikipedia-sök</label>' +
		'<input type="radio" name="searchengineselect" id="searchengineRadio-google"/><label for="searchengineRadio-google">Google</label>' +
		'<input type="radio" name="searchengineselect" id="searchengineRadio-yahoo"/><label for="searchengineRadio-yahoo">Yahoo!</label>' +
		'<input type="radio" name="searchengineselect" id="searchengineRadio-wikiwix"/><label for="searchengineRadio-wikiwix">Wikiwix</label>' +
		'<input type="radio" name="searchengineselect" id="searchengineRadio-live"/><label for="searchengineRadio-live">Bing</label>'
	);
	b.click( function( e ) {
		v = i.val();
		if ( $( '#searchengineRadio-google:checked' ).length ) {
			e.preventDefault();
			window.location = 'https://www.google.se/search?hl=' + mw.config.get( 'wgUserLanguage' ) + '&q=' + v + '&as_sitesearch=' + mw.config.get( 'wgServer' ).substr( 2 );
		} else if ( $( '#searchengineRadio-yahoo:checked' ).length ) {
			e.preventDefault();
			window.location = 'https://se.search.yahoo.com/search?p=' + v + '&vs=' + mw.config.get( 'wgServer' ).substr( 2 );
		} else if ( $( '#searchengineRadio-wikiwix:checked' ).length ) {
			e.preventDefault();
			window.location = 'http://www.wikiwix.com/index.php?action=' + v + '&lang=sv';
		} else if ( $( '#searchengineRadio-live:checked' ).length ) {
			e.preventDefault();
			window.location = 'https://search.bing.com/results.aspx?q=' + v + '&q1=site:' + mw.config.get( 'wgServer' ).substr( 2 );
		}
	} );
} );