-
Notifications
You must be signed in to change notification settings - Fork 50
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
HFP-4128 Fix re-creating state for user responses #69
base: master
Are you sure you want to change the base?
Conversation
js/summary.js
Outdated
@@ -179,9 +182,11 @@ H5P.Summary = (function ($, Question, XApiEventBuilder, StopWatch) { | |||
that.dataBitMap[panelIndex] = this.dataBitMap[panelIndex] || []; | |||
that.dataBitMap[panelIndex][id] = summaryIndex; | |||
|
|||
emptyEntriesCount = that.dataBitMap[panelIndex].length - (that.dataBitMap[panelIndex].filter(function () { return true; })).length; |
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.
@otacke : Can you please explain this one? I.e: I don't understand what it does, since the filter callback function always returns true? Won't emptyEntriesCount always be zero? Independent of that, I would split this into several lines.
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.
@fnoks The that.dataBitMap[panelIndex]
array can contain empty
values, which are counted when using length
, but here we need the number of actual values. filter
will only work on real values, not on empty
values, so the emptyEntriesCount
will not always be zero but the count of the empty
values.
I have added some verbosity ...
Can this fix be merged to the master? it is from the year 2022 @fnoks |
@otacke : Do you know if this issue has a Jira ticket? |
@fnoks Don't think so. But I can create one (manually ;-)). |
As reported and discussed in h5p/moodle-mod_hvp#442, Summary does not re-create the previous state properly - the visual score is correct, but the score that
getScore
reports is wrong.When merged in, this bug will be fixed: will re-create the
userResponses
variable correctly, sogetScore
reports the correct score.