/**
  * Observer function to handle the assessable_uploaded event in mod_workshop.
  * @param \mod_workshop\event\assessable_uploaded $event
  */
 public static function workshop_file_uploaded(\mod_workshop\event\assessable_uploaded $event)
 {
     global $CFG;
     require_once $CFG->dirroot . '/plagiarism/urkund/lib.php';
     $eventdata = $event->get_data();
     $eventdata['eventtype'] = 'workshop_file_uploaded';
     $urkund = new plagiarism_plugin_urkund();
     $urkund->event_handler($eventdata);
 }
Ejemplo n.º 2
0
        $formdata = file_postupdate_standard_filemanager($formdata, 'attachment', $attachmentopts, $workshop->context, 'mod_workshop', 'submission_attachment', $submission->id);
        if (empty($formdata->attachment)) {
            // explicit cast to zero integer
            $formdata->attachment = 0;
        }
        // store the updated values or re-save the new submission (re-saving needed because URLs are now rewritten)
        $DB->update_record('workshop_submissions', $formdata);
        $event = \mod_workshop\event\submission_updated::create($params);
        $event->add_record_snapshot('workshop', $workshoprecord);
        $event->trigger();
        // send submitted content for plagiarism detection
        $fs = get_file_storage();
        $files = $fs->get_area_files($workshop->context->id, 'mod_workshop', 'submission_attachment', $submission->id);
        $params['other']['content'] = $formdata->content;
        $params['other']['pathnamehashes'] = array_keys($files);
        $event = \mod_workshop\event\assessable_uploaded::create($params);
        $event->set_legacy_logdata($logdata);
        $event->trigger();
        redirect($workshop->submission_url($formdata->id));
    }
}
// load the form to override grade and/or publish the submission and process the submitted data eventually
if (!$edit and ($canoverride or $canpublish)) {
    $options = array('editable' => true, 'editablepublished' => $canpublish, 'overridablegrade' => $canoverride);
    $feedbackform = $workshop->get_feedbackauthor_form($PAGE->url, $submission, $options);
    if ($data = $feedbackform->get_data()) {
        $data = file_postupdate_standard_editor($data, 'feedbackauthor', array(), $workshop->context);
        $record = new stdclass();
        $record->id = $submission->id;
        if ($canoverride) {
            $record->gradeover = $workshop->raw_grade_value($data->gradeover, $workshop->grade);
 public function create_text_event($params)
 {
     return \mod_workshop\event\assessable_uploaded::create($params);
 }