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:
- 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. - 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. - 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).