Merge "Selenium: replace UserLoginPage with BlankPage where possible"
[lhc/web/wiklou.git] / resources / src / mediawiki.special.import.js
1 /*!
2 * JavaScript for Special:Import
3 */
4 ( function () {
5 var subprojectListAlreadyShown;
6 function updateImportSubprojectList() {
7 var $projectField = $( '#mw-import-table-interwiki #interwiki' ),
8 $subprojectField = $projectField.parent().find( '#subproject' ),
9 // eslint-disable-next-line no-jquery/no-sizzle
10 $selected = $projectField.find( ':selected' ),
11 oldValue = $subprojectField.val(),
12 option, options;
13
14 if ( $selected.attr( 'data-subprojects' ) ) {
15 options = $selected.attr( 'data-subprojects' ).split( ' ' ).map( function ( el ) {
16 option = document.createElement( 'option' );
17 option.appendChild( document.createTextNode( el ) );
18 option.setAttribute( 'value', el );
19 if ( oldValue === el && subprojectListAlreadyShown === true ) {
20 option.setAttribute( 'selected', 'selected' );
21 }
22 return option;
23 } );
24 $subprojectField.show().empty().append( options );
25 subprojectListAlreadyShown = true;
26 } else {
27 $subprojectField.hide();
28 }
29 }
30
31 $( function () {
32 var $projectField = $( '#mw-import-table-interwiki #interwiki' );
33 if ( $projectField.length ) {
34 $projectField.on( 'change', updateImportSubprojectList );
35 updateImportSubprojectList();
36 }
37 } );
38 }() );