|
31 | 31 | import difflib |
32 | 32 |
|
33 | 33 | from cms.db import Dataset, File, Submission |
34 | | -from cms.grading.languagemanager import get_language |
| 34 | +from cms.server.jinja2_toolbox import safe_get_lang_filename |
35 | 35 | from cmscommon.datetime import make_datetime |
36 | 36 | from .base import BaseHandler, FileHandler, require_permission |
37 | 37 |
|
@@ -80,10 +80,7 @@ def get(self, file_id): |
80 | 80 | sub_file = self.safe_get_item(File, file_id) |
81 | 81 | submission = sub_file.submission |
82 | 82 |
|
83 | | - real_filename = sub_file.filename |
84 | | - if submission.language is not None: |
85 | | - real_filename = real_filename.replace( |
86 | | - ".%l", get_language(submission.language).source_extension) |
| 83 | + real_filename = safe_get_lang_filename(submission, sub_file.filename) |
87 | 84 | digest = sub_file.digest |
88 | 85 |
|
89 | 86 | self.sql_session.close() |
@@ -130,10 +127,9 @@ def get(self, old_id, new_id): |
130 | 127 | for fname in files_to_compare: |
131 | 128 | if ".%l" in fname: |
132 | 129 | if sub_old.language == sub_new.language and sub_old.language is not None: |
133 | | - ext = get_language(sub_old.language).source_extension |
| 130 | + real_fname = safe_get_lang_filename(sub_old, fname) |
134 | 131 | else: |
135 | | - ext = ".txt" |
136 | | - real_fname = fname.replace(".%l", ext) |
| 132 | + real_fname = fname.replace(".%l", ".txt") |
137 | 133 | else: |
138 | 134 | real_fname = fname |
139 | 135 |
|
|
0 commit comments