WordPress.org

Make WordPress Core

Ticket #44081: 44081.7.diff

File 44081.7.diff, 3.8 KB (added by garrett-eclipse, 10 months ago)

Refresh for 5.6

  • src/wp-admin/includes/class-wp-privacy-requests-table.php

     
    224224                $action      = $this->current_action();
    225225                $request_ids = isset( $_REQUEST['request_id'] ) ? wp_parse_id_list( wp_unslash( $_REQUEST['request_id'] ) ) : array();
    226226
    227                 $count = 0;
     227                $count    = 0;
     228                $failures = 0;
    228229
    229230                if ( $request_ids ) {
    230231                        check_admin_referer( 'bulk-privacy_requests' );
    231                 }
    232232
    233                 switch ( $action ) {
    234                         case 'delete':
    235                                 foreach ( $request_ids as $request_id ) {
    236                                         if ( wp_delete_post( $request_id, true ) ) {
    237                                                 $count ++;
     233                        switch ( $action ) {
     234                                case 'delete':
     235                                        foreach ( $request_ids as $request_id ) {
     236                                                if ( wp_delete_post( $request_id, true ) ) {
     237                                                        $count++;
     238                                                } else {
     239                                                        $failures++;
     240                                                }
    238241                                        }
    239                                 }
    240242
    241                                 add_settings_error(
    242                                         'bulk_action',
    243                                         'bulk_action',
    244                                         /* translators: %d: Number of requests. */
    245                                         sprintf( _n( 'Deleted %d request.', 'Deleted %d requests.', $count ), $count ),
    246                                         'success'
    247                                 );
    248                                 break;
    249                         case 'resend':
    250                                 foreach ( $request_ids as $request_id ) {
    251                                         $resend = _wp_privacy_resend_request( $request_id );
     243                                        if ( $count ) {
     244                                                add_settings_error(
     245                                                        'bulk_action',
     246                                                        'bulk_action',
     247                                                        /* translators: %d: Number of requests. */
     248                                                        sprintf( _n( '%d request deleted successfully.', '%d requests deleted successfully.', $count ), $count ),
     249                                                        'success'
     250                                                );
     251                                        }
    252252
    253                                         if ( $resend && ! is_wp_error( $resend ) ) {
    254                                                 $count++;
     253                                        if ( $failures ) {
     254                                                add_settings_error(
     255                                                        'bulk_action',
     256                                                        'bulk_action',
     257                                                        /* translators: %d: Number of requests. */
     258                                                        sprintf( _n( '%d request failed to delete.', '%d requests failed to delete.', $failures ), $failures ),
     259                                                        'error'
     260                                                );                                             
    255261                                        }
    256                                 }
     262                                        break;
     263                                case 'resend':
     264                                        foreach ( $request_ids as $request_id ) {
     265                                                $result = _wp_privacy_resend_request( $request_id );
    257266
    258                                 add_settings_error(
    259                                         'bulk_action',
    260                                         'bulk_action',
    261                                         /* translators: %d: Number of requests. */
    262                                         sprintf( _n( 'Re-sent %d request.', 'Re-sent %d requests.', $count ), $count ),
    263                                         'success'
    264                                 );
    265                                 break;
     267                                                if ( $result && ! is_wp_error( $result ) ) {
     268                                                        $count++;
     269                                                } else {
     270                                                        $failures++;
     271                                                }
     272                                        }
     273
     274                                        if ( $count ) {
     275                                                add_settings_error(
     276                                                        'bulk_action',
     277                                                        'bulk_action',
     278                                                        /* translators: %d: Number of requests. */
     279                                                        sprintf( _n( '%d confirmation request re-sent successfully.', '%d confirmation requests re-sent successfully.', $count ), $count ),
     280                                                        'success'
     281                                                );
     282                                        }
     283
     284                                        if ( $failures ) {
     285                                                add_settings_error(
     286                                                        'bulk_action',
     287                                                        'bulk_action',
     288                                                        /* translators: %d: Number of requests. */
     289                                                        sprintf( _n( '%d confirmation request failed to resend.', '%d confirmation requests failed to resend.', $failures ), $failures ),
     290                                                        'error'
     291                                                );                                     
     292                                        }
     293                                        break;
     294                        }
    266295                }
    267296        }
    268297
  • src/wp-admin/includes/privacy-tools.php

     
    1313 * @access private
    1414 *
    1515 * @param int $request_id Request ID.
    16  * @return bool|WP_Error Returns true/false based on the success of sending the email, or a WP_Error object.
     16 * @return bool|WP_Error Returns true if sending the email was successful, or a WP_Error object.
    1717 */
    1818function _wp_privacy_resend_request( $request_id ) {
    1919        $request_id = absint( $request_id );