Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

EQM: Section form validation improvements #12262

Closed
2 tasks
nucleogenesis opened this issue Jun 10, 2024 · 2 comments · Fixed by #12281
Closed
2 tasks

EQM: Section form validation improvements #12262

nucleogenesis opened this issue Jun 10, 2024 · 2 comments · Fixed by #12281
Assignees
Labels
P0 - critical Priority: Release blocker or regression TAG: user strings Application text that gets translated

Comments

@nucleogenesis
Copy link
Member

Overview

Follow-up to comments here.

Overall, this issue is to address the issues reported by Peter. The changes in that PR which introduced these issues are in this commit

At a high level, we need to be sure that the form's validation flags are being set appropriately as things happen. It feels to me like there are a lot more moving parts than should be necessary, but refactoring the whole thing proprly be more work than it's worth at this point, so some key things to consider:

  • KTextbox props - showInvalidText is a sort of override saying "show errors no matter what when true", whereas invalidText is the text and invalid is just telling KTextbox "this is invalid, do with it what you will" (I'm sorry... I added that prop but now I regret it lol

  • The error messages should show when the user needs to know it -- for example, when they're currently typing into the title box, if their title is a dupe, we show the error, but if they're not focusing it, then we hide it -- but if they click to submit, we focus the title and show the error.

  • Cannot make sections with duplicate titles

  • Improved validations UX (consider reaching out in #kolibri-dev for guidance if you have questions about the best UX for a particular item)

@nucleogenesis nucleogenesis added the P0 - critical Priority: Release blocker or regression label Jun 10, 2024
@nucleogenesis nucleogenesis added the TAG: user strings Application text that gets translated label Jun 10, 2024
@nucleogenesis nucleogenesis self-assigned this Jun 13, 2024
@nucleogenesis
Copy link
Member Author

Be sure that we focus & scrollTo the topmost error validation.

Also include a "Are you sure?" message for top-most quiz.

@marcellamaki
Copy link
Member

Example of focus/scroll to on mobile being particularly helpful. Also router navigation guards so that when a user can't accidentally (or unthinkingly) just close out of the modal and lose the quiz

mobile-quiz.mp4

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
P0 - critical Priority: Release blocker or regression TAG: user strings Application text that gets translated
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants