Feature Wiki
Tabs
Revision of Advanced Knowledge concept in learning modules
Page Overview
[Hide]1 Initial Problem
ILIAS learning modules currently offer the option to define sections on a LM page as 'Advanced Knowledge'. All content within such sections can be shown or hidden by clicking a link on the top of the page content - in case a section with 'Advanced Knowledge' exists.
From the didactic point of view, this feature is nice to offer compact learning content with all necessary information and knowledge and to offer users the option to get a quick access to additional and optional content (which is meant by 'advanced knowledge') if they want. This feature also helps authors to create less overwhelming pages without the need to remove important facts, examples or texts.
But this concept is only realised for page content, not for pages themselves. If a page only exists of 'Advanced Knowledge' it is presented nevertheless as a page - but without any content shown.
At the time being there is no way to realise a learning module where whole pages can be defined as 'advanced knowledge' and only shown when this option is activated. But this capability is needed if you want to publish a compact and an extended version of a learning module without maintaining two separate versions of the same content.
2 Conceptual Summary
With this feature request we would like to introduce the following behaviour to ILIAS:
- An ILIAS learning module has several pages that contain only 'Advanced Knowledge'.
- A user has entered the LM and 'Advanced Knowledge' presentation is currently not activated.
- The user is browsing the LM and does only see pages that contain basic knowledge while pages with 'Advanced Knowledge' only are skipped and hidden in the tree.
To realise this behaviour, the existing concept of using sections to mark text as 'Advanced Knowledge' needs to be extended:
Define Pages as "Advanced Knowledge" Pages
The navigation in the ILIAS learning module needs to know if it should present a page because it only contains 'Advanced Knowledge' or if the page should be hidden to avoid the problem of presenting an empty page (container).
Assumed that we run into performance problems if ILIAS is always checking the entire page for sections defined as 'Advanced Knowledge' to decide if this page should be shown or hidden, the best solution might be to introduce a setting 'Advanced Knowledge' for the page itself. This would only require one query instead of analysing the CSS styles of the page content when presenting the page.
Changes in the editor view
- Action menu entry for Advanced Knowledge: Similar to the workflow of defining a page as 'deactivated', the command to define a page as 'Advanced Knowledge' should be added to the 'Actions' menu of the page editor.
- Automatic label and special page icon: If a page is set as 'Advanced Knowledge Page', the page title in the editor view should be extended by a label "(Set as Advanced Knowledge)" and the presentation of the page in the editor explorer should get a dedicated page icon to identify such pages quickly (see suggestion in chap 3.2).
Changes in the presentation view
- Use toggle to show Advanced Knowledge: At the time being, show and hide advanced knowledge is activated by clicking on links that always show the opposite status (when advanced knowledge is shown, the button says "Hide Advanced Knowledge"). With the UI component Button: Toggle we now have a UI component that perfectly fits for this need. You switch on or off advanced knowledge.
3 User Interface Modifications
3.1 List of Affected Views
- ILIAS Learning Module » Editor » Page Editor
- ILIAS Learning Module » Presentation » Page Content
3.2 User Interface Details
Declaring a Page as "Advanced Knowledge"
Showing Page as "Advanced Knowledge" in Editor View
Toggle for changing to "Advanced Knowledge" and back
3.3 New User Interface Concepts
{If the proposal introduces any completely new user interface elements, you might consult UI Kitchen Sink in order to find the necessary information to propose new UI-Concepts. Note that any maintainer might gladly assist you with this.}
4 Technical Information
{The maintainer has to provide necessary technical information, e.g. dependencies on other ILIAS components, necessary modifications in general services/architecture, potential security or performance issues.}
5 Contact
- Author of the Request: Kunkel, Matthias [mkunkel]
- Maintainer: Killing, Alexander [alex]
- Implementation of the feature is done by: {The maintainer must add the name of the implementing developer.}
6 Funding
If you are interest in funding this feature, please add your name and institution to this list.
- …
7 Discussion
8 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}
Approval
Approved at {date} by {user}.
Last edited: 24. Jun 2019, 11:53, Kunkel, Matthias [mkunkel]