WordPress.org

Make WordPress Core

Ticket #30976: first_pass.30976.diff

File first_pass.30976.diff, 2.5 KB (added by ashfame, 6 years ago)

First pass

  • wp-admin/includes/class-wp-plugins-list-table.php

    diff --git wp-admin/includes/class-wp-plugins-list-table.php wp-admin/includes/class-wp-plugins-list-table.php
    index 1ade73c..b6a2853 100644
    class WP_Plugins_List_Table extends WP_List_Table { 
    387387                list( $plugin_file, $plugin_data ) = $item;
    388388                $context = $status;
    389389                $screen = $this->screen;
     390                $is_checked = isset( $_GET['checked'] ) && in_array( $plugin_file, $_GET['checked'] ) ? true : false;
    390391
    391392                // Pre-order.
    392393                $actions = array(
    class WP_Plugins_List_Table extends WP_List_Table { 
    504505                        $checkbox = '';
    505506                } else {
    506507                        $checkbox = "<label class='screen-reader-text' for='" . $checkbox_id . "' >" . sprintf( __( 'Select %s' ), $plugin_data['Name'] ) . "</label>"
    507                                 . "<input type='checkbox' name='checked[]' value='" . esc_attr( $plugin_file ) . "' id='" . $checkbox_id . "' />";
     508                                . "<input type='checkbox' name='checked[]' value='" . esc_attr( $plugin_file ) . "'"
     509                                . ( $is_checked ? " checked='checked'" : "" )
     510                                . " id='" . $checkbox_id . "' />";
    508511                }
    509512                if ( 'dropins' != $context ) {
    510513                        $description = '<p>' . ( $plugin_data['Description'] ? $plugin_data['Description'] : '&nbsp;' ) . '</p>';
  • wp-admin/plugins.php

    diff --git wp-admin/plugins.php wp-admin/plugins.php
    index 29bca4a..6cbc756 100644
    if ( $action ) { 
    9999                                update_option( 'recently_activated', $recent );
    100100                        }
    101101
    102                         wp_redirect( self_admin_url("plugins.php?activate-multi=true&plugin_status=$status&paged=$page&s=$s") );
     102                        $post_activation_url = self_admin_url( "plugins.php?activate-multi=true&plugin_status=$status&paged=$page&s=$s" );
     103                        foreach ( $plugins as $checked_plugin ) {
     104                                $post_activation_url = add_query_arg( 'checked[]', $checked_plugin, $post_activation_url );
     105                        }
     106                        wp_redirect( $post_activation_url );
    103107                        exit;
    104108
    105109                case 'update-selected' :
    if ( $action ) { 
    203207                                update_option( 'recently_activated', $deactivated + (array) get_option( 'recently_activated' ) );
    204208                        }
    205209
    206                         wp_redirect( self_admin_url("plugins.php?deactivate-multi=true&plugin_status=$status&paged=$page&s=$s") );
     210                        $post_deactivation_url = self_admin_url( "plugins.php?deactivate-multi=true&plugin_status=$status&paged=$page&s=$s" );
     211                        foreach ( $plugins as $checked_plugin ) {
     212                                $post_deactivation_url = add_query_arg( 'checked[]', $checked_plugin, $post_deactivation_url );
     213                        }
     214                        wp_redirect( $post_deactivation_url );
    207215                        exit;
    208216
    209217                case 'delete-selected':