function show_plain_view($id) { global $workPath, $charset; $secret = work_secret($id); create_zip_index("{$secret}/index.html", $id, TRUE); header("Content-Type: text/html; charset={$charset}"); readfile("{$workPath}/{$secret}/index.html"); exit; }
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>"; } }
/** * * @global type $langAllAssignmentSubsDeleted * @global type $webDir * @global type $course_id * @global type $course_code * @return type */ function del_work_subs() { global $langAllAssignmentSubsDeleted, $webDir, $course_id, $course_code; $workPath = $webDir . "/courses/" . $course_code . "/work"; $result = Database::get()->queryArray("SELECT id FROM assignment WHERE course_id = ?d", $course_id); foreach ($result as $row) { $secret = work_secret($row->id); Database::get()->query("DELETE FROM assignment_submit WHERE assignment_id = ?d", $row->id); move_dir("{$workPath}/{$secret}", "{$webDir}/courses/garbage/{$course_code}_work_" . $row->id . "_{$secret}"); } return "<p>{$langAllAssignmentSubsDeleted}</p>"; }