Hi, this is the last thing that i'm confused about right now hopefully the community have seen it before or can help?
On a test I can configure Feedback in Feedback management.
We've set up messages for the following scores: 0-30, 31-49 and 50-100 and the test is set to express the score as a percentage.
When someone finishes the test they are shown the appropriate message but for some reason they are also always shown the message for 0-30 as well (see second attachment).
Any ideas anyone?
Test feedback not behaving as expected
Re: Test feedback not behaving as expected
In /appLms/lib/lib.assessment_rule.php
find:
replace with:
find:
replace with:
find:
Code: Select all
function __construct($test_id) {
$this->test_id =(int)$test_id;
$this->db =DbConn::getInstance();
}
Code: Select all
function __construct($test_id) {
$this->test_id =(int)$test_id;
require_once(_lms_.'/lib/lib.test.php' );
$test_man = new TestManagement($this->test_id);
$this->test_info = $test_man->getTestAllInfo();
$this->db =DbConn::getInstance();
}
Code: Select all
public function setRulesFromScore($score_arr) {
require_once(_base_.'/lib/lib.json.php');
require_once(_lms_.'/lib/lib.subscribe.php');
$res =true;
$where_score_arr =array();
foreach($score_arr as $val) {
$where_score_arr[]="(category_id = '".(int)$val['category_id']."' ".
"AND from_score <= '".(int)$val['score']."' AND to_score >= '".(int)$val['score']."')";
}
Code: Select all
public function setRulesFromScore($score_arr) {
require_once(_base_.'/lib/lib.json.php');
require_once(_lms_.'/lib/lib.subscribe.php');
$res =true;
$where_score_arr =array();
$where_score_arr[]="(category_id = '".(int)$score_arr[$this->test_info['point_type']]['category_id']."' ".
"AND from_score <= '".(int)$score_arr[$this->test_info['point_type']]['score']."' AND to_score >= '".(int)$score_arr[$this->test_info['point_type']]['score']."')";
I'm Jasmines, the One. If you need, you can contact me.
Re: Test feedback not behaving as expected
Yay! That worked perfectly. Thank you.