@@ -1178,9 +1178,12 @@ def upload_session_bluesheets(request, session_id, num):
11781178 filename = '%s-%s%s' % ( doc .name , doc .rev , ext )
11791179 doc .external_url = filename
11801180 e = NewRevisionDocEvent .objects .create (doc = doc , rev = doc .rev , by = request .user .person , type = 'new_revision' , desc = 'New revision available: %s' % doc .rev )
1181- doc .save_with_history ([e ])
1182- handle_upload_file (file , filename , session .meeting , 'bluesheets' )
1183- return redirect ('ietf.meeting.views.session_details' ,num = num ,acronym = session .group .acronym )
1181+ save_error = handle_upload_file (file , filename , session .meeting , 'bluesheets' , request = request , encoding = form .file_encoding [file .name ])
1182+ if save_error :
1183+ form .add_error (None , save_error )
1184+ else :
1185+ doc .save_with_history ([e ])
1186+ return redirect ('ietf.meeting.views.session_details' ,num = num ,acronym = session .group .acronym )
11841187 else :
11851188 form = UploadBlueSheetForm ()
11861189
@@ -1277,8 +1280,12 @@ def upload_session_minutes(request, session_id, num):
12771280 e = NewRevisionDocEvent .objects .create (doc = doc , by = request .user .person , type = 'new_revision' , desc = 'New revision available: %s' % doc .rev , rev = doc .rev )
12781281 doc .save_with_history ([e ])
12791282 # The way this function builds the filename it will never trigger the file delete in handle_file_upload.
1280- handle_upload_file (file , filename , session .meeting , 'minutes' )
1281- return redirect ('ietf.meeting.views.session_details' ,num = num ,acronym = session .group .acronym )
1283+ save_error = handle_upload_file (file , filename , session .meeting , 'minutes' , request = request , encoding = form .file_encoding [file .name ])
1284+ if save_error :
1285+ form .add_error (None , save_error )
1286+ else :
1287+ doc .save_with_history ([e ])
1288+ return redirect ('ietf.meeting.views.session_details' ,num = num ,acronym = session .group .acronym )
12821289 else :
12831290 form = UploadMinutesForm (show_apply_to_all_checkbox )
12841291
@@ -1377,8 +1384,12 @@ def upload_session_agenda(request, session_id, num):
13771384 e = NewRevisionDocEvent .objects .create (doc = doc ,by = request .user .person ,type = 'new_revision' ,desc = 'New revision available: %s' % doc .rev ,rev = doc .rev )
13781385 doc .save_with_history ([e ])
13791386 # The way this function builds the filename it will never trigger the file delete in handle_file_upload.
1380- handle_upload_file (file , filename , session .meeting , 'agenda' , request )
1381- return redirect ('ietf.meeting.views.session_details' ,num = num ,acronym = session .group .acronym )
1387+ save_error = handle_upload_file (file , filename , session .meeting , 'agenda' , request = request , encoding = form .file_encoding [file .name ])
1388+ if save_error :
1389+ form .add_error (None , save_error )
1390+ else :
1391+ doc .save_with_history ([e ])
1392+ return redirect ('ietf.meeting.views.session_details' ,num = num ,acronym = session .group .acronym )
13821393 else :
13831394 form = UploadAgendaForm (show_apply_to_all_checkbox , initial = {'apply_to_all' :session .type_id == 'session' })
13841395
@@ -1479,9 +1490,13 @@ def upload_session_slides(request, session_id, num, name):
14791490 e = NewRevisionDocEvent .objects .create (doc = doc ,by = request .user .person ,type = 'new_revision' ,desc = 'New revision available: %s' % doc .rev ,rev = doc .rev )
14801491 doc .save_with_history ([e ])
14811492 # The way this function builds the filename it will never trigger the file delete in handle_file_upload.
1482- handle_upload_file (file , filename , session .meeting , 'slides' )
1483- post_process (doc )
1484- return redirect ('ietf.meeting.views.session_details' ,num = num ,acronym = session .group .acronym )
1493+ save_error = handle_upload_file (file , filename , session .meeting , 'slides' , request = request , encoding = form .file_encoding [file .name ])
1494+ if save_error :
1495+ form .add_error (None , save_error )
1496+ else :
1497+ doc .save_with_history ([e ])
1498+ post_process (doc )
1499+ return redirect ('ietf.meeting.views.session_details' ,num = num ,acronym = session .group .acronym )
14851500 else :
14861501 initial = {}
14871502 if slides :
0 commit comments