summaryrefslogtreecommitdiff
path: root/resources/mediawiki.special/mediawiki.special.javaScriptTest.js
blob: a560ca95aa273c558675d9af57a5fd8924a8af48 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
/**
 * JavaScript for Special:JavaScriptTest
 */
( function ( mw, $ ) {
	$( function () {

		// Create useskin dropdown menu and reload onchange to the selected skin
		// (only if a framework was found, not on error pages).
		$( '#mw-javascripttest-summary.mw-javascripttest-frameworkfound' ).append( function () {

			var $html = $( '<p><label for="useskin">'
					+ mw.message( 'javascripttest-pagetext-skins' ).escaped()
					+ ' '
					+ '</label></p>' ),
				select = '<select name="useskin" id="useskin">';

			// Build <select> further
			$.each( mw.config.get( 'wgAvailableSkins' ), function ( id ) {
				select += '<option value="' + id + '"'
					+ ( mw.config.get( 'skin' ) === id ? ' selected="selected"' : '' )
					+ '>' + mw.message( 'skinname-' + id ).escaped() + '</option>';
			} );
			select += '</select>';

			// Bind onchange event handler and append to form
			$html.append(
				$( select ).change( function () {
					window.location = QUnit.url( { useskin: $(this).val() } );
				} )
			);

			return $html;
		} );
	} );

}( mediaWiki, jQuery ) );