Written in 2011 for the NBTwiki (nbtwiki.net), the tutorial website of the Neurophysiological Biomarker Toolbox. Both plugins are no longer maintained and may not work with current DokuWiki releases.

InlineEditor#

To support easy editing of NBTwiki pages, I implemented an inline editor: double-click the text and an editor appears in place. A green button saves the changes and a red button discards them.

The editor is built on code from the quickedit plugin. Compared with quickedit, InlineEditor supports locking and unlocking of pages, an editor toolbar, and better security. It is written in JavaScript and PHP, with updates done over AJAX.

InlineEditor on dokuwiki.org · source on SourceForge

Smart Cache#

To speed up the NBTwiki, I developed the Smart Cache plugin. It makes better use of the browser cache for visitors who are not logged in. It is “smart” because it automatically refreshes the browser cache when a page has been updated, or when the visitor logs in. This is done with two simple AJAX calls and a client-side script that checks how fresh the cache is.

On a slow connection, Smart Cache improved the second load time of the NBTwiki front page from about 6 seconds to about 2.6 seconds.

Smart Cache on dokuwiki.org · source on SourceForge