summaryrefslogtreecommitdiff
path: root/resources/src/mediawiki.special/mediawiki.special.javaScriptTest.js
diff options
context:
space:
mode:
Diffstat (limited to 'resources/src/mediawiki.special/mediawiki.special.javaScriptTest.js')
-rw-r--r--resources/src/mediawiki.special/mediawiki.special.javaScriptTest.js36
1 files changed, 36 insertions, 0 deletions
diff --git a/resources/src/mediawiki.special/mediawiki.special.javaScriptTest.js b/resources/src/mediawiki.special/mediawiki.special.javaScriptTest.js
new file mode 100644
index 00000000..d3e8f299
--- /dev/null
+++ b/resources/src/mediawiki.special/mediawiki.special.javaScriptTest.js
@@ -0,0 +1,36 @@
+/*!
+ * 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 ) );