From 79dee413e99a7900b316e4e0b8036c1f991a2fac Mon Sep 17 00:00:00 2001 From: moodler Date: Tue, 7 Sep 2004 09:25:51 +0000 Subject: [PATCH] Improvements to uploading error feedback (from Shane) --- mod/assignment/lib.php | 2 +- mod/assignment/upload.php | 63 ++++++++++++++++++++------------------- mod/assignment/view.php | 2 ++ 3 files changed, 35 insertions(+), 32 deletions(-) diff --git a/mod/assignment/lib.php b/mod/assignment/lib.php index b5de966de9..d6df442643 100644 --- a/mod/assignment/lib.php +++ b/mod/assignment/lib.php @@ -681,7 +681,7 @@ function assignment_print_upload_form($assignment) { // Arguments are objects echo "
"; - echo "
"; + echo "id\">"; echo " maxbytes\">"; echo " id\">"; echo " "; diff --git a/mod/assignment/upload.php b/mod/assignment/upload.php index ad9a6b4a2e..a7d4110d14 100644 --- a/mod/assignment/upload.php +++ b/mod/assignment/upload.php @@ -2,6 +2,7 @@ require_once("../../config.php"); require_once("lib.php"); + require_variable($id); // Assignment ID @@ -9,6 +10,7 @@ $newfile = $_FILES['newfile']; } + if (! $assignment = get_record("assignment", "id", $id)) { error("Not a valid assignment ID"); } @@ -45,51 +47,50 @@ } if (empty($newfile)) { - notify(get_string("uploadnofilefound", "assignment") ); + notify(get_string("uploadfiletoobig", "assignment", get_max_upload_file_size($CFG->maxbytes, $course->maxbytes, $assignment->maxbytes)) ); } else if (is_uploaded_file($newfile['tmp_name']) and $newfile['size'] > 0) { - if ($newfile['size'] > $assignment->maxbytes) { - notify(get_string("uploadfiletoobig", "assignment", $assignment->maxbytes)); - } else { - $newfile_name = clean_filename($newfile['name']); - if ($newfile_name) { - if (move_uploaded_file($newfile['tmp_name'], "$dir/$newfile_name")) { - chmod("$dir/$newfile_name", $CFG->directorypermissions); - assignment_delete_user_files($assignment, $USER, $newfile_name); - if ($submission) { - $submission->timemodified = time(); - $submission->numfiles = 1; - $submission->comment = addslashes($submission->comment); - if (update_record("assignment_submissions", $submission)) { - print_heading(get_string("uploadsuccess", "assignment", $newfile_name) ); - } else { - notify(get_string("uploadfailnoupdate", "assignment")); - } + $newfile_name = clean_filename($newfile['name']); + if ($newfile_name) { + if (move_uploaded_file($newfile['tmp_name'], "$dir/$newfile_name")) { + chmod("$dir/$newfile_name", $CFG->directorypermissions); + assignment_delete_user_files($assignment, $USER, $newfile_name); + if ($submission) { + $submission->timemodified = time(); + $submission->numfiles = 1; + $submission->comment = addslashes($submission->comment); + if (update_record("assignment_submissions", $submission)) { + print_heading(get_string("uploadsuccess", "assignment", $newfile_name) ); } else { - $newsubmission->assignment = $assignment->id; - $newsubmission->userid = $USER->id; - $newsubmission->timecreated = time(); - $newsubmission->timemodified = time(); - $newsubmission->numfiles = 1; - if (insert_record("assignment_submissions", $newsubmission)) { - print_heading(get_string("uploadsuccess", "assignment", $newfile_name) ); - } else { - notify(get_string("uploadnotregistered", "assignment", $newfile_name) ); - } + notify(get_string("uploadfailnoupdate", "assignment")); } } else { - notify(get_string("uploaderror", "assignment") ); + $newsubmission->assignment = $assignment->id; + $newsubmission->userid = $USER->id; + $newsubmission->timecreated = time(); + $newsubmission->timemodified = time(); + $newsubmission->numfiles = 1; + if (insert_record("assignment_submissions", $newsubmission)) { + print_heading(get_string("uploadsuccess", "assignment", $newfile_name) ); + } else { + notify(get_string("uploadnotregistered", "assignment", $newfile_name) ); + } } } else { - notify(get_string("uploadbadname", "assignment") ); + notify(get_string("uploaderror", "assignment") ); } + } else { + notify(get_string("uploadbadname", "assignment") ); } } else { - notify(get_string("uploadnofilefound", "assignment") ); + + print_file_upload_error(); + } print_continue("view.php?a=$assignment->id"); print_footer($course); + ?> diff --git a/mod/assignment/view.php b/mod/assignment/view.php index 1f058f30b4..5da4375c91 100644 --- a/mod/assignment/view.php +++ b/mod/assignment/view.php @@ -130,6 +130,8 @@ echo "

".get_string("overwritewarning", "assignment")."

"; } print_heading(get_string("submitassignment", "assignment").":", "center"); + + $assignment->maxbytes = get_max_upload_file_size($CFG->maxbytes, $course->maxbytes, $assignment->maxbytes); assignment_print_upload_form($assignment); } } -- 2.39.5