6.0.0-git
2018-12-13
Last Modified 2017-01-05 by Jan Schneider

Undo support in Horde

Bugs

https://bugs.horde.org/ticket/11187

People

Description

Instead of deletion, support undo in Horde applications. This might take the form of a Horde-wide (per-user of course) "trash folder", or some other form of undeletion or revision history.

One suggested approach is to embed this into a larger task to implement journaling in Horde. This would look include these tasks:

  • Horde_Journal library with SQL and potentially MongoDB backends (5 hours)
  • Journaling for apps (10 hours): Use Horde_Journaling in Kronolith, Nag, Turba, Mnemo to track additions, changes, deletions.
  • Collection (calendars, address books, etc) history (10 hours): Application support (backend and UI) to retrieve and display journal summaries for a groupware collection. Maybe on-demand for dynamic frontends?
  • Object history (10 hours): Application support (backend and UI) to retrieve and display complete journal for a groupware object. Maybe on-demand for dynamic frontends?
  • Undo (25 hours): Implement undo functionality based on the journaling features for end users.

Time estimations are probably too optimistic, especially for the base journaling functionality.

Resources

http://www.alistapart.com/articles/neveruseawarning
http://bergie.iki.fi/blog/undeletion_in_midgard.html
http://paulbuchheit.blogspot.com/2007/06/quick-all-actions-should-have-undo.html
http://humanized.com/weblog/2007/09/14/undo-made-easy-with-ajax-part-1/
http://azarask.in/blog/post/undo_with_ajax_2/
http://ajaxian.com/archives/addressbook-an-example-of-the-form-history-pattern


Back to the Project List