MDL-32386 completion: Fix incorrect method parameters
This commit is contained in:
@@ -614,16 +614,20 @@ class completion_info {
|
||||
debugging('set_module_viewed must be called before header is printed',
|
||||
DEBUG_DEVELOPER);
|
||||
}
|
||||
|
||||
// Don't do anything if view condition is not turned on
|
||||
if ($cm->completionview == COMPLETION_VIEW_NOT_REQUIRED || !$this->is_enabled($cm)) {
|
||||
return;
|
||||
}
|
||||
|
||||
// Get current completion state
|
||||
$data = $this->get_data($cm, $userid);
|
||||
$data = $this->get_data($cm, false, $userid);
|
||||
|
||||
// If we already viewed it, don't do anything
|
||||
if ($data->viewed == COMPLETION_VIEWED) {
|
||||
return;
|
||||
}
|
||||
|
||||
// OK, change state, save it, and update completion
|
||||
$data->viewed = COMPLETION_VIEWED;
|
||||
$this->internal_set_data($cm, $data);
|
||||
|
||||
@@ -265,7 +265,7 @@ class completionlib_test extends UnitTestCaseUsingDatabase {
|
||||
// viewed, still do nothing
|
||||
$c->expectAt(1,'is_enabled',array($cm));
|
||||
$c->setReturnValueAt(1,'is_enabled',true);
|
||||
$c->expectAt(0,'get_data',array($cm,0));
|
||||
$c->expectAt(0,'get_data',array($cm,false,0));
|
||||
$hasviewed=(object)array('viewed'=>COMPLETION_VIEWED);
|
||||
$c->setReturnValueAt(0,'get_data',$hasviewed);
|
||||
$c->set_module_viewed($cm);
|
||||
@@ -275,7 +275,7 @@ class completionlib_test extends UnitTestCaseUsingDatabase {
|
||||
$c->expectAt(2,'is_enabled',array($cm));
|
||||
$c->setReturnValueAt(2,'is_enabled',true);
|
||||
$notviewed=(object)array('viewed'=>COMPLETION_NOT_VIEWED);
|
||||
$c->expectAt(1,'get_data',array($cm,1337));
|
||||
$c->expectAt(1,'get_data',array($cm,false,1337));
|
||||
$c->setReturnValueAt(1,'get_data',$notviewed);
|
||||
$c->expectOnce('internal_set_data',array($cm,$hasviewed));
|
||||
$c->expectOnce('update_state',array($cm,COMPLETION_COMPLETE,1337));
|
||||
@@ -434,6 +434,7 @@ WHERE
|
||||
cm.course=? AND cmc.userid=?"),array(42,314159)));
|
||||
|
||||
// There are two CMids in total, the one we had data for and another one
|
||||
$modinfo = new stdClass();
|
||||
$modinfo->cms=array((object)array('id'=>13),(object)array('id'=>14));
|
||||
$result=$c->get_data($cm,true,0,$modinfo);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user