POC (session) sign-in was silently broken: - sign_in_out.svelte calls session_sign_in() only when session_id is a query param; the URL was missing &session_id=... so the function never fired. - Fixed in: email_sign_in__event_session URL and poc_sign_in_url derivation in session_view.svelte. Presenter email routed to wrong page: - email_sign_in__event_presenter built a URL to /presenter/[id] which has no sign-in handler. Changed to route to /session/[session_id] (same as the existing copy-link on the presenter page), including presenter_id and presentation_id params so presenter_sign_in() fires correctly. Multi-session/multi-presentation person-centric auth: - poc_is_authed in session_view.svelte now also checks auth__person.id === poc_person_id, so a POC signed in via any of their session links is automatically auth'd on all sessions where they are the POC. - presenter_is_authed derived bool added to presenter page; includes person_id match so a presenter is recognised on all their presentations after one sign-in. All file upload and file list auth gates now use it. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Events - Presentation Management Module
This module provides the user interface for managing the core components of an event, with a focus on sessions, presentations, and associated files. It allows event organizers to structure the event program, manage presentation details, and handle related content.
This directory (src/routes/events) contains the Svelte components and pages that constitute the user interface for this feature.
Features
- Event Program Structure: The UI allows for viewing and managing the hierarchy of an event, including its sessions and the presentations within those sessions.
- Session Management: View lists of sessions for an event, wrapped in various UI components for different display needs (
li,tbl). - Presentation Management: View lists of presentations associated with sessions.
- File Management: A key feature is the ability to manage event-related files. This includes uploading new files and viewing lists of existing files associated with the event.
UI Components & Pages
+page.svelte: The main landing page that displays a list of all events.[event_id]/+page.svelte: The main page for a single event, which serves as the hub for managing its details.ae_comp__event_session_obj_li.svelte/..._tbl.svelte: Components that render lists of event sessions in different formats.ae_comp__event_presentation_obj_li.svelte: A component that renders a list of presentations for a session.ae_comp__event_file_obj_tbl.svelte: A component for displaying a table of files related to the event.ae_comp__event_files_upload.svelte: A component providing the UI for uploading files.ae_comp__events_menu_nav.svelte/..._opts.svelte: Navigation and option menus specific to the events module.
Core Logic & Data Models
The underlying data models, API interactions, and database logic for this module are located in src/lib/ae_events/. The key data models include:
Event: The top-level object for an event.EventSession: Represents a session within an event.EventPresentation: Represents a presentation within a session.EventPresenter: Represents a speaker for a presentation.EventFile: Represents a file associated with any part of the event.