[MGNLUI-6122] Dialog: Label of the form is ignored for the dialog Created: 10/Aug/20  Updated: 13/Aug/20  Resolved: 13/Aug/20

Status: Closed
Project: Magnolia UI
Component/s: dialogs, forms
Affects Version/s: 6.2.2
Fix Version/s: None

Type: Bug Priority: Critical
Reporter: Christian Ringele Assignee: Unassigned
Resolution: Not an issue Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File Dialogs-FormLabel-DefintionsProblemMessage.png     PNG File Dialogs-FormLabel-NotWorking.png    
Issue Links:
Relates
relates to MGNLUI-6089 Title is mandatory in dialogs Closed
relation
is related to MGNLUI-5814 Using labels at the form level is now... Closed
is related to DOCU-2041 Labels: Do not provide code examples ... Closed
Template:
Acceptance criteria:
Empty
Task DoD:
[ ]* Doc/release notes changes? Comment present?
[ ]* Downstream builds green?
[ ]* Solution information and context easily available?
[ ]* Tests
[ ]* FixVersion filled and not yet released
[ ]  Architecture Decision Record (ADR)
Bug DoR:
[ ]* Steps to reproduce, expected, and actual results filled
[ ]* Affected version filled
Date of First Response:
Epic Link: UI framework: forms, dialogs, content editing

 Description   

Situation:

Problem:

The label property is ignored, the dialog opens with an i18n key:

Using this code:

form:
  label: Two Columns
  properties:


    titleLeft:
      $type: textField
      label: Left Column Title
      description: Enter title of the left column.


    titleRight:
      $type: textField
      label: Right Column Title
      description: Enter title of the right column.

Because the Bean does not contain a label property:
info.magnolia.ui.editor.ConfiguredFormDefinition<T>

Here the bean-minor-problem report form defintion app:

Bad side-effect:

If you create a 'textImage' or a 'teaser' component, the dialog has a Title -> it inherits it form the MTK's i18n message bundle.
This is very confusing, as one thinks it uses the label, until you try to change it. Or create another dialog and then you have suddenly a key and not the label in use.

The bad thing besides the confusion of this is, that one does not see the i18n key the system expects.

Severity of issue:

This is really bad as one can not create a dialog and set a label, one MUST generate i18n files even when using only one language.

Imagine a beginner starting to work with magnolia, but not knowing anything yet about the i18n system.

Or when migrating form old to new dialogs (as it was the case in my training material), soddenly no label is used anymore.



 Comments   
Comment by Šimon Demočko [ 13/Aug/20 ]

Form label is ignored, because there is none there. The label belongs to the dialog, not the form, so moving it up a level (above the form: in the example on the same level) works well. 

This can be seen from the M6 docs, looking at the dialog definiton, also from the logs in definitions apps. We discussed writing sth about it on the Form definition docs as in "change from M5, beware", but we could do that with very many changes from M5 to M6 so decided to drop it

Comment by Christian Ringele [ 13/Aug/20 ]

So for all developers summarised:

The right way to configure a dialog is following:

label: Two Columns ## The label of the dialog is placed here. And not inside the form.
form:
  
  properties:
    titleLeft:
      $type: textField
      label: Left Column Title
      description: Enter title of the left column.


    titleRight:
      $type: textField
      label: Right Column Title
      description: Enter title of the right column.
Generated at Mon Feb 12 09:33:22 CET 2024 using Jira 9.4.2#940002-sha1:46d1a51de284217efdcb32434eab47a99af2938b.