Expanded iCanendar generation to include interim meetings.

- Legacy-Id: 14763
This commit is contained in:
Henrik Levkowetz 2018-03-10 11:25:10 +00:00
parent fac3053d48
commit a11cdd3b20
3 changed files with 21 additions and 6 deletions

View file

@ -12,7 +12,7 @@ ietfdb (6.75.0) ietf; urgency=medium
Considering this, it seems that a good and general approach would be to do
what is often called 'sanitization' of uploaded html content. (Uploaded
text and markdown documents won't be affected).
text/plain and markdown documents won't be affected).
This release introduces such sanitization.
@ -20,7 +20,7 @@ ietfdb (6.75.0) ietf; urgency=medium
you will need to check the results after upload, to make sure that the
agenda and minutes still captures your intent after the sanitization.
Additionally, there is, as usual, some other features and bugfixes:
Additionally, there are, as usual, some other features and bugfixes:
* Added sanitization of uploaded html content for session agendas and
minutes, and did some refactoring of the upload form classes.
@ -29,8 +29,19 @@ ietfdb (6.75.0) ietf; urgency=medium
to bleach, and upgraded the requirements to let us use the latest html5lib
and bleach.
* Modified the sanitizer and upload handler to strip also the content of
some tags, and to produce valid files (if the content is otherwise valid).
* Modified the sanitizer and upload handler to strip not only the tags, but
also the content of some tags, and to produce valid files (if the content
is otherwise valid) by wrapping the content in appropriate <html> and
<body> tags.
* If there are both WG milestone changes and a deletion marked for a
specific milesone, show both 'Changed' and 'Deleted' labels on the
milestone review form.
* Changed the handling of the milestone edit form to defer deletion if it is
requested together with other changes to the same milestone. Instead show
a warning, and ask that deletion be done without simultaneous changes to
the milestone.
* Django's urlize filter does not deal well with adjacent parantheses.
Replaced it with a filter based on bleach.linkify, which does better, and
@ -63,6 +74,7 @@ ietfdb (6.75.0) ietf; urgency=medium
-- Henrik Levkowetz <henrik@levkowetz.com> 06 Mar 2018 14:38:42 -0800
ietfdb (6.74.0) ietf; urgency=medium
**Various notificaiton email improvements and additional iCalendar links**
@ -114,6 +126,7 @@ ietfdb (6.74.0) ietf; urgency=medium
-- Henrik Levkowetz <henrik@levkowetz.com> 04 Mar 2018 16:07:35 +0000
ietfdb (6.73.0) ietf; urgency=medium
**Django 1.11**

View file

@ -16,6 +16,8 @@ safe_for_all_meeting_types = [
url(r'^session/(?P<session_id>\d+)/slides(?:/%(name)s)?$' % settings.URL_REGEXPS, views.upload_session_slides),
url(r'^session/(?P<session_id>\d+)/slides/%(name)s/order$' % settings.URL_REGEXPS, views.set_slide_order),
url(r'^session/(?P<session_id>\d+)/doc/%(name)s/remove$' % settings.URL_REGEXPS, views.remove_sessionpresentation),
url(r'^session/(?P<session_id>\d+)\.ics$', views.ical_agenda),
url(r'^session/(?P<acronym>[-a-z0-9]+).ics$', views.ical_agenda),
]

View file

@ -829,11 +829,11 @@ def room_view(request, num=None, name=None, owner=None):
return render(request, template,{"meeting":meeting,"schedule":schedule,"unavailable":unavailable,"assignments":assignments,"rooms":rooms,"days":days})
def ical_agenda(request, num=None, name=None, acronym=None, session_id=None):
meeting = get_meeting(num)
meeting = get_meeting(num, type_in=None)
schedule = get_schedule(meeting, name)
updated = meeting.updated()
if schedule is None:
if schedule is None and acronym is None and session_id is None:
raise Http404
q = request.META.get('QUERY_STRING','') or ""