Customize: Add button in Publish Settings to discard unsaved changes (including drafted and scheduled), reverting Customizer to the last published state.

Props westonruter, melchoyce.
Amends [41667].
See #39896, #21666.

Built from https://develop.svn.wordpress.org/trunk@41694


git-svn-id: http://core.svn.wordpress.org/trunk@41528 1a063a9b-81f0-0310-95a4-ce76da25c4cd
This commit is contained in:
Weston Ruter 2017-10-03 00:22:49 +00:00
parent 882a2a8042
commit 8d79246606
5 changed files with 34 additions and 6 deletions

View File

@ -6331,7 +6331,35 @@
footerActions = $( '#customize-footer-actions' );
api.section( 'publish_settings', function( section ) {
var updateButtonsState, previewLinkControl, previewLinkControlId = 'changeset_preview_link', updateSectionActive, isSectionActive;
var updateButtonsState, previewLinkControl, TrashControl, trashControlInstance, trashControlId = 'trash_changeset', previewLinkControlId = 'changeset_preview_link', updateSectionActive, isSectionActive;
TrashControl = api.Control.extend( {
// This is a temporary hack while waiting for richer JS templating and dynamic instantiation.
embed: function() {
var control = this;
control.templateSelector = 'customize-trash-changeset-control';
return api.Control.prototype.embed.apply( control, arguments );
}
} );
trashControlInstance = new TrashControl( trashControlId, {
params: {
type: 'button',
section: section.id,
active: true,
priority: 30,
content: '<li id="customize-control-' + trashControlId + '" class="customize-control"></li>'
}
} );
api.control.add( trashControlId, trashControlInstance );
trashControlInstance.deferred.embedded.done( function() {
trashControlInstance.container.find( 'button' ).on( 'click', function() {
if ( confirm( api.l10n.trashConfirm ) ) {
wp.customize.previewer.trash();
}
} );
} );
previewLinkControl = new api.PreviewLinkControl( previewLinkControlId, {
params: {

File diff suppressed because one or more lines are too long

View File

@ -3639,7 +3639,7 @@ final class WP_Customize_Manager {
</div>
</script>
<script type="text/html" id="tmpl-customize-trash-changeset-control">
<button type="button" class="button-link button-link-delete"><?php _e( 'Trash unpublished changes' ); ?></button>
<button type="button" class="button-link button-link-delete"><?php _e( 'Discard changes' ); ?></button>
</script>
<?php
}

View File

@ -574,7 +574,7 @@ function wp_default_scripts( &$scripts ) {
'themeDownloading' => __( 'Downloading your new theme&hellip;' ),
'themePreviewWait' => __( 'Setting up your live preview. This may take a bit.' ),
'revertingChanges' => __( 'Reverting unpublished changes&hellip;' ),
'trashConfirm' => __( 'Are you sure you would like to discard your unpublished changes?' ),
'trashConfirm' => __( 'Are you sure you&#8217;d like to discard your unpublished changes?' ),
/* translators: %s: URL to the Customizer to load the autosaved version */
'autosaveNotice' => __( 'There is a more recent autosave of your changes than the one you are previewing. <a href="%s">Restore the autosave</a>' ),
'videoHeaderNotice' => __( 'This theme doesn\'t support video headers on this page. Navigate to the front page or another page that supports video headers.' ),

View File

@ -4,7 +4,7 @@
*
* @global string $wp_version
*/
$wp_version = '4.9-alpha-41693';
$wp_version = '4.9-alpha-41694';
/**
* Holds the WordPress DB revision, increments when changes are made to the WordPress DB schema.