I18N: Use wp.i18n for translatable strings in wp-admin/js/post.js.

This removes the usage of `wp_localize_script()` for passing translations to the script and instead adds the translatable strings in the script directly through the use of `wp.i18n` and its utilities.

Props swissspidy, ocean90.
See #20491.
Fixes #50599.
Built from https://develop.svn.wordpress.org/trunk@48385


git-svn-id: http://core.svn.wordpress.org/trunk@48154 1a063a9b-81f0-0310-95a4-ce76da25c4cd
This commit is contained in:
Dominik Schilling 2020-07-07 16:49:05 +00:00
parent 964c506fb3
commit 2b32883f8b
4 changed files with 40 additions and 60 deletions

View File

@ -4,7 +4,7 @@
* @output wp-admin/js/post.js * @output wp-admin/js/post.js
*/ */
/* global postL10n, ajaxurl, wpAjax, setPostThumbnailL10n, postboxes, pagenow, tinymce, alert, deleteUserSetting, ClipboardJS */ /* global ajaxurl, wpAjax, setPostThumbnailL10n, postboxes, pagenow, tinymce, alert, deleteUserSetting, ClipboardJS */
/* global theList:true, theExtraList:true, getUserSetting, setUserSetting, commentReply, commentsBox */ /* global theList:true, theExtraList:true, getUserSetting, setUserSetting, commentReply, commentsBox */
/* global WPSetThumbnailHTML, wptitlehint */ /* global WPSetThumbnailHTML, wptitlehint */
@ -15,7 +15,8 @@ window.makeSlugeditClickable = window.editPermalink = function(){};
window.wp = window.wp || {}; window.wp = window.wp || {};
( function( $ ) { ( function( $ ) {
var titleHasFocus = false; var titleHasFocus = false,
__ = wp.i18n.__;
/** /**
* Control loading of comments on the post and term edit pages. * Control loading of comments on the post and term edit pages.
@ -73,11 +74,11 @@ window.wp = window.wp || {};
if ( commentsBox.st > commentsBox.total ) if ( commentsBox.st > commentsBox.total )
$('#show-comments').hide(); $('#show-comments').hide();
else else
$('#show-comments').show().children('a').html(postL10n.showcomm); $('#show-comments').show().children('a').text( __( 'Show more comments' ) );
return; return;
} else if ( 1 == r ) { } else if ( 1 == r ) {
$('#show-comments').html(postL10n.endcomm); $('#show-comments').text( __( 'No more comments found.' ) );
return; return;
} }
@ -295,7 +296,6 @@ window.wp = window.wp || {};
*/ */
jQuery(document).ready( function($) { jQuery(document).ready( function($) {
var stamp, visibility, $submitButtons, updateVisibility, updateText, var stamp, visibility, $submitButtons, updateVisibility, updateText,
sticky = '',
$textarea = $('#content'), $textarea = $('#content'),
$document = $(document), $document = $(document),
postId = $('#post_ID').val() || 0, postId = $('#post_ID').val() || 0,
@ -307,7 +307,7 @@ jQuery(document).ready( function($) {
isMac = window.navigator.platform ? window.navigator.platform.indexOf( 'Mac' ) !== -1 : false, isMac = window.navigator.platform ? window.navigator.platform.indexOf( 'Mac' ) !== -1 : false,
copyAttachmentURLClipboard = new ClipboardJS( '.copy-attachment-url.edit-media' ), copyAttachmentURLClipboard = new ClipboardJS( '.copy-attachment-url.edit-media' ),
copyAttachmentURLSuccessTimeout, copyAttachmentURLSuccessTimeout,
__ = wp.i18n.__; __ = wp.i18n.__, _x = wp.i18n._x;
postboxes.add_postbox_toggles(pagenow); postboxes.add_postbox_toggles(pagenow);
@ -475,7 +475,7 @@ jQuery(document).ready( function($) {
$submitButtons.removeClass( 'disabled' ); $submitButtons.removeClass( 'disabled' );
} }
}).on( 'before-autosave.edit-post', function() { }).on( 'before-autosave.edit-post', function() {
$( '.autosave-message' ).text( postL10n.savingText ); $( '.autosave-message' ).text( __( 'Saving Draft…' ) );
}).on( 'after-autosave.edit-post', function( event, data ) { }).on( 'after-autosave.edit-post', function( event, data ) {
$( '.autosave-message' ).text( data.message ); $( '.autosave-message' ).text( data.message );
@ -494,7 +494,7 @@ jQuery(document).ready( function($) {
if ( ( editor && ! editor.isHidden() && editor.isDirty() ) || if ( ( editor && ! editor.isHidden() && editor.isDirty() ) ||
( wp.autosave && wp.autosave.server.postChanged() ) ) { ( wp.autosave && wp.autosave.server.postChanged() ) ) {
return postL10n.saveAlert; return __( 'The changes you made will be lost if you navigate away from this page.' );
} }
}).on( 'unload.edit-post', function( event ) { }).on( 'unload.edit-post', function( event ) {
if ( ! releaseLock ) { if ( ! releaseLock ) {
@ -754,14 +754,14 @@ jQuery(document).ready( function($) {
// Determine what the publish should be depending on the date and post status. // Determine what the publish should be depending on the date and post status.
if ( attemptedDate > currentDate && $('#original_post_status').val() != 'future' ) { if ( attemptedDate > currentDate && $('#original_post_status').val() != 'future' ) {
publishOn = postL10n.publishOnFuture; publishOn = __( 'Schedule for:' );
$('#publish').val( postL10n.schedule ); $('#publish').val( _x( 'Schedule', 'post action/button label' ) );
} else if ( attemptedDate <= currentDate && $('#original_post_status').val() != 'publish' ) { } else if ( attemptedDate <= currentDate && $('#original_post_status').val() != 'publish' ) {
publishOn = postL10n.publishOn; publishOn = __( 'Publish on:' );
$('#publish').val( postL10n.publish ); $('#publish').val( __( 'Publish' ) );
} else { } else {
publishOn = postL10n.publishOnPast; publishOn = __( 'Published on:' );
$('#publish').val( postL10n.update ); $('#publish').val( __( 'Update' ) );
} }
// If the date is the same, set it to trigger update events. // If the date is the same, set it to trigger update events.
@ -771,7 +771,8 @@ jQuery(document).ready( function($) {
} else { } else {
$('#timestamp').html( $('#timestamp').html(
'\n' + publishOn + ' <b>' + '\n' + publishOn + ' <b>' +
postL10n.dateFormat // translators: 1: Month, 2: Day, 3: Year, 4: Hour, 5: Minute.
__( '%1$s %2$s, %3$s at %4$s:%5$s' )
.replace( '%1$s', $( 'option[value="' + mm + '"]', '#mm' ).attr( 'data-text' ) ) .replace( '%1$s', $( 'option[value="' + mm + '"]', '#mm' ).attr( 'data-text' ) )
.replace( '%2$s', parseInt( jj, 10 ) ) .replace( '%2$s', parseInt( jj, 10 ) )
.replace( '%3$s', aa ) .replace( '%3$s', aa )
@ -783,11 +784,11 @@ jQuery(document).ready( function($) {
// Add "privately published" to post status when applies. // Add "privately published" to post status when applies.
if ( $postVisibilitySelect.find('input:radio:checked').val() == 'private' ) { if ( $postVisibilitySelect.find('input:radio:checked').val() == 'private' ) {
$('#publish').val( postL10n.update ); $('#publish').val( __( 'Update' ) );
if ( 0 === optPublish.length ) { if ( 0 === optPublish.length ) {
postStatus.append('<option value="publish">' + postL10n.privatelyPublished + '</option>'); postStatus.append('<option value="publish">' + __( 'Privately Published' ) + '</option>');
} else { } else {
optPublish.html( postL10n.privatelyPublished ); optPublish.html( __( 'Privately Published' ) );
} }
$('option[value="publish"]', postStatus).prop('selected', true); $('option[value="publish"]', postStatus).prop('selected', true);
$('#misc-publishing-actions .edit-post-status').hide(); $('#misc-publishing-actions .edit-post-status').hide();
@ -798,7 +799,7 @@ jQuery(document).ready( function($) {
postStatus.val($('#hidden_post_status').val()); postStatus.val($('#hidden_post_status').val());
} }
} else { } else {
optPublish.html( postL10n.published ); optPublish.html( __( 'Published' ) );
} }
if ( postStatus.is(':hidden') ) if ( postStatus.is(':hidden') )
$('#misc-publishing-actions .edit-post-status').show(); $('#misc-publishing-actions .edit-post-status').show();
@ -816,9 +817,9 @@ jQuery(document).ready( function($) {
} else { } else {
$('#save-post').show(); $('#save-post').show();
if ( $('option:selected', postStatus).val() == 'pending' ) { if ( $('option:selected', postStatus).val() == 'pending' ) {
$('#save-post').show().val( postL10n.savePending ); $('#save-post').show().val( __( 'Save as Pending' ) );
} else { } else {
$('#save-post').show().val( postL10n.saveDraft ); $('#save-post').show().val( __( 'Save Draft' ) );
} }
} }
return true; return true;
@ -850,21 +851,29 @@ jQuery(document).ready( function($) {
// Set the selected visibility as current. // Set the selected visibility as current.
$postVisibilitySelect.find('.save-post-visibility').click( function( event ) { // Crazyhorse - multiple OK cancels. $postVisibilitySelect.find('.save-post-visibility').click( function( event ) { // Crazyhorse - multiple OK cancels.
var visibilityLabel = '', selectedVisibility = $postVisibilitySelect.find('input:radio:checked').val();
$postVisibilitySelect.slideUp('fast'); $postVisibilitySelect.slideUp('fast');
$('#visibility .edit-visibility').show().focus(); $('#visibility .edit-visibility').show().focus();
updateText(); updateText();
if ( $postVisibilitySelect.find('input:radio:checked').val() != 'public' ) { if ( 'public' !== selectedVisibility ) {
$('#sticky').prop('checked', false); $('#sticky').prop('checked', false);
} }
if ( $('#sticky').prop('checked') ) { switch ( selectedVisibility ) {
sticky = 'Sticky'; case 'public':
} else { visibilityLabel = $( '#sticky' ).prop( 'checked' ) ? __( 'Public, Sticky' ) : __( 'Public' );
sticky = ''; break;
case 'private':
visibilityLabel = __( 'Private' );
break;
case 'password':
visibilityLabel = __( 'Password Protected' );
break;
} }
$('#post-visibility-display').html( postL10n[ $postVisibilitySelect.find('input:radio:checked').val() + sticky ] ); $('#post-visibility-display').text( visibilityLabel );
event.preventDefault(); event.preventDefault();
}); });
@ -977,7 +986,7 @@ jQuery(document).ready( function($) {
$el = $( '#editable-post-name' ); $el = $( '#editable-post-name' );
revert_e = $el.html(); revert_e = $el.html();
buttons.html( '<button type="button" class="save button button-small">' + postL10n.ok + '</button> <button type="button" class="cancel button-link">' + postL10n.cancel + '</button>' ); buttons.html( '<button type="button" class="save button button-small">' + __( 'OK' ) + '</button> <button type="button" class="cancel button-link">' + __( 'Cancel' ) + '</button>' );
// Save permalink changes. // Save permalink changes.
buttons.children( '.save' ).click( function() { buttons.children( '.save' ).click( function() {
@ -1010,7 +1019,7 @@ jQuery(document).ready( function($) {
permalink.html(permalinkOrig); permalink.html(permalinkOrig);
real_slug.val(new_slug); real_slug.val(new_slug);
$( '.edit-slug' ).focus(); $( '.edit-slug' ).focus();
wp.a11y.speak( postL10n.permalinkSaved ); wp.a11y.speak( __( 'Permalink saved' ) );
} }
); );
}); });

File diff suppressed because one or more lines are too long

View File

@ -1219,35 +1219,6 @@ function wp_default_scripts( $scripts ) {
$scripts->add( 'post', "/wp-admin/js/post$suffix.js", array( 'suggest', 'wp-lists', 'postbox', 'tags-box', 'underscore', 'word-count', 'wp-a11y', 'wp-sanitize', 'clipboard' ), false, 1 ); $scripts->add( 'post', "/wp-admin/js/post$suffix.js", array( 'suggest', 'wp-lists', 'postbox', 'tags-box', 'underscore', 'word-count', 'wp-a11y', 'wp-sanitize', 'clipboard' ), false, 1 );
$scripts->set_translations( 'post' ); $scripts->set_translations( 'post' );
did_action( 'init' ) && $scripts->localize(
'post',
'postL10n',
array(
'ok' => __( 'OK' ),
'cancel' => __( 'Cancel' ),
'publishOn' => __( 'Publish on:' ),
'publishOnFuture' => __( 'Schedule for:' ),
'publishOnPast' => __( 'Published on:' ),
/* translators: 1: Month, 2: Day, 3: Year, 4: Hour, 5: Minute. */
'dateFormat' => __( '%1$s %2$s, %3$s at %4$s:%5$s' ),
'showcomm' => __( 'Show more comments' ),
'endcomm' => __( 'No more comments found.' ),
'publish' => __( 'Publish' ),
'schedule' => _x( 'Schedule', 'post action/button label' ),
'update' => __( 'Update' ),
'savePending' => __( 'Save as Pending' ),
'saveDraft' => __( 'Save Draft' ),
'private' => __( 'Private' ),
'public' => __( 'Public' ),
'publicSticky' => __( 'Public, Sticky' ),
'password' => __( 'Password Protected' ),
'privatelyPublished' => __( 'Privately Published' ),
'published' => __( 'Published' ),
'saveAlert' => __( 'The changes you made will be lost if you navigate away from this page.' ),
'savingText' => __( 'Saving Draft&#8230;' ),
'permalinkSaved' => __( 'Permalink saved' ),
)
);
$scripts->add( 'editor-expand', "/wp-admin/js/editor-expand$suffix.js", array( 'jquery', 'underscore' ), false, 1 ); $scripts->add( 'editor-expand', "/wp-admin/js/editor-expand$suffix.js", array( 'jquery', 'underscore' ), false, 1 );

View File

@ -13,7 +13,7 @@
* *
* @global string $wp_version * @global string $wp_version
*/ */
$wp_version = '5.5-alpha-48384'; $wp_version = '5.5-alpha-48385';
/** /**
* Holds the WordPress DB revision, increments when changes are made to the WordPress DB schema. * Holds the WordPress DB revision, increments when changes are made to the WordPress DB schema.