Customize: Let default status for Customizer be `draft` if user does not have capability to `publish`.

Amends [41626].
Props sayedwp, westonruter.
See #30937.
Fixes #42686.


git-svn-id: https://develop.svn.wordpress.org/trunk@42543 602fd350-edb4-49c9-b593-d223f7449a82
This commit is contained in:
Weston Ruter 2018-01-22 19:09:16 +00:00
parent 026cd70e25
commit e2b25e6159
1 changed files with 5 additions and 5 deletions

View File

@ -7904,7 +7904,7 @@
previewerAlive = state.instance( 'previewerAlive' ), previewerAlive = state.instance( 'previewerAlive' ),
editShortcutVisibility = state.instance( 'editShortcutVisibility' ), editShortcutVisibility = state.instance( 'editShortcutVisibility' ),
changesetLocked = state.instance( 'changesetLocked' ), changesetLocked = state.instance( 'changesetLocked' ),
populateChangesetUuidParam; populateChangesetUuidParam, defaultSelectedChangesetStatus;
state.bind( 'change', function() { state.bind( 'change', function() {
var canSave; var canSave;
@ -7938,9 +7938,7 @@
} else { } else {
saveBtn.val( api.l10n.schedule ); saveBtn.val( api.l10n.schedule );
} }
} else if ( ! api.settings.changeset.currentUserCanPublish ) { } else if ( api.settings.changeset.currentUserCanPublish ) {
selectedChangesetStatus( 'draft' );
} else {
saveBtn.val( api.l10n.publish ); saveBtn.val( api.l10n.publish );
} }
closeBtn.find( '.screen-reader-text' ).text( api.l10n.cancel ); closeBtn.find( '.screen-reader-text' ).text( api.l10n.cancel );
@ -7962,12 +7960,14 @@
return status; return status;
}; };
defaultSelectedChangesetStatus = api.settings.changeset.currentUserCanPublish ? 'publish' : 'draft';
// Set default states. // Set default states.
changesetStatus( api.settings.changeset.status ); changesetStatus( api.settings.changeset.status );
changesetLocked( Boolean( api.settings.changeset.lockUser ) ); changesetLocked( Boolean( api.settings.changeset.lockUser ) );
changesetDate( api.settings.changeset.publishDate ); changesetDate( api.settings.changeset.publishDate );
selectedChangesetDate( api.settings.changeset.publishDate ); selectedChangesetDate( api.settings.changeset.publishDate );
selectedChangesetStatus( '' === api.settings.changeset.status || 'auto-draft' === api.settings.changeset.status ? 'publish' : api.settings.changeset.status ); selectedChangesetStatus( '' === api.settings.changeset.status || 'auto-draft' === api.settings.changeset.status ? defaultSelectedChangesetStatus : api.settings.changeset.status );
selectedChangesetStatus.link( changesetStatus ); // Ensure that direct updates to status on server via wp.customizer.previewer.save() will update selection. selectedChangesetStatus.link( changesetStatus ); // Ensure that direct updates to status on server via wp.customizer.previewer.save() will update selection.
saved( true ); saved( true );
if ( '' === changesetStatus() ) { // Handle case for loading starter content. if ( '' === changesetStatus() ) { // Handle case for loading starter content.