Commit graph

119 commits

Author SHA1 Message Date
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
Jennifer Richards 41882f2ac7
test: remove syntax error introduced in merge 2022-10-28 16:52:03 -03: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 3220bf3c40
chore: replace last few datetime.date.today() calls with date_today() 2022-10-18 12:45:47 -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
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 448cfbb13d
fix: more timezone fixes in liaisons/meeting/message apps 2022-09-27 15:50:10 -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 54c57e0419
test: refactor tests to avoid shadowing meeting.date with a datetime (#4430) 2022-09-12 11:36:58 -03:00
Jennifer Richards 8b52d27b02
refactor: refactor timestamp handling so tests in meeting app pass (#4371)
* refactor: replace datetime.now with timezone.now

* refactor: migrate model fields to use timezone.now as default

* refactor: replace datetime.today with timezone.now

datetime.datetime.today() is equivalent to datetime.datetime.now(); both
return a naive datetime with the current local time.

* refactor: rephrase datetime.now(tz) as timezone.now().astimezone(tz)

This is effectively the same, but is less likely to encourage accidental
use of naive datetimes.

* refactor: revert datetime.today() change to old migrations

* refactor: change a missed datetime.now to timezone.now

* chore: renumber timezone_now migration

* chore: add migration to change timestamps to UTC

* refactor: move tz instantiation/caching from TimeSlot to Meeting

* fix: assume utc if meeting.time_zone is blank

* chore: make datetime.combine() calls tz aware in the meeting app

* ci: correctly use meeting.tz in TimeSlotFactory

* chore: compute TimeSlot utc / local times assuming tz-aware times

* chore: use tzaware math for agenda editor timeslot layout

* chore: fill in Meeting.time_zone where it is blank

Nearly all interim meetings on or before 2016-07-01 have blank
time_zone values. This migration fills these in with PST8PDT.

* chore: disallow blank Meeting.time_zone value

* refactor: no need to handle blank time_zone case in TZ migration

* refactor: remove now-unnecessary checks that meeting has time_zone

* chore: fix timezone handling in agenda.ics and Meeting.updated()

* chore: fix tz handling in interim_request_details, exercise in tests

* chore: fix timezone handling for test_interim_send_announcement

* chore: fix timezone handling in agenda_json()

* chore: fix timezone handling in old agenda

* chore: fix timezone handling for EditTimeslotsTests

* refactor: refactor a few fixes for more consistent timezone handling

* chore: add timezone info to timestamps in fixtures

* chore: remove naive datetime warnings found in meetings.tests_views

* chore: fix a few more test failures in meetings.tests_views

All tests in meetings.tests_views now passing

* chore: remove unused import

* chore: fix timezone handling in test_schedule_generator.py

* chore: fix timezone handling affecting meeting.tests_js

* chore: fix timeslot test bug when local date != UTC date

* test: fix a few failing tests, all meetings tests now pass

(for me, anyway)

* chore: renumber migrations

* chore: update timestamp conversion migration

The django-celery-beat package introduces tables with timestamp
columns. These columns are stored in CELERY_TIMEZONE. Because we run with
this set to UTC, the migration ignores these columns.

* chore: fix pytz-related change in migration

* chore: remove duplicate migrations

* chore: remove CELERY_BEAT_TZ_AWARE setting now that USE_TZ is True

* test: avoid failure in test with bogus timezone
2022-08-26 16:53:19 -03:00
Jennifer Richards ebebdbed3e
refactor: replace datetime.now and datetime.today with timezone.now (#4211)
* refactor: replace datetime.now with timezone.now

* refactor: migrate model fields to use timezone.now as default

* refactor: replace datetime.today with timezone.now

datetime.datetime.today() is equivalent to datetime.datetime.now(); both
return a naive datetime with the current local time.

* refactor: rephrase datetime.now(tz) as timezone.now().astimezone(tz)

This is effectively the same, but is less likely to encourage accidental
use of naive datetimes.

* refactor: revert datetime.today() change to old migrations

* refactor: change a missed datetime.now to timezone.now

* chore: renumber timezone_now migration

* chore: renumber migrations
2022-08-25 13:45:16 -03:00
Lars Eggert 86e548c952
chore: remove ietf/group/colors.py, which is unused (#4100)
* chore: remove ietf/group/colors.py, which is unused

* Rip out more
2022-06-20 10:31:20 -05:00
Jennifer Richards 310e828262
fix: offset scrollspy so righthand-nav highlights the correct entry (#3820)
Also rewrites scroll_to_element() using javascript. This seems to be less flaky
than the ActionChains implementation. Slight change in behavior - now scrolls
the requested element to the middle of the window instead of barely into view.
2022-04-14 15:35:07 -03:00
Lars Eggert 870fed030f
fix: More fixes for narrow screens (#3662)
* fix: More fixes for narrow screens

Need to keep checking for issues, there are more.

* Make columns more narrow on narrow screens

* More fixes

* More fixes

* Test fixes

* Fix more tests

* Close tbody
2022-03-24 12:40:48 -03:00
Jennifer Richards 4e437a9f2d
test: scroll swap timeslots button into view before clicking (#3719) 2022-03-22 13:33:48 -05:00
Jennifer Richards 077e7e2262 Merged from 7.40.1.dev0
Properly URL-encode and -decode a bunch of query parameters. [from revision 19,981]
 - Legacy-Id: 19986
2022-02-24 17:52:28 +00:00
Jennifer Richards 9d8f4ea207 Fix failing tests
- Legacy-Id: 19982
2022-02-24 16:47:55 +00:00
Lars Eggert 07e0eb84d9 Properly URL-encode and -decode a bunch of query parameters.
- Legacy-Id: 19981
2022-02-24 14:23:46 +00:00
Jennifer Richards 6c260a5b7e Merge 7.45.1.dev0 into Bootstrap 5 update branch. Made a first pass at reconciling differences.
- Legacy-Id: 19945
2022-02-17 20:09:49 +00:00
Lars Eggert bbf088e18b Hopefully the final check-ins.
- Legacy-Id: 19909
2022-02-08 17:29:15 +00:00
Jennifer Richards 795d861d96 Hide timeslots type is disabled plus other schedule editor debugging/improvements. Fixes #3510. Fixes #3430. Commit ready for merge.
- Legacy-Id: 19878
2022-01-27 00:41:27 +00:00
Lars Eggert cf629a42ad And more fixes.
- Legacy-Id: 19877
2022-01-25 10:14:25 +00:00
Lars Eggert 9c05373699 More fixes.
- Legacy-Id: 19856
2022-01-18 20:04:55 +00:00
Lars Eggert 5132661b06 More test fixes
- Legacy-Id: 19803
2022-01-05 11:25:25 +00:00
Robert Sparks 1d76b53215 Merged in [19788] from jennifer@painless-security.com:
Import django.conf.settings instead of ietf.settings. Fixes #3392.
 - Legacy-Id: 19798
Note: SVN reference [19788] has been migrated to Git commit ecde8a780fce609efc6539e258e57752a03aa2bd
2022-01-04 16:09:27 +00:00
Lars Eggert a8764f225f Track CSS class name changes in bs5.
- Legacy-Id: 19663
2021-11-15 16:49:09 +00:00
Jennifer Richards c3f28eeedb Add missing ifSeleniumEnabled guard for meeting.tests_js.EditTimeslotsTests
- Legacy-Id: 19592
2021-11-09 16:50:40 +00:00
Jennifer Richards 0706f8519f Update migrations and fix a few failing tests. Branch ready for merge.
- Legacy-Id: 19571
2021-11-09 02:40:54 +00:00
Jennifer Richards bcd37edfcd Merged from session_purpose_dev
Create dev branch for session purpose work (from revision [19414])
Snapshot of dev work to add session purpose annotation (from revision [19415])
Allow non-WG-like groups to request additional sessions/durations and bypass approval (from revision [19424])
Add 'closed' session purpose, assign purposes for nomcom groups, and update schedule editor to enforce timeslot type and allow blurring sessions by purpose (from revision [19427])
Add management command to set up timeslots/sessions for testing/demoing 'purpose' field (from revision [19430])
Update session purposes and group type -> purpose map to match notes page, change 'session' purpose to 'regular' (from revision [19433])
Redirect edit_schedule urls to edit_meeting_schedule view (from revision [19434])
Allow hiding/blurring sessions and timeslots based on TimeSlotType in the schedule editor (from revision [19438])
Disable session purpose/timeslot type hiding on schedule editor when only 0 or 1 options (from revision [19439])
Improvements to the timeslot and schedule editors (move new toggles to modals, handle overflowing session names, fix timeslot editor scrolling, add buttons to quickly create single timeslot, accept trailing slash on edit URL) (from revision [19449])
Update purpose/types after discussions, add on_agenda Session field, prevent session requests for groups with no allowed purpose, handle addition fields in session request, fix editing session requests, add session edit form/access from schedule editor, eliminate TimeSlotTypeName "private" field, add server-side timeslot type filtering to schedule editor (from revision [19549])
Eliminate the officehours timeslot type, update/renumber migrations, mark offagenda/reserved TimeSlotTypeNames as not used, add a 'none' SessionPurposeName and disallow null, update agenda filter keywords/filter helpers, fix broken tests and general debugging (from revision [19550])
Tear out old meeting schedule editor and related code (from revision [19551])
Fix merge errors in preceding commits (from revision [19556])
 - Legacy-Id: 19570
Note: SVN reference [19415] has been migrated to Git commit 1054f90873

Note: SVN reference [19424] has been migrated to Git commit 5318081608

Note: SVN reference [19427] has been migrated to Git commit 173e438aee

Note: SVN reference [19430] has been migrated to Git commit 7a2530a0a6

Note: SVN reference [19433] has been migrated to Git commit 3be50d6e39

Note: SVN reference [19434] has been migrated to Git commit 3e3d681e5f

Note: SVN reference [19438] has been migrated to Git commit b6ac3d4b1d

Note: SVN reference [19439] has been migrated to Git commit 446ac7a47e

Note: SVN reference [19449] has been migrated to Git commit 5cbe402036

Note: SVN reference [19549] has been migrated to Git commit 3dfce7b850

Note: SVN reference [19550] has been migrated to Git commit 7b35c09c40

Note: SVN reference [19551] has been migrated to Git commit d7f20342b6

Note: SVN reference [19556] has been migrated to Git commit 2b1864f5a0
2021-11-09 01:35:25 +00:00
Jennifer Richards d7f20342b6 Tear out old meeting schedule editor and related code
- Legacy-Id: 19551
2021-11-04 17:07:22 +00:00
Jennifer Richards 7b35c09c40 Eliminate the officehours timeslot type, update/renumber migrations, mark offagenda/reserved TimeSlotTypeNames as not used, add a 'none' SessionPurposeName and disallow null, update agenda filter keywords/filter helpers, fix broken tests and general debugging
- Legacy-Id: 19550
2021-11-04 17:06:06 +00:00
Robert Sparks 59597794b7 Merged in [19432] from lars@eggert.org:
Fix things that selenium deprecated in version 4.
 - Legacy-Id: 19504
Note: SVN reference [19432] has been migrated to Git commit 715b0949cc
2021-10-29 19:53:37 +00:00
Jennifer Richards 1054f90873 Snapshot of dev work to add session purpose annotation
- Legacy-Id: 19415
2021-10-12 17:08:58 +00:00
Jennifer Richards 67198180e1 Correctly highlight session constraints in the meeting schedule editor. Fixes #3327. Commit ready for merge.
- Legacy-Id: 19385
2021-09-22 22:47:59 +00:00
Jennifer Richards 2060173f3a Improve proceedings display with new title block, configurable host logos, and additional PDF or URL materials. Fixes #3147. Commit ready for merge.
- Legacy-Id: 19306
2021-08-30 17:02:49 +00:00
Jennifer Richards 2eacd88c0b Disable modification of past timeslots on official schedules. Fixes #3166.
- Legacy-Id: 19295
2021-08-09 20:43:20 +00:00
Jennifer Richards 82ad0402f8 Add 'Select Sessions" tab to agenda pages. Commit ready for merge.
- Legacy-Id: 19183
2021-07-01 23:45:25 +00:00
Jennifer Richards 044293b4a9 Fix broken meeting materials button on upcoming meetings page. Fixes #3278. Commit ready for merge.
- Legacy-Id: 19164
2021-06-28 18:57:20 +00:00
Robert Sparks c9756cc106 Merged in [19153] from rjsparks@nostrum.com:
Scroll to buttons before clicking on them in Selenium tests. Fixes #3314.
 - Legacy-Id: 19154
Note: SVN reference [19153] has been migrated to Git commit d61e26567d
2021-06-24 17:45:06 +00:00
Robert Sparks d61e26567d Scroll to buttons before clicking on them in Selenium tests. Fixes #3314. Commit ready for merge.
- Legacy-Id: 19153
2021-06-24 16:39:36 +00:00
Jennifer Richards 34891213ff Swap timeslot columns in addition to full days in schedule editor. Fixes #3216. Commit ready for merge.
- Legacy-Id: 19138
2021-06-22 16:33:04 +00:00
Jennifer Richards 45916f2c3c Improve visibility of other sessions for group of selected session in schedule editor. Fixes #3219. Commit ready for merge.
- Legacy-Id: 19135
2021-06-15 14:27:13 +00:00
Jennifer Richards ba0a3ec9cb Blur sessions for hidden areas instead of hiding entirely. Fixes #3218. Commit ready for merge.
- Legacy-Id: 19134
2021-06-15 14:14:12 +00:00
Jennifer Richards 1d12391c5c Indicate session and timeslot conflicts more prominently in schedule editor. Fixes #3221. Commit ready for merge.
- Legacy-Id: 19133
2021-06-15 13:46:44 +00:00
Jennifer Richards b42f1a2d7f Display rooms in blocks with identical timeslots. Add a timeslot label row above each. Fixes #3220. Commit ready for merge.
- Legacy-Id: 19121
2021-06-14 16:33:24 +00:00
Jennifer Richards 0ade3f789a Handle groups without area when sorting unscheduled sessions in schedule editor. Fixes #3173. Commit ready for merge.
- Legacy-Id: 19073
2021-06-03 18:55:34 +00:00