-
Notifications
You must be signed in to change notification settings - Fork 636
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
Updates to sections in ExamPage #12182
Updates to sections in ExamPage #12182
Conversation
Build Artifacts
|
1183b13
to
d65d6b8
Compare
a046f94
to
946b42f
Compare
Hi @nucleogenesis seems that there are conflicts that need to be resolved before I can test your latest changes here - the build artefacts above are from 4 days ago?
Long.texts.everywhere.mp4
no.questions.mp4 |
ab359ce
to
f8b27af
Compare
I did not realize this before, and I'm not saying it needs fixing now, but was the decision to contain the scope of the pool of available resources within each section (and not the whole quiz) intentional? In a sense that when a coach wants to replace a question in section 2, they only have available the resources they specifically selected for that section to select from, and if they wanted to use one of the questions from resources selected for section 1, they need to update the resources in section 2 first, and re-select those included in section 1, to be able to pick some questions from it to select for inserting in the section 2. Tad repetitive, imo... 🤔 |
Proposal to simplify the UX writing in this message:
Saying Maybe add a ❗ icon at the beginning of that message too, to point the user's attention or similar... cc @tomiwaoLE |
I recall mentioning this early on in the design discussion / review process when I was initially structuring things. This was the decided path forward, although I must say I agree with you that this makes for a slightly convoluted workflow. As it stands now, I think we could do better with how we inform the user about how the resource selection stuff works. Perhaps messages explaining that you're selecting resources for this section if we keep things how they are. (cc @tomiwaoLE @radinamatic @rtibbles ) |
@@ -2,7 +2,7 @@ | |||
|
|||
<div class="wrapper"> | |||
<h1 class="section-header" :style="{ color: `${$themeTokens.annotation}` }"> | |||
{{ activeSection.section_title }} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is the line of code where Radina's replacements sidepanel was failing... not sure if my changes would help avoid that or not though.
const activeSectionIndex = allSections.value.findIndex(section => | ||
isEqual(JSON.stringify(section), JSON.stringify(activeSection.value)) | ||
); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There have been a couple places like this where I have to work out where in the list of sections the "current" section is and it makes me miss having a unique ID on them.
However, since sections cannot have duplicate questions between them AND a user cannot replace questions until they've added questions... this ought to do just fine unless JSON.stringify isn't as deterministic as I think.
c5ae963
to
599460b
Compare
@@ -17,6 +17,7 @@ | |||
:questions="questions" | |||
:isSurvey="isSurvey" | |||
:isQuiz="!isSurvey" | |||
:sections="exam.question_sources" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This will never be defined - can be cleaned up once there's a default on the sections prop.
…tle if oly once seciont without a title
Hi @nucleogenesis,
section.title.mp4The same happens if I just enter any name, click the Apply settings button and then attempt to make and additional changes: section.mp4
duplicate.mp4
delete.mp4
can.t.select.a.practize.quiz.mp4 |
Thank you @pcenov -- I will make a follow-up issue for cleaning up the over-eager yet-also-failing validations. The practice quiz issue is being addressed in a separate PR by @rtibbles With that, I think that we'll just need reviewer approval and can get this merged. I think it'd be helpful for #9759 to rebase on my work to see if the latest reported issues there are fixed here Edit: Follow-up issue |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
A couple of things that I think could be resolved quickly.
I guess we decided not to allow selection of folders at all? Have we updated that in the selection behaviour as well?
@@ -140,6 +140,7 @@ | |||
@submit="handleOpenQuiz(activeQuiz.id)" | |||
> | |||
<p>{{ openQuizModalDetail$() }}</p> | |||
<p>{{ canNoLongerEditQuizNotice$() }}</p> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This should be conditionalized on quiz.draft
being true
- otherwise we will show this warning for quizzes that couldn't be edited anyway.
@@ -522,6 +522,11 @@ const coachStrings = createTranslator('CommonCoachStrings', { | |||
context: | |||
"Text shown on a modal pop-up window when the user clicks the 'Start Quiz' button. This explains what will happen when the user confirms the action of starting the quiz.", | |||
}, | |||
canNoLongerEditQuizNotice: { | |||
message: 'You will no longer be able to edit the quiz.', |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is inaccurate - it should be something like "You will no longer be able to edit the questions and sections in this quiz" - as they will still be able to edit the title and assignments.
@@ -73,7 +73,7 @@ export const enhancedQuizManagementStrings = createTranslator('EnhancedQuizManag | |||
message: 'Add questions', | |||
}, | |||
selectFoldersOrExercises: { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Might be worth changing the message id if we're not only allowing selection of resources?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
+1 good thought richard
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
No blockers from my perspective on the code review side (although I didn't do any manual QA). Jacob, if you're able to get in the small pieces of feedback from Richard right away, then let's go ahead and merge and iterate from there so we can also get Richard's PR in and give him time to sort through merge conflicts
kolibri/plugins/coach/assets/src/views/plan/assignments/AssignmentDetailsModal.vue
Show resolved
Hide resolved
@@ -73,7 +73,7 @@ export const enhancedQuizManagementStrings = createTranslator('EnhancedQuizManag | |||
message: 'Add questions', | |||
}, | |||
selectFoldersOrExercises: { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
+1 good thought richard
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
quick smoke test and workflow walk through seems good, so let's merge and carry on!
Summary
As discussed with @rtibbles this is one part of a greater set of updates with regards to how we present the new "sections" to users. This updates the quiz-taking experience.
References
Closes #12246
Closes #12168
Closes #12162
Reviewer guidance
General
Mobile-specific
These should apply to both taking the quiz and viewing the reports
Testing checklist
PR process
Reviewer checklist
yarn
andpip
)