figure it out
Whiteboard: u=editor c=wiki p= → u=contributor c=wiki p=
"Someone changed this section while you were editing, do you still want to save your revision?" If no, discard. If yes, save revision. Future bug will give a nice UI to resolving section collisions.
Whiteboard: u=contributor c=wiki p= → u=contributor c=wiki p=2
Progress: https://github.com/mozilla/kuma/pull/46 Claiming a points-actual of 4, because the conflict detection and resolution process ended up exposing edge cases in at least 4 editing scenarios: * Full-page editing * In-line section editing * New tab section editing * Save-and-edit button
Whiteboard: u=contributor c=wiki p=2 → u=contributor c=wiki p=2 pa=4
(Though, maybe it was more like 3pts, but it felt like a lot)
Commits pushed to https://github.com/mozilla/kuma https://github.com/mozilla/kuma/commit/edd003edf9b67c05c2998b16be43541d09fe461b Bug 688245 - kuma: section edits - collisions * Added a "current_rev" field to RevisionForm * Full page edit will result in conflict resolution UI if another edit arrives before submission * Save-and-edit iframe submission escapes out to conflict resolution UI when conflict detected. * Inline editor will bounce to full-page conflict resolution if the edited section conflicts. * Inline editor will refresh the page if a section submission could be merged, but something else on the page changed. * RevisionForm validation compares "current_rev" against the actual current revision ID for the document. If not equal, there's probably a conflict. * If only a section is being edited, changed can be merged if the latest revision has the same section content as the original revision where editing began * Current revision field added to edit_document template; omitted during conflict resolution so user can choose to overwrite * Conflict resolution UI added to edit_document template, shows diffs in content like revision compare view. * Current document revision tracked in document template; new message in document template for page refresh on section edit merge. * Hidden form in document template, used to bounce user to full conflict resolution page when section edit conflicts. * Raw content fetch now offers the current revision ID in a header * Raw content edit submission will yield 409 Conflict status if a section edit would cause a conflict. * Raw content edit submission will yield 205 Reset status if a section edit results in a merge. * Utility method in Revision model for extracting a section from content * Tests, tests, tests https://github.com/mozilla/kuma/commit/f74cc70c85d28c342f66d22171f605478d6674e5 Merge pull request #46 from lmorchard/688245-edit-conflicts Bug 688245 - kuma: section edits - collisions
Status: NEW → RESOLVED
Last Resolved: 7 years ago
Resolution: --- → FIXED
Component: Website → Landing pages
Product: Mozilla Developer Network → Mozilla Developer Network
You need to log in before you can comment on or make changes to this bug.