Details
-
New Feature
-
Resolution: Fixed
-
Major
-
None
-
None
-
None
-
None
-
Unknown
-
Description
Add support for managing and displaying book content in multiple languages.
Functionality
- Enable/disable multilingual support for a book
- Configure supported languages per book
- Store translated page titles
- Display content in different languages using translation macros
- Support for both versioned and unversioned pages
- Maintain translation inheritance through version chain
Technical Implementation
New Classes
BookVersions.Code.PageTitleTransaltionClass
- language (String, required) - Language code
- title (String) - Translated page title
- status (StaticList) - Translation status ("not_translated", "in_progress", "translated") {code}
BookVersions.Code.MultilingualClass
- enabled (Boolean, required) - Enable/disable feature
- supportedLanguages (StaticList, multiple) - List of supported languages {code}
Document Structure
- New Languages space under each book containing configuration
- Translation objects stored on: WebHome for unversioned pages / Version-specific content pages for versioned pages
- Translation macro for managing content translations
MyBook ├── Page1 (versioned page) │ ├── WebHome (redirect) │ ├── v1.0/ (hidden) │ │ ├── PageTitleTransaltionClass objects │ │ └── Content with translation macros │ └── v2.0/ (hidden) │ ├── PageTitleTransaltionClass objects │ └── Content with translation macros ├── UnversionedPage (unversioned page) │ └── WebHome │ ├── PageTitleTransaltionClass objects │ └── Content with translation macros ├── Versions ├── Variants ├── Libraries └── Languages └── WebHome └── MultilingualClass object
New Templates
- Modified templates for versioned/unversioned pages to support multilingual content
- Templates should wrap content in translation macro for default language
Administration
- New administration section in Languages space
- Interface for enabling/disabling multilingual support
- Management of supported languages
Navigation
- Language selector in book navigation menu
- Visual indicators for untranslated content
Acceptance Criteria
- Can enable/disable multilingual support for a book
- Can configure supported languages
- Language selection persists during navigation
- Can add translated content using macros
- If translation is missing show warning message or an empty page
- Can add translated titles for pages
- Translation inheritance works through version chain
Additional Notes
- Translation objects should be migrated when switching between versioned/unversioned pages
- Titles will use translation objects when multilingual is enabled (default language may or may not use an object)
- Content translation is managed through macros
Attachments
There are no Sub-Tasks for this issue.