You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This is related to #1040, but it is not about validation errors, nor is it about how to move the messages produced by backdrop_set_message() within the form (which in D7/Backdrop can be achieved by using '#theme' => 'status_messages' in a form element).
This would help in situations where we want to either have static warning/info messages closer to the form elements rather than the top of the page, or to inject such messages in AJAXy thingies loaded in a form. Like this for example:
...or this:
In the examples above, if there was a "site in maintenance mode" and/or "security updates available" message, we'd still want those at the top of the page, while having the ability to render the status message right above the respective field it relates to.
Steps to reproduce (if reporting a bug)
We should be able to do something like this:
$form['some_form']['some_message'] = array(
'#type' => 'status_message',
'#message' => t('Something I need to say'),
'#message_type' => 'warning',
);
Actual behavior (if reporting a bug)
The above code does not work 😛 ...we need to do tis instead:
$form['some_form']['some_message'] = array(
'#type' => 'container',
'#attributes' => array('class' => array('messages', 'warning')),
);
$form['some_form']['some_message']['message'] = array(
'#markup' => t('Something I need to say'),
);
Expected behavior (if reporting a bug)
The above code should work 😝
Relevant version/system information (if applicable)
How to move status messages under a multi-step wizard's progress bar: d.org handbook tutorial that shows how to use '#theme' => 'status_messages'. Not good enough - moves the messages produced by drupal_set_message() to a specific place within the form, whereas the goal is to have messages additionally to the ones produced by drupal_set_message() (those should still be kept at the top of the page).
The text was updated successfully, but these errors were encountered:
...example demonstrating the current problem with using '#theme' => 'status_messages': I am trying to make the "Set up the public files directory..." message be rendered as the rest of the status messages, but when then you could end up with this:
...^^ the error and warning belong at the top of the page.
klonos
changed the title
[DX] Form API: provide a 'type' => 'status_message' element.
[DX] Form API: provide a 'type' => 'message' element.
May 1, 2023
klonos
changed the title
[DX] Form API: provide a 'type' => 'message' element.
[DX] Form API: provide a 'type' => 'status_message' element.
May 1, 2023
Describe your issue or idea
This is related to #1040, but it is not about validation errors, nor is it about how to move the messages produced by
backdrop_set_message()
within the form (which in D7/Backdrop can be achieved by using'#theme' => 'status_messages'
in a form element).This is to implement something like this respective feature in D8, where this is possible:
This would help in situations where we want to either have static warning/info messages closer to the form elements rather than the top of the page, or to inject such messages in AJAXy thingies loaded in a form. Like this for example:
...or this:
In the examples above, if there was a "site in maintenance mode" and/or "security updates available" message, we'd still want those at the top of the page, while having the ability to render the status message right above the respective field it relates to.
Steps to reproduce (if reporting a bug)
We should be able to do something like this:
Actual behavior (if reporting a bug)
The above code does not work 😛 ...we need to do tis instead:
Expected behavior (if reporting a bug)
The above code should work 😝
Relevant version/system information (if applicable)
'#theme' => 'status_messages'
. Not good enough - moves the messages produced bydrupal_set_message()
to a specific place within the form, whereas the goal is to have messages additionally to the ones produced bydrupal_set_message()
(those should still be kept at the top of the page).The text was updated successfully, but these errors were encountered: