[MGNLUI-2871] Enhance the behavior of complex fields Created: 07/May/14  Updated: 19/Jun/14  Resolved: 21/May/14

Status: Closed
Project: Magnolia UI
Component/s: forms
Affects Version/s: 5.2.4
Fix Version/s: 5.2.5

Type: Task Priority: Major
Reporter: Eric Hechinger Assignee: Eric Hechinger
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Relates
relates to MGNLUI-2960 Impossible to save switchable values ... Closed
dependency
is depended upon by MGNLPN-130 Migrate trait rule aggregator field t... Closed
relation
is related to MGNLUI-1824 Upload field, replace the FileWrapper... Closed
is related to MGNLUI-2381 Composite field validators ignored Closed
is related to MGNLUI-2331 Composite field validation - no error... Closed
is related to MGNLUI-2668 Default selected option in SelectFiel... Closed
is related to MGNLUI-2712 info.magnolia.ui.form.field.definitio... Closed
is related to MGNLTPLSMPL-16 Add new fields in the dialog show roo... Closed
is related to MGNLUI-2854 i18n is not supported by all multi va... Closed
Template:
Acceptance criteria:
Empty
Task DoR:
Empty
Date of First Response:

 Description   

Several issues are related to the behavior of complex fields (multi, composite and switchable) due to the complexity of the fields or of they transformers.

As a first step, we will introduce a new way to combine fields.

Assume that you have a field A (multi) that contains another field B (composite)
Until now (5.2.4) the field A (his transformer) had to handle the whole data structure, meaning, the Items/Properties used by himself, but also the Items/Properties used by B.
Due to this limitation we only support two levels of fields and with one combination A(multi) containing a B(composit).
It is currently not possible to have a:

  • A (composit) containing B (multi)
  • A (composit) containing B (composit)
  • A (multi) containing a B (composit) containing a C (multi)
    ... and so on.

In order to solve this, we will introduce new transformers that are responsible to handle Items used by the next level of fields.

  • A (multi) creates a list of Items. Eatch Items contains the values of B(Multi). A simply pass the Item to the field B, and B is then responsible to create the Properties/Item needed by himself.
    Doing this we will be able to easily have
  • A (multi) containing B (composit) containing C (multi)....
    in fact any field structure.

The only limitation is that each entry of a multi field will be stored under a child Item of the field root item.

Tasks:

  • create the new transformers
  • review the complex fields (multi/composit/switchable) in order to support this new delegation logic (these fields have to stay compatible with the old transformers)
  • add samples
  • review documentation
  • add UI tests


 Comments   
Comment by Ondrej Chytil [ 20/May/14 ]

Multi-field is still cloned, see my previous comment.
If not caused by this issue please close it and start new one.

Generated at Mon Feb 12 09:00:59 CET 2024 using Jira 9.4.2#940002-sha1:46d1a51de284217efdcb32434eab47a99af2938b.