Skip to content

Commit c9e14cb

Browse files
rpcrossrjsparks
andauthored
refactor: remove unused physical bluesheet functions (ietf-tools#6525)
* refactor: remove unused secr/console app * refactor: remove unused secr/areas app * refactor: remove unused physical bluesheets functions --------- Co-authored-by: Robert Sparks <rjsparks@nostrum.com>
1 parent 1f89174 commit c9e14cb

8 files changed

Lines changed: 3 additions & 260 deletions

File tree

ietf/secr/meetings/blue_sheets.py

Lines changed: 0 additions & 96 deletions
This file was deleted.

ietf/secr/meetings/forms.py

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -238,17 +238,8 @@ def clean_group(self):
238238
raise forms.ValidationError("ERROR: can't change group after materials have been uploaded")
239239
return group
240240

241-
class UploadBlueSheetForm(forms.Form):
242-
file = forms.FileField(help_text='example: bluesheets-84-ancp-01.pdf')
243-
244-
def clean_file(self):
245-
file = self.cleaned_data['file']
246-
if not re.match(r'bluesheets-\d+',file.name):
247-
raise forms.ValidationError('Incorrect filename format')
248-
return file
249241

250242
class RegularSessionEditForm(forms.ModelForm):
251243
class Meta:
252244
model = Session
253245
fields = ['agenda_note']
254-

ietf/secr/meetings/tests.py

Lines changed: 0 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,7 @@
66
import os
77
import shutil
88

9-
from pathlib import Path
109
from pyquery import PyQuery
11-
from io import StringIO
1210

1311
import debug # pyflakes:ignore
1412

@@ -170,34 +168,6 @@ def test_edit_meeting(self):
170168
[cn.slug for cn in meeting.group_conflict_types.all()],
171169
post_data['group_conflict_types'],
172170
)
173-
174-
def test_blue_sheets_upload(self):
175-
"Test Bluesheets"
176-
meeting = make_meeting_test_data()
177-
(Path(settings.SECR_PROCEEDINGS_DIR) / str(meeting.number) / 'bluesheets').mkdir(parents=True)
178-
179-
url = reverse('ietf.secr.meetings.views.blue_sheet',kwargs={'meeting_id':meeting.number})
180-
self.client.login(username="secretary", password="secretary+password")
181-
response = self.client.get(url)
182-
self.assertEqual(response.status_code, 200)
183-
184-
# test upload
185-
group = Group.objects.filter(type='wg',state='active').first()
186-
file = StringIO('dummy bluesheet')
187-
file.name = "bluesheets-%s-%s.pdf" % (meeting.number,group.acronym)
188-
files = {'file':file}
189-
response = self.client.post(url, files)
190-
self.assertEqual(response.status_code, 302)
191-
path = os.path.join(settings.SECR_PROCEEDINGS_DIR,str(meeting.number),'bluesheets')
192-
self.assertEqual(len(os.listdir(path)),1)
193-
194-
def test_blue_sheets_generate(self):
195-
meeting = make_meeting_test_data()
196-
url = reverse('ietf.secr.meetings.views.blue_sheet_generate',kwargs={'meeting_id':meeting.number})
197-
self.client.login(username="secretary", password="secretary+password")
198-
response = self.client.post(url)
199-
self.assertEqual(response.status_code, 302)
200-
self.assertTrue(os.path.exists(self.bluesheet_path))
201171

202172
def test_notifications(self):
203173
"Test Notifications"

ietf/secr/meetings/urls.py

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,7 @@
77
url(r'^$', views.main),
88
url(r'^add/$', views.add),
99
# url(r'^ajax/get-times/(?P<meeting_id>\d{1,6})/(?P<day>\d)/$', views.ajax_get_times), # Not in use
10-
url(r'^blue_sheet/$', views.blue_sheet_redirect),
1110
url(r'^(?P<meeting_id>\d{1,6})/$', views.view),
12-
url(r'^(?P<meeting_id>\d{1,6})/blue_sheet/$', views.blue_sheet),
13-
url(r'^(?P<meeting_id>\d{1,6})/blue_sheet/generate/$', views.blue_sheet_generate),
1411
url(r'^(?P<meeting_id>\d{1,6})/edit/$', views.edit_meeting),
1512
url(r'^(?P<meeting_id>\d{1,6})/notifications/$', views.notifications),
1613
url(r'^(?P<meeting_id>\d{1,6})/(?P<schedule_name>[A-Za-z0-9_\-]+)/$', views.rooms),

ietf/secr/meetings/views.py

Lines changed: 3 additions & 72 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,6 @@
22
# -*- coding: utf-8 -*-
33

44
import datetime
5-
import os
6-
import time
75

86
from django.conf import settings
97
from django.contrib import messages
@@ -21,17 +19,16 @@
2119
from ietf.meeting.forms import duration_string
2220
from ietf.meeting.helpers import get_meeting, make_materials_directories, populate_important_dates
2321
from ietf.meeting.models import Meeting, Session, Room, TimeSlot, SchedTimeSessAssignment, Schedule, SchedulingEvent
24-
from ietf.meeting.utils import add_event_info_to_session_qs, handle_upload_file
22+
from ietf.meeting.utils import add_event_info_to_session_qs
2523
from ietf.name.models import SessionStatusName
2624
from ietf.group.models import Group, GroupEvent
27-
from ietf.secr.meetings.blue_sheets import create_blue_sheets
2825
from ietf.secr.meetings.forms import ( BaseMeetingRoomFormSet, MeetingModelForm, MeetingSelectForm,
2926
MeetingRoomForm, MiscSessionForm, TimeSlotForm, RegularSessionEditForm,
30-
UploadBlueSheetForm, MeetingRoomOptionsForm )
27+
MeetingRoomOptionsForm )
3128
from ietf.secr.sreq.views import get_initial_session
3229
from ietf.secr.utils.meeting import get_session, get_timeslot
3330
from ietf.mailtrigger.utils import gather_address_lists
34-
from ietf.utils.timezone import date_today, make_aware
31+
from ietf.utils.timezone import make_aware
3532

