From ca46377ec0b02962a45595ad6be4f605ed78bbb6 Mon Sep 17 00:00:00 2001 From: BoYanZh Date: Mon, 1 Nov 2021 23:52:54 +0800 Subject: [PATCH] feat: add LATE SUBMISSION in GRADE FILE for late submissions --- joint_teapot/workers/canvas.py | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/joint_teapot/workers/canvas.py b/joint_teapot/workers/canvas.py index 29fb062..34d8562 100644 --- a/joint_teapot/workers/canvas.py +++ b/joint_teapot/workers/canvas.py @@ -17,7 +17,7 @@ class Canvas: self, access_token: str = settings.canvas_access_token, course_id: int = settings.canvas_course_id, - grade_filename: str = "SCORE.txt", + grade_filename: str = "GRADE.txt", ): self.canvas = PyCanvas("https://umjicanvas.com/", access_token) self.course = self.canvas.get_course(course_id) @@ -70,10 +70,15 @@ class Canvas: else: file_id = int(segments[1]) login_id = login_ids[file_id] + target_dir = os.path.join(dir, login_id) if segments[1] == "late": + # TODO: check the delay time of late submission + if create_grade_file: + grade_file_path = os.path.join(path, self.grade_filename) + if os.path.exists(grade_file_path): + open(grade_file_path, mode="a").write("LATE SUBMISSION\n") student = first(self.students, lambda x: x.login_id == login_id) late_students.add(student) - target_dir = os.path.join(dir, login_id) try: extract_archive(path, outdir=target_dir, verbosity=-1) os.remove(path)