# 1. Multi-Language Support

User Type: **Super Administrator**
Source: *Mi Digital Academy - Education CRM Features Document*

---

## 1. Multi-Language Support

### 1.1 Interface Language Configuration
**What it does:** Configures the platform's supported interface languages: the Super Administrator enables or disables interface languages, sets the default language, and manages the translation coverage per language, so the platform UI is available in the languages the platform serves.

**Sub-features:**
- Language enablement: interface languages toggled on or off
- Default language: the platform's default interface language
- Translation coverage: the percentage of UI strings translated per language
- Language list: the supported languages with their status
- Fallback behavior: untranslated strings fall back to the default language
- available on web
- event logging (action performed)
- Audit logging of interface language configuration

**Super Admin User Journey:**
1. Super Admin opens Multi-Language Support and views the language list.
2. Enables a new interface language and sets the translation coverage.
3. Sets the platform default language.
4. Saves; the platform UI becomes available in the enabled languages.
5. For an untranslated string, the UI falls back to the default language.
6. Reviews the translation coverage per language to identify gaps.
7. The configuration change is audit-logged with the actor and timestamp.

**Rules & Edge Cases:**
- At least one language must remain enabled; the last enabled language cannot be disabled.
- The default language must be an enabled language; changing the default to a disabled language is rejected.
- A language with 0% translation coverage can be enabled but is flagged as incomplete.
- Fallback is per string; a partially translated language shows translated strings in that language and the rest in the default.
- Configuration changes are audit-logged with the actor and timestamp.

### 1.2 Video Subtitle Management
**What it does:** Manages video subtitles across languages: the Super Administrator uploads, reviews, and publishes subtitle tracks per video and language, and sets the default subtitle behavior, so learners can watch videos with subtitles in their preferred language.

**Sub-features:**
- Subtitle upload: subtitle tracks (SRT/VTT) uploaded per video and language
- Subtitle review: subtitle tracks reviewed before publication
- Subtitle publication: subtitle tracks published per video and language
- Default subtitle behavior: subtitles on/off by default and the default language
- Subtitle list: the subtitle tracks per video with language and status
- available on web
- event logging (action performed)
- Audit logging of subtitle management

**Super Admin User Journey:**
1. Super Admin opens a video and uploads a subtitle track for a language.
2. Reviews the subtitle track (timing and text) before publication.
3. Publishes the subtitle track; it becomes available to learners for that video and language.
4. Sets the default subtitle behavior (on/off, default language).
5. Reviews the subtitle list to confirm coverage per video and language.
6. The subtitle change is audit-logged with the actor and timestamp.

**Rules & Edge Cases:**
- A subtitle track is published only after review; an unreviewed track is not learner-visible.
- A subtitle file with invalid timing or format is rejected on upload with the reason.
- Multiple subtitle tracks per video are allowed (one per language); a language already covered is replaced on re-upload.
- A video with no subtitle track shows no subtitle option; the default behavior does not force an empty track.
- Subtitle changes are audit-logged with the actor and timestamp.

### 1.3 Dubbed Video Management
**What it does:** Manages dubbed video versions: the Super Administrator uploads and publishes dubbed audio versions of videos per language, sets the default audio language, and tracks dubbing coverage, so learners can watch videos with audio in their preferred language.

**Sub-features:**
- Dubbed version upload: dubbed audio/video versions uploaded per language
- Dubbed version publication: dubbed versions published per video and language
- Default audio language: the default audio track per video
- Dubbing coverage: the share of videos dubbed per language
- Dubbed version list: the dubbed versions per video with language and status
- available on web
- event logging (action performed)
- Audit logging of dubbed video management

**Super Admin User Journey:**
1. Super Admin opens a video and uploads a dubbed version for a language.
2. Reviews the dubbed version (audio sync and quality) before publication.
3. Publishes the dubbed version; it becomes available to learners.
4. Sets the default audio language for the video.
5. Reviews the dubbing coverage per language to identify gaps.
6. The dubbed version change is audit-logged with the actor and timestamp.

**Rules & Edge Cases:**
- A dubbed version is published only after review; an unreviewed version is not learner-visible.
- A dubbed version with audio/video sync issues is flagged and not published.
- The default audio language must be one of the published versions for that video.
- A video without a dubbed version for a language falls back to the original audio.
- Dubbed version changes are audit-logged with the actor and timestamp.

### 1.4 AI Translation Settings & Language Availability per Content
**What it does:** Configures AI-assisted translation and per-content language availability: the Super Administrator enables AI translation for content types (descriptions, notes, worksheets), sets the quality threshold for AI output, and defines which languages are available per content item, so content is localized consistently and learners see only available languages.

**Sub-features:**
- AI translation enablement: AI translation toggled on per content type
- Quality threshold: the minimum quality score for AI output to be accepted
- Human review requirement: AI output requiring human review before publication
- Language availability per content: the languages available per content item
- Translation status: the translation state per content item and language
- available on web
- event logging (action performed)
- Audit logging of AI translation and language availability settings

**Super Admin User Journey:**
1. Super Admin enables AI translation for the selected content types and sets the quality threshold.
2. Sets the human review requirement for AI output.
3. Defines the language availability per content item.
4. Saves; the platform applies AI translation to eligible content and shows only available languages to learners.
5. AI output below the quality threshold is flagged for human review or rejected.
6. Reviews the translation status per content item and language.
7. The settings change is audit-logged with the actor and timestamp.

**Rules & Edge Cases:**
- AI translation applies only to enabled content types; other content is not auto-translated.
- AI output below the quality threshold is never auto-published; it is flagged for review or rejected.
- A content item shows only its available languages to learners; unavailable languages are hidden, not shown as empty.
- A human-reviewed and approved AI translation is marked as reviewed; it is not re-processed.
- Settings changes are audit-logged with the actor and timestamp.
