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

Finalize the Create Quiz root page #11013

Closed
9 of 16 tasks
nucleogenesis opened this issue Jul 25, 2023 · 0 comments · Fixed by #11937
Closed
9 of 16 tasks

Finalize the Create Quiz root page #11013

nucleogenesis opened this issue Jul 25, 2023 · 0 comments · Fixed by #11937
Assignees
Labels
APP: Coach Re: Coach App (lessons, quizzes, groups, reports, etc.) DEV: frontend TAG: user strings Application text that gets translated

Comments

@nucleogenesis
Copy link
Member

nucleogenesis commented Jul 25, 2023

Overview

At this point, the following should be in place:

This means that we now can start wiring things up and building in the interactivity in the base of the app. We'll make use of and likely tweak and extend some of the work done previously and put some polish on this part of the feature.

Acceptance criteria

Questions list

Using the Accordion components created in in the PR that closed #11011, we will put it together with the necessary drag-and-drop and wire things up with the composition API module and data architecture created between the work closing #11002 and #11012

  • Using the components in kolibri/core/assets/src/views/sortable (importable via kolibri.coreVue.components...) we will render out the list of questions for the selected section which can be dragged and sorted.
  • The resulting questions array for that quiz section should be persisted in the sort order as the user makes changes to the order using the drag and drop interface
  • Ensure that the KCheckbox for "Select all" works as indicated in the Figma
  • Ensure that the actions for "Expand/collapse all", "Replace questions", and "Delete" are handled and update the state management according to their respective function, as needed.
  • The "Jump to question" dropdown list should be populated and should scroll the user to the selected question and expand it if it wasn't already expanded.

Sections

  • The Section tabs' context menus' options (Figma) ("Delete section" and "Settings" ) should be handled appropriately.
  • The "+ Add Section" button, "Edit section" buttons' functions are implemented per the designs, opening the proper side panel
  • The empty-state "+ Add Questions" button should trigger the proper side panel to be opened

Misc

  • The "Quiz title" field needs to be wired up to however the Exam data structure is managed
  • Be sure that clicking the "X" icon button to close the "Create new quiz" page results in a confirmation message as noted in Figma
  • Deletion should require a confirmation modal in all cases
  • The "Save" button should... save the quiz.
  • Overall, closing this issue should result in everything except the side panels being feature complete

Accessibility requirements

  • The flow of keyboard navigation should be logical and all key areas accessible from top to bottom
  • When a SidePanel is opened and closed, your focus should return to where it was before the SidePanel was opened
  • Review this Tabs focused guidance produced by @MisRob and take into consideration how the tabs within this implementation are implemented logically. Additionally, we will want to label the tabs with a translated string indicating that the arrow keys on the keyboard can be used (or not) to disambiguate keyboard navigation between the tabs. Seek guidance and review on this from @MisRob and @radinamatic
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
APP: Coach Re: Coach App (lessons, quizzes, groups, reports, etc.) DEV: frontend TAG: user strings Application text that gets translated
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant