Feature Wiki

Information about planned and released features

Tabs

Update ILIAS-Internal External Links on Copying Container

1 Initial Problem

When copying a container object (category, course, group, folder), external links that have been inserted in their starting page by means of the ILIAS page editor keep the same. In many cases, this is a reasonable behaviour.

However, it's not useful in cases where those "external" links are pointing to objects within the container:
When you copy a container (along with its content objects and its starting page), you want the links in the starting page to point at the copied objects in the copied container. By now (ILIAS 5.2.x), those links will point at the original objects.

In ILIAS 5.2.x, a functionality has already been introduced that updates internal links in such cases.
That's great, however, there are cases in which you have to use the "external link" functionality, e.g., in order to forward the user directly to the RTE of a SCORM module.

2 Conceptual Summary

So, we suggest to add functionality that updates "external" links pointing to objects within the container.
When copying the container, those links are rewritten, so they point to the copied objects in the copied container.
It would be useful if that would also work with relative links, like "/ilias.php?baseClass=ilSAHSPresentationGUI&ref_id=2788".

3 User Interface Modifications

3.1 List of Affected Views

  • Container > Content views

3.2 User Interface Details

Container > Content views:

  • There won't be any changes in the UI, except that external links would be modified accordingly during copy actions.

3.3 New User Interface Concepts

No new user interface concepts.

4 Technical Information

We could identify goto.php and ilias.php links and modify the first part of the goto target and the ref_id part in URLs.

5 Contact

6 Funding

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

  • ...

7 Discussion

Killing, Alexander [alex], 30 Mar 2017: I fully support the request.

JourFixe, ILIAS [jourfixe], July 31, 2017: We highly appreciate this request and schedule it for 5.3

8 Implementation

The links are modified as follows:

  • Links are only modified if the start with "ilias.php" or "goto.php", if they link to the same domain as the current ILIAS installation and if they include a client_id, this must match with the client id of the current installation.
  • If the ref id of the link is included in the subtree of the original container, the link is modified:
    • If the target is within the copied nodes the ref_id is updated to the new node.
    • If the target is not within the copied nodes the link is removed.

Test Cases

Test cases completed at 28 Aug 2017 by Killing, Alexander [alex]

  • https://testrail.ilias.de/index.php?/cases/view/18764: Kategorie mit extern verlinkten Unterobjekten kopieren

Approval

Approved at 22.08.2017 by Breuer, Jens [breuer].

Last edited: 28. Aug 2017, 10:34, Killing, Alexander [alex]