Draft is not being saved when creating a new PM

When creating a message and saving it as a draft, the message does not appear in Drafts

Steps to reproduce:

  • Open Messages
  • Press :email: New Message
  • Type something
  • Press the little :arrow_down_small: icon as shown in the video below.
  • Start a new message
  • A notification then should pop up saying:
    Are you sure you want to delete the message?
  • Press No, save draft
  • Go to the drafts section. The draft is not there.

Although the fact, that you want to create a new message when you are already in the process of creating a new one, seems a bit weird, shouldn’t the draft feature work just fine?


1 Like

Can you repro this @tshenry?

4 Likes

I can, but I think it may be expected. From what I can tell a draft will not save unless it meets the criteria set in the min post length site setting (default 20 characters).

IMO if a draft is < 20 characters, it’s probably not hyper-critical if a user has to start from scratch. I guess the only thing we could improve here is to not give the user the impression that a draft will be saved.

8 Likes

Tried to create a new topic - there were only 5 characters - and it got saved as a draft though.

2 Likes

Indeed. Thanks for following up. That pushed me to dig deeper. It looks like it might have to do with timing.

  • If you only enter “Hello” into the title line of the PM and stop, a draft will be saved :white_check_mark:
  • If you only enter “Hello” into the textarea of the PM and stop, a draft will be saved :white_check_mark:

  • If you enter “Hello” into the title line of the PM and then immediately enter “Hello” into the textarea, no draft is saved :x:
  • If you enter “Hello” into the textarea of the PM and then immediately enter “Hello” into the title line, no draft is saved :x:

When composing a topic, all of the above scenarios appear to work.

5 Likes

Tried both of those and yes, you are right. Entering another phrase though which is 19 characters, the pop up message still appears and when you press save draft, the draft is not saved. As you said, the notification should be improved a litle, in order for members not to understand that their draft will be saved. Perhaps, the message shouldn’t even pop up, if the characters are <20. Thanks for looking into it! :slightly_smiling_face:

2 Likes

Looks like bugs @sam?

1 Like

Yeah a minor one, it is not like you can lose anything meaningful

Will add to my list

5 Likes

This should be fixed via:

https://github.com/discourse/discourse/commit/0853208d67090d4ce2a9ebec07839bfa564c16e5

Description:

Here’s how the draft saving process works currently:

  • if only title is present (no reply) the draft is saved
  • if only reply is present (no title) the draft is saved
  • if both title and reply are present, and reply length is less than min_post_length and the title length is less than min_topic_title_length , then the draft is saved
  • if both title and reply are present, and reply length is less than min_post_length , then the draft is not saved (then why the above case was saved? :thinking:)

The current draft saving conditions are complex to understand and is causing confusion.

This commit updates the process to save the draft if either title or reply (or both) exists and at least one of them meets required length criteria.

Thanks for reporting this issue @Thomas_G, and for further researching @tshenry. :+1:

6 Likes