* fix: turn off automatic escaping in session request templates
* test: ensure no unwanted escaping in session request emails
* test: use PersonFactory to create test users
* test: minor refactoring
* fix: Remove redundant "stream stream" output
fix: Change "Legacy stream" to "Legacy"
chore: Add "stream" to stream.desc as needed
Fixes: #6902
* chore: Remove unused stream_desc parameter
The stream_desc key isn't used in template/doc/docuemnt_draft.html to
don't pass it in nor compute it
Fixes: #6902
* fix: migrate the legacy StreamName
---------
Co-authored-by: Robert Sparks <rjsparks@nostrum.com>
* refactor: change references from User to Person (#5821)
* refactor: Change CommunityList reference from User to Person
* refactor: Convert more user references to person
* refactor: Change augment_docs_and_user_with_user_info to person
* refactor: Change Nomination and Feedback references from User to Person
* refactor: Change a few test case function signatures to be more pythonic
* refactor: Harmonize how profile and photo views look up email_or_name
* refactor: Rework community views to operate on Person instead of User (#5859)
* test: Update tests to try all of the person's emails and aliases
* fix: Recode a test case to avoid an exception if there's Unicode in the URL
This only happens using the form-filling and submission feature of
WebTest, which is only used in this one test case, so just it rip out.
* test: Add duplicate-person tests
* fix: If there are multiple matching users, prefer the logged-in one.
* chore: We no longer use WebTest, so don't include it.
* fix: Address review comments
* fix: case-insensitive person name or email matching (#6096)
* chore: Renumber migrations
* fix: Update merged code so tests pass (#6887)
* fix: Use refactored method
* fix: Don't assume user has person
* fix: Use new view param name
* chore: Drop community lists w/o person; cleanup (#6896)
* fix: Don't assume user has person
* fix: user->person in update_community_list_index.py
* feat: Remove CommunityLists without Person
* refactor: Speed up nomcom migrations
---------
Co-authored-by: Paul Selkirk <paul@painless-security.com>
Co-authored-by: Jennifer Richards <jennifer@staff.ietf.org>
* fix: Enforce naming of charter docs in submit()
* style: Reformat submit() with Black
* refactor: Remove redundant check of charter name
* style: Reformat charter_with_milestones_txt with Black
* refactor: Drop canonical_name, use Path in charter_with_milestones_txt
* style: Reformat review_announcement_text() with Black
* style: Reformat action_announcement_text() with Black
* refactor: Change uses of charter.canonical_name() to charter.name
* refactor: Skip docialias when retrieving charter
* refactor: Change canonical_name() to name in utils_charter.py
* refactor: Use Path in read_charter_text()
* refactor: Drop canonical_name, minor refactor of tests_charter.py
* refactor: charter.name instead of canonical_name in milestones.py
* refactor: charter.name instead of canonical_name in tests_info.py
* refactor: Remove unused functions in ietf/secr/utils/groups.py
* refactor: charter.canonical_name -> charter.name in templates
* refactor: Remove charter handling from canonical_name
Temporarily raise an exception for testing
* refactor: Refactor get_charter_text() without canonical_name
* refactor: Remove raise when canonical_name called on a charter
* fix: Add back missing ".txt" extension
* test: Test rejection of invalid charter names
* fix: Don't add "essential people" to session requests by default
Because since #5169 we ask they not be included anymore. (This was part of my
original change but I guess I forgot to add it to the PR...)
* Don't import Person
* 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