Hello Sumit,
this was the first that I got think to advise you. But this solutions has one underwater rock:
in some error cases function QSM_Questions::load_question_data() that uses to populate $this->question_type in QSM_Question_Review::__construct() can return null and intval(null) = 0.
So if to compare them as integers plugin will recognize all errors as “choice” question type.
Dear @forcesail ,
As per the technical team, Our review function is intentionally designed to function exclusively when specific question types are present. When no specific question type is provided, none of the review functions will be called. This is because each review function relies on the presence of a corresponding question type. For example, the review function tailored for multiple-choice questions operates uniquely when the question type is set to “0 or 1.” This same principle applies across various question types.
Based on our interpretation, it appears that the review function will not be triggered when a null question type is encountered. We value your input and would appreciate hearing your perspective. Is there a possibility that we might be overlooking something important?
Your feedback is highly regarded. Thank you for your consideration.
Regards,
Sumit
Hello Sumit,
If not to consider that once QSM_Questions::load_question_data() won’t have worked both methods are equals.
During only processing the answer the plugin determinate question type in a lot of different places using different methods. Currently all of them look synchronized but it’s until someone change something in one place and would check others.
The plugin is really great but the code is chaotically wrote and it looks like different developer’s teams made patches without general plan that makes the plugin is very unstable to any changing the code. I would rewrite the entire core of the plugin to make it even more great.
Many thanks for you patience and helpful. Hope to be helpful for you more.
Dear @forcesail ,
Thank you for your prompt response and valuable suggestions. Your efforts are greatly appreciated. We are committed to implementing your suggestions and enhancing our code accordingly.
Regards,
Sumit
Dear Sumit,
I confirm, that in v.8.1.15 the issue is fixed.