Files
OSIT-AE-App-Svelte/src/routes/idaa
Scott Idem 3553809f27 Add code field to archive content edit form and IDB
- Expose archive_content.code in edit form (trusted + edit_mode only)
- Add code to properties_to_save so it persists on every API load/save
- Add code field + index to Archive_Content Dexie interface (schema v2)
- Minor: center "Add" button rows in archive and content list components

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-07 18:42:15 -04:00
..
2026-05-01 18:41:13 -04:00
2026-03-24 12:28:07 -04:00

IDAA Integration Module

This module integrates features from the Aether (AE) application into the IDAA (International Doctors in Alcoholics Anonymous) website, which is powered by a system called Novi. The integration is achieved by embedding Aether pages within iframes inside the Novi site.

This directory (src/routes/idaa) contains the Svelte routes that correspond to the pages on the main IDAA site.

Architecture

The integration uses a multi-step iframe-based approach:

  1. Novi Page: A page on the IDAA website contains a snippet of code that loads a static HTML file from this Aether project's static/ directory into an iframe.
  2. Static HTML Bridge: The static file (e.g., static/idaa_novi_iframe_archives.html) acts as a bridge. It contains JavaScript that: a. Executes within the context of the Novi site, allowing it to access Novi-specific data like the current user's unique ID (<%=Novi.User.CustomerUniqueId%>). b. Uses the Novi user ID to make a call to the Novi API to get more user details (like email and full name). c. Uses the retrieved user details to construct a URL for the actual Aether application page. d. Loads the Aether page into a nested iframe on the static page.
  3. Aether Application: The final Aether page (e.g., /idaa/archives) receives the user information via URL parameters and displays the relevant content.

This architecture allows the Aether application to securely authenticate and identify the Novi user without a complex SSO integration.

Sub-modules

The IDAA integration includes the following features, each corresponding to a route in this directory and a static HTML bridge file.

IDAA - Archives

  • Route: /idaa/archives
  • Bridge File: static/idaa_novi_iframe_archives.html
  • Functionality: Provides access to the Aether Archives module, allowing IDAA members to view and search archived content.

IDAA - Bulletin Board (BB)

  • Route: /idaa/bb
  • Bridge File: static/idaa_novi_iframe_bulletin_board.html
  • Functionality: Provides a bulletin board or forum feature, powered by the Aether Posts module.

IDAA - Recovery Meetings

  • Route: /idaa/recovery_meetings
  • Bridge File: static/idaa_novi_iframe_recovery_meetings.html
  • Functionality: Displays a list of recovery meetings. This may also integrate with a Jitsi meeting interface (idaa_novi_iframe_jitsi_meeting.html).

Novi API Verification (brief)

The IDAA routes receive a uuid parameter when loaded via the Novi iframe bridge. The application verifies that UUID by calling Novi's customers API (using the novi_idaa_api_key from site config) and then sets verified fields in the IDAA store (novi_uuid, novi_email, novi_full_name, novi_verified).

For full implementation details, verification flow, and the list of site_cfg_json fields used by IDAA, see the client documentation: documentation/CLIENT__IDAA_and_customized_mods.md.