Entries For: August 2006
2006-08-30
KSS bundle for Plone 3.0
We have prepared a preview bundle for Plone 3.0 that contains examples of KSS usage in Plone and Archetypes.
A long time has passed since our last blog entry and a lot of progress has been made with KSS / Azax.
Previously we mainly concentrated on completing the core framework and working out use cases for Zope. As a result the core KSS framework and its base demos run on a variety of Zope versions including Zope 2.8, 2.9, 2.10 and Zope 3.2. The documentation has also been started; there is a tutorial for startup, and some other documentation. We also had some discussion on the mailing list that gave us a lot of input on what use cases would be important to do first - thank you Martin 'optilude' Aspeli for the lot of work devoted into this!
Next we could start to focus on use cases for Plone and Archetypes. As a result, we already have some use cases working in our review bundle, and our PLIP contains more information about the general picture and how we plan to move on.
In the bundle we decided not to branch off Plone or Archetypes but to offer add-on products instead, thus showing how KSS can add dynamicity to existing applications. We have working demonstration of
- content tab switching: if possible we change the content region without reloading the page in an economic way, and if not, we fall back to traditional navigation. This works with all "green" tabs including those in the setup area. There is a problem on loading the kupu editor, which currently either works or not, we hope to solve that soon.
- autorefresh of portlets: We have a simple portlet autorefresher that in the default setup refreshes the "recent" porltet, any portlet can be refreshed by just adding a corresponding rule to the KSS resource. This could be easily integrated with the portlet engine later.
- In-place navigation in the calendar portlet
- validation of AT fields on onblur event (in ATAzax product): On leaving a field the validation of the field is done and the field error message is displayed, this is only implemented for the String widget and will soon be extended for all built-in widget types.
- validation of the entire AT form when save button is clicked, showing error messages without reloading if there are some errors (in ATAzax product).
- livesearch is now bound to its input with KSS: in other words, we show how external components can coexist with KSS and existing code can be wrapped with lightweight modifications (in livesearch product). Soon we will also show how the same component is easily reusable for other tasks like autocomplete and other intelligent search fields.
In addition, there is also a live demo site set up which however shows just the Zope-only demos of the azaxdemo product at the moment - which means none of the above stuff yet :-(, nevertheless it gives a quick view into how KSS works.
In September, we will have a 4 days developer sprint in Belgium to enhance further the Plone UI with KSS. We plan to complete existing use cases and introduce additional ones. We also plan to enhance our testing system and provide more effect libraries by wrapping existing javascript libraries for use in the KSS framework.
Although the main system is usable with all Zope and Plone versions, the Archetypes specific parts of the review bundle are prepared for Plone 3.0 and run only on Zope 2.10. You also need to manually replace Five with the svn version of Five 1.5, (iow, even the svn version of Zope 2.10 is insufficient since that links to a static tag of Five that contain critical bugs). Many thanks to all those people who made this possible and especially Alec Mitchell, Hanno Schlichting and Philipp von Weitershausen who helped us invaluably to track down a few showstopper issues.