Commit graph

381 commits

Author SHA1 Message Date
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
Jennifer Richards 608b8e16a4
feat: only offer IAB/IESG members for bofreq responsible leadership (#4276)
* refactor: avoid using select2 data-* attrs on html elements

Using "data-ajax--url" shadows explicit configuration in our
select2.js wrapper. Use "data-select2-ajax-url" to avoid this.

Also add ability to omit the ajax setup entirely by returning
None from ajax_url().

* chore: hook up a flag to disable ajax for SearchablePersonsField

* refactor: send select2 prefetch data as array and allow config of min input length

* feat: only offer IAB/IESG members for bofreq responsible leadership

* test: area directors/IAB members should be options for bofreq responsible leaders

* test: update tests to match changes to SearchableField

* fix: clean up SearchablePersonsField breakage when searching by email address

* chore: finish incomplete comment
2022-07-26 11:23:00 -05:00
Robert Sparks b988850985
fix: avoid mutables as defaults. Compute date default arguments at runtime rather than loadtime. (#4144) 2022-07-06 14:39:36 -05:00
Robert Sparks eda494a299
fix: adjust migration leaves (#4109) 2022-06-21 16:04:17 -05:00
Robert Sparks 8b90ecd4aa
feat: add pronouns to Person and oidc claims. Fixes #4043. (#4059)
* feat: add pronouns

* fix: include migrations

* fix: correct daggers on person form.

* fix: clean pronouns

* feat: add choices to pronouns

* feat: show pronouns on public profile

* feat: add pronouns to oidc userinfo

* fix: move pronouns to new claim. Add tests.

* fix: improve html generated by new widget

* feat: use a MultiWidget for pronouns

* refactor: use two fields on Person for the two types of pronoun entry.

* chore: update copyrights
2022-06-21 15:02:02 -05:00
Robert Sparks 07bfa68a75
feat: explicitly model session attendance (#4025)
* feat: add model to track session attendance

* feat: add model to track session attendance

* feat: add api to set session attendees

* fix: use user pk instead off person pk in the attended api.

* feat: calculate three of five from attended

* feat: management utility to populate Attended model history

* docs: document why nomcom calculations don't use Attended yet.

* fix: add migration to add new personalapikey endpoint to choices

* test: verify very old last login prevents api key use,

* chore: address review nits

* chore: comment on some idiosyncracies of the expected input to populate_attended

* fix: add unique_together constraint for the Attended model

* fix: correctly handle empty querysets passed to three_of_five_eligible functions.
2022-06-20 10:46:36 -05:00
Robert Sparks 249db17ae7
chore: keep the database in sync with django-simple-history (#3967) 2022-05-14 08:12:35 -05:00
Robert Sparks 86923dfe96
chore: update dependency requirements (#3904)
* chore: cleanup requirements.txt. Unpin factory-boy, ignoring resulting mypy complaints.

* chore: remove the upper limit as many dependencies as possible

* chore: remove unintended bookmark

* chore: normalize spaces before comments

* chore: improve comment explaining pinned Tastypie

* chore: shift dependencies minimum version requirements forward
2022-04-28 11:06:17 -05:00
Jennifer Richards 43952a8c69
fix: do not prematurely dereference status change RelatedDocuments (#3835)
* test: add tests of the person_link tag

* fix: do not prematurely dereference status change RelatedDocuments

The urlize_related_source_list template tag expects the RelatedDocument
instances, not the source Document.

* test: add test cases for status changes on document_main view
2022-04-19 07:04:38 -05:00
Jennifer Richards b8912a4eff
fix: treat str input as None in the person_link tag (#3832) 2022-04-15 15:49:16 -05:00
Lars Eggert ef7d962e63
fix: Remove the person_link nowrap option from the Python code (#3659)
This was missed in #3657.
2022-03-16 11:12:23 -05: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
Lars Eggert ed30521e14 Many more HTML fixes.
- Legacy-Id: 19908
2022-02-03 07:49:34 +00:00
Lars Eggert cc723ce449 More fixes.
- Legacy-Id: 19899
2022-01-31 19:17:50 +00:00
Lars Eggert 0bfaa63722 More fixes.
- Legacy-Id: 19855
2022-01-17 15:05:22 +00:00
Lars Eggert a5cbf5307e More fixes
- Legacy-Id: 19835
2022-01-12 11:54:00 +00:00
Lars Eggert 5132661b06 More test fixes
- Legacy-Id: 19803
2022-01-05 11:25:25 +00:00
Robert Sparks c1649f8f0b Change to not serve any personalapikey metadata. Commit ready for merge.
- Legacy-Id: 19787
2021-12-16 19:57:31 +00:00
Lars Eggert c68446ae93 More select2 and test fixes.
- Legacy-Id: 19781
2021-12-14 18:19:12 +00:00
Robert Sparks 17ad466b0e Added missing migration for addition of personal api key endpoint.
- Legacy-Id: 19771
2021-12-10 16:07:18 +00:00
Lars Eggert e9fd78128c Interim commit
- Legacy-Id: 19765
2021-12-09 18:26:53 +00:00
Lars Eggert 9a21fca6c1 More bs5 templates
- Legacy-Id: 19715
2021-11-30 14:42:13 +00:00
Kesara Rathnayake 43513ed2f5 Adds private app authentication API for bibxml. Fixes #3480. Commit ready for merge.
- Legacy-Id: 19711
2021-11-25 04:26:30 +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
Robert Sparks 41ddb37e01 Adjust dots claim based on 112 Plenary feedback
- Legacy-Id: 19544
2021-11-03 18:28:47 +00:00
Robert Sparks d74c7a8a5a Align code, tests, and url templates around the person ajax json views. Fix a dangling pyflake nit. Commit ready for merge.
- Legacy-Id: 19453
2021-10-25 15:29:10 +00:00
Robert Sparks 6351ce86c2 Provide a dots oidc claim for online badges. Commit ready for merge.
- Legacy-Id: 19437
2021-10-18 21:39:00 +00:00
Kesara Rathnayake 90297bc2ab Fixes API authentication issue. Commit ready for merge.
- Legacy-Id: 19393
2021-10-01 04:43:54 +00:00
Kesara Rathnayake 02b8559512 Adds ability to hanndle garbage API keys. Fixes #3412. Commit ready for merge.
- Legacy-Id: 19382
2021-09-22 06:40:49 +00:00
Robert Sparks afe5963826 Add missing migration
- Legacy-Id: 19373
2021-09-20 16:26:25 +00:00
Kesara Rathnayake dc833aa85c Implements /api/appauth/authortools API endpoint. Fixes #3396. Commit ready for merge.
- Legacy-Id: 19344
2021-09-06 11:42:16 +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
Robert Sparks c0ab02c489 Don't provide links to person pages that we know will 404. Commit ready for merge.
- Legacy-Id: 19193
2021-07-02 21:43:50 +00:00
Robert Sparks a3305e1bd5 Additional tweak to oidc profile photo url generation. Commit ready for merge.
- Legacy-Id: 19177
2021-07-01 16:31:15 +00:00
Robert Sparks c906a8e654 Use a cdn for the oidc profile photo url. Commit ready for merge.
- Legacy-Id: 19176
2021-07-01 15:56:53 +00:00
Ryan Cross 92f2d02207 Fix /api/v2/person/person to work with Robot apikey. Commit ready for merge.
- Legacy-Id: 19101
2021-06-09 18:13:17 +00:00
Robert Sparks 80798f8dfa Avoid duplicate choices for person api endpoints.
- Legacy-Id: 19082
2021-06-04 21:45:16 +00:00
Robert Sparks 6e14727e09 Tweaked results of r19059 to allow for a better transition post release.
- Legacy-Id: 19060
2021-06-02 17:39:52 +00:00
Ryan Cross b7502ed96c Change PERSON_API_KEY_VALUE for mail archive lookups
Change /api/v2/person/person to ROBOT to prepare for 
switching from personal api key to robot, mail-archive
api key. Once in place, generate new key for this 
endpoint and install.
 - Legacy-Id: 19035
2021-05-25 23:27:29 +00:00
Robert Sparks 48fef02aab revert unintended commit of person/factories.py
- Legacy-Id: 19012
2021-05-20 17:38:31 +00:00
Robert Sparks 7cbaad721a Move adjustments to PHOTO_DIR forward from settings_sqlitetest to settings_releastetest
- Legacy-Id: 19011
2021-05-20 17:37:08 +00:00
Jennifer Richards 6cf9eb8dd1 Allow secretariat to edit document author list. Fixes #3185. Commit ready for merge.
- Legacy-Id: 18989
2021-05-11 18:40:28 +00:00
Robert Sparks fe82f4d696 connect the new calculations to the UI. Clean flakes.
- Legacy-Id: 18974
2021-05-06 19:00:58 +00:00
Robert Sparks fc182c176b Merged in [18941] from jennifer@painless-security.com:
Add purge_old_personal_api_key_events management command. Fixes #3144.
 - Legacy-Id: 18950
Note: SVN reference [18941] has been migrated to Git commit 475fb37c29
2021-04-13 18:12:53 +00:00
Robert Sparks 6d7a0b6d0f Merged in [18939] from jennifer@painless-security.com:
Consolidate repeated searchable field code into SearchableField class. Fix single-valued searchable fields. Make javascript test config reusable. Use Django Form.media for JS/CSS inclusion. Fixes #3196, #3204.
 - Legacy-Id: 18948
Note: SVN reference [18939] has been migrated to Git commit 17d37723f7
2021-04-12 22:07:03 +00:00
Jennifer Richards 475fb37c29 Add purge_old_personal_api_key_events management command. Fixes #3144. Commit ready for merge.
- Legacy-Id: 18941
2021-04-09 18:40:28 +00:00
Jennifer Richards 17d37723f7 Consolidate repeated searchable field code into SearchableField class. Fix single-valued searchable fields. Make javascript test config reusable. Use Django Form.media for JS/CSS inclusion. Fixes #3196, #3204. Commit ready for merge.
- Legacy-Id: 18939
2021-04-09 15:18:11 +00:00
Ryan Cross 8da4caf30f Fix test for handle_reviewer_settings. Commit ready for merge
- Legacy-Id: 18878
2021-03-02 22:27:57 +00:00