diff --git a/wp-admin/includes/class-wp-privacy-data-export-requests-list-table.php b/wp-admin/includes/class-wp-privacy-data-export-requests-list-table.php index 880af8cd04..3898f8ef05 100644 --- a/wp-admin/includes/class-wp-privacy-data-export-requests-list-table.php +++ b/wp-admin/includes/class-wp-privacy-data-export-requests-list-table.php @@ -57,7 +57,7 @@ class WP_Privacy_Data_Export_Requests_List_Table extends WP_Privacy_Requests_Tab '">'; $download_data_markup .= '' . - '' . + '' . '' . ''; @@ -100,7 +100,7 @@ class WP_Privacy_Data_Export_Requests_List_Table extends WP_Privacy_Requests_Tab ?> - + '; $remove_data_markup .= '' . - '' . + '' . '' . ''; @@ -106,7 +106,7 @@ class WP_Privacy_Data_Removal_Requests_List_Table extends WP_Privacy_Requests_Ta ?> - + 0 ? exporterIndex / exportersCount : 0 ); + var progressString = Math.round( progress * 100 ).toString() + '%'; + $progress.html( progressString ); + } + function doNextExport( exporterIndex, pageIndex ) { $.ajax( { @@ -120,6 +128,7 @@ jQuery( document ).ready( function( $ ) { setTimeout( doNextExport( exporterIndex, pageIndex + 1 ) ); } else { if ( exporterIndex < exportersCount ) { + setExportProgress( exporterIndex ); setTimeout( doNextExport( exporterIndex + 1, 1 ) ); } else { onExportDoneSuccess( responseData.url ); @@ -141,6 +150,7 @@ jQuery( document ).ready( function( $ ) { var $this = $( this ), $action = $this.parents( '.remove-personal-data' ), $requestRow = $this.parents( 'tr' ), + $progress = $requestRow.find( '.erasure-progress' ); requestID = $action.data( 'request-id' ), nonce = $action.data( 'nonce' ), erasersCount = $action.data( 'erasers-count' ), @@ -152,6 +162,7 @@ jQuery( document ).ready( function( $ ) { $action.blur(); clearResultsAfterRow( $requestRow ); + setErasureProgress( 0 ); function onErasureDoneSuccess() { var summaryMessage = strings.noDataFound; @@ -183,6 +194,12 @@ jQuery( document ).ready( function( $ ) { appendResultsAfterRow( $requestRow, 'notice-error', strings.removalError, [] ); } + function setErasureProgress( eraserIndex ) { + var progress = ( erasersCount > 0 ? eraserIndex / erasersCount : 0 ); + var progressString = Math.round( progress * 100 ).toString() + '%'; + $progress.html( progressString ); + } + function doNextErasure( eraserIndex, pageIndex ) { $.ajax({ url: window.ajaxurl, @@ -214,6 +231,7 @@ jQuery( document ).ready( function( $ ) { setTimeout( doNextErasure( eraserIndex, pageIndex + 1 ) ); } else { if ( eraserIndex < erasersCount ) { + setErasureProgress( eraserIndex ); setTimeout( doNextErasure( eraserIndex + 1, 1 ) ); } else { onErasureDoneSuccess(); diff --git a/wp-admin/js/privacy-tools.min.js b/wp-admin/js/privacy-tools.min.js index 34c0e7c429..ff9f5f1dfb 100644 --- a/wp-admin/js/privacy-tools.min.js +++ b/wp-admin/js/privacy-tools.min.js @@ -1,2 +1,2 @@ /*! This file is auto-generated */ -jQuery(document).ready(function(v){var f=window.privacyToolsL10n||{};function h(e,t){e.children().addClass("hidden"),e.children("."+t).removeClass("hidden")}function g(e){e.removeClass("has-request-results"),e.next().hasClass("request-results")&&e.next().remove()}function x(e,t,a,n){var o="",s="request-results";g(e),n.length&&(v.each(n,function(e,t){o=o+"
  • "+t+"
  • "}),o=""),e.addClass("has-request-results"),e.hasClass("status-request-confirmed")&&(s+=" status-request-confirmed"),e.hasClass("status-request-failed")&&(s+=" status-request-failed"),e.after(function(){return'

    '+a+"

    "+o+"
    "})}v(".export-personal-data-handle").click(function(e){var s=v(this),r=s.parents(".export-personal-data"),i=s.parents("tr"),t=r.data("request-id"),d=r.data("nonce"),c=r.data("exporters-count"),l=!!r.data("send-as-email");function u(e){h(r,"export-personal-data-failed"),e&&x(i,"notice-error",f.exportError,[e])}e.preventDefault(),e.stopPropagation(),r.blur(),g(i),h(r,"export-personal-data-processing"),function a(n,o){v.ajax({url:window.ajaxurl,data:{action:"wp-privacy-export-personal-data",exporter:n,id:t,page:o,security:d,sendAsEmail:l},method:"post"}).done(function(e){var t=e.data;e.success?t.done?n"+t+""}),n=""),e.addClass("has-request-results"),e.hasClass("status-request-confirmed")&&(o+=" status-request-confirmed"),e.hasClass("status-request-failed")&&(o+=" status-request-failed"),e.after(function(){return'

    '+a+"

    "+n+"
    "})}u(".export-personal-data-handle").click(function(e){var o=u(this),r=o.parents(".export-personal-data"),i=o.parents("tr"),s=i.find(".export-progress");function d(e){p(r,"export-personal-data-failed"),e&&v(i,"notice-error",l.exportError,[e])}function c(e){var t=0