From b2842988f1f943b70ed15d6541a7f1bfbb242500 Mon Sep 17 00:00:00 2001 From: Pascal Birchler Date: Tue, 30 Apr 2024 08:53:51 +0000 Subject: [PATCH] I18N: Fix plural usage in `wp_print_admin_notice_templates()`. Moves the translatable strings from the JS template defined in PHP to the `updates.js` script, where `_n()` can be used as recommended. Props ideag, SergeyBiryukov, daledupreez, audrasjb, ocean90, swissspidy. Fixes #37287. git-svn-id: https://develop.svn.wordpress.org/trunk@58064 602fd350-edb4-49c9-b593-d223f7449a82 --- src/js/_enqueues/wp/updates.js | 36 ++++++++++++++++++++++--- src/wp-admin/includes/update.php | 46 +++++--------------------------- 2 files changed, 38 insertions(+), 44 deletions(-) diff --git a/src/js/_enqueues/wp/updates.js b/src/js/_enqueues/wp/updates.js index bca7de680f..048ed9a048 100644 --- a/src/js/_enqueues/wp/updates.js +++ b/src/js/_enqueues/wp/updates.js @@ -2938,13 +2938,41 @@ wp.updates.adminNotice = wp.template( 'wp-bulk-updates-admin-notice' ); + var successMessage = null; + + if ( success ) { + if ( 'plugin' === response.update ) { + successMessage = sprintf( + /* translators: %s: Number of plugins. */ + _n( '%s plugin successfully updated.', '%s plugins successfully updated.', success ), + success + ); + } else { + successMessage = sprintf( + /* translators: %s: Number of themes. */ + _n( '%s theme successfully updated.', '%s themes successfully updated.', success ), + success + ); + } + } + + var errorMessage = null; + + if ( error ) { + errorMessage = sprintf( + /* translators: %s: Number of failed updates. */ + _n( '%s update failed.', '%s updates failed.', error ), + error + ); + } + wp.updates.addAdminNotice( { id: 'bulk-action-notice', className: 'bulk-action-notice', - successes: success, - errors: error, - errorMessages: errorMessages, - type: response.update + successMessage: successMessage, + errorMessage: errorMessage, + errorMessages: errorMessages, + type: response.update } ); $bulkActionNotice = $( '#bulk-action-notice' ).on( 'click', 'button', function() { diff --git a/src/wp-admin/includes/update.php b/src/wp-admin/includes/update.php index ba27ddd0c1..9b8b17e058 100644 --- a/src/wp-admin/includes/update.php +++ b/src/wp-admin/includes/update.php @@ -923,48 +923,14 @@ function wp_print_admin_notice_templates() {
id="{{ data.id }}"<# } #> class="notice {{ data.className }}">

{{{ data.message }}}