diff --git a/mod/assignment/type/online/assignment.class.php b/mod/assignment/type/online/assignment.class.php index 48819c7a8f8..949a8416dc6 100644 --- a/mod/assignment/type/online/assignment.class.php +++ b/mod/assignment/type/online/assignment.class.php @@ -107,6 +107,11 @@ class assignment_online extends assignment_base { } else { echo $OUTPUT->box_start('generalbox boxwidthwide boxaligncenter', 'online'); if ($submission && has_capability('mod/assignment:exportownsubmission', $this->context)) { + echo plagiarism_get_links(array('userid' => $USER->id, + 'content' => trim(format_text($submission->data1, $submission->data2)), + 'cmid' => $this->cm->id, + 'course' => $this->course, + 'assignment' => $this->assignment)); $text = file_rewrite_pluginfile_urls($submission->data1, 'pluginfile.php', $this->context->id, 'mod_assignment', $this->filearea, $submission->id); echo format_text($text, $submission->data2, array('overflowdiv'=>true)); if ($CFG->enableportfolios) { @@ -194,6 +199,21 @@ class assignment_online extends assignment_base { $submission = $this->get_submission($USER->id); $this->update_grade($submission); + $fs = get_file_storage(); + $files = $fs->get_area_files($this->context->id, 'mod_assignment', 'submission', $submission->id); + // Let Moodle know that an assessable content was uploaded (eg for plagiarism detection) + $eventdata = new stdClass(); + $eventdata->modulename = 'assignment'; + $eventdata->name = 'update_submission'; + $eventdata->cmid = $this->cm->id; + $eventdata->itemid = $update->id; + $eventdata->courseid = $this->course->id; + $eventdata->userid = $USER->id; + $eventdata->content = trim(format_text($update->data1, $update->data2)); + if ($files) { + $eventdata->pathnamehashes = array_keys($files); + } + events_trigger('assessable_content_uploaded', $eventdata); return $submission; } @@ -210,7 +230,11 @@ class assignment_online extends assignment_base { $output = '