Objekt Versioning

Objekt versioning refers to the ability to store previous "versions" of an object whenever it is edited. This makes Undo possible, and also could allow comparisons between different version of an object (like changes on a wikipage).

It is not currently implemented, this page is currently just notes for how it could be done.

For objekts that wish to keep versions/undo-history, a function can be added to store the current state of the objekt in a separate objekt_versions table.

Something simple like

function saveVersion($object) {

// stick it in the objekt_versions table
// Of course you want the user and the time the modification was made.

This table can then be queried to find out when and who made changes.

Potentially you could compress the data, since it won't be used that often.

note: the title that this page was changed to "wiki history sketch of plan" is not a good one, since objekt versioning is not limited to wiki pages, and the content of this page will change once it is actually implemented which means this will no longer be a "sketch of plan". Also it is like really bad english.