Problem/Motivation
Inline Form Errors needs a documentation update in hook_help
.
Proposed resolution
The part about 'experimental' needs to be removed.
See: https://www.drupal.org/node/632280#help
Furthermore we need to update the documentation page on Drupal.org about the module with:
- A brief explanation (remove the non-existent behaviors)
- Known limitations (like HTML5 validation)
- How to disable IFE for a complete form
- How to hide inline error messages for certain elements
Remaining tasks
Create a patch to change the help text.Update module info fileMatch the online documentation to the new text.- Add the extra information to the online documentation
- Point out which parts of WCAG this module helps with.
Known limitations (like HTML5 validation)How to disable IFE for a complete formHow to hide inline error messages for certain elements
User interface changes
None
API changes
None
Data model changes
None
Comment | File | Size | Author |
---|---|---|---|
#48 | interdiff-2888189-45-48.txt | 1.41 KB | andrewmacpherson |
#48 | 2888189-ife-help-48.patch | 2.81 KB | andrewmacpherson |
#45 | interdiff-38-45.txt | 1.52 KB | ifrik |
#45 | 2888189-ife-help-45.patch | 2.8 KB | ifrik |
#38 | interdiff-2863318-19-24.txt | 638 bytes | martin107 |
Comments
Comment #2
dmsmidtInitial hook_help update.
Comment #3
mgiffordThis looks fine to me:
The Inline Form Errors module makes form errors more accessible and user friendly. It places the error messages next to the form elements themselves and adds a summary of all errors. For more information, see the <a href=":inline_form_error">online documentation for the Inline Form Errors module</a>.
Thanks @dmsmidt!
Comment #4
oadaeh CreditAttribution: oadaeh at Hook 42 commentedI applied the patch to the latest 8.4.x (no surprise there, considering how new it is), and I was also able to apply it to the latest 8.3.x. In both cases, the text displayed as expected.
However, while I think the wording is essentially fine as is, I think it can be improved slightly by changing it to be like this:
It puts the "how" and the "what" in the same sentence with a connecting word, rather than having them in separate sentences. (I think it flows better when reading it that way.)
I also added a tad more clarification on a couple of points in the included text.
For your convenience, I've attached a patch that includes those changes.
Comment #5
dmsmidtThanks for being so precise @oadeah. I thought about putting 'at the top of the page' in there as well. But we can't be sure about where people display their Drupal messages, so I left that one out.
What do you guys think?
Also it would be great if anybody could update the DO help page with the points mentioned in the IS.
Comment #6
oadaeh CreditAttribution: oadaeh at Hook 42 commentedWhat about something more like "...summary of all errors, usually displayed at the top of the page."?
Comment #7
oadaeh CreditAttribution: oadaeh at Hook 42 commentedI read through the other hot issues for this module, and I don't think I can be much help with them, so I can see what I can come up with for the d.o documentation, but I will need to spend some time familiarizing myself with the module and it's code, so I actually know what it does.
Also, I think the last two points are still a work in progress, so I might wait until they are done before writing much about them.
Comment #8
mgiffordNot sure that the 'at the top of the page' is necessary.
Yes, presently d.o just has "Documentation for the experimental Drupal 8 Inline Form Errors module." here:
https://www.drupal.org/docs/8/core/modules/inline-form-errors
So should this be identical to the text in core, or longer?
Comment #9
dmsmidt@oadaeh, reviewing the patches in other issues would also be a huge help.
The documentation on d.o. can be separated in two chapters maybe: for end users / for developers. For users we can give some screenshots and maybe write something about that the summary is usually at the top of the page. Then we can skip that in the modules hook_help.
Comment #10
mgiffordOk, this is just a place holder:
https://www.drupal.org/docs/8/core/modules/inline-form-errors
Really this content should all go in:
https://www.drupal.org/docs/8/core/modules/inline-form-errors/inline-for...
I've created a "What is IFE - for users?" & "IFE for Developers". Just added one screenshot as a placeholder. The text needs more work, but it is an improvement.
Comment #11
oadaeh CreditAttribution: oadaeh at Hook 42 commentedOkay, I removed the at the top part. Here's the updated patch for scrutiny.
Comment #12
oadaeh CreditAttribution: oadaeh at Hook 42 commentedI also removed that text from the documentation page.
Comment #13
mgiffordThanks!
Comment #14
John Cook CreditAttribution: John Cook at Creode commentedI've tested oadaeh's patch from comment #11.
Before:
After:
The text has reference to the module being experimental has been removed as requested by the first part of the description. The online documentation also matches this text.
I would say that the patch is fine and can be committed.
But the second part of the summary, about adding more information, has not been done yet. For that reason I'm setting the issue back to needs work.
I've updated the summary showing what is still to do.
Comment #15
John Cook CreditAttribution: John Cook at Creode commentedComment #16
John Cook CreditAttribution: John Cook at Creode commentedComment #17
lplp CreditAttribution: lplp at Synetic commentedComment #18
andrewmacpherson CreditAttribution: andrewmacpherson as a volunteer commentedFor the documentation pages, we could point out which parts of WCAG this helps with. That might help people who are tasked with evaluating Drupal.
Most specifically, it is Drupal 8's implementation of WCAG 2.0 technique G139: Creating a mechanism that allows users to jump to errors.
Overall, it helps with WCAG 2.0 Guideline 3.3 - Input Assistance, and to some extent Success Criterion 2.4.1 - Bypass Blocks.
Who benefits from Inline Form Errors?
release managers: some of this might help in the D8.4.0 release notes too?
Comment #19
andrewmacpherson CreditAttribution: andrewmacpherson as a volunteer commentedThe description in the IFE info file is misleading in a couple of ways.
In any case, our IFE approach is only one of the suggested ways to implement G139: Creating a mechanism that allows users to jump to errors, which in turn is considered an "additional advisory technique" for WCAG Guideline 3.3. It's not going to be the best approach for all situations, so we have #2856950: Add a possibility to disable inline form errors for a complete form to help developers who need to take a different approach.
</pedantic>
I'd suggest:
description: 'Places error messages adjacent to form inputs, for improved usability and acessibility.'
Updated the patch with new info file.
Comment #20
lplp CreditAttribution: lplp at Synetic commentedUpdated the documentation, Added known limitations (considering HTML 5), Who benefits from Inline Form Errors?, How to disable IFE for a complete form and How to hide inline error messages for certain elements.
Comment #21
ifrikSome nit-picking:
"user-friendly" needs a hyphen.
Strictly speaking the module doesn't make the errors more accessible - it makes identifying the form errors more accessible and provides the different messages for different fields.
Maybe "The Inline Form Errors module makes it easier for users to identify at which form elements errors needs to be resolved by providing a summary of all errors and by placing the individual error messages next to the form elements themselves."
I would also suggest a sentences under "Uses"
Comment #22
ifrikI've made a patch.
Comment #23
BarisW CreditAttribution: BarisW as a volunteer and at LimoenGroen commentedacessibility > accessibility
Comment #24
ifrikI fixed the typo in the description.
Comment #25
BarisW CreditAttribution: BarisW as a volunteer and at LimoenGroen commentedComment #26
dmsmidtI'm very pleased to see this progress.
The documentation on DO is very nice now, thanks all!
Some last remarks:
Remove 'at'.
Maybe say: 'which error(s)' instead of 'which error'.
I'm also missing the words 'usability' and 'accessibility', like we use them in the module.info description.
The example is about one error, the summary about multiple. Let's get those two in line.
'If a user does not fill in a form elements correctly (for example by not filling out a required fields), then a warning message with links to each individual form element is displayed at the top of the form. The individual error messages are displayed next to each form element.'
Comment #27
pk188 CreditAttribution: pk188 at OpenSense Labs commentedFixed 1 of #26.
Didn't understand 2 of #26.
Comment #28
shashikant_chauhan CreditAttribution: shashikant_chauhan as a volunteer and at Iksula commentedAdded patch for point 2 of #26.
Comment #29
andrewmacpherson CreditAttribution: andrewmacpherson as a volunteer commentedThanks pk188 and shashikant_chauhan.
Patch #27 didn't provide an interdiff, but I can confirm it addressed #26 part 1:
Patch #28 did exactly what was asked in #26 part 2, but the grammar isn't quite right. It should say:
New patch attached.
Comment #30
pk188 CreditAttribution: pk188 at OpenSense Labs commentedAny updates on this issue?
Comment #31
volkswagenchickThanks for all the work on this module!
Patch #29 looks good, but I have a couple of nitpicks.
Should the word "see" be replaced with "visit" to accommodate users with vision issues?
Should the word "see" be replaced with "visit" to accommodate users with vision issues?
Comment #32
andrewmacpherson CreditAttribution: andrewmacpherson as a volunteer commentedRe: #31
No. Generally it's OK to use everyday language like this; many style guides (etc) from disability organisations recommend it. For more info, see:
Comment #33
dmsmidtThanks @andrew for clarifying that.
I've a final nit fixed in this patch, if agreed upon I think we can RTBC this again.
Comment #34
ifrikThe bracketed "error(s)" made the text less readable because it would require the verb in two different forms as well, so therefore it should be avoided in help texts like this where the goal is to give the user a fast understanding of what the module does. "One or more errors" would be the better way, if we really want to bring across that's it can be either, but in this case and context simply saying "errors" is a sufficiently clear option.
And while I was on it: I use the original patch name again because as long as we are building on somebody else's work, it is simply bad form to rename the patches - even if that's what your software might automatically do...
Comment #35
dmsmidt@ifrik, thanks I was struggling with that sentence as well. It seems enough people have looked at this now after is was initially RTBC-ed.
Comment #37
xjmFail was https://www.drupal.org/pift-ci-job/721893 (edit: #2891911: Random fail in Drupal\Tests\locale\Functional\LocaleTranslationUiTest::testStringTranslation).
However, there is a coding standards issue also shown there:
Comment #38
martin107 CreditAttribution: martin107 as a volunteer commentedcoding standard issue resolved.
Comment #39
xjmI don't think the interdiff is right, but the patch itself seems to be. :)
Comment #40
xjmSince this was just a coding standards fix and https://www.drupal.org/pift-ci-job/721917 shows it is indeed resolved, this can be back at RTBC.
Comment #41
xjmOkay, and now my committer review:
I think this sentence needs work for two reasons:
So, maybe it would be better to say something like:
Please feel free to improve that suggestion. :) Edit: I guess "entries" also implies that they filled out the fields, which is also confusing with the parenthetical. :) So please do improve on my suggestion.
The rest of the text looks good to me.
Thanks all!
Comment #42
xjm"Fills out form elements in an invalid way" maybe?
Comment #43
xjmAside: I learned something new from #32; thanks @andrewmacpherson for those references!
Comment #44
ifrikGood point - users should not be blamed, but also "invalid" is a rather technical wording.
So how about this?
"If not all form elements are filled in correctly (for expample if a required field is left blank), then a warning message with links to each individual form element is displayed at the top of the form. The individual error messages are displayed next to each form element."
Comment #45
ifrikChanged the wording as proposed. I've also changed the patch name back to avoid confusion.
martin107, thanks for fixing the coding standard. In general, it is better to keep the original patch name because then it obvious that the next patch is a based on the previous one, and not something different or starting from scratch.
Comment #46
xjmThanks @ifrik. I like #44; removing "forgetting" is also a good improvement.
The sentence is getting a bit grammatically complicated though. Maybe:
Comment #47
xjmOr:
Comment #48
andrewmacpherson CreditAttribution: andrewmacpherson as a volunteer commentedI like #47 too, so here's an updated patch.
Comment #49
dmsmidtI'm no native speaker so I wont be judging grammar, I assume @andrew took care of that when accepting #48.
#48 implements #47 correctly, the wording is not too technical anymore and not emotionally loaded.
All issues seem to be resolved.
Comment #51
xjmAlright, this looks good! Thanks @andrewmacpherson, @dmsmidt, and @ifrik.
Thanks @shashikant_chauhan for submitting a patch earlier. In this case I did not grant issue credit for #28 because the change was very small and made the sentence grammatically incorrect. Next time, for a better chance of receiving issue credit, I suggest carefully reading the patch you're updating and seeing what other changes might be needed for the update you make. You can help more by reading the whole issue carefully and participating in the overall discussion. I suggest the same for @pk188 as well.
I applied the patch and read the help page as a whole on an installed site. I also read over the updated documentation at https://www.drupal.org/docs/8/core/modules/inline-form-errors/inline-for... -- it's really nicely done! Great work, everyone. I also credited people who helped with the handbook page.
We're getting really close to the feature being stable. Yay!