/** * Initialise the import reader and locate the column indexes. * * @return bool false is a failed import */ public function init() { if ($this->csvreader == null) { $this->csvreader = new csv_import_reader($this->importid, 'assignfeedback_offline'); } $this->csvreader->init(); $columns = $this->csvreader->get_columns(); $strgrade = get_string('grade'); $strid = get_string('recordid', 'assign'); $strmodified = get_string('lastmodifiedgrade', 'assign'); foreach ($this->assignment->get_feedback_plugins() as $plugin) { if ($plugin->is_enabled() && $plugin->is_visible()) { foreach ($plugin->get_editor_fields() as $field => $description) { $this->feedbackcolumnindexes[$description] = array('plugin'=>$plugin, 'field'=>$field, 'description'=>$description); } } } if ($columns) { foreach ($columns as $index => $column) { if (isset($this->feedbackcolumnindexes[$column])) { $this->feedbackcolumnindexes[$column]['index'] = $index; } if ($column == $strgrade) { $this->gradeindex = $index; } if ($column == $strid) { $this->idindex = $index; } if ($column == $strmodified) { $this->modifiedindex = $index; } } } if ($this->idindex < 0 || $this->gradeindex < 0 || $this->modifiedindex < 0) { return false; } $groupmode = groups_get_activity_groupmode($this->assignment->get_course_module()); // All users. $groupid = 0; $groupname = ''; if ($groupmode) { $groupid = groups_get_activity_group($this->assignment->get_course_module(), true); $groupname = groups_get_group_name($groupid).'-'; } $this->validusers = $this->assignment->list_participants($groupid, false); return true; }