Commit graph

12439 commits

Author SHA1 Message Date
Robert Sparks 11ec3685c4
fix: repaired idnits2_state 2023-07-07 13:10:52 -05:00
Robert Sparks e6a1a17973
fix: typo/logic error in get_base_name 2023-07-07 12:56:23 -05:00
Robert Sparks f30613973c
test: repair pdfized tests 2023-07-07 12:32:48 -05:00
Robert Sparks 06e711288a
test: adjusted RawIdTests 2023-07-07 11:31:11 -05:00
Robert Sparks 8b1fcfdbdd
fix: repair views_search.index_all_drafts 2023-07-07 11:22:44 -05:00
Robert Sparks 6eeffb116f
fix: become agnostic about RFC states until we care 2023-07-07 10:33:29 -05:00
Robert Sparks f7d9e49731
test: pass a correct type 2023-07-07 10:30:57 -05:00
Jennifer Richards 117e07e5ff
Merge pull request #5935 from rjsparks/fixups3
fix: repair various doc view and tests
2023-07-07 11:47:13 -03:00
Robert Sparks 285b11a053
fix: better use of factory 2023-07-07 09:32:29 -05:00
Paul Selkirk bae204862d
feat: Add bibxml button to document info page (#5921)
* feat: Add bibxml button to document info page (#5908)

* fix: No bibxml for RFCs
2023-07-07 08:23:15 -05:00
Robert Sparks a3c87a1945
fix: repaired rfc_feed 2023-07-06 17:43:40 -05:00
Robert Sparks 3486f38421
fix: adjust (useless) assertion in status_change test to reflect that the relevant relation points to an RFC 2023-07-06 17:31:11 -05:00
Robert Sparks 799d3a1a3e
fix: adjusted bibtex view and tests 2023-07-06 17:24:05 -05:00
Robert Sparks 400280e50c
fix: repair test_history_bis_00 2023-07-06 16:05:10 -05:00
Jennifer Richards fc284be6d8
fix: Deal with rfc doc types for references/referenced_by views 2023-07-06 17:44:32 -03:00
Jennifer Richards 9f1b05a518
chore: Move/copy RelatedDocuments to rfcs 2023-07-06 17:44:28 -03:00
Jennifer Richards 563b5a9fe2
chore: Migrate RelatedDocuments for RFCs 2023-07-06 17:44:24 -03:00
Robert Sparks f53a849660
fix: various corrections to rfc main document view and tests (#5931) 2023-07-06 17:24:35 -03:00
Robert Sparks 63a9920685
fix: restored where an rfc came from to the main rfc view (#5930) 2023-07-06 15:11:26 -03:00
Jennifer Richards 8f0b459050
refactor: Replace is_rfc() tests (#5925)
* refactor: Remove is_rfc() - test type_id instead

* fix: Guard against unknown pub_date

This should not ever come up - we have a published_rfc event for
every rfc. Should investigate fixing pub_date() to always return a val.
2023-07-06 12:07:53 -03:00
Jennifer Richards 5d9d87897d
fix: Show rfc documents via document_main view (#5919)
* fix: Fix friendly_state() for drafts in rfc state

* refactor: Change became-rfc to became_rfc for consistency

* refactor: Begin handling RFCs separatly in document_main

WIP

* chore: Hide reviews and conflict reviews for RFCs

* chore: Remove irrelevant fields from rfc doc view

* chore: Remove unused variables

* chore: Remove "Versions" field from document_rfc.html

* chore: Hide "Nits" button for RFC documents
2023-07-05 17:30:20 -03:00
Jennifer Richards 09f347727b
chore: Remove temporary pin on pydantic (#5911)
* chore: Remove temporary pin on pydantic

* test: Guarantee ordering of sessions in test

Should fix an intermittent test failure.
2023-07-05 08:50:50 -05:00
Jennifer Richards 60dc60234d
fix: Better match xml2rfc date parsing (#5914)
* refactor: Split up get_creation_date to ease testing

* test: Add tests of parse_creation_date()

Note change in expected output when date_elt is None:
instead of returning None, this expects today's date.

* fix: Return today instead of None when date is absent

* fix: Handle empty string for day attribute

* test: Check a couple more parse_creation_date cases

* fix: Revert to returning None when date elt is absent

* style: black
2023-07-05 08:23:37 -05:00
Jennifer Richards d87ffb6912
Merge pull request #5912 from ietf-tools/main
chore: Merge main into feat/rfc
2023-07-04 12:09:46 -03:00
Robert Sparks db670dadc5
chore: continued refactor 2023-06-30 17:27:27 -05:00
Jennifer Richards 771296bbe6
feat: Link rfc/draft document history pages (#5894)
* fix: Do not show "rev" column for rfc document history

* style: Reformat document_history() using Black

* refactor: Use "is not None" instead of "!= None"

* refactor: Convert dict() to dict literal

* fix: Migrate group, stream, and ad from draft to rfc Document

* feat: Link rfc/draft history pages
2023-06-28 17:51:31 -03:00
Jennifer Richards bff145f975
fix: Create relationships between draft and rfc Documents (#5890)
* fix: Create RelatedDocument between draft and rfc Documents

* chore: Improve comment

* refactor: Clarify migration
2023-06-28 11:41:08 -03:00
Jennifer Richards 877bc02d77
refactor: Refactor build_file_urls() (#5886) 2023-06-27 11:14:19 -03:00
Robert Sparks e910836ad4
fix: teach build_file_urls about rfc type documents. (#5880) 2023-06-26 21:33:02 -03:00
Jennifer Richards 1db267dd7d
fix: Set has_onsite_tool correctly in no_session() view (#5879)
This will prevent a session that was changed from "notmeet" to
 being scheduled from having its has_onsite_tool flag left as False
2023-06-26 16:10:51 -05:00
Paul Selkirk 98bf7afeab
feat: Display and bulk-edit nomcom position flags (#4681) (#5878)
This adds a table to show the state of all nomcom positions, and lets the
chair set or un-set multiple state flags at the same time.

As a consequence, it moves the email templates to the "Edit position" form.
2023-06-26 16:10:05 -05:00
Robert Sparks 75d199fe31
chore: correct merge errors 2023-06-26 13:14:31 -05:00
Robert Sparks ad0071fd7d
chore: merge feat/rfc 2023-06-26 13:12:15 -05:00
Robert Sparks 69f882d833
chore: tweaks for rebuild_reference_relations 2023-06-26 13:03:59 -05:00
Jennifer Richards 106c67ec95
feat: Migrate docevents onto rfc documents (#5872)
* refactor: Separately migrate DocAliases to rfc Documents

The gap in numbering is intentional, another migration will be along
shortly.

* feat: Migrate docevents onto rfc documents

* chore: Refining DocEvent migration (WIP)

* chore: Move IANA Action state change docevents to rfc docs

* chore: Fix typo

* refactor: Eliminate "created" rfc state

* chore: Leave "ballot set" comments on drafts
2023-06-23 17:16:04 -03:00
Lars Eggert f250a653a2
fix: Remove IESG-related about tabs from non-IETF-stream docs (#5515)
* fix: Remove IESG-related about tabs from non-IETF-stream docs

Fixes #5514

* Fix code review comments

* Address review comments

* Address code review comments
2023-06-22 10:35:59 -05:00
Paul Selkirk 53b5e23612
fix: Be a little clearer when feedback is closed (or not yet open). (#5861) 2023-06-22 08:13:32 -05:00
Lars Eggert 62523eb02c
fix: More dark mode fixes (#5852)
* fix: Correctly indicate "auto" theme is default

* fix: .pnp.js changes were missing

* fix: Use a "-subtle" background color for the menu bar

Because those change correctly with theme changes. That the
non-"-subtle" ones may be a bs5 bug, but enough people complained
about the yellow background in dev mode in dark mode that this change
may be worth it.

* fix: Try and recolor black colors in SVGs for dark mode

* Apply suggestions from @martinthomson
2023-06-21 11:46:16 -05:00
Jennifer Richards 0144ee991e
fix: Include time zone information in v1 api datetimes (#5851)
* fix: Include time zone information in v1 api datetimes

* fix: Use Z suffix instead of offset in API datetimes
2023-06-21 11:43:19 -05:00
Jennifer Richards f2c2957925
refactor: Represent RFCs as their own DocType (#5835)
* feat: Add RFC DocTypeName, StateType, and States

* refactor: Rename rfc_number() to deprecated_rfc_number()

* feat: Add rfc_number field to DocInfo

* feat: Add DocRelationshipName "became-rfc"

* chore: First-pass migration to create rfc Documents

* chore: create_rfc_documents migration depends on new names

* refactor: Rename variable

* fix: Fix revname / downcase name for "became-rfc" DocRelationshipName

* chore: Remove debugging print statements

* feat: Point rfc aliases at rfc Documents

* test: Refactor RFC factories

* refactor: Rewrite is_rfc() in terms of type_id

* test: Use RfcFactory as base for IndividualRfcFactory

* refactor: Replace calls to deprecated_rfc_number()

* refactor: Remove deprecated_rfc_number() method

* test: Import WgRfcFactory
2023-06-20 15:28:16 -03:00
Lars Eggert a6cc12c14b
fix: Don't (re)sort obsoleted/updated info (#5391)
* fix: Don't (re)sort obsoleted/updated info

Rebased against feat/postgres

* Update ietf/doc/utils_search.py

Co-authored-by: Robert Sparks <rjsparks@nostrum.com>

* Update ietf/doc/utils_search.py

Co-authored-by: Robert Sparks <rjsparks@nostrum.com>

* Update ietf/doc/utils_search.py

Co-authored-by: Robert Sparks <rjsparks@nostrum.com>

* Fix review comments

---------

Co-authored-by: Robert Sparks <rjsparks@nostrum.com>
2023-06-20 12:07:45 -05:00
Robert Sparks 8ff14419c2
chore: continued refactoring 2023-06-16 16:59:20 -05:00
Robert Sparks 3c016cc5c8
feat: v3-era aware feed for rfcs (#5828)
* feat: v3-era aware feed for rfcs

* chore: remove obviated comment

* test: improve rfc feed tests
2023-06-16 15:52:42 -05:00
Robert Sparks ac65232115
fix: improve when Message objects are created (#5836)
* fix: improve when Message objects are created

* test: further improve feedback test

* fix: improve and test another form

* test: Restructure test infrastructure
2023-06-16 15:51:31 -05:00
Robert Sparks d6f58b3e67
chore: use more expressive related_name 2023-06-16 15:26:52 -05:00
Robert Sparks f3566c2743
chore: include (nontrivial) migrations 2023-06-16 15:07:51 -05:00
Robert Sparks 769d85a6c4
chore: explore architecture change in RelatedDocument 2023-06-16 14:58:42 -05:00
Robert Sparks 7798ea8d66
Merge remote-tracking branch 'ietf-tools/main' into feat/rfc 2023-06-15 16:07:42 -05:00
Jennifer Richards f04d356834
fix: Do not cache official_timeslotassignment when None (#5830) 2023-06-15 09:27:31 -05:00
Jennifer Richards 6f361f9574
chore: Keep default CSRF_TRUSTED_ORIGINS when in debug mode (#5827) 2023-06-15 09:04:43 -05:00
Lars Eggert 01e2d8b2bf
fix: Don't resort a table if sort query argument is present (#5825)
* fix: Don't resort a table if sort query argument is present

Fixes #5686

* Address code review comments
2023-06-15 08:56:27 -05:00
Lars Eggert fd09e60369
fix: RFC9389 obsoleted RFC8989 (#5822)
Fixes #5820
2023-06-14 12:35:07 -05:00
Lars Eggert 55f481ff74
fix: Also point to IETF web page for liaison relationships (#5823)
Fixes #5780
2023-06-14 12:34:46 -05:00
Lars Eggert a3d9cf3723
fix: Make attendee table sortable (#5824)
Fixes #5606
2023-06-14 12:34:27 -05:00
Lars Eggert e3a0f476c9
Fix test failure (#5826) 2023-06-14 12:17:07 -05:00
Jennifer Richards c8dcda0fae
refactor: Do not use canonical_name() for charters (#5818)
* 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
2023-06-14 08:32:21 -05:00
Robert Sparks 518aedb0f0
chore: remove already run single-use management command (#5815) 2023-06-13 15:53:36 -05:00
Robert Sparks 772b6e8c3c
Merge branch 'main' into feat/dark-mode 2023-06-13 13:37:04 -05:00
Robert Sparks a3db61cf69
Merge pull request #5795 from rjsparks/markdowncharters
feat: render charters on about page using markdown
2023-06-13 12:22:51 -05:00
Jennifer Richards f5365b2229
test: Fix test_meetings_misc_session_edit (#5807) 2023-06-12 15:55:46 -05:00
Jennifer Richards 2bf7e8250c
fix: Import DEFAULT_TIMEOUT correctly (#5803) 2023-06-12 13:50:14 -05:00
Jennifer Richards 12f1ac10ad
fix: Fix signature for LenientMemcacheCache.set() (#5800) 2023-06-12 12:48:32 -05:00
Robert Sparks b75b560dea
feat: import IAB minutes from the IAB wordpress site (#5689)
* feat: import IAB minutes from the IAB wordpress site

Work in Progress

* fix: refactor as management commands

* fix: use datetime.timezone.utc for comparisons

* fix: coerce an argument. Command now runs

* chore: extend queryset in a better way

* fix: fetch kesara's repo and move files into place.

* fix: add a DocEvent explaining where the Documents came from

* fix: small optimizations and typo fixes

* fix: performance compromise for very old meetings

* fix: ensure variable is initialized

* fix: avoid operating on null by changing method signature - address review comments

* fix: repair html typo and address pyflake complaint

* chore: run black on a new and changed things
2023-06-09 17:07:31 -05:00
Robert Sparks c3da3088fb
feat: render charters on about page uring markdown 2023-06-09 16:57:41 -05:00
Robert Sparks c7d98a1cdb
chore: remove stale commented codeblock (#5794) 2023-06-09 16:56:09 -05:00
Guillaume Ayoub 2e5c9ed160
fix: use v59.0 options for WeasyPrint (#5713) 2023-06-09 12:54:35 -05:00
Paul Selkirk 0567b3dea2
fix: /meeting/materials splits out named sessions the same way /meeting/proceedings does (#5715)
* fix: /meeting/materials splits out named sessions the same way /meeting/proceedings does

* test: Test separation of named sessions in the materials
2023-06-09 12:41:01 -05:00
Lars Eggert fbe876b758
fix: Produce correct HTML for the meeting requests table (#5712)
Co-authored-by: Robert Sparks <rjsparks@nostrum.com>
2023-06-08 15:39:55 -05:00
Jennifer Richards d18db5bb76
feat: Improve submission status UX during validation (#5742)
* feat: Quietly check submission status before reloading

* chore: Remove misleading "time since" display

* feat: Back off submission status poll frequency

* chore: Fix code comment
2023-06-08 15:15:27 -05:00
Lars Eggert 818f0a9938
fix: Add definition of DOWNREF from RFC3967 (#5789)
Fixes #2788, #5759
2023-06-08 15:14:14 -05:00
Paul Selkirk 2ca4f7beaf
fix: Improve validation for form that accepts pasted email feedback (#5761)
* test: Test paste-email-feedback-form with missing headers and/or body

* fix: Don't crash if paste-email-feedback-form doesn't contain a Subject line

* test: Test that paste-email-feedback-form requires headers

* fix: If email headers are missing, prompt the user to try again

* chore: retrigger PR checks
2023-06-08 13:56:24 -05:00
Lars Eggert cc35a2d678
fix: Don't add "essential people" to session requests by default (#5734)
* 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
2023-06-08 13:48:53 -05:00
Paul Selkirk d2406d8420
fix: tweak Nomination.share_nominator label text (#5775)
* fix: tweak Nomination.share_nominator label text

"Share nominator name with candidate" was confusing, because it's
imperative, where it's really intended to be permissive - it's okay to
share with the candidate.

* chore: add migration for label text
2023-06-08 13:47:46 -05:00
Robert Sparks fcfe54baaf
Merge pull request #5766 from pselkirk/fix-4771
fix: Don't use an uninitialized variable (#4771)
2023-06-08 13:36:44 -05:00
Robert Sparks dfc5cc4b4b
Merge pull request #5768 from pselkirk/cleanup-feedback-email
fix: Remove leading 32 spaces in feedback email rendering
2023-06-08 13:36:23 -05:00
Robert Sparks 88a878fd61
Merge pull request #5774 from rjsparks/dont_come_around_here_no_more
chore: remove unused mgmt commands
2023-06-08 13:35:50 -05:00
Robert Sparks d6da25a448
fix: better caching of search results (#5782) 2023-06-07 16:25:19 -05:00
Robert Sparks 0864b73aab
fix: use slowpages to cache doc/active (#5781) 2023-06-07 15:35:17 -05:00
Robert Sparks ccf82bbd17
doc: update about.html for version 11 (#5770) 2023-06-06 18:14:29 -05:00
Robert Sparks 18941434c3
chore: remove unused mgmt commands 2023-06-06 16:12:35 -05:00
Jennifer Richards 9cee31613b
chore: Set CSRF_TRUSTED_HOSTS to localhost for dev (#5771) 2023-06-06 15:58:06 -05:00
Jennifer Richards edd72826e6
fix: Prevent errors when memcached object size is exceeded (#5769)
* feat: Subclass PyMemcacheCache to tolerate too-large object errors

* fix: Use LenientMemcacheCache to prevent search errors

* fix: Re-raise errors other than "object too large"
2023-06-06 14:35:41 -05:00
Paul Selkirk 4748a830fe fix: Remove leading 32 spaces in feedback email rendering 2023-06-06 00:07:49 -04:00
Paul Selkirk 1ad2e6bd59 fix: Don't use an uninitialized variable (#4771) 2023-06-05 23:15:02 -04:00
Robert Sparks 3fc77633a7
fix: protect htmlize and opengraph templates from fake dochistory objects (#5764) 2023-06-05 20:19:25 -05:00
Nicolas Giard cfaf966492
fix: add internal static.ietf.org var for pdfized render (#5765) 2023-06-05 20:18:35 -05:00
Nicolas Giard 7d04a71a94
chore: update .gitignore 2023-06-05 18:10:50 -04:00
Robert Sparks 4a062f5250
Merge pull request #5757 from ietf-tools/release
ci: merge release commit and patch back into main
2023-06-05 08:14:03 -05:00
Jennifer Richards d33a6f3c0c
fix: Handle missing date fields in XML submissions (#5744)
* refactor: Eliminate _construct_creation_date helper

* fix: Use xml2rfc method for filling in missing date fields

* fix: Set options.date for xml2rfc writers

* test: Test handling of missing date element/fields
2023-06-02 14:40:52 -05:00
Lars Eggert 7497143116
Better select2 fix 2023-06-02 11:46:10 +03:00
Lars Eggert e6f47a0474
Fix title 2023-06-02 11:43:54 +03:00
Lars Eggert 27f9e6aadb
Address review comments 2023-06-02 11:43:53 +03:00
Lars Eggert 8caf3a70f8
Fix some badges 2023-06-02 11:43:53 +03:00
Lars Eggert e5163b651b
Load theme.js in header, to avoid flickering 2023-06-02 11:43:53 +03:00
Lars Eggert f850061dff
Fix switching in HTMLized view 2023-06-02 11:43:53 +03:00
Lars Eggert 342e6f58bd
Color mode fixes 2023-06-02 11:43:53 +03:00
Lars Eggert 112d3b9f2a
Enable dark mode in other views 2023-06-02 11:43:53 +03:00
Lars Eggert 93d50f96c5
feat: Upgrade bootstrap to 5.3.0 and enable dark mode
Fixes #3365
2023-06-02 11:43:53 +03:00
Lars Eggert e6f351b3c9
Fix more colors 2023-06-02 11:43:53 +03:00
Lars Eggert 54c7951f7b
Fix some colors 2023-06-02 11:43:53 +03:00
Lars Eggert df1a4bf40f
Enable dark mode in other views 2023-06-02 11:43:53 +03:00
Lars Eggert b3c7094dc8
feat: Upgrade bootstrap to 5.3.0 and enable dark mode
Fixes #3365
2023-06-02 11:43:53 +03:00
Jennifer Richards 5d467d996c
Merge pull request #5739 from jennifer-richards/coop_setting
chore: Use permissive cross-origin-opener-policy setting
2023-06-01 18:44:00 -03:00
Jennifer Richards c8f9739604
Merge pull request #5738 from ietf-tools/main
chore: Merge main into feat/django4
2023-06-01 17:32:27 -03:00
Jennifer Richards 2d661a1a5f
chore: Use permissive cross-origin-opener-policy setting 2023-06-01 17:12:15 -03:00
Jennifer Richards e3d16bc8e6
feat: Use distinct event desc for drafts received via api_submit (#5735) 2023-06-01 11:15:57 -05:00
Jennifer Richards 5a2708283b
feat: Extract document creation date from XML draft (#5733)
* fix: Extract document creation date from XML draft

* test: Fix test
2023-06-01 09:58:55 -05:00
Jennifer Richards 8d4780d304
fix: Ignore failure to extract text draft title unless it is needed (#5730)
* fix: Accept a Path as source for a PlaintextDraft

* fix: Guard against failure to extract PlaintextDraft title

* fix: Ignore failure to extract text draft title unless it is needed
2023-06-01 09:39:59 -05:00
Robert Sparks 36b847b57a
fix: explain what is not counted in the meeting request summary (#5728) 2023-06-01 09:32:11 -05:00
Jennifer Richards 3391166aaf
fix: Return NomComs, not Groups, from active_nomcoms filter (#5726)
* fix: Return NomComs, not Groups, from active_nomcoms filter

* fix: deduplicate and order nomcoms in active_nomcoms filter
2023-05-31 15:05:59 -05:00
Robert Sparks c12f810dd4
test: ignore acceptable order change (#5727)
* test: ignore acceptable order change

* fix: address review comments
2023-05-31 15:04:51 -05:00
Nicolas Giard 1ec403dc8c
feat: disable login button on submit (#5718)
* feat: disable login button on submit

* refactor: move login js into its own file
2023-05-31 14:58:09 -05:00
Lars Eggert e5dcc1667c
fix: Fix overscrolling of rfc2html pre tags with new fonts (#5709) 2023-05-31 12:39:31 -05:00
Lars Eggert 48dce85cac
fix: Remove "purpose" column, show purpose as badge (#5721)
Fixes #5711
2023-05-31 12:37:21 -05:00
Jennifer Richards 8cd09ab3be
Revert "fix: Return NomComs, not Groups, from active_nomcoms filter"
This reverts commit e121b5dd50.
2023-05-31 14:13:46 -03:00
Jennifer Richards e121b5dd50
fix: Return NomComs, not Groups, from active_nomcoms filter 2023-05-31 12:36:49 -03:00
Jennifer Richards 3015359323
test: Use QuerySetAny alias for QuerySet type checks 2023-05-31 11:09:08 -03:00
Jennifer Richards 1922a6066e
Merge pull request #5700 from ietf-tools/main
chore: main -> django4
2023-05-31 10:59:09 -03:00
Lars Eggert f8e1899108
fix: Don't include modal headings in right-hand nav menu (#5710)
Fixes #5701
2023-05-30 11:56:17 -05:00
Jennifer Richards d595aaced0
fix: Skip title validation if only XML uploaded (#5694) 2023-05-26 09:28:16 -05:00
Nicolas Giard 0a11892414
chore: use variable for static.ietf.org references (#5692) 2023-05-25 17:23:18 -05:00
Lars Eggert 5f4dfb87b6
fix: Use new fonts for PDFization (#5688) 2023-05-25 09:43:15 -05:00
Robert Sparks 66f1ba3088
fix: reflect publication of rfc9389 (#5685) 2023-05-25 08:28:13 -05:00
Paul Selkirk 65bd689daa
fix: make chat room an overrideable property of Session (#5681)
* fix: make chat room an overrideable property of Session

* test: validate that /meeting/session/<sessionid>/edit shows and sets chat room

* test: validate Session.chat_room_name
2023-05-24 10:26:19 -05:00
Robert Sparks 4012a213c5
feat!: Version 11 based on Django 4 2023-05-23 11:25:28 -05:00
Robert Sparks 6178519d43
fix: optimize queries for DocumentChangesFeed (#5675) 2023-05-23 10:14:13 -05:00
Jennifer Richards e973672c25
Merge branch 'feat/django4' into dev/merge-main-5679 2023-05-23 12:11:17 -03:00
Jennifer Richards ceb41e6106
test: Check that error is displayed on decode failure 2023-05-23 11:30:35 -03:00
Jennifer Richards 5f0e1a524b
chore: Display errors if nomcom private key encoding fails 2023-05-23 11:30:14 -03:00
Jennifer Richards 58182fd7f6
test: Fix selectors in selenium tests 2023-05-19 17:54:24 -03:00
Jennifer Richards 2a29be5d6a
test: Remove unused import 2023-05-19 16:23:42 -03:00
Jennifer Richards 2eaea55ce8
chore: Move log out suppression to settings,py 2023-05-19 15:25:35 -03:00
Jennifer Richards 579d187f0c
chore: Suppress deprecation warning in oidc_provider 2023-05-19 15:20:09 -03:00
Jennifer Richards bc3dcb6c03
test: Fix another test broken by changing "Sign out" to a form 2023-05-19 15:11:59 -03:00
Jennifer Richards 36fe6a0206
fix: Store nomcom private key in session as str
bytes are incompatible with JSONSerializer
2023-05-19 14:57:27 -03:00
Jennifer Richards 93e9f8e850
fix: Do not set update_fields when saving new instance 2023-05-19 14:36:08 -03:00
Jennifer Richards be25fb954b
test: Ignore menu bar when counting "submit" buttons
(the "Sign out" link is now a submit button)
2023-05-19 14:18:02 -03:00
Jennifer Richards 102a612857
test: POST instead of GET for logout tests 2023-05-19 14:12:12 -03:00
Jennifer Richards 37a6521879
test: Form is r.context["form"], not r["form"] 2023-05-19 13:37:39 -03:00
Jennifer Richards 1eafdca65c
chore: Replace django.utils.timezone.utc with dateutil.timezone.utc 2023-05-19 13:23:38 -03:00
Jennifer Richards fdc074b313
test: Use new signature for assertFormError 2023-05-19 13:23:07 -03:00
Jennifer Richards da8717f0e9
chore: Set chunk_size on QuerySet.iterator() 2023-05-19 13:10:06 -03:00
Jennifer Richards 7ae0576a44
style: Apply Black style to methods in review.utils 2023-05-19 13:08:47 -03:00
Jennifer Richards b6a791511f
chore: Use DjangoDivFormRenderer to opt in to new default 2023-05-19 12:52:26 -03:00
Jennifer Richards 2d6681d78c
refactor: logout via GET is deprecated, use POST 2023-05-19 11:42:43 -03:00
Jennifer Richards b06fc7acc4
chore: Suppress warning about CryptPasswordHasher 2023-05-19 11:28:58 -03:00
Jennifer Richards 19abdfe5e7
refactor: Inject tests without using deprecated extra_tests 2023-05-19 11:09:05 -03:00
Jennifer Richards 25b9976460
chore: Switch to JSONSerializer
PickleSerializer is deprecated
2023-05-18 18:37:25 -03:00
Jennifer Richards 39a854fa1a
fix: Use arbitrary date in the past instead of datetime.min 2023-05-18 18:36:38 -03:00
Robert Sparks d0f8e1148a
chore: keep csp config in sync with production configuration (#5656) 2023-05-18 16:29:30 -05:00
Robert Sparks 34d714c4ec
chore: remove gather from CRSF_TRUSTED_ORIGINS (#5657) 2023-05-18 16:29:18 -05:00
Jennifer Richards c71f44fdb2
chore: Suppress deprecation warning for oidc_provider 2023-05-18 18:00:46 -03:00
Jennifer Richards 6df5d4c67f
chore: Suppress CICharField deprecation warning 2023-05-18 18:00:46 -03:00
Jennifer Richards 65ea426793
fix: Add changed fields to update_fields in Model.save() methods 2023-05-18 18:00:45 -03:00
Jennifer Richards 171a5bec73
chore: Update setuptools version and suppress warnings
pkg_resources warning is caused by a few packages
(django-simple-history. django-widget-tweaks, etc). The datetime_safe
warning is in tastypie, as indicated. The others are deprecated
settings we already have tickets for.
2023-05-18 18:00:45 -03:00
Jennifer Richards 55fb502179
test: Iterate over template.nodelist in apply_template_test 2023-05-18 15:18:02 -03:00
Jennifer Richards 47e2b0b027
fix: Prevent use of FK relation before review request is saved 2023-05-18 15:18:02 -03:00
Jennifer Richards c26c9c71e4
chore: Switch to PyMemcacheCache backend 2023-05-18 15:18:01 -03:00
Jennifer Richards cdec6cc0aa
Merge pull request #5655 from ietf-tools/main
chore: Merge main into feat/django4
2023-05-18 15:15:42 -03:00
Robert Sparks f9322391dd
fix: change trac.ietf.org links to what they redirect to now (#5651) 2023-05-18 08:31:54 -05:00
Jennifer Richards cbabb864c2
test: Use issubclass, not isinstance, to ID view_class 2023-05-17 16:09:56 -03:00
Jennifer Richards d519bca12c
test: Fix ignore_pattern so Redirect/TemplateViews are ignored again 2023-05-17 15:59:28 -03:00
Eric Vyncke 2a27a2bffc
feat: Can we provide a better review assignment email subject. #3760 (#5415)
* Specific email subject + requester/secretary in cc

* Send the deadline in the subject

* Use unicode rather than ASCII for reviewer's name

* More log info in the test

* Fix the closing parenthesis

* Fix the email test  when review is assigned

* chore: address review comment

---------

Co-authored-by: Robert Sparks <rjsparks@nostrum.com>
2023-05-17 12:23:20 -05:00
Jennifer Richards f85978fe24
chore: Disable L10N localization 2023-05-17 12:52:34 -03:00
Robert Sparks ab01e72ada
fix: tweak submit instructions to match very recent changes to the UI (#5646) 2023-05-17 09:25:17 -05:00
Russ Housley ef598a6dae
fix: Update I-D submission instructions. Fix #5264 (#5407)
* Fix: Update I-D submission instructions. Fix #5264

* Resolve comments in PR 5407
2023-05-17 09:17:30 -05:00
Jennifer Richards 8cf609bfa9
refactor: Implement require_api_key with functools.wraps
The @decorator mechanism does not seem to work with @method_decorator
in Django 4.0, have not tracked down why.
2023-05-17 09:45:07 -03:00
Robert Sparks 38bab2575e
fix: better htmlized access to uncurrent revisions (#5639) 2023-05-16 17:08:18 -05:00
Jennifer Richards 223c679942
chore: Add no-op migration to satisfy Django bookkeeping changes 2023-05-16 17:48:44 -03:00
Nicolas Giard 12f1cb200a
feat: set fonts for htmlized doc template (#5636) 2023-05-16 14:56:36 -05:00
Jennifer Richards 88452a2db1
chore: Add USE_DEPRECATED_PYTZ to settings.py 2023-05-16 16:20:51 -03:00
Jennifer Richards 76fa01b817
chore: Suppress deprecation warning for oidc_provider AppConfig 2023-05-16 13:21:12 -03:00
Jennifer Richards 374c1a40be
chore: Use new format for CSRF_TRUSTED_ORIGINS setting 2023-05-16 13:14:48 -03:00
Jennifer Richards 7475aa01b6
Merge pull request #5634 from ietf-tools/main
chore: Merge main into feat/django4
2023-05-16 13:06:49 -03:00
Paul Selkirk 37118a623a
fix: change api_submission blackout message to match web ui (#5623)
* test: api_submission returns an error in the blackout period

* fix: change api_submission blackout message to match web ui (#5350)
2023-05-16 09:43:20 -05:00
Robert Sparks c16a9d6cb5
fix: better area links from the menus (#5620)
* fix: better area links from the menus

* chore: remove debugging line
2023-05-15 16:41:42 -05:00
Robert Sparks 6fd9a39df8
chore: update test name fixuture (#5627) 2023-05-15 16:38:11 -05:00
Nicolas Giard 3d6ca172ce
feat: change fonts to Inter and Noto Sans Mono (#5628) 2023-05-15 16:37:00 -05:00
Jennifer Richards b714bfb083
chore: Put widgets from django-password-strength into ietfauth 2023-05-15 17:55:11 -03:00
Robert Sparks b4a692fac1
fix: show session times in meeting timezone when announcing scheduling (#5622) 2023-05-15 14:55:37 -05:00
Robert Sparks 7dbac2067f
fix: show meeting timezone when editing sessions (#5619)
* fix: show meeting timezone when editing sessions

* chore: run black on session_filters
2023-05-15 14:50:10 -05:00
Jennifer Richards 329fa26ee0
chore: Remove abandoned django-password-strength package 2023-05-15 15:29:00 -03:00
Robert Sparks 962af9feb3
fix: tweak removal of document info order (#5624)
* fix: tweak removal of document info order

* chore: add copyright line

* chore: correct dependencies
2023-05-15 13:20:59 -05:00
Jennifer Richards 0319f35e0f
test: Use Django 3.2 HttpResponse.headers API 2023-05-15 13:01:59 -03:00
Peter Yee 369fe0dfe5
fix: remove order from DocumentInfo as apparently unneeded (fixes #5245) (#5417)
* fix: remove order from DocumentInfo as apparently unneeded (fixes #5245)

Fixes #5245. Includes migration, however I did not test the reverse.

* Merge branch 'main' into pr/Spectre17/5417

* chore: Renumber migrations

* Revert "Merge branch 'main' into pr/Spectre17/5417"

This reverts commit 77b4a46f84e9ece6778dec6e8127aedad71c2625.

---------

Co-authored-by: Jennifer Richards <jennifer@staff.ietf.org>
Co-authored-by: Robert Sparks <rjsparks@nostrum.com>
2023-05-15 10:35:54 -05:00
Jennifer Richards 22bf508922
test: Suppress notices from mypy involving factory types 2023-05-15 12:20:02 -03:00
Jennifer Richards cbb946455f
test: Remove unused assignment that caused a mypy error 2023-05-15 11:25:38 -03:00
Jennifer Richards c840d53cb2
test: Suppress mypy error on import of _lazy_re_compile() 2023-05-15 11:04:29 -03:00
Jennifer Richards 68eb685382
test: Use django_stubs_ext.QuerySetAny for isinstance() checks
mypy complains if QuerySet is used because it uses a parameterized
generic type.
2023-05-13 10:05:33 -03:00
Jennifer Richards 7ad74c99e4
refactor: import from django.urls instead of django.conf.urls 2023-05-12 20:29:11 -03:00
Jennifer Richards 00f3f01e7e
fix: {% endif %}, not {% end %} 2023-05-12 18:52:35 -03:00
Jennifer Richards 872bdef06b
refactor: Use gettext instead of deprecated ugettext 2023-05-12 18:37:01 -03:00
Jennifer Richards 79b749fcdf
style: Restyle method using Black 2023-05-12 18:36:05 -03:00
Jennifer Richards 21004864b0
refactor: Replace deprecated is_safe_url with new name 2023-05-12 18:35:12 -03:00
Jennifer Richards 32ed1b7c4a
refactor: Replace deprecated {% ifequal %} with {% if %} 2023-05-12 18:33:15 -03:00
Jennifer Richards bee7e11360
chore: Remove accidental import from settings.py 2023-05-12 18:29:39 -03:00
Jennifer Richards b5d9e9b14c
refactor: Replace deprecated django.utils.http.urlquote 2023-05-12 18:27:51 -03:00
Jennifer Richards 075aed7e9a
refactor: Replace deprecated request.is_ajax() 2023-05-12 18:26:56 -03:00
Jennifer Richards 9d21196adc
chore: Add DEFAULT_AUTO_FIELD to settings.py 2023-05-12 18:03:28 -03:00
Jennifer Richards aa4c04126c
chore: Use re_path() instead of url(), its deprecated synonym, 2023-05-12 17:09:32 -03:00
Jennifer Richards d0cb46d320
fix: Use TruncDate instead of QuerySet.extra() 2023-05-12 15:47:37 -03:00
Jennifer Richards ccb7d666ce
chore: Remove add-django-http-cookie-value-none.patch
Fixed upstream
2023-05-12 15:47:37 -03:00
Jennifer Richards 1419a0e7c8
test: Remove ScheduleEditTests.testUnschedule (#5607)
* test: Remove ScheduleEditTests.testUnschedule

Has been disabled under Django 2. Simple refactoring does not make it
functional under Django 3. Probably because we know that Selenium does
not handle HTML5 drag-and-drop well. Discarding until we move to a
better JS testing framework.

* test: Remove unused imports
2023-05-12 13:18:15 -03:00
Jennifer Richards 96396b833c
Merge pull request #5611 from ietf-tools/main
chore: merge main into feat/django4
2023-05-12 11:05:57 -03:00
Robert Sparks 6b4115a52b
test: ignore irrelevant difference in list element order (#5609) 2023-05-12 09:03:13 -05:00
Robert Sparks 1afdb0b7cc
fix: show htmlized views of draft revisions without DocHistory (#5599)
* fix: show htmlized views of draft revisions without DocHistory

* fix: handle htmlized views of rfcs corectly
2023-05-11 17:15:01 -05:00
Jennifer Richards 264ff60cd2
Merge pull request #5601 from jennifer-richards/django4
chore: Upgrade to Django 3.0
2023-05-11 11:04:36 -04:00
Robert Sparks 6089d4726c
chore: remove debugging file write from test (#5598) 2023-05-11 09:37:02 -05:00
Jennifer Richards 0d070597b4
style: Double backslashes in strings
Not sure why, but if I change the DeprecationWarning filter to
"error", I get a SyntaxError from the \[ because it is an invalid
escape sequence. Not sure why that change triggers it, but
"\[" and "\\[" are the same, so this is a no-op.
2023-05-10 19:21:47 -03:00
Jennifer Richards eee145ee67
fix: Explicitly order GroupTypeNames in active_group_types
Relying on Meta.ordering to order querysets involving GROUP BY queries
is deprecated and will be dropped in Django 3.1.
2023-05-10 19:19:39 -03:00
Jennifer Richards 406ba7bf0b
style: Apply Black style to active_group_types() view 2023-05-10 19:18:30 -03:00
Jennifer Richards e6259a5218
chore: Remove filter on staticfiles DeprecationWarning 2023-05-10 18:52:52 -03:00
Jennifer Richards 1015cf83f8
fix: Finish refactoring LiaisonModelForm subclasses without BetterModelForm 2023-05-10 18:47:36 -03:00
Jennifer Richards 4f443cc445
refactor: Explicitly allow name=None for a couple of views 2023-05-10 17:16:20 -03:00
Jennifer Richards 163479bc06
refactor: Replace obsolete staticfiles template lib with static 2023-05-10 17:12:34 -03:00
Jennifer Richards 85d0934ba0
refactor: Refactor LiaisonForm without BetterModelForm 2023-05-10 17:03:31 -03:00
Jennifer Richards a75dbd4f40
chore: Remove accidentally reverted removal of form_utils app 2023-05-10 16:50:42 -03:00
Jennifer Richards 57026bbb5f
Revert "chore: Remove django-cookie-delete-with-all-settings.patch"
This reverts commit 2cf2a3dee6.
2023-05-10 15:55:25 -03:00
Jennifer Richards 69eb6340fd
test: Do not misuse django.conf.settings for HTML validation params 2023-05-10 15:41:36 -03:00
Robert Sparks f8113cb862
fix: close open things (#5593)
* fix: close open things

* fix: clean up test created files

* fix: remove one close too many
2023-05-10 11:19:34 -05:00
Jennifer Richards ed571ae50b
chore: Rename DB engine to drop the deprecated "_psycopg2" suffix 2023-05-10 12:40:37 -03:00
Jennifer Richards a0f6cdb661
feat: Process uploaded submissions asynchronously (#5580)
* fix: Use relative URL for submission status link

* refactor: Refactor/rename process_uploaded_submission async task

* feat: Add async task to process but not accept a submission

* feat: Replace upload_submission() with an async implementation (WIP)

* fix: Do not put Submission in "uploaded" state if an error occured

* refactor: Improve text/XML draft processing flow

* feat: Extract authors from text in async processing

* fix: Fix call signatures and abort submission on failed validation

* feat: Validate submission name format

* fix: Correctly validate emails from text submission

* fix: Clean up submission validation

* fix: Better display errors on upload_submission page

* feat: Reload submission status page when awaiting validation

* test: Fix call signatures; remove unused imports

* chore: Add type hint

* test: Update tests to match renamed task

* fix: Fix typo in error message

* test: Fix failing Api- and AsyncSubmissionTests

* Rename process_uploaded_submission to process_and_accept_...
* Remove outdated tests

Does not yet test new behavior.

* refactor: Break up submission_file() helper

* test: Refactor tests to run the async processing (wip)

* test: Drop test of bad PDF submission

The PDF submission field was removed, so no need to test it.

* test: Update more tests

* test: Bring back create_and_post_submission() and fix more tests

* fix: Drop to manual, don't cancel, on revision inconsistency

Fixes remaining failing SubmitTest tests

* style: Restyle upload_submission() with black

* test: Verify that async submission processing is invoked on upload

* test: Bring back old do_submission and fix tests

Properly separating the upload and async processing stages of submission
is a bigger refactoring than will fit right now. This better exercises
the submission pipeline.

* fix: Accept only XML for API submissions

* test: Test submission processing utilities

* feat: Improve status display for "validating" submissions

* chore: Remove obsolete code

* test: Update test to match amended text

---------

Co-authored-by: Robert Sparks <rjsparks@nostrum.com>
2023-05-09 15:21:46 -05:00
Jennifer Richards da168395fc
refactor: Replace deprecated smart_text with smart_str 2023-05-09 15:23:33 -03:00
Jennifer Richards 07e26dd52e
refactor: Replace deprecated force_text with force_str 2023-05-09 15:21:50 -03:00
Jennifer Richards dcb211fbb3
Merge remote-tracking branch 'origin/main' into django4 2023-05-09 14:26:47 -03:00
Jennifer Richards 2cf2a3dee6
chore: Remove django-cookie-delete-with-all-settings.patch
Patch no longer applies. Needed until Django 4.2.1, so bring it back
if we deploy something earlier than that to production.
2023-05-09 11:09:41 -03:00
Jennifer Richards 6d4d09542f
fix: Replace obsolete curry() with functools.partialmethod() 2023-05-08 22:55:15 -03:00
Robert Sparks 400a830661
chore: add bibxml-ids dir to container build. (#5590) 2023-05-08 15:16:31 -05:00
Jennifer Richards 9fda268853
fix: Replace available_attrs helper (dropped by Django 3.0) 2023-05-08 15:19:33 -03:00
Robert Sparks 2b1f248e36
fix: add a link to the simplified volunteer view (#5583) 2023-05-08 10:29:18 -05:00
Robert Sparks 3bbd5149de
feat: Easy extraction of qualified volunteer list for nomcom chair (#5578)
* feat: Easy extraction of qualified volunteer list for nomcom chair

* fix: tune test setup to years where eligibility calculations can return nonempty

* chore: revert unintended change

* feat: default string when no affiliation is provided
2023-05-05 15:33:47 -05:00
Eliot Lear 8af8a91c20
fix: allow ISE to initiate conflict review (#5570)
* ISE may initiate conflict review

Add ISE to list of those roles who can initiate a conflict review.

* fix: improve conditional for conflict review action. Add tests.

* chore: fix comment typo

---------

Co-authored-by: Robert Sparks <rjsparks@nostrum.com>
2023-05-03 14:04:09 -05:00
Jennifer Richards 6986cae1bf
fix: Listen for show.bs.modal on document (#5565)
Avoids losing the listener when DOM is changed dynamically.
2023-05-02 13:50:38 -05:00
Jennifer Richards db2f7362c5
feat: Include support address in error message 2023-04-27 17:51:19 +00:00
Jennifer Richards b691cb4a9f
fix: Avoid 500 error creating account when User.person is None 2023-04-26 18:34:49 +00:00
Lars Eggert 732cecf0e9
fix: Re-enable interim series "add session" button (#5485)
Fixes #5478

Co-authored-by: Nicolas Giard <github@ngpixel.com>
2023-04-25 16:30:06 -05:00
Robert Sparks 5f36905515
fix: reorder new nomcom migration (#5534) 2023-04-25 11:59:41 -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
Rich Salz 8c98abb537
fix: Edit "You've been nominated" text (#4641) (#5357)
Mention that the schedule is posted to ietf-announce and give a link
to subscribe to that.  Use vague wording to handle all cases.

Also add reminder when to not uncheck the "send automatically" box.
2023-04-23 18:07:27 -05:00
Jennifer Richards 372891194e
feat: Move IESG agenda items from filesystem to DB (#5366)
* feat: Add TelechatAgendaContent model and related support

* feat: Add UI for managing TelechatAgendaContents

* refactor: Rename _view view to _manage

* feat: Add a view to dump the TelechatAgendaContent as text/plain

* refactor: Point agenda_data() helpers at content in the DB

* refactor: Replace references to settings URLs/paths with new plumbing

* chore: Remove now-obsolete settings from settings.py

* feat: Link to telechat_agenda_content_manage view from iesg agenda

* fix: Use correct view name

* feat: Link from agenda content management page to IESG agenda view

* chore: Create resources

* chore: Add new names to names.json

* chore: Renumber migration after rebase

* chore: Remove unused import

* fix: Clean up partially removed code

* chore: Add admin model for TelechatAgendaContent

* chore: Simplify __str__ method for TelechatAgendaContent

* test: Add TelechatAgendaContentFactory

* test: Test the fill_in_agenda_administrivia() function

* test: Test that agenda contains action_items content

* test: Test that sensitive agenda links are restricted by role

* test: Test the telechat_agenda_content_view view

* test: Add test of telechat_agenda_content_edit view

* fix: Add type attribute to button to satisfy html validator

* test: Filter TelechatAgendaSectionName to used=True for tests

* test: More thoroughly test for likely(ish) permission errors

* fix: Fix typo in "tablist" role

* test: Test telechat_agenda_content_manage view

* style: Put back newlines at EOF

* chore: Add admin for TelechatAgendaSectionName

* chore: Renumber migrations

* fix: Depend on the correct migration

Forgot to update the number, but was also depending on the wrong
migration.
2023-04-23 18:05:58 -05:00
Rich Salz 24277f6ff2
fix: Add "empty-list" indicator (#5504) (#5505) 2023-04-23 17:58:40 -05:00
Jennifer Richards c6fbdef6df
fix: Handle integrity violations when confirming email address (#5506)
* fix: Handle integrity violations when confirming email address

* test: Add tests of confirm_new_email view
2023-04-23 17:58:05 -05:00
Robert Sparks a2f1c1f705
chore: update version in primary init (#5495) 2023-04-14 17:43:46 -05:00
Martin Thomson d3f3e1e40a
fix: Remove useless directives for Updates/Obsoletes (#5484)
These only unnecessarily narrow the space available.
See RFC 8996 for an example of where that might matter.
2023-04-14 17:43:25 -05:00
Nicolas Giard 48beabe606
chore: add release 10.0 info in about.html (#5492) 2023-04-13 11:47:46 -05:00
Lars Eggert 0f1a774b79
fix: Unbreak HTMLized table of contents (#5486)
Fixes #5483
2023-04-12 17:34:30 -05:00
Jennifer Richards 716a77a848
fix: Do not try to match None keyword when redirecting to agenda view (#5489) 2023-04-12 17:34:00 -05:00
Robert Sparks 84c1fa195b
feat!: Use postgresql instead of mysqldb (#5482)
BREAKING CHANGE: The underlying database is now postgresql.
2023-04-10 12:47:43 -05:00
Robert Sparks f556d1f6da
Merge remote-tracking branch 'ietf-tools/main' into feat/postgres 2023-04-10 12:20:24 -05:00
Lars Eggert 34482cd100
fix: Long session titles were overlapping the materials buttons (#5454) 2023-04-10 08:58:22 -05:00
Robert Sparks 0f1a09f635
Merge remote-tracking branch 'ietf-tools/main' into feat/postgres 2023-03-31 10:52:45 +09:00
Lars Eggert 50e716e440
fix: Only presort tables if sort order is specified (#5408)
Thanks to @kivinen
2023-03-31 10:38:02 +09:00
Lars Eggert 8b815fc76d
feat: Add list of sub-groups to group's "about" page (#5450)
* feat: Add list of sub-groups to group's "about" page

Fixes #5441

* Address review comments
2023-03-31 10:29:07 +09:00
Jennifer Richards 7f5c3a3699
refactor: Remove length limit on Message header fields (#5455) 2023-03-31 09:37:46 +09:00
Tero Kivinen d5bae45799
fix: Do not add user to the top of queue after reject (fixes #4505) (#5427)
* fix: Do not add user to the top of queue after reject (fixes #4505)
Added a checkbox in the reject review dialog to ask whether user
wants to be added to the top of the queue or not. Default is off.

* Do not change request_assignment_next if wants_to_be_next is not True.
Set the request_assignment_next also in LeastRecentlyUsedReviewerQueuePolicy
so it can be used to override the assignment policy rules (i.e., if
someone has once per month, but he rejects review with wants_to_be_next set
to true, he will get new assignment immediately, not after one month).

* Added wants_to_be_next to test cases too.

* Fixed test function prototypes, they can't have any parameters, only
self. Added test cases for test_return_reviewer_to_rotation_top both
for RotateAlphabeticallyReviewerQueuePolicyTest and
LeastRecentlyUsedReviewerQueuePolicyTest.
2023-03-30 08:34:08 +09:00
Ryan Cross 1bd5c5e2f1
feat: Add requests summary (#5439)
* feat: Add summary data to meeting/requests

* feat: Add Group Type and Purpose tables to requests summary

* fix: use self.assertXX instead of raw assert

---------

Co-authored-by: Robert Sparks <rjsparks@nostrum.com>
2023-03-30 08:07:59 +09:00
Jim Fenton 0f1a6c960f
chore: Update test docs to postgresql; remove extraneous sqlite stuff (#5400)
* chore: Update test docs to postgresql; remove extraneous sqlite stuff

* Reverted addition of settings_postgrestest.py to .gitignore
2023-03-29 10:45:03 +09:00
Robert Sparks 01b4a91bfe
Merge remote-tracking branch 'ietf-tools/main' into feat/postgres 2023-03-29 10:41:47 +09:00
Jennifer Richards 72954c24fc
chore: Add type annotations to satisfy linter (#5435) 2023-03-29 09:06:14 +09:00
Jennifer Richards 6b826fd985
refactor: Purge old migrations and update ci to build on a clean schema (#5431)
* refactor: Remove all existing migrations

* refactor: Create clean set of migrations

* chore: Skip check_statetype_slugs when DB is not yet populated

* fix: Do not cache active_groups_menu on module import

* fix: Do not patch timezone awareness out of oidc-provider

* refactor: Migrate to create postgres schema, only use pgloader for data

* ci: Use migration scripts from feat/pg-migrations branch

* Revert "ci: Use migration scripts from feat/pg-migrations branch"

This reverts commit c82f64c614241ccede4865a50d494725c8a47c15.

* ci: Run check before migrate

* fix: Remove redundant migration caused by merge error

* chore: Add casts/ALTER TABLEs to eliminate pgloader errors/warnings

* chore: Change schema name to match docker image assumptions

* chore: Clear out schema so we get a clean start in case of a retry
2023-03-28 18:06:07 +09:00
Lars Eggert 53a90a38ce
fix: Don't disable mouse hover UI functionality on touch screens (#5433)
Because devices can have both touch and mouse input.
2023-03-28 12:16:04 +09:00
Kesara Rathnayake b0c76416cd
feat: Allow password reset with non username email address (#5419)
This change allows password reset with any email address associated with the
account.
The password reset will only be sent to the active email addresses associated
with the account.

Fixes #5057
2023-03-28 11:07:31 +09:00
Robert Sparks 52a1069901
fix: reapply styling fix for pdfization (#5428) 2023-03-27 15:08:43 +09:00
Ian Williams a778377bb8
fix(doc): Replace iconography for position's email status with text label (#5421)
* fix(doc): Use text badges for email status

BI's envelope icons with status icons are difficult to read.
Use text labels instead (keeping the same tooltip).

Fixes #3855.

* test(doc): Fix failing ballot message tests

Some ballot message changes have been modified to correctly identify
what type of document this ballot is for.

Works on #3855

* test(doc): Remove debugging statement

Accidental inclusion of debug statement.

Works on #3855
2023-03-27 13:58:51 +09:00
Lars Eggert 7c890ea69e
chore: Remove unused agenda-personalize.js (#5387)
Co-authored-by: Robert Sparks <rjsparks@nostrum.com>
2023-03-26 14:53:31 +09:00
Rich Salz e1283cec6d
fix: Make "nomcom paths" field CSV-friendly (#4892) (#5401)
When generating the NomCom volunteer paths, use a plus sign rather
than a comma, so that the output is more CSV-friendly.

Co-authored-by: Robert Sparks <rjsparks@nostrum.com>
2023-03-26 14:19:49 +09:00
Lars Eggert 99cd5a39f4
chore: Remove unused arrow-ani.webp (#5386) 2023-03-26 14:15:39 +09:00
Jennifer Richards bc9c74ef50
fix: Render complete iCalendar event when show_location is False (#5394)
* test: More carefully test event syntax in ical file

* test: Test agenda.ics view with all meeting sessions

* fix: Render complete iCalendar event when show_location is False

* chore: Fix confusing comment
2023-03-26 14:13:58 +09:00
Lars Eggert b11f0fc50f
fix: Lengthen IESG dashboard trend period to 120 days (#5409)
Fixes #4450
2023-03-25 17:38:57 +09:00
Lars Eggert c3bb142c98
Rebase (#5416) 2023-03-25 17:37:33 +09:00
Jim Fenton 2c9a7fcb1c
fix(ipr): Clarify IPR update confirmation email (#5420)
Fixes #4133
2023-03-25 17:30:51 +09:00
Jim Fenton d25eca930d
fix(doc): remove revision from shepherd writeup title (#5413)
Fixes #4200
2023-03-25 16:15:34 +09:00
Lars Eggert 0bc0469df2
chore: Remove unused jquery-ui (#5385)
* chore: Remove unused jquery-ui

Two templates under `secr` included it, but didn't seem to use it
for anything.

* Run `yarn` after removal
2023-03-25 15:57:44 +09:00
Lars Eggert 58b3155eda
chore: Remove unused week-view.js file (#5383) 2023-03-21 08:48:40 -05:00
Lars Eggert 5ed1d69f52
chore: Remove unused room-params.js (#5384) 2023-03-21 08:48:22 -05:00
Lars Eggert 3865d5232b
chore: Remove unused agenda_timezone.js (#5388) 2023-03-21 08:42:34 -05:00
Lars Eggert 81573a29c9
fix: Use more subtle colors for "Request full access URL" alert (#5390)
Fixes #1765
2023-03-21 08:41:51 -05:00
Robert Sparks 88a78cf1ab
Merge remote-tracking branch 'ietf-tools/main' into feat/postgres 2023-03-20 13:46:32 -05:00
Lars Eggert 8f8a3489ea
fix: Add reviewer name to review assignment summary (#5363)
* fix: Add reviewer name to review assignment summary

Fixes #5360

* Address code review

* Fix test harder
2023-03-20 10:23:45 -05:00
Lars Eggert 0097778239
chore: Remove empty file (#5374) 2023-03-20 10:11:50 -05:00
Jennifer Richards 330442171f
fix: Remove accidentally doubled bracket in f-string (#5365) 2023-03-17 17:23:51 -05:00
Lars Eggert 8dd6947ac0
fix: Make "navskip" apply to all headings in an element (#5364)
Fixes #5291
2023-03-17 13:57:22 -05:00
Lars Eggert 57030e4303
fix: Pre-sort WG doc table on date (#5361)
Fixes #5341.

Also remove some js code that was only used on the old agenda
page while I'm here.
2023-03-17 12:07:25 -05:00
Robert Sparks 39be6da031
chore: abstract ADMINS (#5355) 2023-03-16 11:02:51 -05:00
Jennifer Richards ab63eb0f48
chore: Add absent iesg 0001_initial.py migration (#5336)
* chore: Add absent iesg 0001_initial.py migration

* chore: Remove index from 0001_initial.py to match production db schema

* chore: Add migration to create index on TelechatDate.date

* chore: Add __init__.py to ietf/iesg/migrations/

* chore: Add type annotation to satisfy linter
2023-03-16 11:02:16 -05:00
Lars Eggert 0faa2e40e7
fix: Don't expose existing emails via reset password and account creation forms (#5288)
* Rebase to feat/postgres

* Attempt to address further review comments
2023-03-15 17:27:29 -05:00
Robert Sparks cf755d2516
fix: update bug report email address (#5342) 2023-03-15 17:26:21 -05:00
Ryan Cross abc70ae650
refactor: Remove secr groups app (#5334) 2023-03-14 12:27:47 -05:00
Lars Eggert a544cc91f9
fix: Import CSS from ea8e9e3489/rfc.css (#5339)
Fixes #5293
2023-03-14 12:23:08 -05:00
Robert Sparks 2fe4647832
feat: endpoint for imapd to authenticate against (#5295)
* feat: endpoint for imapd to authenticate against

* chore: remove unintended whitespace

* fix: be stricter in matching User
2023-03-14 12:19:21 -05:00
Ryan Cross f884e07387
refactor: Remove secr roles (#5257)
* refactor: remove import_audio_files() and related code

* refactor: move functions from proc_utils to meeting/utils

* refactor: remove secr/proceedings

* refactor: remove secr/roles

---------

Co-authored-by: Robert Sparks <rjsparks@nostrum.com>
2023-03-10 15:35:14 -06:00
Ryan Cross b654b49d6b
refactor: Remove secr proceedings (#5256)
* refactor: remove import_audio_files() and related code

* refactor: move functions from proc_utils to meeting/utils

* refactor: remove secr/proceedings
2023-03-10 15:33:01 -06:00
Robert Sparks 4b4e876305
Merge branch 'main' into feat/postgres 2023-03-09 11:43:38 -06:00
Lars Eggert 61504b14aa
chore: Replace unmaintained bootstrap-datepicker with vanillajs-datepicker (#5259)
* chore: Replace unmaintained bootstrap-datepicker with vanillajs-datepicker

Fixes #3569.

* Fix tests

* Fix another test
2023-03-09 10:12:26 -06:00
Lars Eggert 0237411ed5
feat: Add calendar view to "important dates" page (#5260)
Fixes #3512
2023-03-08 13:05:33 -06:00
Lars Eggert 19a7fecf46
fix: Remove unused Meeting.session_constraintnames (#5263)
Fixes #3389
2023-03-08 12:54:16 -06:00
Lars Eggert 8cdeddb2f7
fix: Fix spacing/wrapping in I-D announce email. (#5277) 2023-03-07 10:40:38 -06:00
Lars Eggert 98c24d1bb0
fix: Use correct group type in session request email response (#5275)
* fix: Use correct group type in session request email response

Fixes #2120

* Address review comments

* Address review comments
2023-03-07 10:15:47 -06:00
Lars Eggert 1d87686a2b
fix: Add missing closing brace in meta tag and updated/obsoleted-by info (#5265)
* fix: Add missing closing brace in meta tag

Fixes #3379

* Also fix "obsoleted by" meta information

* name -> canonical_name
2023-03-03 10:49:15 -06:00
Lars Eggert 97df94f41d
fix: Add footer with group interim ics calendar to announce email (#5279)
* fix: Add footer with group interim ics calendar to announce email

Fixes #2939

* Fix test
2023-03-03 10:32:15 -06:00
Robert Sparks fce28e78f9
fix: case sensitivity for Subscribed.email (#5270) 2023-03-03 09:05:17 -06:00
Lars Eggert 6f8cba5cd6
fix: Truncate text agenda labels to not overflow colums (#5276)
* fix: Truncate text agenda labels to not overflow colums

Also tweak the spacing some and add a guard for an undefined field.

Fixes #1313

* Fix test
2023-03-03 08:56:09 -06:00
Jennifer Richards 8041cd5c40
fix: Avoid unwanted whitespace when action_holder_badge is empty (#5266) 2023-03-02 15:17:39 -06:00
Lars Eggert 276dd08794
fix: Don't offer already-disabled API keys for disablement (#5262)
* fix: Don't offer already-disabled API keys for disablement

Fixes #3441

* Remove test class
2023-03-02 10:18:51 -06:00
Jennifer Richards 963b1bd197
test: Use actual room pk instead of assuming keys start at 1 (#5255) 2023-03-01 15:08:40 -06:00
Lars Eggert 5fc93bb8ca
fix: Link to IPR details not history in email (#5252)
* fix: Link to IPR details not history in email

Fixes #5251

* Fix test
2023-03-01 13:02:31 -06:00
Lars Eggert 4f9be6e8a0
fix: Restore correct operation of column sort headers. (#5253)
Fixes #5234. Was broken in c061caa.
2023-03-01 10:45:25 -06:00
Robert Sparks 82f23da2b3
Merge remote-tracking branch 'ietf-tools/main' into feat/postgres 2023-02-28 16:25:46 -06:00
Jennifer Richards 91a6c9a0df
chore: Remove unused ajax_get_utc() view and related plumbing (#5239)
* chore: Remove unused get_ajax_utc() view and related plumbing

* chore: Remove accidentally committed code
2023-02-28 14:36:55 -06:00
Jennifer Richards 0377ebdd28
feat: Put agenda.csv in meeting TZ and add agenda-utc.csv endpoint (#5226)
* fix: Let csv.writer handle encoding for agenda_csv view

* style: Use 'is None' instead of '== None'

* feat: Display times in meeting time for agenda.csv

* feat: Provide agenda-utc.csv view

* test: Test agenda.csv time zone and agenda-utc.csv endpoint
2023-02-28 14:31:07 -06:00
Robert Sparks 1f990bce1d
Merge branch 'main' into feat/postgres 2023-02-28 14:19:59 -06:00
Robert Sparks e8f4ddd26b
fix: adjust type of fk from community to doc (#5240) 2023-02-28 14:14:30 -06:00
Jennifer Richards 1eb16c9002
fix: Let csv.writer handle encoding for agenda_csv view (#5225) 2023-02-28 11:57:16 -06:00
Robert Sparks 74990cfcb8
fix: improve api key delete form validation and tests (#5236) 2023-02-28 11:54:45 -06:00
Jennifer Richards 9a1de57c9e
fix: Only consider ietf meetings as "next" for agenda_ical or agenda_json (#5238)
* style: Clean up get_meeting() signature and code style

* chore: Remove unused parameter from agenda_ical() view's signature

* fix: Only consider ietf meetings as "next" in agenda_ical

* fix: Only consider ietf meetings as "next" in agenda_json

* test: Test agenda_json "next meeting" and clean up agenda_ical test

* style: Reformat new tests using Black style
2023-02-28 11:47:20 -06:00
Lars Eggert cf94b896c8
feat: Add reminder that AD changes for approved documents are unusual (#5231) 2023-02-28 10:21:39 -06:00
Jennifer Richards 8e16b4405b
fix: Support time zones in agenda.txt; restore agenda-utc.txt (#5233)
* fix: Format times in display timezone in agenda.txt template

* chore: Remove unused and non-timezone-friendly TimeSlot.time_desc()

* feat: Dispatch agenda-utc.txt URL

* refactor: Use None to indicate lack of utc parameter to view

* feat: Show display timezone in agenda.txt template

* refactor: Combine URL regexes for the agenda.txt to a single entry

* test: Update tests for agenda.txt/agenda-csv.txt

* fix: Remove ':' added to time formats in agenda.txt template
2023-02-28 10:16:39 -06:00
Ryan Cross e469addcb2
feat: move IETF Activity reports from external text based to HTML pages (#5180)
* feat: move IETF Activity reports from external text based to HTML pages

* fix: use date_today(), fix fencepost problem

* fix: use is_meeting_report template variable instead of is_monthly_report
2023-02-27 16:58:59 -06:00
Robert Sparks f010766654
Merge remote-tracking branch 'ietf-tools/main' into feat/postgres 2023-02-27 12:55:47 -06:00
Lars Eggert caf80efd84
feat: Prefill the abstract, shepherd and AD info into a ballot writeup (#5218)
* feat: Prefill the abstract, shepherd and AD info into a ballot writeup

* Suggestions from @rjsparks

* Remove instructions to add IANA Expert template.

* Make "notes" fields for various bodies conditioned on the doc stream
2023-02-27 12:19:39 -06:00
Jennifer Richards a2bdd3109c
fix: Use session.order_in_meeting() in the agenda (#5222) 2023-02-27 12:18:12 -06:00
Robert Sparks 5c9a3642bd
fix: point menu item for editoral stream to rswg documents (#5206)
* fix: connect the menu item for the editoral stream to the rswg documents page.

* chore: repair merge damage

* fix: address review by shortcircuiting redirects
2023-02-27 08:40:43 -06:00
Jennifer Richards 0ec12647e1
fix: Add order_number to sessions in group.views.meetings() (#5209) 2023-02-24 15:07:45 -06:00
Robert Sparks cbe534ee06
fix: use the intended state machine in person doc searches (#5204)
* fix: use the intended state machine in  person doc searches

* chore: apply black to two touched functions
2023-02-24 12:27:17 -06:00
Jennifer Richards 91be593c82
fix: Use more robust filename/rev matching for meeting materials (#5192)
* fix: Use more robust filename/rev matching for meeting materials

* chore: Remove debug statement

* test: Update test to catch bug fixed by this PR

* fix: Be more discerning when parsing revision

* test: Update test to exercise revision parsing/validation

* style: Apply Black styling to replaced code
2023-02-24 12:26:53 -06:00
Lars Eggert 02f8bf20ef
feat: Add a "report errata button" (#5193)
And also rename "report a bug" to "report a datatracker bug", in the hopes of
reducing GitHub tickets that are not datatracker-related.
2023-02-24 09:13:00 -06:00
Robert Sparks b9baa6270e
chore: remove a stray space that crashes black (#5185) 2023-02-23 08:50:24 -06:00
Kesara Rathnayake cedf6a47ab
feat: Include previous draft URL in /api/rfcdiff-latest-json (#5172) 2023-02-22 12:09:32 -06:00
Lars Eggert d6d1525da2
feat: Add group stats sunburst plots to active WG page (#5126)
* feat: Add group stats sunburst plots to active WG page

* Cleanups

* Sort/color areas consistently

* Move graphs to area page

* Move sunbursts

* Add test

* Move most sunbursts to modals

* Remove parametrization from URLs

* Fix test

* Make `only_active` a bool

* Reformat

* Reformat more
2023-02-22 12:05:06 -06:00
Jennifer Richards 42096989ec
feat: Include remote instructions and onsite tool in ics files (#5182)
* feat: Add remote_instructions for sessions to agenda.ics

* feat: Add webex/meetecho/remote_instructions to upcoming.ics

* fix: Remove location-based details from interims in upcoming.ics

Interim sessions don't ever seem to have locations, so they won't use
the new code anyway. Leave in the remote-instructions.

* test: Test inclusion/exclusion of remote_instructions in upcoming.ics

* test: Test inclusion/exclusion of remote_instructions in agenda.ics

* feat: Include onsite tool link in agenda.ics

* test: Test inclusion of meetecho onsite and remote URLs in agenda.ics
2023-02-22 11:34:28 -06:00
Lars Eggert 90b6cf4ba5
fix: Don't show replaced, expired or otherwise abandoned docs for AD (#5162)
* fix: Don't show replaced, expired or otherwise abandoned docs for AD

Fixes #5153 and #2889.

* Fix filter conditions

* Update ietf/doc/views_search.py

Co-authored-by: Robert Sparks <rjsparks@nostrum.com>

---------

Co-authored-by: Robert Sparks <rjsparks@nostrum.com>
2023-02-21 17:18:52 -06:00
Lars Eggert cb7abbceab
fix: Prevent ADs and chairs from being added to bethere constraint (#5169)
* fix: Prevent ADs and chairs from added to `bethere` constraint

Fixes #5163 and #3890

* Fix tests and change from "people" to "participants", to hopefully make it
clearer it's not ADs and chairs.

* Rewrap

* Update ietf/secr/sreq/forms.py

Co-authored-by: Robert Sparks <rjsparks@nostrum.com>

---------

Co-authored-by: Robert Sparks <rjsparks@nostrum.com>
Co-authored-by: Jennifer Richards <jennifer@painless-security.com>
2023-02-21 11:03:33 -06:00
Jennifer Richards dcdc4af3e0
feat: Use case-insensitive matching for document searches (#5166)
* fix: Use case insensitive match for group acronym in doc search

* fix: Use case insensitive match for doc.search_by_name view

* fix: Use case insensitive match for doc names in ipr.search view

* test: Test case insensitivity in doc search/search_for_name
2023-02-21 10:21:29 -06:00
Jennifer Richards 50601345aa
fix: Sort rooms by ascending capacity in schedule editor (#5178)
* fix: Order rooms by ascending capacity in schedule editor

* chore: Revert unrelated changes accidentally included in commit
2023-02-21 10:18:13 -06:00
Robert Sparks 0ce2b8ef54
fix: cache page content, not page menus (#5170)
* fix: cache page content, not page menus

* fix: close the new cache tags
2023-02-21 10:13:45 -06:00
Robert Sparks c38ade6e1b
feat: treat django auth username as case insensitive throughout the datatracker (#5165)
* feat: insensitive username matching at django authentication

* feat: use iexact when using the User object manager

* fix: more places to ignore username case

* fix: remove unused management command

* fix: avoid get when probing for object existance

* fix: force lowercase new usernames in secr/rolodex

* fix: use explicit arguments when creating user
2023-02-21 10:01:03 -06:00
Jennifer Richards 6a3694e814
fix: Guard against null form-group around name fields in sreq view (#5175) 2023-02-21 09:53:57 -06:00
Jennifer Richards 957f560ac2
feat: Grab slides for reorder using the handle instead of entire row (#5176) 2023-02-21 09:43:06 -06:00
Lars Eggert 07b10b221b
fix: Point to IAB liaison page from datatracker liaison pages (#5168)
Fixes #4971
2023-02-17 17:33:15 -06:00
Kesara Rathnayake f70ce3eaab
fix: Move rfcdiff-latest-json API call from /doc to /api (#5155)
Old /doc/rfcdiff-latest-json/ URL is changed to a permanent redirect to
/api/doc/rfcdiff-latest-json/
2023-02-17 10:39:47 -06:00
Lars Eggert 81ffad9852
fix: add distinct() to sync/discrepancies (#5167)
Fixes #5129
2023-02-17 09:54:07 -06:00
Jennifer Richards f9c2376d27
feat: Return to expected schedule after editing sessions/timeslots (#5158)
* fix: Return to the expected schedule after editing session dteails

* style: Avoid confusing nested double-quotes in html template

* feat: When possible, add "back to agenda" button to edit_timeslots

* chore: Propagate 'sched' to links/includes in timeslot_edit.html

* chore: Propagate 'sched' to links/includes in edit_timeslot() view

* chore: Propagate 'sched' to links/includes in create_timeslot() view

* test: Test sched param propagation in timeslot edit views

* test: Test sched param propagation in session edit view

* test: Fix URL in test_edit_meeting_schedule
2023-02-16 09:57:18 -06:00
Lars Eggert 8734193974
feat: Style preformatted alert messages better (#5152)
* feat: Style preformatted alert messages better

* Fix test
2023-02-16 09:05:32 -06:00
Lars Eggert 0900db01b5
Use viewport-width-based "fluid typography" for font scaling. (#5151)
Instead of media queries. Simplifies the CSS, is more robust, and works for more
screen sizes.
2023-02-15 16:05:29 -06:00
Robert Sparks 9ea8523e85
feat: add target to bibxml-ids (#5148) 2023-02-15 11:37:56 -06:00
Lars Eggert 182158b5c0
fix: Also extract document names from XML seriesInfo attributes and XInclude URLs (#5037)
* fix: Also extract document names from XML seriesInfo attributes

The old code only looked in the anchor string for the document names of
references, which doesn't work if the anchor uses a mnemonic. This caused lots
of missed references for many documents.

* No need to import lxml anymore

* Add tests

* Handle xinclude to bibxml URLs

* Wrap line

* Apply suggestion from @rjsparks

* Undo erroneous additions

* Address suggestion from @rjsparks
2023-02-14 17:07:54 -06:00
Lars Eggert d96c8f7b75
chore: Update to fullcalendar@6 (#5125)
* chore: Update to fullcalendar@6

Also properly apply bs5 styling to upcoming meeting calendar.

* Fix test
2023-02-14 16:22:35 -06:00
Lars Eggert 1e3c826810
fix: Fix document display on very narrow screens (#5080)
Issue by @martinthomson
2023-02-14 16:05:40 -06:00
Jennifer Richards a10464a250
chore: Fix reference to misspelled migration
The migration with the misspelled name already ran on production, so
we have to recreate the typo in the reference to it.
2023-02-14 12:58:45 -04:00
Robert Sparks 7a86a1c2cb
chore: tighten migration dependencies 2023-02-13 17:25:54 -06:00
Jennifer Richards 5abfcd4d71
chore: Update migration numberings/deps 2023-02-13 16:26:25 -04:00
Robert Sparks e1206fa91e
Merge remote-tracking branch 'upstream/main' into feat/postgres 2023-02-13 09:17:05 -06:00
Lars Eggert 800da449f5
fix: Restore responsive font sizes for rfc2html renderings (#5136) 2023-02-13 08:09:42 -06:00
Lars Eggert 1ffe661f6c
fix: add_links_in_new_revision_events wasn't doing anything, remove (#5103)
* fix: `add_links_in_new_revision_events` wasn't doing anything, remove

Whatever `add_links_in_new_revision_events` was supposed to do, it didn't do it.
The linkification of things has been happening via the `format_history_text`
template tag.

* Remove import
2023-02-11 10:31:05 -06:00
Lars Eggert ac0b9ae5e5
fix: Need to linkify during Markdown rendering (#5066)
* fix: Need to linkify during Markdown rendering

* Don't depend on mdx_linkify

* Also linkify IETF docs as part of the Markdown conversion

* Add test case

* Disable automatic links via angle brackets for email addresses

* Inline the markdown test files
2023-02-11 10:13:20 -06:00
Lars Eggert 35f1d21302
fix: Fix deferring ballots from the "edit position" view (#5106)
Fixes #4903
2023-02-11 10:11:05 -06:00
Lars Eggert f8b48f4c43
fix: use Internet-Draft more consistently across the UI (#5104)
* s/Internet Draft/Internet-Draft/i

* s/draft/Internet-Draft/i or s/draft/I-D/i

* s/ID/I-D/

* Fix tests

* a -> an

* Undo case-change to ASCII

* Address code review comments

* Add migrations

* Add merged migration

* fix: straighten out migrations

* fix: finish straightening out migrations

---------

Co-authored-by: Robert Sparks <rjsparks@nostrum.com>
2023-02-11 10:09:28 -06:00
Jennifer Richards 45e8f6816e
fix: Link chat log button to chatlog SessionPresentation if available (#5131) 2023-02-11 10:04:27 -06:00
Jennifer Richards 6c31c73eab
feat: Improve links to meeting tools from group pages (#5130)
* chore: Remove unused template parameter from {%include%}

* feat: Add "Meeting tools" section to group session details panel

* feat: Use better label for recordings section after session has ended

* feat: Define template tag to store timezone.now in the render context

* fix: Use get_now tag in session_buttons_include.html

* fix: Update session_details_panel.html to use get_now tag

* refactor: Inject timezone_now from a context processor instead of tag

* chore: Remove unused imports

* chore: Remove unused {%load%}

* chore: Revert renaming of dateformat.py
2023-02-11 10:00:30 -06:00
Lars Eggert 82e0940f2d
fix: Don't show stale area URLs (#5107)
* fix: Don't show stale area URLs

Fixes #4840

* Remove the old code
2023-02-10 14:39:46 -06:00
Lars Eggert 6a6a3db3b9
fix: Don't try to further linkify rfc2html output (#5112)
* fix: Don't try to further linkify rfc2html output

Fixes #5111

* Fix test
2023-02-10 14:33:54 -06:00
Robert Sparks 4309a4bb50
fix: allow rswg chairs to request sessions (#5124)
Fixes #5122
2023-02-10 14:15:16 -06:00
Lars Eggert e280b25d0f
fix: Identify cancelled meetings in calendar (#5117)
Fixes #4815
2023-02-09 17:07:48 -06:00
Jennifer Richards 1fc2042265
feat: Allow agenda_note to be edited from the schedule editor (#5115)
* feat: Add agenda_note to the SessionDetailsForm

* fix: Add hidden agenda_note field to session_details_form.html

* fix: Stop using agenda_note to filter sessions in import_audio_files()

* chore: Migrate sessions with agenda_note='CANCELED' to canceled state
2023-02-09 17:02:41 -06:00
Robert Sparks 6bbad15b3d
fix: restore generation of rswg/rsab chair aliases (#5121) 2023-02-09 16:57:42 -06:00
Jennifer Richards dd7bed47b0
fix: Preserve remote_instructions and short name in secr.sreq.edit() (#5113) 2023-02-08 15:49:18 -06:00
Lars Eggert c5562fbbea
chore: Update deps (#5084)
* chore: Update deps

* Deal with html-validate changes

* Update fullcalendar

* Delete things
2023-02-08 11:18:54 -06:00
Lars Eggert eec98f01d4
fix: Add period after description of important date. (#5105)
Also make the table sortable and searchable.
2023-02-08 11:13:31 -06:00
Jennifer Richards 7cbc70237a
feat: Allow secretariat to request/edit sessions without sending email (#5110) 2023-02-08 10:43:12 -06:00
Lars Eggert 6b8d57ec3f
chore: Remove unused ietf/secr/middleware/dbquery.py (#5109)
Fixes #4303
2023-02-08 09:57:03 -06:00
Jennifer Richards 6cfbab63ba
fix: Use session name instead of timeslot name on agenda (#5086)
* fix: Use session name instead of timeslot name on agenda

* test: Fix failing playwright test

* test: Test name/slotName values from agenda_extract_schedule()

* chore: Migrate sessions to use timeslot names for IETF meetings
2023-02-07 14:40:23 -06:00
Lars Eggert cda2cfd119
fix: Handle plaintext documents with lines of 80ch (#5098) 2023-02-07 13:15:01 -06:00
Robert Sparks 84d766232b
Merge remote-tracking branch 'upstream/main' into feat/postgres 2023-02-07 12:20:36 -06:00
Lars Eggert 35d124106a
fix: Limit overflow-wrap: break-word to paragraphs and references (#5078)
Fixes #5073.

Thanks @martinthomson
2023-02-06 11:40:46 -06:00
Lars Eggert 1afce6669d
fix: Fix HTML validation issues (#5081) 2023-02-06 09:40:38 -06:00
Lars Eggert f61c531f0d
fix: Don't include the modal inside a button group, it breaks the styling (#5085) 2023-02-06 09:35:10 -06:00
Robert Sparks fac5a8cf0d
fix: restore IRTF non-meeting groups to agenda (#5077)
* fix: restore IRTF non-meeting groups to agenda

Fixes #5010

* fix: account for changes to entry from #5065
2023-02-02 17:03:03 -06:00
Jennifer Richards 0fd8df4e00
test: Set DateField to a date, not a datetime, in factory (#5075) 2023-02-02 13:06:45 -06:00
Martin Thomson bfe25fce5a
feat: Lighter styling on internal irefs (#5071)
Documents like
https://datatracker.ietf.org/doc/html/draft-ietf-ohai-ohttp-06 use a
tagging scheme for certain keywords that turns them into links.  This
can be useful in giving people the ability to quickly jump to the
definition of an important term, but it tends to produce a lot of visual
noise.  The resulting links are blue and underlined, which can be
distracting when there are lots of these links.

This change removes styling for these links.  If there is an `<iref>`
tag (which renders as an empty `<span>`) immediately preceding a link
and that link is tagged `class="internal"`, link styling is removed.
These will still result in the cursor changing to a pointer, but the
blue and underlining will reduce line noise.

Note that this change depends on a corresponding change in kramdown-rfc
that reorders the generation of the iref and xref tags.  The above
document will not change in appearance as a result, because that version
of kramdown-rfc generated the tags in the wrong order.  A new version
generated with an updated kramdown-rfc is forthcoming.
2023-02-02 10:12:58 -06:00
Robert Sparks 189018a879
feat: disallow collisions with legacy draft names with capital letters (#5068) 2023-02-01 15:11:19 -06:00
Jennifer Richards 760a01ad91
fix: Handle proceedings for "notmeet" sessions correctly (#5065) 2023-02-01 10:47:37 -06:00
Lars Eggert 7ddc09ef25
fix: Break long words in cards to prevent layout jumps (#5064) 2023-02-01 10:37:20 -06:00
Lars Eggert 2954044b36
fix: Don't show time or ical link for unscheduled sessions (#5063)
* fix: Don't show time for unscheduled sessions

Fixes #5016

* Don't show the ical button either
2023-02-01 10:32:34 -06:00
Robert Sparks 2a1602d9bb
Merge remote-tracking branch 'origin/main' into feat/postgres 2023-01-31 16:57:03 -06:00
Jennifer Richards 98d7b15dfb
fix: Only send password reset email to known, active addresses (#5061)
* fix: Only send password reset email to known, active addresses

Limits password reset to Users with a Person and at least one active
address on file. Avoids the possibility of sending a password reset to
a spoofed address as in CVE-2019-19844.

* test: Use factory instead of explicit construction

* test: Test that a User with no Person cannot reset password

* fix: Fix handling of User.person field when it's null

* test: Test that reset emails are sent to known, active addresses
2023-01-31 13:56:33 -06:00
Robert Sparks afac1f8f19
feat: enable editorial stream adoption and balloting (#5011)
* feat: enable editorial stream adoption and balloting

* fix: bring tests into line with refactor

* feat: force intended_std_level to Informational when adopting into a non-ietf stream.

* fix: improve blocking position labels and email content

* fix: simplify pointer to group on doc main page for rswg docs

* fix: recover from merge typos

* fix: correct defer and clear ballot behavior

* fix: improve publication request access logic

* fix: clean up broken editorial state

* fix: adjust test to match migrations
2023-01-31 13:50:51 -06:00
Jennifer Richards 7e2b062f12
feat: Limit schedule generator by session purpose (#5055)
* feat: Limit schedule generator by session purpose

* feat: Raise exceptions if no sessions/timeslots are found
2023-01-31 12:59:21 -06:00
Robert Sparks 413fd8872e
fix: remove unneeded value from test post (#5045) 2023-01-31 12:57:18 -06:00
Robert Sparks a202cf4bf9
feat: Case Insensitive Email.address field (#5046)
* fix: address mypy quibble

* fix: use citext for Email.address

* test: confirm adding case-varied email fails
2023-01-30 11:52:38 -06:00
Lars Eggert b95f5108d1
fix: Restore value attribute needed for backend logic (#5053)
Fixes #5042
2023-01-30 10:01:47 -06:00
Jennifer Richards 837877119b
fix: Sort agenda editor rows by room size first (#5043)
* fix: Sort agenda editor rows by room size first

* test: Update selectors in test_edit_meeting_schedule()
2023-01-27 16:29:51 -06:00
Jennifer Richards 408c1ea9a4
fix: Show overfull style based on max, not sum, of session durations (#5044)
* fix: Show overfull style based on max, not sum, of session durations

* style: Avoid shadowing 'sessions' from outer scope
2023-01-27 16:24:24 -06:00
Robert Sparks 6de27154ed
Merge remote-tracking branch 'origin/main' into feat/postgres 2023-01-27 12:45:35 -06:00
Jennifer Richards 23f38e2ebc
fix: Fix broken add/modify ADs in the secr app (#5040) 2023-01-27 12:01:22 -06:00
Robert Sparks 0ea04b26d5
fix: use faker directly for non-factory managed faked things (#5041) 2023-01-27 12:00:36 -06:00
Jennifer Richards 185c4d556c
fix: Show links for more session types on the agenda (#5038)
* fix: Show links for more session types on the agenda

* test: Update test to expect buttons on additional sessions

* test: Update the past meeting test case also
2023-01-27 11:55:05 -06:00
Robert Sparks c04feb5765
Merge remote-tracking branch 'origin/main' into feat/postgres 2023-01-26 10:37:50 -06:00
Robert Sparks 5560c28c82
fix: only show irtf stream ballot and publication buttons to the IRTF chair (#5036) 2023-01-25 15:10:31 -06:00
Robert Sparks 742fc4ead2
feat: show session purposes on the meeting request page (#5034) 2023-01-25 15:09:55 -06:00
Jennifer Richards 040af97c11
refactor: Simplify tests and comply with StandardJS style (#5026)
* refactor: Simplify tests and comply with StandardJS style

Use === instead of ==, except where it's used to match both null and
undefined.

* style: further tweaks
2023-01-25 15:09:13 -06:00
Lars Eggert 61f7984d5c
fix: Handle unset cookies correctly (#5023)
Fixes #5015
2023-01-24 09:02:21 -06:00
Jennifer Richards db3506e8c7
fix: Use settings.TIME_ZONE when looking up telechat agenda_date() (#5020) 2023-01-23 18:06:51 -06:00
Jennifer Richards c35afca507
test: Use DEADLINE_TZINFO to validate reminder due date calculation (#5019) 2023-01-23 18:05:53 -06:00
Robert Sparks 43c7e92d9d
feat: remove the format element from the bibxml-id source of truth (#5017) 2023-01-23 18:03:19 -06:00
Jennifer Richards ec7c7b3701
chore: Upgrade to bleach v6 (#5021)
* build: Bump bleach requirement to 6.0.0

* fix: Update bleach configuration for compatibility with v6 changes
2023-01-23 13:29:45 -06:00
Robert Sparks 2351629fcc
Merge remote-tracking branch 'origin/main' into feat/postgres 2023-01-23 10:28:14 -06:00
Jennifer Richards c6663eb593
fix: Separately show proceedings sessions with different names (#5005)
* refactor: Update call to deprecated add_event_info_to_session_qs

* feat: Gather proceedings sessions in the view, grouped by name

* feat: Begin using new session data format in templates (WIP)

* feat: Show non-meeting groups (WIP)

Non-meeting groups (all sessions are notmeet) now show up on the proceedings.
Session materials associated with these groups are not shown, need to restore
that functionality.

* refactor: Rework template data, show materials for notmeet groups (WIP)

* fix: Restore "No agenda", etc, when meeting materials are not present

* chore: Remove commented out old code

* fix: Restore contents in non-area sections of proceedings

* chore: Remove commented-out stale code

* fix: Suppress duplicate agendas for a group on proceedings

* refactor: Generalize agenda deduplication and apply to minutes

* refactor: Format multiple items per session; apply to bluesheets

* refactor: Apply _format_materials to recordings, slides, and drafts

* chore: Add comment about limitations of test_proceedings() test

* test: Test separation of named sessions in the proceedings
2023-01-20 15:16:48 -06:00
Lars Eggert 570bd141ae
Limit the width of the document selectors to the width of the parent. (#4968)
* Limit the width of the document selectors to the width of the parent.

It's unfortunately not responsive (select2 limitation), but better
than being too long.

* Force "text-overflow: ellipsis" to hide the beginning of a doc name
2023-01-18 10:40:32 -06:00
Lars Eggert e209cae279
Add a datatracker button to the htmlized side pane (#4970)
Fixes #4944
2023-01-18 10:39:43 -06:00
Lars Eggert cfce342ff6
fix: Linewrap lines > 72ch in htmlized view (#4974)
* fix: Linewrap lines > 72ch in htmlized view

* fix: Make Safari break long words (URLs)

* Use same fix as d242f1ff1f
2023-01-18 10:39:15 -06:00
Lars Eggert faf68bc290
fix: Change versions in htmlized sidebar version picker based on shown doc rev (#4977)
Also fix an issue with the revisions list only linking to the latest
version in some cases.

Fixes #4972
2023-01-18 10:38:41 -06:00
Lars Eggert 28ec22aad9
fix: Move the entire RFC5742-related text into the alert box (#4978) 2023-01-18 10:37:12 -06:00
Lars Eggert d7a7033a42
fix: Let charter revisions be variable length in the version paginator (#4989)
* fix: Let charter revisions be variable length in the version paginator

Fixes #4988

* Address review comments. Also make major charter revisions bold for readability.
2023-01-18 10:36:21 -06:00
Lars Eggert 1f87ff164f
fix: Add bug report button to htmlized view (#4999)
Fixes #4998
2023-01-18 10:34:18 -06:00
Lars Eggert a9e3b926f7
fix: rfc2html creates a "a" tag without href for references, handle that (#4975) 2023-01-17 10:20:13 -06:00
Lars Eggert 6dd295b1a5
Insert nav subheadings in the right place. (#4967)
* Insert nav subheadings in the right place.

Fixes #4924

* Undo erroneous commit
2023-01-12 12:23:11 -06:00
Robert Sparks 84e8daffaa
feat: chair aliases for research area groups (#4966) 2023-01-12 12:22:47 -06:00
Lars Eggert 715b1d1934
Update deps (#4969)
* Update deps

* Disable warning

* Fix typo
2023-01-12 09:21:54 -06:00
Jennifer Richards 250692997e
test: SearchableField.has_changed() should handle non-list initial val (#4965) 2023-01-10 15:13:37 -06:00
Robert Sparks 3fb521eb53
fix: test on postgres. POST and check intended pks. (#4949)
* fix: test on postgres. post and check intended pks.

* fix: pass and check intended pks

* fix: pass intended pk

* fix: get an actually usable group type for test

* fix: use a review assignment pk instead of the review request pk

* fix: Use pks of sessions, not schedtimesessassignments

* fix: test for actual pk and do not rely on case-insensitive LIKE

* fix: test for actual pk

* chore: spelling correction: nomine -> nominee
2023-01-10 10:28:43 -06:00
Robert Sparks 0cc907f957
fix: restore display of additional resources (#4956) 2023-01-10 10:19:43 -06:00
Robert Sparks ec2b7d0d04
Merge remote-tracking branch 'upstream/main' into feat/postgres 2023-01-06 17:29:49 -06:00
Jennifer Richards 2993322958
fix: Listify initial field value when SearchableField.max_entries == 1 (#4951)
* fix: Listify initial field value when SearchableField.max_entries == 1

* fix: Don't convert initial=None to initial=[None] in has_changed()
2023-01-06 16:06:00 -06:00
Jennifer Richards de62fd72d9
fix: Allow additional draft forms to be added to IPR disclosure edit form (#4952)
* chore: Remove commented-out template content

* fix: Correctly number newly added draft_form inputs on IPR edit form

* fix: Initialize select2 when adding a new field instance
2023-01-06 15:24:08 -06:00
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
Robert Sparks 1f0ab6418f
chore: update test name fixture (#4925) 2022-12-21 14:28:07 -06:00
Robert Sparks 795c182df8
Merge remote-tracking branch 'origin/main' into feat/postgres 2022-12-20 08:31:02 -06:00
Robert Sparks 0f35f5df3a
fix: handle names with endings that might parse as versions better (#4897)
* fix: Use the doc name matched by fuzzy_find_documents when rendering

Fixes #4855

* Follow suggestion by @rjsparks

* fix: handle names with endings that might parse as versions better

Co-authored-by: Lars Eggert <lars@eggert.org>
2022-12-20 08:16:08 -06:00
Jennifer Richards a8780dc439
test: fix (and simplify) changed email address generation (#4919) 2022-12-19 13:33:51 -06:00
Lars Eggert 4b1c10f6ab
feat: Add preference to make citation links go straight to cited docs (#4886)
* feat: Add preference to make citation links go straight to cited documents

* Use localStorage
2022-12-19 13:30:08 -06:00
Jennifer Richards 30f852179c
test: ensure author fields are actually changed by test (#4918) 2022-12-19 11:07:15 -06:00
Lars Eggert bc2b5f72ef
More fixes for HTMLization and PDFization (#4899)
* More fixes for HTMLization and PDFization

* Remove print

* More fixed from @martinthomson

* Hopefully fix #4885

* Apply suggestion from @rjsparks
2022-12-19 09:04:44 -06:00
Lars Eggert c3e7c1e188
feat: Linkify state descriptions (#4916) 2022-12-19 09:03:44 -06:00
Lars Eggert cab9b1c5e5
fix: Remove spurious title attribute (#4917) 2022-12-19 09:01:06 -06:00
Jennifer Richards 27469c1264
fix: do not create ReviewRequestDocEvent when assigning a review req (#4913)
* fix: do not create ReviewRequestDocEvent when assigning a review req

* test: test docevent creation
2022-12-16 15:17:10 -06:00
Lars Eggert ad5cf0bb01
fix: Fix layout issue in ballot modals on narrow screens (#4911)
* fix: Fix layout issue in ballot modals on narrow screens

Fixes #4902

* Also apply change to old positions

* Fix tests

* Use badge to indicate former ADs
2022-12-16 13:09:55 -06:00
Lars Eggert e6e0d8fc1a
feat: Diff arbitrary versions from new HTMLization page (#4863)
* feat: Diff arbitrary versions from new HTMLization page

Fixes #4859

* Rework this based on @rjsparks' suggestion. Not quite done yet.

* Progress

* Fix HTML

* Don't show compare buttons if there aren't at least two versions

* Remove spurious title attribute

* Use and style select2 for the version diff dropdowns

* Roll in code review suggestions

* Some tests!
2022-12-16 10:46:05 -06:00
Robert Sparks 3d802497f4
Merge remote-tracking branch 'upstream/main' into feat/postgres 2022-12-15 09:58:24 -06:00
Lars Eggert 8a599b749b
fix: Set font size from cookie before DOM is ready, to avoid flickering (#4882)
* fix: Set font size from cookie before DOM is ready, to avoid flickering

* fix: Use localStorage instead of cookies where possible
2022-12-15 09:36:30 -06:00
Jennifer Richards 38748cb10b
refactor: add guards/type hints to build_file_urls() (#4896)
* refactor: add guards/type hints to build_file_urls()

* fix: compare doc.type_id, not doc.type, with string value

* test: add cursory test of build_file_urls()
2022-12-14 17:22:26 -06:00
Lars Eggert 36e6b98394
fix: Fix sidebar hiding functionality (#4891)
Broken by #4860
Fixes #4858
2022-12-14 15:11:41 -06:00
Robert Sparks 912c7b5ee3
fix: simplify migrations when building postgres db image (#4889)
* chore: remove the effectively unused DATABASE_TEST_OPTIONS setting

* fix: simplify default settings_local so that db-include-fix.py is not needed in CI

* fix: simplify migrations in db-pg-migrate.sh
2022-12-13 17:37:24 -05:00
Jennifer Richards 3d47a9069c
fix: eliminate race condition when creating a review Document (#4876) 2022-12-13 14:45:42 -06:00
Jennifer Richards 73fcf51709
fix: handle both rev is None and '' in document_main (#4887) 2022-12-13 12:22:43 -06:00
Lars Eggert 017b5f54d1
fix: Force font-size and line-height for plaintext PDFization (#4879)
Fixes #4343
2022-12-13 10:10:14 -06:00
Lars Eggert 49f586ed4f
fix: Apply CSS suggestion by @martinthomson (#4872)
Fixes #4869
2022-12-13 08:41:35 -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
Lars Eggert f0966e43f5
fix: Don't show checker validations on HTMLization page (#4873)
Modals in static sidebars don't work; fixing this needs a larger rework.

Fixes #4865
2022-12-12 13:25:21 -06:00
Robert Sparks 572733d3f1
feat: validate the document notify field (#4856)
* feat: validate the document notify field

* chore: fix spelling in comment

* feat: be more explicit in notify validation, preserving input order.

* fix: restrict notify duplicate check to nameaddrs. Add tests.
2022-12-12 13:16:41 -06:00
Robert Sparks 15569771ff
Merge remote-tracking branch 'upstream/main' into feat/postgres 2022-12-12 09:54:49 -06:00