diff --git a/enrol/flatfile/lib.php b/enrol/flatfile/lib.php index 0ab8e064ff0..f3a0908a7a8 100644 --- a/enrol/flatfile/lib.php +++ b/enrol/flatfile/lib.php @@ -311,7 +311,7 @@ class enrol_flatfile_plugin extends enrol_plugin { } $roleid = $rolemap[$fields[1]]; - if (!$user = $DB->get_record("user", array("idnumber"=>$fields[2]))) { + if (empty($fields[2]) or !$user = $DB->get_record("user", array("idnumber"=>$fields[2]))) { $trace->output("Unknown user idnumber in field 3 - ignoring line $line", 1); continue; } diff --git a/enrol/flatfile/tests/flatfile_test.php b/enrol/flatfile/tests/flatfile_test.php index 3c976751afa..976d109d466 100644 --- a/enrol/flatfile/tests/flatfile_test.php +++ b/enrol/flatfile/tests/flatfile_test.php @@ -88,6 +88,7 @@ class enrol_flatfile_testcase extends advanced_testcase { $user4 = $this->getDataGenerator()->create_user(array('idnumber'=>'čtvrtý')); $user5 = $this->getDataGenerator()->create_user(array('idnumber'=>'u5')); $user6 = $this->getDataGenerator()->create_user(array('idnumber'=>'u6')); + $user7 = $this->getDataGenerator()->create_user(array('idnumber'=>'')); $course1 = $this->getDataGenerator()->create_course(array('idnumber'=>'c1')); $course2 = $this->getDataGenerator()->create_course(array('idnumber'=>'c2')); @@ -124,7 +125,8 @@ class enrol_flatfile_testcase extends advanced_testcase { add,student,u5,c2,20,10 add,student,u6,c1,0,$future add,student,u6,c2,$future,0 - add,student,u6,c3,$future,$farfuture"; + add,student,u6,c3,$future,$farfuture + add,student,,c2"; file_put_contents($file, $data); $this->assertEquals(0, $DB->count_records('user_enrolments'));