Exemple #1
0
     }
     $real_filename = $q->filename;
     $format = $q->format;
     $visible = $q->visible;
     $extra_path = $q->extra_path;
     $public = $q->public;
     if (!(resource_access($visible, $public) or isset($status) and $status == USER_TEACHER)) {
         not_found($downloadDir);
     }
 }
 // Allow unlimited time for creating the archive
 set_time_limit(0);
 if ($format == '.dir') {
     $real_filename = $real_filename . '.zip';
     $dload_filename = $webDir . '/courses/temp/' . safe_filename('zip');
     zip_documents_directory($dload_filename, $downloadDir, $can_upload);
     $delete = true;
 } elseif ($extra_path) {
     if ($real_path = common_doc_path($extra_path, true)) {
         // Common document
         if (!$common_doc_visible) {
             forbidden($downloadDir);
         }
         $dload_filename = $real_path;
         $delete = false;
     } else {
         // External document - redirect to URL
         redirect($extra_path);
     }
 } else {
     $dload_filename = $basedir . $downloadDir;
Exemple #2
0
function submit_work($uid, $group_id, $id, $file) {

    global $groupPath, $langUploadError, $langUploadSuccess,
    $langBack, $m, $tool_content, $workPath,
    $group_sql, $webDir, $course_code, $is_editor;

    $ext = get_file_extension($file);
    $local_name = greek_to_latin('Group ' . $group_id . (empty($ext) ? '' : '.' . $ext));
    $original_filename = Database::get()->querySingle("SELECT filename FROM document WHERE $group_sql AND path = ?s", $file)->filename;
    $source = $groupPath . $file;
    $destination = work_secret($id) . "/$local_name";

    delete_submissions_by_uid($uid, $group_id, $id, $destination);

    if (is_dir($source)) {
        $original_filename = $original_filename . '.zip';
        $zip_filename = $webDir . 'courses/temp/' . safe_filename('zip');
        zip_documents_directory($zip_filename, $file, $is_editor);
        $source = $zip_filename;
    }
    if (copy($source, "$workPath/$destination")) {
        Database::get()->query("INSERT INTO assignment_submit (uid, assignment_id, submission_date,
                                submission_ip, file_path, file_name, comments, group_id, grade_comments)
                                VALUES (?d, ?d, NOW(), '$_SERVER[REMOTE_ADDR]', ?s, ?s, ?s, ?d, ''", $uid, $id, $destination, $original_filename, $_POST['comments'], $group_id);

        $tool_content .="<div class='alert alert-success'>$langUploadSuccess
			<br>$m[the_file] \"$original_filename\" $m[was_submitted]<br>
			<a href='index.php?course=$course_code'>$langBack</a></div><br>";
    } else {
        $tool_content .="<div class='alert alert-danger'>$langUploadError<br>
		<a href='index.php?course=$course_code'>$langBack</a></div><br>";
    }
}