Mehe: atrikel editieren lock

Beitrag lesen

hallo,
artikel(*) sollen von mehreren Leuten (via web-frontend) ediertiert werden können. Nun möchte ich natürlich verhindern, dass mehrere Leute einen Artikel gleichzeitig editieren. Dazu muss ein lock-Status her.

user öffnet Artikel, per UPDATE wird irgendwo in der DB ein status locked auf true gesetzt.
user speichert Artikel, per UPDATE wird locked auf false gesetzt.

ist locked auf false, kann anderer User Artikel nicht öffen (bzw. editieren)

offensichtliches Problem: User speichert Artikel nicht, sondern schließt Browserfenster einfach so. Oder Browser stürzt ab. Was auch immer.

Lösung
per JavaScript jede Minute (bzw. Interval X min) einen Status senden, dass User noch aktiv ist. Wenn Artikel locked ist, aber 5 Minuten mehr kein Status gesendet wurde, sollte locked wieder auf true gesetzt werden.

Allerdings: Javascript fände ich gar nicht so schön dafür. Was gibt's noch für Lösungen für dieses spezielle Problem? Bitte auch * beachten. Danke!

grüße
Mehe

* es handelt sich um relativ komplexe Artikel. Die User müssen dazu recherchieren und stöbern. Ein Bearbeiten eines Artikels kann durchaus mehrere Stunden dauern. Auch Offzeiten von mehreren Stunden (also Zeiten, in denen der User nichts am Frontend macht) sind durch möglich.