3633

3734
# prep for agenda changes
@@ -256,72 +253,6 @@ def add(request):
256253
'form': form},
257254
)
258255

259-
@role_required('Secretariat')
260-
def blue_sheet(request, meeting_id):
261-
'''
262-
Blue Sheet view. The user can generate blue sheets or upload scanned bluesheets
263-
'''
264-
meeting = get_object_or_404(Meeting, number=meeting_id)
265-
url = settings.SECR_BLUE_SHEET_URL
266-
blank_sheets_path = settings.SECR_BLUE_SHEET_PATH
267-
try:
268-
last_run = time.ctime(os.stat(blank_sheets_path).st_ctime)
269-
except OSError:
270-
last_run = None
271-
uploaded_sheets_path = os.path.join(settings.SECR_PROCEEDINGS_DIR,meeting.number,'bluesheets')
272-
uploaded_files = sorted(os.listdir(uploaded_sheets_path))
273-
274-
if request.method == 'POST':
275-
form = UploadBlueSheetForm(request.POST,request.FILES)
276-
if form.is_valid():
277-
file = request.FILES['file']
278-
save_error = handle_upload_file(file,file.name,meeting,'bluesheets')
279-
if save_error:
280-
form.add_error(None, save_error)
281-
else:
282-
messages.success(request, 'File Uploaded')
283-
return redirect('ietf.secr.meetings.views.blue_sheet', meeting_id=meeting.number)
284-
else:
285-
form = UploadBlueSheetForm()
286-
287-
return render(request, 'meetings/blue_sheet.html', {
288-
'meeting': meeting,
289-
'url': url,
290-
'form': form,
291-
'last_run': last_run,
292-
'uploaded_files': uploaded_files},
293-
)
294-
295-
@role_required('Secretariat')
296-
def blue_sheet_generate(request, meeting_id):
297-
'''
298-
Generate bluesheets
299-
'''
300-
meeting = get_object_or_404(Meeting, number=meeting_id)
301-
302-
if request.method == "POST":
303-
groups = Group.objects.filter(
304-
type__in=['wg','rg','ag','rag','program'],
305-
session__timeslotassignments__schedule__in=[meeting.schedule, meeting.schedule.base if meeting.schedule else None]).order_by('acronym')
306-
create_blue_sheets(meeting, groups)
307-
308-
messages.success(request, 'Blue Sheets generated')
309-
return redirect('ietf.secr.meetings.views.blue_sheet', meeting_id=meeting.number)
310-
311-
@role_required('Secretariat')
312-
def blue_sheet_redirect(request):
313-
'''
314-
This is the generic blue sheet URL. It gets the next IETF meeting and redirects
315-
to the meeting specific URL.
316-
'''
317-
today = date_today()
318-
qs = Meeting.objects.filter(date__gt=today,type='ietf').order_by('date')
319-
if qs:
320-
meeting = qs[0]
321-
else:
322-
meeting = Meeting.objects.filter(type='ietf').order_by('-date')[0]
323-
return redirect('ietf.secr.meetings.views.blue_sheet', meeting_id=meeting.number)
324-
325256
@role_required('Secretariat')
326257
def edit_meeting(request, meeting_id):
327258
'''

ietf/secr/templates/main.html

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,6 @@ <h2>Meetings and Proceedings</h2>
2929
<ul>
3030
<li> <a href="{% url "ietf.secr.sreq.views.main" %}"><b>Session Requests</b></a></li>
3131
<li> <a href="{% url "ietf.secr.meetings.views.main" %}"><b>Meeting Manager</b></a></li>
32-
<li> <a href="{% url "ietf.secr.meetings.views.blue_sheet_redirect" %}"><b>Blue Sheets</b></a></li>
3332
</ul>
3433
</td>
3534
<td>

ietf/secr/templates/meetings/blue_sheet.html

Lines changed: 0 additions & 48 deletions
This file was deleted.

ietf/secr/templates/meetings/view.html

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,6 @@ <h2>IETF {{ meeting.number }} - View</h2>
3737
<ul>
3838
<li><button type="button" onclick="window.location='{% url "ietf.secr.meetings.views.edit_meeting" meeting_id=meeting.number %}'">Edit</button></li>
3939
<li><button type="button" onclick="window.location='{% url "ietf.secr.meetings.views.notifications" meeting_id=meeting.number %}'">Notifications</button></li>
40-
<li><button type="button" onclick="window.location='{% url "ietf.secr.meetings.views.blue_sheet" meeting_id=meeting.number %}'">Blue Sheets</button></li>
4140
<li><button type="button" onclick="window.location='{% url "ietf.meeting.views.list_schedules" num=meeting.number %}'">Agenda List</button></li>
4241
<li>
4342
<!-- [html-validate-disable-block wcag/h32 -- FIXME: no submit button] -->

0 commit comments

Comments
 (0)