WordPress.org

Make WordPress Core

Opened 2 months ago

Last modified 3 weeks ago

#47554 new enhancement

Post history

Reported by: d3n15 Owned by:
Milestone: Awaiting Review Priority: normal
Severity: major Version: 5.1.1
Component: Editor Keywords: needs-patch dev-feedback
Focuses: Cc:

Description

Hello everybody.

This "bug" might be a timeout issue or might have something to do with the server times, but it could be fixed from software side, as far as I see it. It also might be a Gutenberg issue, but its look like it is from the core.

Classic:

  • User A opens the post and write some content.
  • User B also opens the same post an clicks on take over.
  • User A gets pop up with info about the take over and can go to "all posts"

Problem (Version 5.1.1):

  1. Popup for user comes to late -> content not saved
  2. Popup doesn't appear -> user saves post which will be override from user B's content.

Solution:

  1. auto save e.g. every 10 seconds
  2. History besides the post, e.g. on the very right column. History contains lets say the last 5 or 10 (configurable) versions of the post. Users can see a diff or can restore the whole last version of the entry.
    • History doesn't contains versions of auto save (only last auto save)

--- User-Agent Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Iridium/2018.11 Safari/537.36 Chrome/71.0.0.0

Change History (1)

#1 @andraganescu
3 weeks ago

  • Keywords needs-patch dev-feedback added; 2nd-opinion removed

I have tested this like so:

  • in Safari OSX open two incognito windows and make sure they are each on half the screen (Safari is a good choice in this case because each tab is unaware of other tabs in incognito)
  • login in each window as a different user
  • edit the same post

On my local dev (using a virtual machine) I was able to overwrite the changes of the user taking over because the Notification that someone took over was too late. I don't know yet if the solutions proposed by OP are the right ones, added the dev-feedback label for this reason.

Note: See TracTickets for help on using tickets.