[geeklog-devel] GSoC idea: Versioning

Euan McKay info at heatherengineering.com
Fri Feb 26 05:19:21 EST 2010

I once did a simple versioning plugin that worked with a hacked
staticpages plugin.
It used an "on-save" hook, and instead of overwriting the staticpage
into the database, it added a new row in the table with an incremented
"version" column. It could easily then work with any other plugin that
was activated in the admin page and had the required functions for
accessing the versioning plugin's API.
You could set the number of versions to keep, or a time period (e.g. 1
month) and older items would be deleted.

I didn't get so far as to do any diffs, but if you have two versions
in the table, you can easily do that when required.

The only real issue is with images in stories and staticpages - if the
image changes, or is removed, then you lose that content. But perhaps
that is unavoidable, unless you want to start caching old images as
well, in which case you could quickly get a very large cache of


On Fri, Feb 26, 2010 at 15:58, Dirk Haun <dirk at haun-online.de> wrote:
> This is another idea that has popped up again and again over the years:
> The ability to track changes in a story (in content and who changed it
> and when), including the ability to go back to an earlier state.
> Instead of building it into stories specifically, could this be
> implemented as a plugin? The PLG_itemSaved API function was introduced
> with that idea in the back of the mind.
> There are some challenges here and I'm not sure they can actually be
> solved. Like what exactly do you save as the "diff" and how can you roll
> it back? The UI is also an interesting challenge. In any case, this
> would probably require a few more API extensions and changes on the
> other side (e.g. in stories) to use it.
> Just throwing this around for some feedback ...
> bye, Dirk
> --
> http://www.geeklog.net/
> http://geeklog.info/
> _______________________________________________
> geeklog-devel mailing list
> geeklog-devel at lists.geeklog.net
> http://eight.pairlist.net/mailman/listinfo/geeklog-devel

More information about the geeklog-devel mailing list