You are here: Foswiki>Tasks Web>Item9106 (06 Jun 2010, PaulHarvey)Edit Attach

Item9106: Create NestedFormsPlugin

pencil
Priority: Enhancement
Current State: New
Released In:
Target Release: n/a
Applies To: Extension
Component: NestedFormsPlugin
Branches:
Reported By: PaulHarvey
Waiting For: Main.PaulHarvey
Last Change By: PaulHarvey
This is a messy, highly experimental plugin written for Foswiki 1.1. Hopefully attempting it will drive some feature requests for the next version of Foswiki that could enable a cleaner implementation.

It mostly adds new DataForms types -
  • dynamiclabel - which never stores a real value against a topic, but rather $formfield() and friends will display the result of a macro in the form definition, in both edit and view.
  • hasone - a placeholder for $formfield() and friends to render an external topic as if it was nested within the formfield, in both edit and view.
  • hasmany - a placeholder for $formfield() and friends to render a collection of external topics as if they were nested within the formfield, in both edit and view.
    • Supports two modes - 'normal' (line per formfield), and 'grid' - jqgrid tabular layout which allows re-arranging, hiding and re-sizing of columns.
  • topicref - comma separated list of Eg. Web.Topic or [[Web.Topic#Formfield]] references
    • Extended attributes specify the nature of the link, Eg. belongsto relationship

Because the wikiapp pattern being developed at TRIN relies heavily on DataForm topics; to avoid expensive frequent TML table parsing: On save, the *Form topic is parsed for its 7th "extended attributes column", and details of the form definition are cached into %META:% fields.

-- PaulHarvey - 05 Jun 2010

 
Topic revision: r1 - 06 Jun 2010, PaulHarvey
The copyright of the content on this website is held by the contributing authors, except where stated elsewhere. See Copyright Statement. Creative Commons License    Legal Imprint    Privacy Policy