44import os
55import shutil
66
7+ import debug # pyflakes:ignore
8+
79from django .conf import settings
810from django .contrib import messages
911from django .core .exceptions import ObjectDoesNotExist
@@ -849,11 +851,22 @@ def upload_unified(request, meeting_num, acronym=None, session_id=None):
849851 session_id all the time but this makes for an ugly URL which most of the time would be
850852 avoided by using acronym.
851853 '''
854+ def redirection_back (meeting , group ):
855+ if meeting .type .slug == 'interim' :
856+ url = reverse ('proceedings_interim' , kwargs = {'acronym' :group .acronym })
857+ else :
858+ url = reverse ('proceedings_select' , kwargs = {'meeting_num' :meeting .number })
859+ return HttpResponseRedirect (url )
860+
852861 meeting = get_object_or_404 (Meeting , number = meeting_num )
853862 now = datetime .datetime .now ()
854863 if acronym :
855864 group = get_object_or_404 (Group , acronym = acronym )
856865 sessions = Session .objects .filter (meeting = meeting ,group = group )
866+ if not sessions .exists ():
867+ meeting_name = "IETF %s" % meeting .number if meeting .number .isdigit () else meeting .number
868+ messages .warning (request , 'There does not seem to be a %s session in %s.' % (group .acronym , meeting_name ))
869+ return redirection_back (meeting , group )
857870 session = sessions [0 ]
858871 session_name = ''
859872 elif session_id :
@@ -865,12 +878,7 @@ def upload_unified(request, meeting_num, acronym=None, session_id=None):
865878 if request .method == 'POST' :
866879 button_text = request .POST .get ('submit' ,'' )
867880 if button_text == 'Back' :
868- if meeting .type .slug == 'interim' :
869- url = reverse ('proceedings_interim' , kwargs = {'acronym' :group .acronym })
870- else :
871- url = reverse ('proceedings_select' , kwargs = {'meeting_num' :meeting_num })
872- return HttpResponseRedirect (url )
873-
881+ return redirection_back (meeting , group )
874882 form = UnifiedUploadForm (request .POST ,request .FILES )
875883 if form .is_valid ():
876884 material_type = form .cleaned_data ['material_type' ]
0 commit comments