Commit graph

1439 commits

Author SHA1 Message Date
Jennifer Richards 364250a291
feat: Generate a partial schedule when there are more sessions than timeslots (#4950)
* 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
2023-01-06 11:13:58 -06:00
Jennifer Richards 5a1fc4c2ab
fix: use a single Meeting instance for all assignments in agenda views (#4877) 2022-12-12 16:33:08 -06:00
Jennifer Richards 6644ab48c0
fix: handle groups_at_the_time cache misses (#4853)
* fix: handle groups_at_the_time cache misses

* refactor: add comments, share meeting-start code between calls

* test: test Meeting.group_at_the_time()
2022-12-09 13:57:27 -06:00
Jennifer Richards 015ac316fb
test: fix test broken by 40fd46a2 (#4847) 2022-12-07 15:06:43 -06:00
Jennifer Richards 40fd46a293
fix: be more sure to create interim's timeslot / update duration (#4846) 2022-12-07 14:45:00 -06:00
Jennifer Richards ac55b2cb6f
fix: init time inputs in correct tz when editing an interim request (#4838)
* 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
2022-12-06 08:46:48 -06:00
Jennifer Richards 0abebf2f10
feat: add 'IETF Meetings' filter to upcoming meetings page (#4826)
* 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.
2022-12-05 15:19:36 -06:00
Jennifer Richards b8dbd65f76
fix: use consistent timezone for IDs in timeslot editor (#4813)
* 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
2022-11-30 15:31:40 -06:00
Robert Sparks 0b3f9f5dc5
refactor: clarify handling what groups looked like at past session times (#4767)
* 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
2022-11-29 11:08:16 -06:00
Lars Eggert 6eabd4a3a1
chore: Use codespell to fix typos in comments. (#4794)
First part of replacement of #4651
2022-11-28 10:36:36 -06:00
Robert Sparks 41eafa2727
fix: Abstract code knowledge of the notes function away from specific implementations (#4761)
* fix: abstract codes knowledge of the note function away from specific implementations.

* refactor: make uses_notes a meeting's responsibility.
2022-11-15 14:10:13 -06:00
Kesara Rathnayake 71dcf9fc8b
fix: Use correct codec for decoding meeting materials (#4697) 2022-11-06 12:13:02 +00:00
Justin Iurman c94c28d65c
chore: Eliminate use of django.utils.datetime_safe (#4698)
Instead of replacing `datetime_safe` by the standard api, just remove
that part of the code (because it is unused).

Fixes #4513
2022-11-06 11:54:19 +00:00
Jennifer Richards 594c3f4316
fix: omit session location when timeslot.show_location is False (#4712)
* fix: omit session location when timeslot.show_location is False

* test: test that location is omitted  when show_location is False
2022-11-06 11:51:07 +00:00
Tero Kivinen 8cf309cd6a
fix: Fix upcoming to use Meeting.end_date. (#4701) 2022-11-05 17:54:13 +00:00
Jennifer Richards 3008c4904e
feat: add 'cancel session' button to meeting schedule editor (#4682)
* 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
2022-11-01 14:41:50 -03:00
Jennifer Richards 41882f2ac7
test: remove syntax error introduced in merge 2022-10-28 16:52:03 -03:00
Jennifer Richards 0caf946e48
Merge branch 'feat/tzaware' into dev/main-for-tzaware-merge 2022-10-28 14:40:04 -03:00
Jennifer Richards a124eb8073
chore: update create_dummy_meeting to specify session purposes (#4654) 2022-10-28 14:36:35 -03:00
Jennifer Richards 3bf997ba03
chore: rename management commands to avoid non-inclusive language (#4656)
* 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
2022-10-28 11:01:00 -05:00
Jennifer Richards a5f0259072
fix: stabilize sorts of upcoming meetings (#4661)
* fix: stabilize upcoming meeting sort

* fix: stabilize upcoming meeting ical sort
2022-10-27 13:03:14 -05:00
Jennifer Richards a3673f25cb
fix: sort higher capacity rooms first in schedule editor (#4653)
* 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.
2022-10-27 09:58:51 -05:00
Jennifer Richards f42016d8fb
Merge branch 'feat/tzaware' into dev/main-merge-to-tzaware 2022-10-27 11:58:32 -03:00
Jennifer Richards e290d9e499
test: avoid local times near midnight for test_past_swap_days_buttons() (#4642)
* 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
2022-10-26 09:42:50 -05:00
Jennifer Richards d55280d0b1
Merge pull request #4638 from ietf-tools/main
chore: merge main into feat/tzaware
2022-10-24 12:57:11 -03:00
Robert Sparks d08815d8da
fix: find raw chatlog and polls for interims (#4628) 2022-10-21 15:58:54 -05:00
Robert Sparks 3c191909ca
fix: stable and correct ordering of agenda items (#4621)
* fix: align session sorting across functions

* fix: sessions of a group can have different types
2022-10-21 11:04:27 -05:00
Robert Sparks 26e2e23418
fix: reduce agenda data calculation time (#4622)
* fix: reduce agenda data calculation time

* doc: improve docstring for preprocess_assingments_for_agenda
2022-10-21 11:03:11 -05:00
Jennifer Richards 000e8431c2
Merge pull request #4615 from painless-security/jennifer/materials-tz
fix: use UTC for materials/proceedings cutoff checks
2022-10-20 11:39:10 -03:00
Jennifer Richards fb644d7b50
fix: use UTC for materials/proceedings cutoff checks 2022-10-20 09:32:20 -03:00
Jennifer Richards 0346271578
refactor: simplify I-D cutoff calculations and make TZ more explicit 2022-10-19 17:47:07 -03:00
Jennifer Richards 8101b4f057
chore: remove unused imports 2022-10-18 12:50:07 -03:00
Jennifer Richards 3220bf3c40
chore: replace last few datetime.date.today() calls with date_today() 2022-10-18 12:45:47 -03:00
Jennifer Richards dfe1147e7c
chore: switch a few datetime_today() calls to date_today() 2022-10-18 12:25:25 -03:00
Jennifer Richards da70acfdff
Merge branch 'feat/tzaware' into jennifer/yet-more-tz-fixes
# Conflicts:
#	ietf/ietfauth/utils.py
#	ietf/meeting/tests_views.py
#	ietf/stats/tests.py
2022-10-17 16:39:45 -03:00
Jennifer Richards f3bdbf0ed4
Merge branch 'feat/tzaware' into jennifer/main-for-tzaware-merge
# Conflicts:
#	ietf/meeting/tests_js.py
#	ietf/meeting/tests_models.py
#	ietf/meeting/tests_views.py
#	ietf/meeting/views.py
#	ietf/name/fixtures/names.json
#	ietf/templates/meeting/agenda.html
#	ietf/templates/meeting/session_buttons_include.html
#	ietf/templates/meeting/timeslot_start_end.html
2022-10-14 16:35:57 -03:00
Jennifer Richards 83db95c4b3
test: extend simulateDragDrop to support dataTransfer.types interface (#4571) 2022-10-13 10:58:20 -05:00
Robert Sparks 6dd6165444
fix: correct meeting attendance calculations (#4536)
* 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>
2022-10-13 10:55:57 -05:00
Robert Sparks 50668c97cd
feat: apis for attaching chatlogs and polls to session materials (#4488)
* 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>
2022-10-13 09:20:36 -05:00
Jennifer Richards 0ad293d6e9
feat: add slides / session materials links to session details modal (#4535)
* 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
2022-10-12 16:07:23 -05:00
Nicolas Giard 6f2114fb0c
feat: replace old agenda with agenda-neue (#4406)
* feat: remove old agenda (django-side)

* fix: bring in latest commits

* test: remove -neue from playwright tests

* test: remove agenda selenium js tests

* test: remove agenda views tests

* fix: remove deprecated agenda views (week-view, agenda-by, floor-plan)

* test: fix failing python tests

* test: remove more deprecated tests

* chore: remove deprecated templates

* test: remove unused import

* feat: handle agenda personalize with filter + move agenda specific stuff out of root component

* fix: redirect deprecated urls to agenda / floorplan

* feat: agenda - open picker mode when from personalize path

* fix: safari doesn't support device-pixel-content-box property on ResizeObserver

* test: move floor plan test into main agenda test

Co-authored-by: Robert Sparks <rjsparks@nostrum.com>
2022-10-12 15:46:28 -05:00
Jennifer Richards 7b1b7f5273
Merge branch 'feat/tzaware' into dev/tzaware-main-merge 2022-10-11 14:57:34 -03:00
Jennifer Richards 0bdfb25c47
feat: include proposed WGs on meeting requests page (#4551) 2022-10-07 15:56:43 -05:00
Jennifer Richards f043797742
fix: include IRTF and BoF groups on meeting requests page (#4528)
* fix: include IRTF and BoF groups on meeting requests page

* test: test bof/irtf groups on the meeting requests page

* chore: remove some accidentally committed changes

* style: improve formatting of requests.html template
2022-09-30 10:08:11 -05:00
Jennifer Richards 448cfbb13d
fix: more timezone fixes in liaisons/meeting/message apps 2022-09-27 15:50:10 -03:00
Jennifer Richards 63a1baf116
fix: more small timezone-aware fixes (#4489)
* fix: use meeting timezone for agenda_by_(room|type)

* refactor: use timezone.override instead of timezone.activate/deactivate

* fix: add timezone info in create-charter-newrevisiondocevents

* fix: use meeting timezone for recording.html template

* fix: use meeting timezone for slide submission timeslot display

* fix: use meeting timezone for schedule diff template

* fix: use meeting timezone for edit_meeting_timeslots_and_misc_sessions

* fix: use meeting timezone for materials() view

* fix: use meeting timezone for proceedings() view

* refactor: force timestamps to utc in important_dates_for_meeting.ics

Has no effect now, but guarantees consistency with template's assertion
that its timestamps are in UTC.

* fix: use meeting timezone for a couple interim meeting templates

* fix: use meeting timezone for propose_session_slides template

* fix: use meeting timezone for upload_session_*.html

* fix: use meeting timezone for a couple session templates
2022-09-22 12:19:56 -03:00
Jennifer Richards fe7fc4b871
fix: miscellaneous tz fixes (#4481)
* fix: use meeting timezone for date comparison in agenda.html

* fix: use meeting timezone in interim_meeting_cancellation_notice.txt

* fix: use meeting timezone in interim_session_cancellation_notice.txt

* fix: use meeting timezone for secr misc sessions tab

* fix: use meeting tz for editing misc sessions

* fix: handle times with day outside usual choices in secr app

* fix: handle TZ correctly for reg sessions and timeslots in secr app

* fix: handle timezone in session_schedule_notification.txt

* fix: fix broken references in interim session cancellation template

* test: use meeting timezone as element id for meeting/timeslot editing
2022-09-20 13:18:05 -03:00
Jennifer Richards 3cbcfde475
fix: use meeting-local times for agenda editor (#4458)
* fix: use meeting-local times for agenda editor

* test: test agenda editor timezone handling
2022-09-15 13:18:49 -03:00
Jennifer Richards 1366b6de38
Merge branch 'feat/tzaware' into jennifer/main-to-tzaware-conflicts 2022-09-14 12:36:33 -03:00
Jennifer Richards 54c57e0419
test: refactor tests to avoid shadowing meeting.date with a datetime (#4430) 2022-09-12 11:36:58 -03:00