|
64 | 64 | from ietf.utils.pipe import pipe |
65 | 65 | from ietf.utils.pdf import pdf_pages |
66 | 66 | from ietf.utils.text import xslugify |
67 | | -from ietf.utils.textupload import ( validate_file_size, validate_mime_type, |
| 67 | +from ietf.utils.validators import ( validate_file_size, validate_mime_type, |
68 | 68 | validate_file_extension, validate_no_html_frame, ) |
69 | 69 |
|
70 | 70 | from .forms import (InterimMeetingModelForm, InterimAnnounceForm, InterimSessionModelForm, |
@@ -1136,8 +1136,8 @@ class UploadBlueSheetForm(forms.Form): |
1136 | 1136 |
|
1137 | 1137 | def clean_file(self): |
1138 | 1138 | file = self.cleaned_data['file'] |
1139 | | - validate_mime_type(file.read(), settings.MEETING_VALID_BLUESHEET_MIME_TYPES) |
1140 | | - validate_file_extension(file.name, settings.MEETING_VALID_BLUESHEET_EXTENSIONS) |
| 1139 | + validate_mime_type(file, settings.MEETING_VALID_BLUESHEET_MIME_TYPES) |
| 1140 | + validate_file_extension(file, settings.MEETING_VALID_BLUESHEET_EXTENSIONS) |
1141 | 1141 | return file |
1142 | 1142 |
|
1143 | 1143 | @role_required('Area Director', 'Secretariat', 'IRTF Chair', 'WG Chair') |
@@ -1218,12 +1218,11 @@ def __init__(self, show_apply_to_all_checkbox, *args, **kwargs): |
1218 | 1218 |
|
1219 | 1219 | def clean_file(self): |
1220 | 1220 | file = self.cleaned_data['file'] |
1221 | | - validate_file_size(file._size) |
1222 | | - ext = validate_file_extension(file.name, settings.MEETING_VALID_MINUTES_EXTENSIONS) |
1223 | | - content = file.read() |
1224 | | - mime_type, encoding = validate_mime_type(content, settings.MEETING_VALID_MINUTES_MIME_TYPES) |
| 1221 | + validate_file_size(file) |
| 1222 | + ext = validate_file_extension(file, settings.MEETING_VALID_MINUTES_EXTENSIONS) |
| 1223 | + mime_type, encoding = validate_mime_type(file, settings.MEETING_VALID_MINUTES_MIME_TYPES) |
1225 | 1224 | if ext in ['.html', '.htm'] or mime_type in ['text/html', ]: |
1226 | | - validate_no_html_frame(content) |
| 1225 | + validate_no_html_frame(file) |
1227 | 1226 | return file |
1228 | 1227 |
|
1229 | 1228 | def upload_session_minutes(request, session_id, num): |
@@ -1316,12 +1315,11 @@ def __init__(self, show_apply_to_all_checkbox, *args, **kwargs): |
1316 | 1315 |
|
1317 | 1316 | def clean_file(self): |
1318 | 1317 | file = self.cleaned_data['file'] |
1319 | | - validate_file_size(file._size) |
1320 | | - ext = validate_file_extension(file.name, settings.MEETING_VALID_AGENDA_EXTENSIONS) |
1321 | | - content = file.read() |
1322 | | - mime_type, encoding = validate_mime_type(content, settings.MEETING_VALID_AGENDA_MIME_TYPES) |
| 1318 | + validate_file_size(file) |
| 1319 | + ext = validate_file_extension(file, settings.MEETING_VALID_AGENDA_EXTENSIONS) |
| 1320 | + mime_type, encoding = validate_mime_type(file, settings.MEETING_VALID_AGENDA_MIME_TYPES) |
1323 | 1321 | if ext in ['.html', '.htm'] or mime_type in ['text/html', ]: |
1324 | | - validate_no_html_frame(content) |
| 1322 | + validate_no_html_frame(file) |
1325 | 1323 | return file |
1326 | 1324 |
|
1327 | 1325 | def upload_session_agenda(request, session_id, num): |
@@ -1427,8 +1425,8 @@ def __init__(self, show_apply_to_all_checkbox, *args, **kwargs): |
1427 | 1425 |
|
1428 | 1426 | def clean_file(self): |
1429 | 1427 | file = self.cleaned_data['file'] |
1430 | | - validate_file_size(file._size) |
1431 | | - validate_file_extension(file.name, settings.MEETING_VALID_SLIDES_EXTENSIONS) |
| 1428 | + validate_file_size(file) |
| 1429 | + validate_file_extension(file, settings.MEETING_VALID_SLIDES_EXTENSIONS) |
1432 | 1430 | return file |
1433 | 1431 |
|
1434 | 1432 | def upload_session_slides(request, session_id, num, name): |
|
0 commit comments