Midgard Wiki rewritten
I’ve spent some time yesterday and today rewriting the Midgard Wiki software to the new MidCOM architecture. Major changes include:
- Switch to base classes and DBA for Access Control Lists support
- Switch to Query Builder and migration away from NAP for better performance
- Integration with the no.bergfald.rcs library to provide easy on-site revision control
- Cleaner page creation to make unnecessary stubs more unlikely
- Helper for making it easy to enable using the wiki as memo storage by other components. Already used for org.openpsa.calendar meeting notes
- Switch to PHP Markdown Extra for added definition list and table support
- Switch to the standard midcom_helper_toolbars toolbar system
There is still stuff I would like to do, given time:
- Implement Javascript toolbar for making Markdown editing easier
- Cache wiki linking information for better performing What links here? views
- Implement an Orphaned pages listing
- Switch from MidgardArticles into more specific wikipage objects
- Create a MediaWiki-like template system to replace the current
tip
,note
and other special tags - Add automatic Table of Contents custom formatter
I was again amazed how quick it was to implement features using the new development framework. With this work we have a quite full-featured wiki that integrates nicely with the rest of the Midgard CMS environment for templating, user permissions and other features.
The new wiki is now only available in CVS pending MidCOM’s PEAR 1.4 packaging.