Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Core Data: Clear auto-draft titles on save if not changed explicitly. #17633

Merged
merged 3 commits into from
Sep 30, 2019

Conversation

epiqueras
Copy link
Contributor

Fixes #17628

Description

This PR fixes an issue where saving an auto-draft without a title would persist its default title, "Auto Draft", in the new draft or published post. The latter two statuses don't have an incoming filter to clear the "Auto Draft" title so it would show in the editor and confuse users.

How has this been tested?

It was verified that saving or publishing new posts without titles no longer sets the title to "Auto Draft", but keeps it empty instead.

Types of Changes

Bug Fix: New posts saved or published without a title will no longer have their title set to "Auto Draft".

Checklist:

  • My code is tested.
  • My code follows the WordPress code style.
  • My code follows the accessibility standards.
  • My code has proper inline documentation.
  • I've included developer documentation if appropriate.

@epiqueras epiqueras added Backwards Compatibility Issues or PRs that impact backwards compatability [Package] Core data /packages/core-data labels Sep 27, 2019
@epiqueras epiqueras added this to the Future milestone Sep 27, 2019
@epiqueras epiqueras self-assigned this Sep 27, 2019
@mcsf mcsf requested a review from swissspidy September 27, 2019 17:04
@mcsf
Copy link
Contributor

mcsf commented Sep 27, 2019

Worth expanding E2E tests?

@mcsf
Copy link
Contributor

mcsf commented Sep 27, 2019

(thanks for the quick dive into this!)

@epiqueras
Copy link
Contributor Author

Yeah, added one here: c30ed80

if ( ! data.status ) {
data = { ...data, status: 'draft' };
}
if ( ! data.title || data.title === 'Auto Draft' ) {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should Auto Draft be put through a translation function? It is translated in get_default_post_to_edit(). Not 100% sure if that is the same place the post title is getting set in Gutenberg.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

How does that relate to this change? We are clearing the title here.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Well it compares the title with an English string, which might not work on a localized environment

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Got it.

So is "Auto Draft" translated in this context? Where would we check?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, as that string is coming from get_default_post_to_edit().

So you'd need to compare it with __( 'Auto Draft' ), not just 'Auto Draft'

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It looks like it is. I just tried @swissspidy's replication steps on trunk in a non-english locale, and the title was set to Automatisch gespeicherter Entwurf on publish.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm trying to replicate it, but data.title is always undefined here unless you explicitly typed in the auto draft title, so the second check doesn't even run.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Backwards Compatibility Issues or PRs that impact backwards compatability [Package] Core data /packages/core-data
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Auto Draft set as post title
5 participants