In the UX survey and tests conducted with editors in October/November 2016 one of the most requested features was automatic saving of content.
Editors described their UX issues as:

  • "When I edit content with many paragraphs of much content, I fear to loose my work"
  • "I want to make sure that I do not loose content when I need to go away from my workstation"

The technical implications are huge for that because Thunder (and similar modern Drupal projects) make heave use of entity references and media, so not only the current entity must be saved with the correct state but also everything referenced for example.

A possible solution with the "autosave form" module needs to be evaluated.

Comments

pixelmord created an issue. See original summary.

pixelmord’s picture

Issue tags: +UX
pixelmord’s picture

landsman’s picture

This is should be great!
I think that browser local storage can be useful too.

miro_dietiker’s picture

Autosave will need something like revision pinning.
So all partial autosaves write to the same revision. Otherwise wi will end up with a huge pile of revision, degrading database speed and eating up your storage.

That said, the workflow module adds something similar, but if we only have one single forward revision (per language), you can't see in revision who changed what / when inside a longer workflow process... Core is limiting us here.

IMHO we need much more advanced tools to manage the revision tree. Otherwise we will end up building crazy workaround systems...

hchonov’s picture

I am the maintainer of autosave_form. It does not create revisions, but uses its own storage for the autosave_states. The reason is that it is basically impossible to save into revisions if there are defined DB constraints - such as NOT NULL. Additionally when talking about entity forms we don't only need the entity state, but also the form state. Also saving to a dedicated storage is faster than saving to entity tables and also does not make the revision tables to explode :).

I'll be happy to assist you if you have any questions or additional requirements.

hchonov’s picture

Version: 8.x-1.x-dev » 8.x-2.x-dev
chr.fritsch’s picture

Related issues: +#3029488: Implement Autosave

Let's follow core

chr.fritsch’s picture

Status: Active » Needs review

So we have a working PR and will merge it soon (https://github.com/thunder/thunder-distribution/pull/50)

hchonov’s picture

Niiice!

I am on vacation until end of the week. Starting next week I am going to further support you on the issue queue of the module.

daniel.bosen’s picture

Status: Needs review » Fixed

Well, this one was waiting a long time for completion :-) Thanks everyone!

  • daniel.bosen committed fd2c06f on 8.x-3.x authored by volkerk
    Issue #2828088 by pixelmord, chr.fritsch, mtodor, volkerk: Automatic...

  • chr.fritsch authored 37416e6 on 8.x-3.x
    Issue #2828088 by chr.fritsch: Increase select2 min version
    
    

Status: Fixed » Closed (fixed)

Automatically closed - issue fixed for 2 weeks with no activity.