Remove styles for #mw-createaccount-join
[lhc/web/wiklou.git] / resources / mediawiki.special / mediawiki.special.block.js
index ed0fa61..b8bcf17 100644 (file)
@@ -1,68 +1,46 @@
-/* JavaScript for Special:Block */
-
-// Fade or snap depending on argument
-jQuery.fn.goIn = function( instantToggle ) {
-       if ( typeof instantToggle != 'undefined' && instantToggle === true ) {
-               return jQuery(this).show();
-       }
-       return jQuery(this).stop( true, true ).fadeIn();
-};
-jQuery.fn.goOut = function( instantToggle ) {
-       if ( typeof instantToggle != 'undefined' && instantToggle === true ) {
-               return jQuery(this).hide();
-       }
-       return jQuery(this).stop( true, true ).fadeOut();
-};
-
-jQuery( function( $ ) {
-
-       var     DO_INSTANT = true,
-               $blockExpiry = $( '#wpBlockExpiry' ),   $blockOther = $( '#wpBlockOther' ),
-               $blockTarget = $( '#mw-bi-target' ),    $anonOnlyRow = $( '#wpAnonOnlyRow' ),
-               $enableAutoblockRow = $( '#wpEnableAutoblockRow' ),
-               $hideUser = $( '#wpEnableHideUser' ),   $watchUser = $( '#wpEnableWatchUser' );
-
-       var considerChangingExpiryFocus = function( instant ) {
-               if ( $blockExpiry.val() == 'other' ) {
-                       $blockOther.goIn( instant );
-               } else {
-                       $blockOther.goOut( instant );
-               }
-       };
-       var updateBlockOptions = function( instant ) {
-               if ( !$blockTarget.length ) {
-                       return;
+/**
+ * JavaScript for Special:Block
+ */
+( function ( mw, $ ) {
+       $( function () {
+               var $blockTarget = $( '#mw-bi-target' ),
+                       $anonOnlyRow = $( '#mw-input-wpHardBlock' ).closest( 'tr' ),
+                       $enableAutoblockRow = $( '#mw-input-wpAutoBlock' ).closest( 'tr' ),
+                       $hideUser = $( '#mw-input-wpHideUser' ).closest( 'tr' ),
+                       $watchUser = $( '#mw-input-wpWatch' ).closest( 'tr' );
+
+               function updateBlockOptions( instant ) {
+                       var blocktarget = $.trim( $blockTarget.val() ),
+                               isEmpty = blocktarget === '',
+                               isIp = mw.util.isIPv4Address( blocktarget, true ) || mw.util.isIPv6Address( blocktarget, true ),
+                               isIpRange = isIp && blocktarget.match( /\/\d+$/ );
+
+                       if ( isIp && !isEmpty ) {
+                               $enableAutoblockRow.goOut( instant );
+                               $hideUser.goOut( instant );
+                       } else {
+                               $enableAutoblockRow.goIn( instant );
+                               $hideUser.goIn( instant );
+                       }
+                       if ( !isIp && !isEmpty ) {
+                               $anonOnlyRow.goOut( instant );
+                       } else {
+                               $anonOnlyRow.goIn( instant );
+                       }
+                       if ( isIpRange && !isEmpty ) {
+                               $watchUser.goOut( instant );
+                       } else {
+                               $watchUser.goIn( instant );
+                       }
                }
 
-               var blocktarget = $.trim( $blockTarget.val() );
-               var isEmpty = ( blocktarget === '' );
-               var isIp = mw.util.isIPv4Address( blocktarget, true ) || mw.util.isIPv6Address( blocktarget, true );
-               var isIpRange = isIp && blocktarget.match( /\/\d+$/ );
+               if ( $blockTarget.length ) {
+                       // Bind functions so they're checked whenever stuff changes
+                       $blockTarget.keyup( updateBlockOptions );
 
-               if ( isIp && !isEmpty ) {
-                       $enableAutoblockRow.goOut( instant );
-                       $hideUser.goOut( instant );
-               } else {
-                       $enableAutoblockRow.goIn( instant );
-                       $hideUser.goIn( instant );
-               }
-               if ( !isIp && !isEmpty ) {
-                       $anonOnlyRow.goOut( instant );
-               } else {
-                       $anonOnlyRow.goIn( instant );
+                       // Call them now to set initial state (ie. Special:Block/Foobar?wpBlockExpiry=2+hours)
+                       updateBlockOptions( /* instant= */ true );
                }
-               if ( isIpRange && !isEmpty ) {
-                       $watchUser.goOut( instant );
-               } else {
-                       $watchUser.goIn( instant );
-               }
-       };
-
-       // Bind functions so they're checked whenever stuff changes
-       $blockExpiry.change( considerChangingExpiryFocus );
-       $blockTarget.keyup( updateBlockOptions );
+       } );
+}( mediaWiki, jQuery ) );
 
-       // Call them now to set initial state (ie. Special:Block/Foobar?wpBlockExpiry=2+hours)
-       considerChangingExpiryFocus( DO_INSTANT );
-       updateBlockOptions( DO_INSTANT );
-});
\ No newline at end of file