WordPress.org

Make WordPress Core

Ticket #15920: 15920.3.diff

File 15920.3.diff, 3.8 KB (added by PeteMall, 5 years ago)

Better messages for site-themes.

  • wp-admin/network/site-themes.php

     
    3939$s = isset($_REQUEST['s']) ? $_REQUEST['s'] : ''; 
    4040 
    4141// Clean up request URI from temporary args for screen options/paging uri's to work as expected. 
    42 $_SERVER['REQUEST_URI'] = remove_query_arg(array('enable', 'disable', 'enable-selected', 'disable-selected'), $_SERVER['REQUEST_URI']); 
     42$temp_args = array( 'enabled', 'disabled', 'deleted', 'error', 'enabled', 'disabled', 'deleted', 'error' );  
     43$_SERVER['REQUEST_URI'] = remove_query_arg( $temp_args, $_SERVER['REQUEST_URI'] );  
     44$referer = remove_query_arg( $temp_args, wp_get_referer() ); 
    4345 
    4446$id = isset( $_REQUEST['id'] ) ? intval( $_REQUEST['id'] ) : 0; 
    4547 
     
    6264                case 'enable': 
    6365                        check_admin_referer( 'enable-theme_' . $_GET['theme'] ); 
    6466                        $theme = $_GET['theme']; 
    65                         $update = 'enabled'; 
     67                        $action = 'enabled'; 
     68                        $n = 1; 
    6669                        if ( !$allowed_themes ) 
    6770                                $allowed_themes = array( $theme => true ); 
    6871                        else 
     
    7174                case 'disable': 
    7275                        check_admin_referer( 'disable-theme_' . $_GET['theme'] ); 
    7376                        $theme = $_GET['theme']; 
    74                         $update = 'disabled'; 
     77                        $action = 'disabled'; 
     78                        $n = 1;                  
    7579                        if ( !$allowed_themes ) 
    7680                                $allowed_themes = array(); 
    7781                        else 
     
    8084                case 'enable-selected': 
    8185                        check_admin_referer( 'bulk-themes' ); 
    8286                        if ( isset( $_POST['checked'] ) ) { 
    83                                 $update = 'enable'; 
    8487                                $themes = (array) $_POST['checked']; 
     88                                $action = 'enabled'; 
     89                                $n = count( $themes ); 
    8590                                foreach( (array) $themes as $theme ) 
    8691                                        $allowed_themes[ $theme ] = true; 
    8792                        } else { 
    88                                 $update = 'error'; 
     93                                $action = 'error'; 
     94                                $n = 'none'; 
    8995                        } 
    9096                        break; 
    9197                case 'disable-selected': 
    9298                        check_admin_referer( 'bulk-themes' ); 
    9399                        if ( isset( $_POST['checked'] ) ) { 
    94                                 $update = 'disable'; 
    95100                                $themes = (array) $_POST['checked']; 
     101                                $action = 'disabled'; 
     102                                $n = count( $themes ); 
    96103                                foreach( (array) $themes as $theme ) 
    97104                                        unset( $allowed_themes[ $theme ] ); 
    98105                        } else { 
    99                                 $update = 'error'; 
     106                                $action = 'error'; 
     107                                $n = 'none'; 
    100108                        } 
    101109                        break; 
    102110        } 
     
    104112        update_option( 'allowedthemes', $allowed_themes ); 
    105113        restore_current_blog(); 
    106114         
    107         wp_redirect( add_query_arg( 'update', $update, wp_get_referer() ) ); 
     115        wp_redirect( add_query_arg( $action, $n, $referer ) ); 
    108116        exit;    
    109117} 
    110118 
    111119if ( isset( $_GET['action'] ) && 'update-site' == $_GET['action'] ) { 
    112         wp_redirect( wp_get_referer() ); 
     120        wp_redirect( $referer ); 
    113121        exit(); 
    114122} 
    115123 
     
    140148?> 
    141149</h3><?php 
    142150 
    143 if ( isset( $_GET['update'] ) ) { 
    144         switch ( $_GET['update'] ) { 
    145         case 'enabled': 
    146                 echo '<div id="message" class="updated"><p>' . __( 'Theme enabled.' ) . '</p></div>'; 
    147                 break; 
    148         case 'disabled': 
    149                 echo '<div id="message" class="updated"><p>' . __( 'Theme disabled.' ) . '</p></div>'; 
    150                 break; 
    151         case 'error': 
    152                 echo '<div id="message" class="error"><p>' . __( 'No theme selected.' ) . '</p></div>'; 
    153                 break; 
    154         } 
     151if ( isset( $_GET['enabled'] ) ) { 
     152        $_GET['enabled'] = absint( $_GET['enabled'] );  
     153        echo '<div id="message" class="updated"><p>' . sprintf( _n( 'Theme enabled.', '%s themes enabled.', $_GET['enabled'] ), number_format_i18n( $_GET['enabled'] ) ) . '</p></div>';  
     154} elseif ( isset( $_GET['disabled'] ) ) {  
     155        $_GET['disabled'] = absint( $_GET['disabled'] );  
     156        echo '<div id="message" class="updated"><p>' . sprintf( _n( 'Theme disabled.', '%s themes disabled.', $_GET['disabled'] ), number_format_i18n( $_GET['disabled'] ) ) . '</p></div>';  
     157} elseif ( isset( $_GET['error'] ) && 'none' == $_GET['error'] ) {  
     158        echo '<div id="message" class="error"><p>' . __( 'No theme selected.' ) . '</p></div>';  
    155159} ?> 
    156160 
    157161<p><?php _e( 'Network enabled themes are not shown on this screen.' ) ?></p>