if (isteacher($course->id)) { // it's an exercise submission, flag it as such $newsubmission->userid = 0; $newsubmission->isexercise = 1; // it's a description of an exercise } else { $newsubmission->userid = $USER->id; } $newsubmission->title = $title; $newsubmission->timecreated = $timenow; if ($timenow > $exercise->deadline) { $newsubmission->late = 1; } if (!($newsubmission->id = insert_record("exercise_submissions", $newsubmission))) { error("exercise upload: Failure to create new submission record!"); } $dir = exercise_file_area_name($exercise, $newsubmission); if ($um->save_files($dir)) { add_to_log($course->id, "exercise", "submit", "view.php?id={$cm->id}", "{$exercise->id}"); print_heading(get_string("uploadsuccess", "assignment", $um->get_new_filename())); } // upload manager will print errors. // clear resubmit flags if (!set_field("exercise_submissions", "resubmit", 0, "exerciseid", $exercise->id, "userid", $USER->id)) { error("Exercise Upload: unable to reset resubmit flag"); } } // upload manager will print errors. } print_continue("view.php?id={$cm->id}"); print_footer($course);
function exercise_print_submission_title($exercise, $submission) { global $CFG; if (!$submission->timecreated) { // a "no submission" return $submission->title; } $filearea = exercise_file_area_name($exercise, $submission); if ($basedir = exercise_file_area($exercise, $submission)) { if (list($file) = get_directory_list($basedir)) { $icon = mimeinfo("icon", $file); require_once $CFG->libdir . '/filelib.php'; $ffurl = get_file_url("{$filearea}/{$file}"); return "<img src=\"{$CFG->pixpath}/f/{$icon}\" class=\"icon\" alt=\"" . get_string('file') . "\" />" . " <a target=\"uploadedfile\" href=\"{$ffurl}\">{$submission->title}</a>"; } } }