Feature Wiki

Information about planned and released features

Tabs

Always Export Content Style

1 Initial Problem

When objects (like learning modules or content pages) that are using the standard content style are exported, the content style does not come with the export file. When such an object is imported at the target installation, this ILIAS just uses the content style that is defined for the installation. This is a source of problems when exchanging and sharing content.

Today, a lot of authors use either a local content style or a customised style for the entire installation that is based on but different from the out-of-the-box-ILIAS-content-style. Differences are not only different variables for existing style classes (e.g. colour or font-size) but mainly additional style classes that the ILIAS standard content style does not know.

Effect is that the imported object does not look like as it should be.

Necessary fix is to add the content style from the original ILIAS installation to the available global content style of the target installation and to assign the imported object to this content style.

This problem does not occur when the object has chosen another content style then the one defined as standard. In this case the content style sheet becomes part of the export and is properly used on the target installation.

2 Conceptual Summary

The export of an object that is using the ILIAS page editor should always contain the used stylesheet, no matter if it uses a local stylesheet, a customised global one or the standard content style of the installation.

The very special and not intended behaviour of omitting the content style when the standard content style is used, should be abandoned.

In addition, the global content style that is defined as standard should not only appear as 'Standard' in the dropdown of available content styles but with its real name and the appendix "(Standard)".

Screenshot of dropdown for selecting content style in ILIAS 9
ILIAS 9: Name of standard content style is not visible
Screenshot of preferred solution for selection of global content styles
Preferred solution. Name of standard content style is visible and can be communicated.

Compatibility

Assumed this feature is implemented with ILIAS 10, then …

  • … all export files from an ILIAS 10 platform will always contain the content style,
  • … all export files from installation lower 10 still won't and import behaviour will be as it is now (which is: standard content style of target installation is used when content style of origin was 'Standard').
  • … all imports of export files from an ILIAS 10 system will be treated on ILIAS 8 and 9 installations as if they come with a customised style. The exported style with therefore be used as local content style on the target installation.

In a future ILIAS version it would be highly appreciated if the import could do a matching of content styles and detect that a content style is already existing on the target system. Indicators for a matching could be a combination of the title of the style and a hash of the css file.

3 User Interface Modifications

3.1 List of Affected Views

  • Sub-tab 'Style' of objects using the ILIAS page editor.

3.2 User Interface Details

No changed UI. Entry for standard content style is only modified and consists of {title of content style} plus "(Standard)"

3.3 New User Interface Concepts

None

3.4 Accessibility Implications

None

4 Technical Information

Killing, Alexander [alex], 10 May 2024: Since the content style and its export are still using the legacy file handling, this feature should also move the implementation to the IRSS and new zip process, see Content Style: Migrate to IRSS.

5 Privacy

None

6 Security

No security issues.

7 Contact

8 Funding

If you are interest in funding this feature, please add your name and institution to this list.

9 Discussion

Killing, Alexander [alex], 10 May 2024: I support the feature. The IRSS and the new zip process should be used. Import would always be a local style sheet.

Samoila, Oliver [oliver.samoila], 27 May 2024: I think it would be useful if, in the event that content with a content style is imported and a different content style is globally enforced in the system, the users are made aware of this fact. The users should understand that their content will therefore be presented in a different content style. A corresponding information message is displayed. (The imported content style should be imported regardless of its application).

Seiler, Yvonne [yvseiler], 27 May 2024: The workflow when using a standard content style is not yet completely clear to me. At the moment I understand it like this: The standard content style from installation 1 is exported with the learning module and is after importing the learning module available in installation 2 as a local content style in the learning module.

Is this correct?

In my view, this has two consequences that we and users should be aware of:

  1. the standard content style can be passed on without the consent of the installation operator.
  2. if the two content styles are visually the same and something is changed to the standard content style in installation 2, this will not be applied to the learning module because there is a local content style (it looks the same, has the same name as the standard but is not the standard).

Killing, Alexander [alex], 27 May 2024:

  • I am not aware of a technical way to collect messages from different components during import. I also think this would be the wrong place to trigger these messages. Overwriting of local styles also happens, if a local style is created first and a global style is set to be "forced global" later. We could present a general message for this case on the style settings screen.
  • It is correct, that the style would be passed without the consent of the installation operator. Not that the CSS version is already exported with HTML exports. However this time the XML version would be exported, which can easily be imported on other platforms.
  • For the last case mentioned above (style is local): Yes, but if a similar standard style exists, it can easily be set after the import (or anytime later). However since users that import content modules usually do not have the permission to configure the global styles, we cannot add the style globally. Also this might flood the global styles with imported ones quickly, too.

JourFixe, ILIAS [jourfixe], 27 MAY 2024: We highly appreciate this suggestion and schedule the feature for ILIAS 10. In addition to the FR, we would like that ILIAS presents an info message when the installation uses an enforced content style and the local content style therefore is not used for the imported object.

10 Implementation

{ The maintainer has to give a description of the final implementation and add screenshots if possible. }

Test Cases

Test cases completed at {date} by {user}

  • {Test case number linked to Testrail} : {test case title}

Privacy

Information in privacy.md of component: updated on {date} by {user} | no change required

Approval

Approved at {date} by {user}.

Last edited: 27. May 2024, 14:43, Kunkel, Matthias [mkunkel]