Skip to content

Commit 0944312

Browse files
authored
feat: remove room-view. Fixes ietf-tools#3810. (ietf-tools#3815)
Also changes .editorconfig to not strip trailing whitespace
1 parent d2edc5b commit 0944312

8 files changed

Lines changed: 3 additions & 696 deletions

File tree

.editorconfig

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ root = true
1111
[*]
1212
indent_size = 4
1313
charset = utf-8
14-
trim_trailing_whitespace = true
14+
trim_trailing_whitespace = false
1515
insert_final_newline = true
1616

1717
# Specializations below *add to* the above defaults

ietf/meeting/tests_views.py

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -438,18 +438,6 @@ def test_agenda_by_type(self):
438438
r = self.client.get(url)
439439
self.assertFalse(any([x in unicontent(r) for x in ['IESG Breakfast','Breakfast Room']]))
440440

441-
def test_agenda_room_view(self):
442-
meeting = make_meeting_test_data()
443-
url = urlreverse("ietf.meeting.views.room_view",kwargs=dict(num=meeting.number))
444-
login_testing_unauthorized(self,"secretary",url)
445-
r = self.client.get(url)
446-
self.assertEqual(r.status_code,200)
447-
self.assertTrue(all([x in unicontent(r) for x in ['mars','IESG Breakfast','Test Room','Breakfast Room']]))
448-
url = urlreverse("ietf.meeting.views.room_view",kwargs=dict(num=meeting.number,name=meeting.unofficial_schedule.name,owner=meeting.unofficial_schedule.owner.email()))
449-
r = self.client.get(url)
450-
self.assertTrue(all([x in unicontent(r) for x in ['mars','Test Room','Breakfast Room']]))
451-
self.assertNotContains(r, 'IESG Breakfast')
452-
453441

454442
def test_agenda_week_view(self):
455443
meeting = make_meeting_test_data()

ietf/meeting/urls.py

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,6 @@
3434
url(r'^agenda/%(owner)s/%(schedule_name)s/make_official$' % settings.URL_REGEXPS, views.make_schedule_official),
3535
url(r'^agenda/%(owner)s/%(schedule_name)s(\.(?P<ext>.html))?/?$' % settings.URL_REGEXPS, views.agenda),
3636
url(r'^agenda/%(owner)s/%(schedule_name)s/week-view(?:.html)?/?$' % settings.URL_REGEXPS, views.week_view),
37-
url(r'^agenda/%(owner)s/%(schedule_name)s/room-view(?:.html)?/?$' % settings.URL_REGEXPS, views.room_view),
3837
url(r'^agenda/%(owner)s/%(schedule_name)s/by-room/?$' % settings.URL_REGEXPS, views.agenda_by_room),
3938
url(r'^agenda/%(owner)s/%(schedule_name)s/by-type/?$' % settings.URL_REGEXPS, views.agenda_by_type),
4039
url(r'^agenda/%(owner)s/%(schedule_name)s/by-type/(?P<type>[a-z]+)$' % settings.URL_REGEXPS, views.agenda_by_type),
@@ -77,11 +76,9 @@
7776
url(r'^agenda\.ics$', views.agenda_ical),
7877
url(r'^agenda.json$', views.agenda_json),
7978
url(r'^agenda/week-view(?:.html)?/?$', views.week_view),
80-
url(r'^agenda/room-view(?:.html)?/?$', views.room_view),
8179
url(r'^floor-plan/?$', views.floor_plan),
8280
url(r'^floor-plan/(?P<floor>[-a-z0-9_]+)/?$', views.floor_plan),
8381
url(r'^week-view(?:.html)?/?$', views.week_view),
84-
url(r'^room-view(?:.html)?/?$', views.room_view),
8582
url(r'^materials(?:.html)?/?$', views.materials),
8683
url(r'^request_minutes/?$', views.request_minutes),
8784
url(r'^materials/%(document)s((?P<ext>\.[a-z0-9]+)|/)?$' % settings.URL_REGEXPS, views.materials_document),

ietf/meeting/views.py

Lines changed: 1 addition & 64 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@
3232
from django.core.exceptions import ValidationError
3333
from django.core.validators import URLValidator
3434
from django.urls import reverse,reverse_lazy
35-
from django.db.models import F, Min, Max, Q
35+
from django.db.models import F, Max, Q
3636
from django.forms.models import modelform_factory, inlineformset_factory
3737
from django.template import TemplateDoesNotExist
3838
from django.template.loader import render_to_string
@@ -1906,69 +1906,6 @@ def week_view(request, num=None, name=None, owner=None):
19061906
"items": json.dumps(items),
19071907
})
19081908

1909-
@role_required('Area Director','Secretariat','IAB')
1910-
def room_view(request, num=None, name=None, owner=None):
1911-
meeting = get_meeting(num)
1912-
1913-
rooms = meeting.room_set.order_by('functional_name','name')
1914-
if not rooms.exists():
1915-
return HttpResponse("No rooms defined yet")
1916-
1917-
if name is None:
1918-
schedule = get_schedule(meeting)
1919-
else:
1920-
person = get_person_by_email(owner)
1921-
schedule = get_schedule_by_name(meeting, person, name)
1922-
1923-
assignments = SchedTimeSessAssignment.objects.filter(
1924-
schedule__in=[schedule, schedule.base if schedule else None]
1925-
).prefetch_related(
1926-
'timeslot', 'timeslot__location', 'session', 'session__group', 'session__group__parent'
1927-
)
1928-
unavailable = meeting.timeslot_set.filter(type__slug='unavail')
1929-
if not (assignments.exists() or unavailable.exists()):
1930-
return HttpResponse("No sessions/timeslots available yet")
1931-
1932-
earliest = None
1933-
latest = None
1934-
1935-
if assignments:
1936-
earliest = assignments.aggregate(Min('timeslot__time'))['timeslot__time__min']
1937-
latest = assignments.aggregate(Max('timeslot__time'))['timeslot__time__max']
1938-
1939-
if unavailable:
1940-
earliest_unavailable = unavailable.aggregate(Min('time'))['time__min']
1941-
if not earliest or ( earliest_unavailable and earliest_unavailable < earliest ):
1942-
earliest = earliest_unavailable
1943-
latest_unavailable = unavailable.aggregate(Max('time'))['time__max']
1944-
if not latest or ( latest_unavailable and latest_unavailable > latest ):
1945-
latest = latest_unavailable
1946-
1947-
if not (earliest and latest):
1948-
raise Http404
1949-
1950-
base_time = earliest
1951-
base_day = datetime.datetime(base_time.year,base_time.month,base_time.day)
1952-
1953-
day = base_day
1954-
days = []
1955-
while day <= latest :
1956-
days.append(day)
1957-
day += datetime.timedelta(days=1)
1958-
1959-
unavailable = list(unavailable)
1960-
for t in unavailable:
1961-
t.delta_from_beginning = (t.time - base_time).total_seconds()
1962-
t.day = (t.time-base_day).days
1963-
1964-
assignments = list(assignments)
1965-
for ss in assignments:
1966-
ss.delta_from_beginning = (ss.timeslot.time - base_time).total_seconds()
1967-
ss.day = (ss.timeslot.time-base_day).days
1968-
1969-
template = "meeting/room-view.html"
1970-
return render(request, template,{"meeting":meeting,"schedule":schedule,"unavailable":unavailable,"assignments":assignments,"rooms":rooms,"days":days})
1971-
19721909
def ical_session_status(assignment):
19731910
if assignment.session.current_status == 'canceled':
19741911
return "CANCELLED"

0 commit comments

Comments
 (0)