mirror of
https://github.com/moodle/moodle.git
synced 2025-08-05 00:46:50 +02:00
MDL-65217 form: id for error area
This commit is contained in:
parent
086aa543b9
commit
521989ec56
28 changed files with 34 additions and 34 deletions
|
@ -82,6 +82,7 @@ trait templatable_form_element {
|
|||
$context['type'] = $this->getType();
|
||||
$context['attributes'] = implode(' ', $otherattributes);
|
||||
$context['emptylabel'] = ($this->getLabel() === '');
|
||||
$context['iderror'] = preg_replace('/^id_/', 'id_error_', $context['id']);
|
||||
|
||||
// Elements with multiple values need array syntax.
|
||||
if ($this->getAttribute('multiple')) {
|
||||
|
|
|
@ -15,7 +15,7 @@
|
|||
{{#element.checked}}checked{{/element.checked}}
|
||||
size="{{element.size}}"
|
||||
{{#error}}
|
||||
autofocus aria-describedby="id_error_{{element.name}}"
|
||||
autofocus aria-describedby="{{element.iderror}}"
|
||||
{{/error}}
|
||||
{{#element.frozen}}
|
||||
disabled
|
||||
|
@ -27,7 +27,7 @@
|
|||
<em>{{{.}}}</em>
|
||||
{{/text}}
|
||||
{{{helpbutton}}}
|
||||
<span class="form-control-feedback invalid-feedback" id="id_error_{{element.name}}" {{#error}} style="display: block;"{{/error}}>
|
||||
<span class="form-control-feedback invalid-feedback" id="{{element.iderror}}" {{#error}} style="display: block;"{{/error}}>
|
||||
{{{error}}}
|
||||
</span>
|
||||
{{^element.frozen}}
|
||||
|
|
|
@ -25,7 +25,7 @@
|
|||
{{/element.selectedvalue}}
|
||||
id="{{element.id}}" {{#element.checked}}checked{{/element.checked}}
|
||||
{{#error}}
|
||||
autofocus aria-describedby="id_error_{{element.name}}"
|
||||
autofocus aria-describedby="{{element.iderror}}"
|
||||
{{/error}}
|
||||
{{#element.frozen}}
|
||||
disabled
|
||||
|
@ -43,7 +43,7 @@
|
|||
{{{helpbutton}}}
|
||||
</span>
|
||||
</div>
|
||||
<div class="form-control-feedback invalid-feedback" id="id_error_{{element.name}}" {{#error}} style="display: block;"{{/error}}>
|
||||
<div class="form-control-feedback invalid-feedback" id="{{element.iderror}}" {{#error}} style="display: block;"{{/error}}>
|
||||
{{{error}}}
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
id="{{element.id}}"
|
||||
{{#element.multiple}}multiple{{/element.multiple}}
|
||||
{{#error}}
|
||||
autofocus aria-describedby="id_error_{{element.name}}"
|
||||
autofocus aria-describedby="{{element.iderror}}"
|
||||
{{/error}}
|
||||
{{{element.attributes}}} >
|
||||
{{#element.options}}
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
id="{{element.id}}"
|
||||
{{#element.multiple}}multiple{{/element.multiple}}
|
||||
{{#error}}
|
||||
autofocus aria-describedby="id_error_{{element.name}}"
|
||||
autofocus aria-describedby="{{element.iderror}}"
|
||||
{{/error}}
|
||||
{{{element.attributes}}} >
|
||||
{{#element.options}}
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
id="{{element.id}}"
|
||||
type="button"
|
||||
{{#error}}
|
||||
autofocus aria-describedby="id_error_{{element.name}}"
|
||||
autofocus aria-describedby="{{element.iderror}}"
|
||||
{{/error}}
|
||||
{{{element.attributes}}}
|
||||
>
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
id="{{element.id}}"
|
||||
type="button"
|
||||
{{#error}}
|
||||
autofocus aria-describedby="id_error_{{element.name}}"
|
||||
autofocus aria-describedby="{{element.iderror}}"
|
||||
{{/error}}
|
||||
{{{element.attributes}}}>
|
||||
{{{element.value}}}
|
||||
|
|
|
@ -15,7 +15,7 @@
|
|||
{{#element.checked}}checked{{/element.checked}}
|
||||
size="{{element.size}}"
|
||||
{{#error}}
|
||||
autofocus aria-describedby="id_error_{{element.name}}"
|
||||
autofocus aria-describedby="{{element.iderror}}"
|
||||
{{/error}}
|
||||
{{#element.frozen}}
|
||||
disabled
|
||||
|
@ -27,7 +27,7 @@
|
|||
<em>{{{.}}}</em>
|
||||
{{/text}}
|
||||
{{{helpbutton}}}
|
||||
<span class="form-control-feedback invalid-feedback" id="id_error_{{element.name}}" {{#error}} style="display: block;"{{/error}}>
|
||||
<span class="form-control-feedback invalid-feedback" id="{{element.iderror}}" {{#error}} style="display: block;"{{/error}}>
|
||||
{{{error}}}
|
||||
</span>
|
||||
{{^element.frozen}}
|
||||
|
|
|
@ -25,7 +25,7 @@
|
|||
{{/element.value}}
|
||||
id="{{element.id}}" {{#element.checked}}checked{{/element.checked}}
|
||||
{{#error}}
|
||||
autofocus aria-describedby="id_error_{{element.name}}"
|
||||
autofocus aria-describedby="{{element.iderror}}"
|
||||
{{/error}}
|
||||
{{#element.frozen}}
|
||||
disabled
|
||||
|
@ -43,7 +43,7 @@
|
|||
{{{helpbutton}}}
|
||||
</span>
|
||||
</div>
|
||||
<div class="form-control-feedback invalid-feedback" id="id_error_{{element.name}}" {{#error}} style="display: block;"{{/error}}>
|
||||
<div class="form-control-feedback invalid-feedback" id="{{element.iderror}}" {{#error}} style="display: block;"{{/error}}>
|
||||
{{{error}}}
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
value="{{element.value}}"
|
||||
size="{{element.size}}"
|
||||
{{#error}}
|
||||
autofocus aria-describedby="id_error_{{element.name}}"
|
||||
autofocus aria-describedby="{{element.iderror}}"
|
||||
{{/error}} {{{element.attributes}}}>
|
||||
{{/element.frozen}}
|
||||
{{/element}}
|
||||
|
|
|
@ -57,7 +57,7 @@
|
|||
class="form-control d-inline-block {{# error }}is-invalid{{/ error }}"
|
||||
data-size="{{ element.size }}"
|
||||
{{# error }}
|
||||
autofocus aria-describedby="id_error_{{ element.name }}"
|
||||
autofocus aria-describedby="{{ element.iderror }}"
|
||||
{{/ error }}
|
||||
{{{ attributes }}}
|
||||
>
|
||||
|
|
|
@ -19,7 +19,7 @@
|
|||
{{#element.checked}}checked{{/element.checked}}
|
||||
{{#element.frozen}}disabled{{/element.frozen}}
|
||||
{{#error}}
|
||||
autofocus aria-describedby="id_error_{{element.name}}"
|
||||
autofocus aria-describedby="{{element.iderror}}"
|
||||
{{/error}}
|
||||
{{{element.attributes}}} >
|
||||
{{{label}}}
|
||||
|
@ -28,7 +28,7 @@
|
|||
<em>{{{.}}}</em>
|
||||
{{/text}}
|
||||
{{{helpbutton}}}
|
||||
<span class="form-control-feedback invalid-feedback" id="id_error_{{element.name}}" {{#error}} style="display: block;"{{/error}}>
|
||||
<span class="form-control-feedback invalid-feedback" id="{{element.iderror}}" {{#error}} style="display: block;"{{/error}}>
|
||||
{{{error}}}
|
||||
</span>
|
||||
{{^element.frozen}}
|
||||
|
|
|
@ -30,7 +30,7 @@
|
|||
{{#element.checked}}checked{{/element.checked}}
|
||||
{{#element.frozen}}disabled{{/element.frozen}}
|
||||
{{#error}}
|
||||
autofocus aria-describedby="id_error_{{element.name}}"
|
||||
autofocus aria-describedby="{{element.iderror}}"
|
||||
{{/error}} {{{element.attributes}}} >
|
||||
{{#text}}
|
||||
{{{.}}}
|
||||
|
@ -44,7 +44,7 @@
|
|||
{{{helpbutton}}}
|
||||
</span>
|
||||
</div>
|
||||
<div class="form-control-feedback invalid-feedback" id="id_error_{{element.name}}" {{#error}} style="display: block;"{{/error}}>
|
||||
<div class="form-control-feedback invalid-feedback" id="{{element.iderror}}" {{#error}} style="display: block;"{{/error}}>
|
||||
{{{error}}}
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
@ -11,7 +11,7 @@
|
|||
id="{{element.id}}"
|
||||
{{#element.multiple}}multiple size="{{element.size}}"{{/element.multiple}}
|
||||
{{#error}}
|
||||
autofocus aria-describedby="id_error_{{element.name}}"
|
||||
autofocus aria-describedby="{{element.iderror}}"
|
||||
{{/error}}
|
||||
{{{element.attributes}}} >
|
||||
{{#element.options}}
|
||||
|
|
|
@ -104,7 +104,7 @@
|
|||
id="{{element.id}}"
|
||||
{{#element.multiple}}multiple size="{{element.size}}"{{/element.multiple}}
|
||||
{{#error}}
|
||||
autofocus aria-describedby="id_error_{{element.name}}"
|
||||
autofocus aria-describedby="{{element.iderror}}"
|
||||
{{/error}}
|
||||
{{{element.attributes}}} >
|
||||
{{#element.options}}
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
id="{{element.id}}"
|
||||
{{#element.multiple}}multiple{{/element.multiple}}
|
||||
{{#error}}
|
||||
autofocus aria-describedby="id_error_{{element.name}}"
|
||||
autofocus aria-describedby="{{element.iderror}}"
|
||||
{{/error}}
|
||||
{{{element.attributes}}} >
|
||||
{{#element.optiongroups}}
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
id="{{element.id}}"
|
||||
{{#element.multiple}}multiple{{/element.multiple}}
|
||||
{{#error}}
|
||||
autofocus aria-describedby="id_error_{{element.name}}"
|
||||
autofocus aria-describedby="{{element.iderror}}"
|
||||
{{/error}}
|
||||
{{{element.attributes}}} >
|
||||
{{#element.optiongroups}}
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
id="{{element.id}}"
|
||||
{{#element.multiple}}multiple{{/element.multiple}}
|
||||
{{#error}}
|
||||
autofocus aria-describedby="id_error_{{element.name}}"
|
||||
autofocus aria-describedby="{{element.iderror}}"
|
||||
{{/error}}
|
||||
{{{element.attributes}}} >
|
||||
{{#element.options}}
|
||||
|
|
|
@ -13,7 +13,7 @@
|
|||
name="{{element.name}}"
|
||||
id="{{element.id}}"
|
||||
{{#error}}
|
||||
autofocus aria-describedby="id_error_{{element.name}}"
|
||||
autofocus aria-describedby="{{element.iderror}}"
|
||||
{{/error}}
|
||||
value="{{element.value}}"
|
||||
{{{element.attributes}}} >
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
id="{{element.id}}"
|
||||
{{#element.multiple}}multiple{{/element.multiple}}
|
||||
{{#error}}
|
||||
autofocus aria-describedby="id_error_{{element.name}}"
|
||||
autofocus aria-describedby="{{element.iderror}}"
|
||||
{{/error}}
|
||||
{{{element.attributes}}} >
|
||||
{{#element.options}}
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
id="{{element.id}}"
|
||||
{{#element.multiple}}multiple{{/element.multiple}}
|
||||
{{#error}}
|
||||
autofocus aria-describedby="id_error_{{element.name}}"
|
||||
autofocus aria-describedby="{{element.iderror}}"
|
||||
{{/error}}
|
||||
{{{element.attributes}}} >
|
||||
{{#element.options}}
|
||||
|
|
|
@ -9,7 +9,7 @@
|
|||
<!-- Element goes here -->
|
||||
{{/ element }}
|
||||
</span>
|
||||
<div class="form-control-feedback invalid-feedback" id="id_error_{{element.name}}" {{#error}} style="display: block;"{{/error}}>
|
||||
<div class="form-control-feedback invalid-feedback" id="{{element.iderror}}" {{#error}} style="display: block;"{{/error}}>
|
||||
{{{error}}}
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
@ -64,7 +64,7 @@
|
|||
{{$ element }}
|
||||
<!-- Element goes here -->
|
||||
{{/ element }}
|
||||
<div class="form-control-feedback invalid-feedback" id="id_error_{{element.name}}" {{#error}} style="display: block;"{{/error}}>
|
||||
<div class="form-control-feedback invalid-feedback" id="{{element.iderror}}" {{#error}} style="display: block;"{{/error}}>
|
||||
{{{error}}}
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
@ -10,7 +10,7 @@
|
|||
value="{{element.value}}"
|
||||
size="{{element.size}}"
|
||||
{{#error}}
|
||||
autofocus aria-describedby="id_error_{{element.name}}"
|
||||
autofocus aria-describedby="{{element.iderror}}"
|
||||
{{/error}}
|
||||
{{{element.attributes}}}>
|
||||
{{/element}}
|
||||
|
|
|
@ -10,7 +10,7 @@
|
|||
value="{{element.value}}"
|
||||
size="{{element.size}}"
|
||||
{{#error}}
|
||||
autofocus aria-describedby="id_error_{{element.name}}"
|
||||
autofocus aria-describedby="{{element.iderror}}"
|
||||
{{/error}}
|
||||
{{{element.attributes}}} >
|
||||
{{/element}}
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
id="{{element.id}}"
|
||||
class="form-control {{#error}}is-invalid{{/error}}"
|
||||
{{#error}}
|
||||
autofocus aria-describedby="id_error_{{element.name}}"
|
||||
autofocus aria-describedby="{{element.iderror}}"
|
||||
{{/error}}
|
||||
{{{element.attributes}}} >{{element.value}}</textarea>
|
||||
{{/element.frozen}}
|
||||
|
|
|
@ -10,7 +10,7 @@
|
|||
value="{{element.value}}"
|
||||
size="{{element.size}}"
|
||||
{{#error}}
|
||||
autofocus aria-describedby="id_error_{{element.name}}"
|
||||
autofocus aria-describedby="{{element.iderror}}"
|
||||
{{/error}}
|
||||
{{#element.frozen}}
|
||||
readonly {{#element.hardfrozen}}disabled{{/element.hardfrozen}}
|
||||
|
|
|
@ -4593,8 +4593,7 @@ EOD;
|
|||
// The id will be something like 'fgroup_id_NAME'. E.g. fgroup_id_mygroup.
|
||||
$elementcontext['wrapperid'] = $elementcontext['id'];
|
||||
|
||||
// Ensure group elements pass through the group name as the element name so the id_error_{{element.name}} is
|
||||
// properly set in the template.
|
||||
// Ensure group elements pass through the group name as the element name.
|
||||
$elementcontext['name'] = $elementcontext['groupname'];
|
||||
} else {
|
||||
// Non grouped element.
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue