Skip to content

Commit 3fa1add

Browse files
committed
Removed the 'apply to all sessions' checkbox from the agenda/minutes/slides upload pages for non-session timeslots, such as plenaries etc. as it is rarely if ever correct to have it checked then.
- Legacy-Id: 13715
1 parent 9f44b9a commit 3fa1add

1 file changed

Lines changed: 21 additions & 22 deletions

File tree

ietf/meeting/views.py

Lines changed: 21 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -937,7 +937,6 @@ def json_agenda(request, num=None ):
937937
if asgn.session.agenda():
938938
sessdict['agenda'] = asgn.session.agenda().href()
939939

940-
941940
if asgn.session.minutes():
942941
sessdict['minutes'] = asgn.session.minutes().href()
943942
if asgn.session.slides():
@@ -1201,9 +1200,9 @@ class UploadMinutesForm(forms.Form):
12011200
file = forms.FileField(label='Minutes file to upload. Note that you can only upload minutes in txt, html, or pdf formats.')
12021201
apply_to_all = forms.BooleanField(label='Apply to all group sessions at this meeting',initial=True,required=False)
12031202

1204-
def __init__(self, num_sessions, *args, **kwargs):
1203+
def __init__(self, show_apply_to_all_checkbox, *args, **kwargs):
12051204
super(UploadMinutesForm, self).__init__(*args, **kwargs)
1206-
if num_sessions<2:
1205+
if not show_apply_to_all_checkbox:
12071206
self.fields.pop('apply_to_all')
12081207

12091208
def clean_file(self):
@@ -1225,19 +1224,19 @@ def upload_session_minutes(request, session_id, num):
12251224

12261225
session_number = None
12271226
sessions = get_sessions(session.meeting.number,session.group.acronym)
1228-
num_sessions = len(sessions)
1227+
show_apply_to_all_checkbox = len(sessions) > 1 if session.type_id == 'session' else False
12291228
if len(sessions) > 1:
12301229
session_number = 1 + sessions.index(session)
12311230

12321231
minutes_sp = session.sessionpresentation_set.filter(document__type='minutes').first()
12331232

12341233
if request.method == 'POST':
1235-
form = UploadMinutesForm(num_sessions,request.POST,request.FILES)
1234+
form = UploadMinutesForm(show_apply_to_all_checkbox,request.POST,request.FILES)
12361235
if form.is_valid():
12371236
file = request.FILES['file']
12381237
_, ext = os.path.splitext(file.name)
1239-
apply_to_all = True
1240-
if num_sessions > 1:
1238+
apply_to_all = session.type_id == 'session'
1239+
if show_apply_to_all_checkbox:
12411240
apply_to_all = form.cleaned_data['apply_to_all']
12421241
if minutes_sp:
12431242
doc = minutes_sp.document
@@ -1281,7 +1280,7 @@ def upload_session_minutes(request, session_id, num):
12811280
handle_upload_file(file, filename, session.meeting, 'minutes')
12821281
return redirect('ietf.meeting.views.session_details',num=num,acronym=session.group.acronym)
12831282
else:
1284-
form = UploadMinutesForm(num_sessions)
1283+
form = UploadMinutesForm(show_apply_to_all_checkbox)
12851284

12861285
return render(request, "meeting/upload_session_minutes.html",
12871286
{'session': session,
@@ -1297,9 +1296,9 @@ class UploadAgendaForm(forms.Form):
12971296
file = forms.FileField(label='Agenda file to upload. Note that you can only upload agendas in txt or html formats.')
12981297
apply_to_all = forms.BooleanField(label='Apply to all group sessions at this meeting',initial=True,required=False)
12991298

1300-
def __init__(self, num_sessions, *args, **kwargs):
1299+
def __init__(self, show_apply_to_all_checkbox, *args, **kwargs):
13011300
super(UploadAgendaForm, self).__init__(*args, **kwargs)
1302-
if num_sessions<2:
1301+
if not show_apply_to_all_checkbox:
13031302
self.fields.pop('apply_to_all')
13041303

13051304
def clean_file(self):
@@ -1321,19 +1320,19 @@ def upload_session_agenda(request, session_id, num):
13211320

13221321
session_number = None
13231322
sessions = get_sessions(session.meeting.number,session.group.acronym)
1324-
num_sessions = len(sessions)
1323+
show_apply_to_all_checkbox = len(sessions) > 1 if session.type_id == 'session' else False
13251324
if len(sessions) > 1:
13261325
session_number = 1 + sessions.index(session)
13271326

13281327
agenda_sp = session.sessionpresentation_set.filter(document__type='agenda').first()
13291328

13301329
if request.method == 'POST':
1331-
form = UploadAgendaForm(num_sessions,request.POST,request.FILES)
1330+
form = UploadAgendaForm(show_apply_to_all_checkbox,request.POST,request.FILES)
13321331
if form.is_valid():
13331332
file = request.FILES['file']
13341333
_, ext = os.path.splitext(file.name)
1335-
apply_to_all = True
1336-
if num_sessions > 1:
1334+
apply_to_all = session.type_id == 'session'
1335+
if show_apply_to_all_checkbox:
13371336
apply_to_all = form.cleaned_data['apply_to_all']
13381337
if agenda_sp:
13391338
doc = agenda_sp.document
@@ -1389,7 +1388,7 @@ def upload_session_agenda(request, session_id, num):
13891388
handle_upload_file(file, filename, session.meeting, 'agenda')
13901389
return redirect('ietf.meeting.views.session_details',num=num,acronym=session.group.acronym)
13911390
else:
1392-
form = UploadAgendaForm(num_sessions)
1391+
form = UploadAgendaForm(show_apply_to_all_checkbox, initial={'apply_to_all':session.type_id=='session'})
13931392

13941393
return render(request, "meeting/upload_session_agenda.html",
13951394
{'session': session,
@@ -1406,9 +1405,9 @@ class UploadSlidesForm(forms.Form):
14061405
file = forms.FileField(label='Slides file to upload.')
14071406
apply_to_all = forms.BooleanField(label='Apply to all group sessions at this meeting',initial=False,required=False)
14081407

1409-
def __init__(self, num_sessions, *args, **kwargs):
1408+
def __init__(self, show_apply_to_all_checkbox, *args, **kwargs):
14101409
super(UploadSlidesForm, self).__init__(*args, **kwargs)
1411-
if num_sessions<2:
1410+
if not show_apply_to_all_checkbox:
14121411
self.fields.pop('apply_to_all')
14131412

14141413
def clean_file(self):
@@ -1429,7 +1428,7 @@ def upload_session_slides(request, session_id, num, name):
14291428

14301429
session_number = None
14311430
sessions = get_sessions(session.meeting.number,session.group.acronym)
1432-
num_sessions = len(sessions)
1431+
show_apply_to_all_checkbox = len(sessions) > 1 if session.type_id == 'session' else False
14331432
if len(sessions) > 1:
14341433
session_number = 1 + sessions.index(session)
14351434

@@ -1442,12 +1441,12 @@ def upload_session_slides(request, session_id, num, name):
14421441
slides_sp = session.sessionpresentation_set.filter(document=slides).first()
14431442

14441443
if request.method == 'POST':
1445-
form = UploadSlidesForm(num_sessions,request.POST,request.FILES)
1444+
form = UploadSlidesForm(show_apply_to_all_checkbox,request.POST,request.FILES)
14461445
if form.is_valid():
14471446
file = request.FILES['file']
14481447
_, ext = os.path.splitext(file.name)
1449-
apply_to_all = True
1450-
if num_sessions > 1:
1448+
apply_to_all = session.type_id == 'session'
1449+
if show_apply_to_all_checkbox:
14511450
apply_to_all = form.cleaned_data['apply_to_all']
14521451
if slides_sp:
14531452
doc = slides_sp.document
@@ -1504,7 +1503,7 @@ def upload_session_slides(request, session_id, num, name):
15041503
initial = {}
15051504
if slides:
15061505
initial = {'title':slides.title}
1507-
form = UploadSlidesForm(num_sessions, initial=initial)
1506+
form = UploadSlidesForm(show_apply_to_all_checkbox, initial=initial)
15081507

15091508
return render(request, "meeting/upload_session_slides.html",
15101509
{'session': session,

0 commit comments

Comments
 (0)