Daemonite: Multi-step Forms with Process Logic Paths Archive

Daemonite: Multi-step Forms with Process Logic Paths Archive


Monday, May 05, 2003
Multi-step Forms with Process Logic Paths

Managing the state of a multiple-step form process in web applications remains a tricky problem. Traditional approaches involve passing hidden form elements or complex strings of URL parameters to ensure the form knows what has been submitted in earlier steps. The PLP was an innovation of the old Spectra content management framework that allowed you to maintain very complex form state information, even restoring a forms state if a user loses their connection.

Mike Nimer, a long term Spectra hack and a member of the CFMX engineering team, has whipped up a few utlities he calls the CMSToolkit. Its a collection of Spectra-esque bits that work to replicate some of that platforms cooler features. Mike's PLP is much better than the original, open source and well worth a look. We use it to provide content Wizards for content objects in FarCry Opensource.

For example, a wizard to populate a news conent type:

The PLP steps are individual CFM templates. The PLP framework allows you to step from one form step to another -- even jumping from step to step -- all the while maintaining the state of the form. There are two primary PLP scopes: INPUT and OUTPUT. You can prepopulate information in the INPUT scope and record user changes in the OUTPUT scope. There's even a bdebug attribute that lets you see everything that's going on in the PLP.

Watch the FarCry website for news on a PLP tutorial -- we're releasing snippets on how to build FarCry applications as quickly as we can -- PLPs are bound to be in the mix :)

Posted by modius at 11:41 PM | Permalink
Trackback: http://blog.daemon.com.au/cgi-bin/dmblog/mt-tb.cgi/119

Comments