Commit graph

35 commits

Author SHA1 Message Date
Robert Sparks 3c1fc3c0f9
chore: use factory-boy 3.3 (#6269) 2023-09-05 09:54:30 -05:00
Jennifer Richards 09ff9c6ced
refactor: Tie Meetecho resources to Session pk (#5281)
* feat: Use session.id to specify session for api_set_session_video_url

* feat: Use session.id to specify session for api_upload_bluesheet

* refactor: Add audio/video stream and onsite tool URLs to Session model

* refactor: Get onsite tool/stream URLs for agenda from Session

* refactor: Use Session methods for onsite tool/stream a few more places

* refactor: Move hard-coded meetecho URLs into settings.py

* feat: Add has_onsite_flag to Session

* chore: Set has_onsite_tool for sessions that had meetecho UrlResources

* fix: Only show onsite tool URLs when Session.has_onsite_tool is True

* test: Update test_api_upload_bluesheet to test deprecated version

* fix: Fix test failure in api_upload_bluesheet view

* test: Add test of new api_upload_bluesheet view

* style: Apply Black style to test_api_upload_bluesheet

* fix: Fix test failures in api_upload_bluesheet()

* test: Update test_api_set_session_video_url to test deprecated version

* fix: Fix test failure in api_set_session_video_url view

* test: Add test of new api_set_session_video_url view

* style: Apply Black styling to new test

* fix: Fix test failures in api_set_session_video_url view

* test: Fix test_meeting_agenda; set has_onsite_tool in SessionFactory

* feat: Add has_onsite_tool to Session list in admin

* feat: Add has_onsite_tool flag to SessionDetailsForm

* feat: Add has_onsite_tool flag to sreq

* feat: Show has_onsite_tool flag on secr view for a submitted request

* feat: Only prompt for has_onsite_tool in sreq for non-wg type groups

* fix: Clean up styling of sreq view a bit

* chore: Renumber migrations
2023-04-23 18:15:01 -05: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
Robert Sparks fe1f51aede
fix: Compute 8989 eligibility using actual attendance data. (#4236) 2022-07-21 12:58:32 -05:00
Jennifer Richards b77e6627a4 Guard against null timeslot location in agenda.html and add test of location_anchor tag
- Legacy-Id: 19665
2021-11-15 21:01:19 +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 65f7f62725 Merged in [19306] from jennifer@painless-security.com:
Improve proceedings display with new title block, configurable host logos, and additional PDF or URL materials. Fixes #3147.
 - Legacy-Id: 19327
Note: SVN reference [19306] has been migrated to Git commit 2060173f3a
2021-09-03 21:12:32 +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
Robert Sparks 6a7ebfdb7a Show the constraint names on the meeting session requests page. Fixes #3082. Commit ready for merge.
- Legacy-Id: 19305
2021-08-27 19:45:19 +00:00
Robert Sparks 54b6448445 Merged in [19270] from rjsparks@nostrum.com:
Bring the factory-boy and Faker dependencies forward through some minor breaking changes. Stop using the deprecated fr_QC locale in Faker.
 - Legacy-Id: 19281
Note: SVN reference [19270] has been migrated to Git commit b99eecc1ae
2021-08-05 18:07:40 +00:00
Robert Sparks b99eecc1ae Bring the factory-boy and Faker dependencies forward through some minor breaking changes. Stop using the deprecated fr_QC locale in Faker. Commit ready for merge.
- Legacy-Id: 19270
2021-08-03 22:22:35 +00:00
Jennifer Richards 336d762123 Allow configuration of group conflict types used for each meeting Fixes #2770. Commit ready for merge.
- Legacy-Id: 19266
2021-07-30 17:50:24 +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
Robert Sparks 3697180cc1 Reverted merge of timezone-aware migration efforts.
- Legacy-Id: 18792
2021-01-12 16:54:20 +00:00
Henrik Levkowetz 774e752a54 Snapshot of timezone-aware datatracker code. Tests pass, and the test-crawler shows only expected differences. Trunk changes merged in up to r18768.
- Legacy-Id: 18770
2020-12-16 23:53:37 +00:00
Henrik Levkowetz 726fcbf27d Removed all __future__ imports.
- Legacy-Id: 17391
2020-03-05 23:53:42 +00:00
Ole Laursen 568670c060 Turn sessions into regular sessions and non-sessions into misc.
sessions in the UI and code to avoid ambiguity.

This doesn't change the data in the DB except for uses of
TimeSlotTypeName where 'session' is now 'regular'.
 - Legacy-Id: 17128
2019-12-06 20:02:26 +00:00
Ole Laursen 3957743b85 Move Session.status, .requested, and .requested_by to a new SchedulingEvent
- Legacy-Id: 17122
2019-12-05 12:41:09 +00:00
Ole Laursen 0555879777 Rename Meeting.agenda to Meeting.schedule together with a bunch of
related internal things
 - Legacy-Id: 17051
2019-11-18 17:22:19 +00:00
Henrik Levkowetz 2d7c9629aa Added 'from __future__' imports all over the place, to bring code behaviour into closer alignment between python2 and python3
- Legacy-Id: 16446
2019-07-15 15:40:51 +00:00
Henrik Levkowetz d7f5c84182 Initial 2to3 patch with added copyright statement updates.
- Legacy-Id: 16309
2019-06-27 14:40:54 +00:00
Robert Sparks becad91b0b Allow logged in users to propose slides for meeting sessions. Fixes #2547 and #2403. Commit ready for merge.
- Legacy-Id: 16102
2019-03-25 16:10:00 +00:00
Robert Sparks 87bda66740 Converted several secr apps to use factories for tests. Commit ready for merge.
- Legacy-Id: 15568
2018-10-12 22:08:31 +00:00
Henrik Levkowetz ccec044511 Fixed a type issue with [14556]
- Legacy-Id: 14559
Note: SVN reference [14556] has been migrated to Git commit a438ff85e8
2018-01-23 22:27:49 +00:00
Henrik Levkowetz a438ff85e8 Made the MeetingFactory produce ietf meetings with dates appropriate for the numbers. Fixes random failures in test_eligible().
- Legacy-Id: 14556
2018-01-23 21:41:47 +00:00
Henrik Levkowetz 4f83548b49 Added a new field Meeting.days to capture the length of a meeting. This is necessary now that we have previous meetings officially starting Sunday, lasting to Friday, and future meetings starting Saturday, Lasting to Friday. We use Meeting.days to calculate Meeting.end_date(). Meeting.get_ietf_monday() and two cut_off() methods have also been updated to be instance methods instead of class methods, and to not assume that a meeting starts on Sunday.
- Legacy-Id: 14225
2017-10-25 13:38:15 +00:00
Henrik Levkowetz f75ec3622a A first go at adding floor labels to the agenda pages. The placement of the labels are complicated by available whitespace beeing in different horizontal positions for different types of lines. Adding another column will push the session title out of the screen on small devices.
- Legacy-Id: 13587
2017-06-12 21:00:08 +00:00
Henrik Levkowetz 3d6b370c59 Upgraded custom TimedeltaFields to use the builtin DurationField from Django 1.8, and adjusted forms and initialization values accordingly.
- Legacy-Id: 12597
2016-12-20 22:56:34 +00:00
Robert Sparks eab067ff34 Repaired a max string vs max int bug in MeetingFactory. Commit ready for merge.
- Legacy-Id: 12016
2016-09-21 21:56:37 +00:00
Henrik Levkowetz ec684e1b4e Added a pylint rc-file, and fixed or silenced a number of issues found by pylint using the settings .pylintrc (which enable only error checking).
- Legacy-Id: 11941
2016-09-08 14:48:59 +00:00
Henrik Levkowetz 2bebde1ebe Added a test for the floorplan view.
- Legacy-Id: 11545
2016-07-07 12:41:27 +00:00
Henrik Levkowetz 7f98aa87a7 Updated MeetingFactory to give interim meeting numbers with two-digit zero-padded numbers.
- Legacy-Id: 11423
2016-06-20 18:50:39 +00:00
Robert Sparks 4a12225742 Found (manually) and fixed a place where a sessionpresentation object's rev=None was exploding a template. FactoryBoy starts to really shine.
- Legacy-Id: 10851
2016-02-22 19:56:14 +00:00
Robert Sparks a9abd3c2cd Tweak factories to not randomly create keys that violate constraints. Commit ready for merge
- Legacy-Id: 10756
2016-01-28 20:12:00 +00:00
Robert Sparks 7d43d3ada4 Adds a meetings tab to the group information page. Links to minutes, agendas, and materials for each session at each meeting. Improves the UI for the session materials page. Commit ready for merge.
- Legacy-Id: 10719
2016-01-20 22:59:14 +00:00