Commit graph

49 commits

Author SHA1 Message Date
Nicolas Giard d1ec7378da
fix: use groupAcronym to determine hackathon icon in agenda (#8540)
* fix: use groupAcronym to determine hackathon icon in agenda

* test: fix agenda tests related to hackathon
2025-02-14 17:14:03 -06:00
Nicolas Giard 4a1d29e86c
feat: add wiki button to agenda list for hackathon sessions (#8133)
* feat: add wiki button to agenda list for hackathon sessions

* fix: update client/agenda/AgendaScheduleList.vue

Co-authored-by: Matthew Holloway <matthew@holloway.co.nz>

* fix: broken tests

---------

Co-authored-by: Matthew Holloway <matthew@holloway.co.nz>
Co-authored-by: Robert Sparks <rjsparks@nostrum.com>
2024-12-16 08:51:33 -06:00
Matthew Holloway c89646ef8d
feat: Agenda proposed badge (#8164) 2024-11-14 16:59:05 -06:00
Matthew Holloway 7b749f1623
fix: Agenda mobile goto now (#8160)
* fix: agenda mobile goto now

* fix: manually close the dropdown
2024-11-06 08:42:54 +00:00
Matthew Holloway 5ea4cc13bb
feat: change theme dynamically when system preferences change (#7956) 2024-09-24 10:53:08 -05:00
Matthew Holloway bece8fd71b
feat: Agenda URL #hash scrolls to 'now' or specific day (#7772)
* feat: Agenda URL #now scroll to current event

* fix: agendaData date offset for dev purposes

* feat: scroll to day

* fix: Showing correct hostname in agenda modify log

* feat: mobile menu scroll to hash and general bug fixes

* fix: agenda mobile menu formatting and Playwright selectors

* fix: removing spurious ? mark

* chore: removing redundant agenda time setter in favour of agenda settings panel for debugging

* style: Update AgendaMobileBar.vue

* style: Update AgendaScheduleList.vue

---------

Co-authored-by: Nicolas Giard <github@ngpixel.com>
2024-08-26 08:03:15 -05:00
Matthew Holloway af21347b67
fix: Dark mode bug, pinia store reset across Vite entry points (#7851) 2024-08-23 17:50:31 -05:00
Matthew Holloway e5e6c9bc89
feat: Site status message (#7659)
* Status WIP

* feat: Status

* fix: Status tests

* feat: status redirect

* chore: Status tests

* chore: Status tests

* feat: Status tests

* chore: Status playwright tests

* fix: PR feedback, mostly Vue and copyright dates

* fix: Status model migration tidy up

* chore: Status - one migration

* feat: status on doc/html pages

* chore: Resetting Status migration

* chore: removing unused FieldError

* fix: Update Status test to remove 'by'

* chore: fixing API test to exclude 'status'

* chore: fixing status_page test

* feat: Site Status PR feedback. URL coverage debugging

* Adding ietf.status to Tastypie omitted apps

* feat: Site Status PR feedback

* chore: correct copyright year on newly created files

* chore: repair merge damage

* chore: repair more merge damage

* fix: reconcile the api init refactor with ignoring apps

---------

Co-authored-by: Matthew Holloway <Matthew Holloway>
Co-authored-by: Robert Sparks <rjsparks@nostrum.com>
2024-08-07 13:36:21 -05:00
Rich Salz 0c8db80b18
fix: Show recordings for interims (#7197)
* fix: Show recordings for interims

Add methods uses_notes(), has_recordings(), and uses_chat_logs() to the
meeting object (with semantically correct tests) and use them consistently
throughout.  List the recordings if the "meeting numnber" starts with
"interim"

Fixes: #6543

* style: Use "is not" and "is" for None comparisons

* None comparison and non-IETF meetings

style: Use "is not None" instead of "!="
For non-IETF meetings assume chat logs exist

* fix: Restore useNotes for JS fields

* fix: uses_notes->useNotes (in JavaScript)

Also add comment about meeting number field in tests

* Missed a uses_notes->useNotes edit

* fix: useNotes->usesNotes

---------

Co-authored-by: Jennifer Richards <jennifer@staff.ietf.org>
Co-authored-by: Robert Sparks <rjsparks@nostrum.com>
2024-08-07 11:23:18 -05:00
Sangho Na b90820eb7a
fix: Hide last modified field in agenda when unavailable (#7722)
* test: Update tests to check for Updated field in agenda.txt

* fix: Hide Updated in agenda.txt if too old

* test: Remove confusing tests on CSV agenda

* refactor: Make updated() return None when no valid timestamp found

* refactor: Remove walrus operator
2024-08-07 09:15:01 -05:00
Nicolas Giard 8ddab5a740
fix: support multiple slash in xslugify.js (#7658) 2024-07-10 15:34:19 -05:00
Nicolas Giard c02ece3af2
fix: handle dynamic poll columns (#7243) 2024-03-22 12:38:28 -05:00
Eric Vyncke 7f2c3ed2cb
fix: adapt agenda buttons colors to be more readable (#7210)
Co-authored-by: NGPixel <github@ngpixel.com>
2024-03-21 11:01:14 -05:00
Nicolas Giard 8bd5d9481f
fix: chatlog component missing pinia + agenda switch to text dark mode colors (#6653) 2023-11-22 12:43:20 -06:00
Nicolas Giard b09f6efed3
feat: add jump to now/day on mobile agenda (#6654) 2023-11-22 08:56:54 -06:00
Nicolas Giard 05644a16ff
feat: agenda / floor-plan dark mode support (#5995) 2023-07-19 18:23:37 -05:00
Lars Eggert 9d5d9d5172
fix: replace deprecated bootstrap things (#5858)
* text-muted -> text-body-secondary

* navbar-dark is deprecated

* Remove FIXME block, not an issue anymore

* Remove `navbar-light`
2023-07-18 12:22:28 -05:00
Nicolas Giard 5e8d3dc601
fix: remove GMT offset labels from timezones.js (#5922)
* fix: remove GMT offset labels from timezones.js

* fix: add missing continents in timezones.js
2023-07-06 07:44:42 -05:00
Nicolas Giard a9833d5af7
fix: use @fullcalendar/luxon3 plugin (#5729) 2023-06-01 10:18:01 -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 eb3e3d26a9
fix: Only clear desiredRoom if the room is found (#5398) 2023-03-26 14:03:50 +09:00
Nicolas Giard ddcfb09ab8
fix(agenda): replace download cal dropdown with actual links (#5287) 2023-03-07 10:13:49 -06:00
Jennifer Richards 996e6c2011
fix: Always label agenda session headers with day in meeting time zone (#5282)
* fix: Always label agenda session headers with day in meeting time zone

* test: Test day labeling on agenda session header when changing tz

* test: Label timeslot, not session, as 'Session I' etc for agenda tests
2023-03-06 13:20:48 -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
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
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
Nicolas Giard ae51096c65
fix: agenda meeting updated datetime (#4783)
* fix: agenda meeting updated datetime

* test: correct updated datetime format
2022-11-23 12:43:26 -06:00
Robert Sparks 41eafa2727
fix: Abstract code knowledge of the notes function away from specific implementations (#4761)
* fix: abstract codes knowledge of the note function away from specific implementations.

* refactor: make uses_notes a meeting's responsibility.
2022-11-15 14:10:13 -06:00
Nicolas Giard 100a0534cb
fix: agenda mobile dropdown links + footer padding + tz start/end date 2022-11-08 15:53:08 +00:00
Nicolas Giard 3ad1daaf8c
fix: improve chat log rendering (#4686) 2022-11-06 12:31:13 +00:00
Nicolas Giard 0c920b0a29
fix: precompile template urls at build time + bs5 btn on agenda loading screen (#4679)
* fix: precompile template urls at build time + bs5 btn on agenda loading screen

* fix: add back url store changes
2022-11-01 11:51:33 -05:00
Robert Sparks 69c0f4da04
fix: Revert "feat: js compiled url store (#4568)" (#4675)
This reverts commit 8cb67f978c.
2022-10-28 14:17:47 -05:00
Nicolas Giard 8cb67f978c
feat: js compiled url store (#4568)
* feat: js compiled url store

* feat: use url store for AgendaFilter-MobileBar-QuickAccess components

* feat: use url store for AgendaScheduleList (wip)
2022-10-28 09:17:35 -05:00
Nicolas Giard 9f8fd90287
feat: agenda fallback link to plaintext version (#4663) 2022-10-28 09:03:42 -05:00
Nicolas Giard 395f110df2
feat(agenda): various agenda improvements and fixes (#4613)
* chore: update dependencies + add jsconfig

* fix(agenda): handle localStorage being disabled

* feat: agenda share modal

* feat: agenda tour

* feat: agenda share filters + picked sessions + fixes

* test: fix agenda tests

* test: add agenda share dialog test

* test: remove agenda only flag
2022-10-21 16:04:32 -05:00
Nicolas Giard 9194632cec
fix(agenda): Handle .html agenda suffix in Vue router (#4589) 2022-10-17 09:54:14 -05:00
Robert Sparks 50668c97cd
feat: apis for attaching chatlogs and polls to session materials (#4488)
* feat: apis for attaching chatlogs and polls to session materials

* fix: anticipate becoming tzaware, and improve guard against attempts to provide docs for sessions that have no official timeslot assignment.

* fix: get chatlog upload to actually work

Modifications to several initial implementation decisions.
Updates to the fixtures.

* fix: test polls upload

Refactored test to reduce duplicate code

* fix: allow api keys to be created for the new endpoints

* feat: add ability to view chatlog and polls documents. Show links in session materials.

* fix: commit new template

* fix: typo in migration signatures

* feat: add main doc page handling for polls. Improve tests.

* feat: chat log vue component + embedded vue loader

* feat: render polls using Vue

* fix: address pug syntax review comments from Nick.

* fix: repair remaining mention of chat log from copymunging

* fix: use double-quotes in html attributes

* fix: provide missing choices update migration

* test: silence html validator empty attr warnings

* test: fix test_runner config

* fix: locate session when looking at a dochistory object for polls or chatlog

Co-authored-by: Nicolas Giard <github@ngpixel.com>
2022-10-13 09:20:36 -05:00
Jennifer Richards 0ad293d6e9
feat: add slides / session materials links to session details modal (#4535)
* feat: add propose/upload slides button to session details modal

* refactor: remove unneeded chaining operator

* test: fix quotes around template string

* feat: link to meeting materials page from AgendaDetailsModal

* refactor: compute session details URL in JS instead of view

* chore: restyle materials page link

* test: fix test case to match changes to session modal
2022-10-12 16:07:23 -05:00
Nicolas Giard 6f2114fb0c
feat: replace old agenda with agenda-neue (#4406)
* feat: remove old agenda (django-side)

* fix: bring in latest commits

* test: remove -neue from playwright tests

* test: remove agenda selenium js tests

* test: remove agenda views tests

* fix: remove deprecated agenda views (week-view, agenda-by, floor-plan)

* test: fix failing python tests

* test: remove more deprecated tests

* chore: remove deprecated templates

* test: remove unused import

* feat: handle agenda personalize with filter + move agenda specific stuff out of root component

* fix: redirect deprecated urls to agenda / floorplan

* feat: agenda - open picker mode when from personalize path

* fix: safari doesn't support device-pixel-content-box property on ResizeObserver

* test: move floor plan test into main agenda test

Co-authored-by: Robert Sparks <rjsparks@nostrum.com>
2022-10-12 15:46:28 -05:00
Nicolas Giard 143877ec3d
test: Use Playwright + agenda start/end dates fix (#4471)
* test: agenda-neue - separate timezone controls assertions to allow retries

* test: agenda-neue - use dom query selectors instead of first() / eq()

* test: agenda-neue - playwright

* test: fix playwright setup for ci

* test: playwright - remove safari + fix timezone local

* test: upload playwright report

* test: playwright - fix trace upload

* test

* test: playwright - agenda search

* test: fix startdate timezone

* test: playwright - agenda table events

* test: playwright - remove only filter

* test: remove exit early flag

* test: allow longer tests

* test: agenda materials dialog

* test: agenda filter by area/group

* test: agenda calendar view

* test: agenda settings

* test: jump to day

* test: fix agenda jump to day timezone parse

* test: increase test timeout

* test: remove fail fast

* test: test sharding + increase delay

* test: fixes

* test: use macos image

* test: fixes

* test: agenda color assign + future + live meeting tests

* test: agenda mobile tests

* test: remainder of tests for playwright + optimizations

* test: red line intersection accept close value

* test: add delay for agenda search tests

* chore: cleanup old tests + adapt build workflow

* ci: fix build workflow

* ci: fix build workflow order

* fix: point to playwright floor plan images + readme
2022-09-20 13:33:22 -05:00
Nicolas Giard 9d055f8dd8
test: add agenda-neue cypress tests (#4293)
* fix: move vue app to parent dir

* test: prepare vue for cypress testing

* test: add basic cypress test for vue app

* test: add agenda-neue header tests

* test: meeting generator for cypress tests (wip)

* test: agenda-neue meeting nav + settings button

* test: agenda-neue check settings button position against viewport size

* test: agenda-neue fix viewport + add schedule list header tests

* test: agenda-neue timezone tests + future meeting template

* test: agenda-neue add test floor plan image fixtures

* test: floor-plan-neue - handle floor plan images

* test: floor-plan-neue room selection + pin drop tests

* test: floor-plan-neue - test all viewports

* test: floor-plan-neue add missing header tests

* test: agenda-neue - generate areas + groups

* test: agenda-neue - test filter areas + groups dialog

* test: agenda-neue code cleanup + generate schedule (wip)

* test: agenda-neue - generate schedule (wip)

* test: agenda-neue - generate schedule + test settings dialog (wip)

* test: agenda-neue - settings timezone controls

* test: agenda-neue - settings toggles + agenda table headers tests

* test: agenda-neue - table events + memory fixes

* test - agenda-neue - table events remaining columns tests

* test: agenda-neue - meeting materials dialog + future schedule list table buttons

* test: agenda-neue - remove skips

* test: agenda-neue - search

* test: agenda-neue - remove skips

* test: agenda-neue - use random seed for deterministic results

* test: agenda-neue - set constant clock

* test: add percy to cypress + upgrade cypress

* test: agenda-neue - jump to day tests

* test: agenda-neue - add to calendar tests

* test: agenda-neue - add pick sessions tests

* test: agenda-neue - calendar view tests

* test: agenda-neue - color assignment tests

* test: agenda-neue - skip test not supported in firefox/safari

* test: agenda-neue - live sessions tests

* test: agenda-neue - smaller screens tests

* chore: update workflows to handle modern + legacy cypress tests

* test: fix legacy agenda weekview test + cypress legacy config
2022-09-07 14:14:12 -04:00
Nicolas Giard e0e663f964
fix: agenda - rename Video Stream tooltip to Full Client with Video (#4287) 2022-07-27 09:36:28 -05:00
Nicolas Giard eb89591a1f
fix: persist timezone selection per meeting in agenda-neue (#4284) 2022-07-26 15:38:14 -05:00
Nicolas Giard aea533e4dd
fix: add missing slides + minutes tabs to session materials dialog #4274 (#4275)
* fix: handle session dropdown link on mobile view

* feat: agenda session materials API endpoint

* feat: agenda-neue - add slides + minutes tabs to session materials dialog

* fix: remove commented line leftover
2022-07-26 09:30:20 -05:00
Nicolas Giard a605b08de6
feat: load agenda asynchronously via REST endpoint (#4257)
* feat: load agenda asynchronously via REST endpoint

* fix: handle invalid meeting number + pre-64 meetings redirect
2022-07-24 10:34:57 -05:00
Nicolas Giard 6ba91145ed
fix(agenda-neue): responsive UI fixes + no materials warning icon (#4229)
* fix: agenda-neue - go to current meeting in URL if not provided

* fix: agenda neue - various responsive UI fixes + no materials icon
2022-07-19 11:06:07 -05:00
Robert Sparks 6ed4ea0f93
feat: point to Zulip chat rather than jabber. (#4218)
* feat: point to Zulip chat rather than jabber.

* fix: Address review comments from Jennifer and Nick
2022-07-15 13:48:54 -05:00
Nicolas Giard 744bcc54e8
fix: set vite base path during deploy build + allow google fonts (#4217)
* fix: set vite base path during deploy build + allow google fonts

* ci: only set vite base path if build is for production release

* test: add html-validate ignore rules for vite generated content that is valid

* fix: show buttons on regular sessions without agenda materials + link to legacy agenda

* fix: temporarily hide left menu on agenda-neue and floor-plan-neue

* fix: set resize handler to whole app

* fix: apply html-validate ignore to agenda-neue only + deploy/build.sh fix

* test: change old agenda cypress to always take the same elements to avoid #3564
2022-07-14 18:55:55 -05:00
Nicolas Giard aa9490faf6
feat(ui): new dynamic agenda view (#4086)
* feat: agenda page in vue (wip)

* feat: scroll to agenda day

* fix: vue 3 composition api + eslint settings

* fix: agenda day scroll match indicator

* fix: convert vite deps to yarn

* fix: missing lodash + legacy build step

* fix: agenda - move calendar into drawer

* fix: improve agenda filter UI

* fix: download ics + move agenda into own component

* feat: use fullcalendar for agenda calendar view (wip)

* feat: add events to agenda calendar

* feat: agenda filter UI improvements

* feat: agenda add to calendar dropdown

* feat: agenda calendar filter + timezone + event coloring

* feat: agenda calendar color improvements

* chore: exclude dist-neue from git

* feat: agenda calendar event modal

* fix: rebuild yarn deps

* chore: add run migration task to vscode

* fix: agenda buttons display flag

* feat: agenda event modal component

* feat: show calendar event quick info on hover

* fix: clear calendar quick info on timezone change

* feat: agenda list view improvements

* feat: agenda list row coloring

* feat: agenda list note

* feat: agenda list icons for office hours + hackathon

* fix: agenda top links

* refactor: use pinia as store for agenda components

* feat: agenda jump to now

* fix: agenda mobile improvements

* feat: agenda search

* feat: agenda search improvements

* feat: agenda event recordings buttons for post-meeting

* fix: agenda switch to meeting timezone on load

* feat: agenda pre & live session buttons

* fix: remove agenda utc + personalize links in top menu

* feat: add pre-vue loading state on page load

* feat: filter from agenda picker mode

* fix: agenda UI improvements

* fix: django-vite non-dev mode

* chore: update yarn dependencies for vue + vite

* feat: agenda settings panel + UI improvements

* feat: agenda settings colors + import/export feature

* feat: agenda color assignments + responsive UI improvements

* feat: agenda realtime red line + debug datetime offset

* feat: agenda add aria labels for settings

* feat: add new agenda path + pages/menu

* fix: bring base/menu.html up to main

* fix: agenda various fixes

* test: add new agenda item to meetings menu for item count

* chore: restore devcontainer extensions list

* fix: agenda UI improvements + montserrat default font

* feat: agenda bolder text + hide event icons options

* feat: agenda warning badge

* fix: agenda various UI improvements + intersectionObserver fix

* feat: agenda floorplan page + various UI improvements

* feat: agenda floor plan pin

* feat: view floor plan room from agenda

* feat: agenda floor plan mobile optimization

* feat: adjust calendar options + default calendar view in settings

* feat: agenda persist picked events + change base font only on new agenda page

* feat: agenda mobile view optimizations

* fix: add .vite to cached volumes

* fix: mobile view for filters, calendar, settings panels

* test: upgrade cypress existing tests to work on bs5 + update dependencies

* fix: use named url patterns to avoid hardcoded URLs. Add rudimentary test coverage for the neue views.

Co-authored-by: Robert Sparks <rjsparks@nostrum.com>
2022-07-13 16:20:23 -05:00