* fix: Use session name instead of timeslot name on agenda
* test: Fix failing playwright test
* test: Test name/slotName values from agenda_extract_schedule()
* chore: Migrate sessions to use timeslot names for IETF meetings
* feat: enable editorial stream adoption and balloting
* fix: bring tests into line with refactor
* feat: force intended_std_level to Informational when adopting into a non-ietf stream.
* fix: improve blocking position labels and email content
* fix: simplify pointer to group on doc main page for rswg docs
* fix: recover from merge typos
* fix: correct defer and clear ballot behavior
* fix: improve publication request access logic
* fix: clean up broken editorial state
* fix: adjust test to match migrations
* fix: Show links for more session types on the agenda
* test: Update test to expect buttons on additional sessions
* test: Update the past meeting test case also
* refactor: Update call to deprecated add_event_info_to_session_qs
* feat: Gather proceedings sessions in the view, grouped by name
* feat: Begin using new session data format in templates (WIP)
* feat: Show non-meeting groups (WIP)
Non-meeting groups (all sessions are notmeet) now show up on the proceedings.
Session materials associated with these groups are not shown, need to restore
that functionality.
* refactor: Rework template data, show materials for notmeet groups (WIP)
* fix: Restore "No agenda", etc, when meeting materials are not present
* chore: Remove commented out old code
* fix: Restore contents in non-area sections of proceedings
* chore: Remove commented-out stale code
* fix: Suppress duplicate agendas for a group on proceedings
* refactor: Generalize agenda deduplication and apply to minutes
* refactor: Format multiple items per session; apply to bluesheets
* refactor: Apply _format_materials to recordings, slides, and drafts
* chore: Add comment about limitations of test_proceedings() test
* test: Test separation of named sessions in the proceedings
* refactor: move session/timeslot selection for sched editor to querysets
Purpose here is to make it easier to reuse the session and timeslot selection
logic between the schedule editor and the schedule generator. Additionally
resolves a todo-list item to unify the list of TimeSlotType ids in the
IGNORE_TIMESLOT_TYPES tuple and the SessionQuerySet.requests() method.
* refactor: use new helpers to select sessions/slots for sched generator
* refactor: eliminate some code lint
* feat: Split sched gen TimeSlot into scheduled/unscheduled variants
(work in progress)
* feat: First pass at supporting unscheduled timeslots
(work in progress)
* feat: Handle unscheduled timeslots in make_capacity_adjustments()
(work in progress)
* feat: Handle unscheduled timeslots in time-relation constraint check
(work in progress)
* feat: Reflect unsched timeslots in messages from by schedule generator
* fix: Prevent exception in pretty_print() if base schedule not assigned
* refactor: Avoid flood of time relation constraint warning messages
* test: update test_too_many_sessions
* fix: init time inputs in correct tz when editing an interim request
* test: add test
* test: fix old tests that relied on mixing dates, times, and datetimes
* feat: add 'IETF Meetings' filter to upcoming meetings page
* feat: apply 'ietf-meetings' filter to upcoming.ics
* fix: also filter upcoming IETF meetings in the graphical calendar
* test: update tests to match changes
Includes fixing an error in test_upcoming_view_filter_hide_type().
Due to a copy/paste error, it claimed to be testing with a type
both shown and hidden but was not actually hiding a type at all.
* test: be more careful with timezone arithmetic
Drops a test case (other day, other time) that was an unlikely corner
case. It was an easy check to include with the old code but is less
so with the rewrite.
* fix: use consistent timezone for IDs in timeslot editor
* chore: remove stray testing/debug code
* refactor: clarify handling what groups looked like at past session times
* fix: replace missed instance of historic_parent reference
* fix: reflect that group_at_the_time always returns something
* chore: update copyright lines
* feat: add 'cancel session' button to meeting schedule editor
* fix: only show edit/cancel session buttons for secretariat
Other users cannot access these views.
* feat: refuse to cancel a canceled session; give feedback to user
* test: test cancel_session view
* test: test that sessions have edit/cancel buttons
* chore: rename create_dummy_meeting to create_test_meeting
* chore: reword comments to match renamed command
* chore: rename make_dummy_nomcom to create_test_nomcom
Avoids non-inclusive language and better matches other command naming.
* chore: reword comments to match renamed command
* fix: handle rooms with capacity = None in schedule editor
* fix: sort higher capacity rooms ahead of lower
Sort was incorrect, this matches intent and comments.
* test: avoid local times near midnight for test_past_swap_days_buttons()
* test: use timezone_options variable consistently
* test: add test of timezone_not_near_midnight() method
* fix: ensure that timezone_not_near_midnight() always exits
* fix: correct meeting attendance calculations
* test: change meetingregistration factory defaults
* test: Setup stats tests to verify counts honor meeting.Attended
But the tests aren't actually looking to see what numbers get generated yet.
* test: add test for attendance cross-talk between meetings
* fix: limit attendance count query to single meeting
* refactor: rename attendance.online to .remote
* fix: only count a given person as onsite or remote, but never both
* test: align tests with cleanup
Co-authored-by: Jennifer Richards <jennifer@painless-security.com>
* feat: apis for attaching chatlogs and polls to session materials
* fix: anticipate becoming tzaware, and improve guard against attempts to provide docs for sessions that have no official timeslot assignment.
* fix: get chatlog upload to actually work
Modifications to several initial implementation decisions.
Updates to the fixtures.
* fix: test polls upload
Refactored test to reduce duplicate code
* fix: allow api keys to be created for the new endpoints
* feat: add ability to view chatlog and polls documents. Show links in session materials.
* fix: commit new template
* fix: typo in migration signatures
* feat: add main doc page handling for polls. Improve tests.
* feat: chat log vue component + embedded vue loader
* feat: render polls using Vue
* fix: address pug syntax review comments from Nick.
* fix: repair remaining mention of chat log from copymunging
* fix: use double-quotes in html attributes
* fix: provide missing choices update migration
* test: silence html validator empty attr warnings
* test: fix test_runner config
* fix: locate session when looking at a dochistory object for polls or chatlog
Co-authored-by: Nicolas Giard <github@ngpixel.com>
* feat: add propose/upload slides button to session details modal
* refactor: remove unneeded chaining operator
* test: fix quotes around template string
* feat: link to meeting materials page from AgendaDetailsModal
* refactor: compute session details URL in JS instead of view
* chore: restyle materials page link
* test: fix test case to match changes to session modal