From 20232326488b5aaeb5fb019fb670e2a004eb405b Mon Sep 17 00:00:00 2001
From: Jan-Hendrik Willms <tleilax+studip@gmail.com>
Date: Thu, 7 Nov 2024 08:39:20 +0000
Subject: [PATCH] remove obsolete templates, views and methods from the now
 removed elearning interface, fixes #4831

Closes #4831

Merge request studip/studip!3614
---
 RELEASE-NOTES.md                              |   1 +
 app/views/course/elearning/edit.php           | 142 ---------------
 app/views/course/elearning/show.php           |  42 -----
 lib/visual.inc.php                            | 172 ------------------
 templates/elearning/_cms_footer.php           |  10 -
 templates/elearning/_cms_header.php           |  11 --
 templates/elearning/_cms_selectbox.php        |  27 ---
 templates/elearning/_content_module.php       |  16 --
 templates/elearning/_content_module_admin.php |  16 --
 templates/elearning/_header.php               |   3 -
 templates/elearning/_module_header.php        |  20 --
 templates/elearning/_my_account_form.php      |  26 ---
 templates/elearning/_new_account_form.php     | 167 -----------------
 templates/elearning/_new_module_form.php      |  20 --
 templates/elearning/_searchfield.php          |  20 --
 templates/elearning/_type_selectbox.php       |  16 --
 .../elearning/elearning_interface_edit.php    | 147 ---------------
 .../elearning/elearning_interface_show.php    |  38 ----
 .../ilias4_connected_cms_preferences.php      |  93 ----------
 .../elearning/loncapa_connected_link.php      |   3 -
 .../elearning/loncapa_connected_link_edit.php |  14 --
 templates/elearning/my_elearning.php          |  50 -----
 22 files changed, 1 insertion(+), 1053 deletions(-)
 delete mode 100644 app/views/course/elearning/edit.php
 delete mode 100644 app/views/course/elearning/show.php
 delete mode 100644 templates/elearning/_cms_footer.php
 delete mode 100644 templates/elearning/_cms_header.php
 delete mode 100644 templates/elearning/_cms_selectbox.php
 delete mode 100644 templates/elearning/_content_module.php
 delete mode 100644 templates/elearning/_content_module_admin.php
 delete mode 100644 templates/elearning/_header.php
 delete mode 100644 templates/elearning/_module_header.php
 delete mode 100644 templates/elearning/_my_account_form.php
 delete mode 100644 templates/elearning/_new_account_form.php
 delete mode 100644 templates/elearning/_new_module_form.php
 delete mode 100644 templates/elearning/_searchfield.php
 delete mode 100644 templates/elearning/_type_selectbox.php
 delete mode 100644 templates/elearning/elearning_interface_edit.php
 delete mode 100644 templates/elearning/elearning_interface_show.php
 delete mode 100644 templates/elearning/ilias4_connected_cms_preferences.php
 delete mode 100644 templates/elearning/loncapa_connected_link.php
 delete mode 100644 templates/elearning/loncapa_connected_link_edit.php
 delete mode 100644 templates/elearning/my_elearning.php

diff --git a/RELEASE-NOTES.md b/RELEASE-NOTES.md
index ee788e2013e..5756c7d26b2 100644
--- a/RELEASE-NOTES.md
+++ b/RELEASE-NOTES.md
@@ -78,6 +78,7 @@
 - Die Zuordnung von Veranstaltungen zu Semestern anhand von Timestamps wurde entfernt. In der Datenbank wurden die Spalten `start_time` und `duration_time` der Tabelle `seminare` entfernt. ([Issue #4391]https://gitlab.studip.de/studip/studip/-/issues/4391))
   - Plugins, die Veranstaltungen anhand von Timestamps laden oder anderweitig verwenden, müssen angepasst werden!
   - Das Mapping von Veranstaltungen zu Semestern findet nun ausschließlich anhand der Semester-ID über die Verknüpfungstabelle `semester_courses` statt.
+- Die ELearning-Schnittstelle wurde ausgebaut. In diesem Rahmen wurden auch die Methoden `printhead()` und `printcontent()` ersatzlos entfernt. ([Issue #4109](https://gitlab.studip.de/studip/studip/-/issues/4109))
 
 ## Security related issues
 
diff --git a/app/views/course/elearning/edit.php b/app/views/course/elearning/edit.php
deleted file mode 100644
index 89e38d4b8b2..00000000000
--- a/app/views/course/elearning/edit.php
+++ /dev/null
@@ -1,142 +0,0 @@
-<?php use Studip\Button, Studip\LinkButton; ?>
-<!--h2><?= _('Lernmodule hinzufügen / entfernen') ?></h2-->
-
-<? if ($elearning_active) : ?>
-    <?=ELearningUtils::getCMSSelectbox(_("Um Lernmodule hinzuzufügen, wählen Sie ein angebundenes System aus:"))?>
-
-    <? if (!count($content_modules)) : ?>
-        <? if (is_array($course_output['courses']) && count($course_output['courses'])) : ?>
-            <?=$course_output['text']?><br>
-            <? foreach ($course_output['courses'] as $course) : ?>
-                <a href="<?= $course['url'] ?>" target="_blank" rel="noopener noreferrer">
-                    <?=sprintf(_('Kurs in %s'), $course['cms_name'])?>
-                </a>
-                <br>
-            <? endforeach ?>
-        <? endif ?>
-    <? else : ?>
-        <?foreach ($content_modules as $module) : ?>
-            <? if ($module['show_header']) : ?>
-                <?=ELearningUtils::getModuleHeader(_("Angebundene Lernmodule"))?>
-            <? endif ?>
-            <?=$module['module']?>
-            <br>
-        <? endforeach ?>
-    <? endif ?>
-    <br>
-    <? if ($cms_select) : ?>
-        <br>
-        <?=ELearningUtils::getCMSHeader($cms_name)?>
-        <br>
-        <? if (count($user_modules)) : ?>
-            <?=ELearningUtils::getModuleHeader(sprintf(_("Ihre Lernmodule in %s"), $cms_name))?>
-            <?foreach ($user_modules as $module) : ?>
-                <?=$module['module']?>
-                <br>
-            <? endforeach ?>
-        <? endif ?>
-        <? if ($show_search) : ?>
-            <br>
-            <? if ($anker_target == "search") : ?>
-                <a name='anker'></a>
-            <? endif ?>
-
-            <?=ELearningUtils::getSearchfield(
-                        sprintf(_("Um im System %s nach Lernmodulen zu suchen, geben Sie einen Suchbegriff ein:"),
-                        $cms_name))?>
-            <br>
-            <? if (count($search_modules)) : ?>
-                <?=ELearningUtils::getHeader( sprintf( _("Gefundene Lernmodule zum Suchbegriff \"%s\""), htmlReady($search_key) ))?>
-                <? foreach ($search_modules as $module) : ?>
-                    <?=$module['module']?>
-                    <br>
-                <? endforeach ?>
-                <br>
-            <? elseif (mb_strlen( trim($search_key) ) > 2) : ?>
-                <br>
-                <b><?=sprintf( _("Es gibt im System %s zu diesem Suchbegriff keine Lernmodule."),  $cms_name)?></b><br>
-                <br>
-            <? endif ?>
-        <? else : ?>
-            <br>
-            <div class="messagebox messagebox_info" style="background-image: none; padding-left: 15px">
-                <?=sprintf(_('Sie können im System %s nicht suchen, da Sie bisher keinen Benutzer-Account angelegt haben.'),
-                           $cms_name)?><br>
-                <a href="<?=URLHelper::getLink('dispatch.php/elearning/my_accounts')?>">
-                <?=_('Jetzt einen Account erstellen.')?><br>
-                </a>
-            </div>
-        <? endif ?>
-        <? if ($show_ilias_empty_course) : ?>
-            <form method="POST" action="<?=URLHelper::getLink() . "#anker"?>">
-            <?=CSRFProtection::tokenTag()?>
-            <?=ELearningUtils::getHeader(_("Leeren Kurs anlegen"))?>
-            <div align="center">
-            <br>
-            <?=_('Hier können Sie einen leeren Ilias-Kurs für diese Veranstaltung anlegen. Die Teilnehmenden '
-                .'der Veranstaltung können dann den Kurs betreten, auch wenn noch keine Lernmodule zugeordnet sind. '
-                .'Solange der Kurs leer ist, erscheint auf der Seite "Meine Veranstaltungen und Einrichtungen" kein '
-                .'Lernmodulsymbol für diese Veranstaltung. <b>Dieser Schritt kann nicht rückgängig gemacht werden.</b>')?>
-            <br>
-            <br>
-            <input type="HIDDEN" name="anker_target" value="search">
-            <input type="HIDDEN" name="view" value="<?=$view?>">
-            <input type="HIDDEN" name="cms_select" value="<?=$cms_select?>">
-            <?=Button::create(_('Anlegen'), 'create_course')?>
-            <br>
-            <br>
-            </div>
-            </form>
-        <? endif ?>
-        <? if ($existing_courses) : ?>
-            <form method="POST" action="<?=URLHelper::getLink() . "#anker"?>>
-            <?=CSRFProtection::tokenTag()?>
-            <?=ELearningUtils::getHeader(_("Verknüpfung mit einem bestehenden Kurs"))?>
-            <div align="center">
-            <br>
-            <?_('Wenn Sie die Veranstaltung mit einem bestehenden Ilias-Kurs verbinden wollen, wählen Sie hier '
-               .'die Stud.IP-Veranstaltung, mit der der bestehende Kurs verknüpft ist. Beide Stud.IP-Veranstaltungen '
-               .'sind dann mit dem selben Ilias-Kurs verknüpft. <b>Dieser Schritt kann nicht rückgängig gemacht werden.</b>')?>
-            <br>
-            <br>
-            <select name="connect_course_sem_id" size="1">
-                <option value="">
-                    <?=_("Bitte auswählen")?>
-                </option>
-                <? foreach ($existing_courses as $key => $name) : ?>
-                <option value="<?=$key?>">
-                    <?=$name?>
-                </option>
-                <? endforeach ?>
-            </select>
-            <input type="HIDDEN" name="anker_target" value="search">
-            <input type="HIDDEN" name="view" value="<?=$view?>">
-            <input type="HIDDEN" name="cms_select" value="<?=$cms_select?>">
-            <?=Button::create(_('Auswählen'), 'connect_course')?>
-            <br>
-            </div>
-            </form>
-            <br>
-        <? endif ?>
-        <? if ($show_ilias_link_info) : ?>
-            <br>
-            <?=ELearningUtils::getHeader(_("Links zu anderen ILIAS-Objekten"))?>
-            <div align="center">
-            <br>
-            <?=_('Sie können beliebige weitere Objekte hinzufügen, indem Sie im verknüpften Kurs in ILIAS einen '
-                .'internen Link zu den entsprechenden Objekten anlegen. '
-                .'Wechseln Sie dazu in den Kurs, wählen Sie unter "Neues Objekt hinzufügen" die Option Weblink und legen '
-                .'einen Link innerhalb von ILIAS an. Kehren Sie anschließend auf diese Seite zurück und klicken Sie in der Infobox '
-                .'auf "Aktualisieren". Für die auf diese Weise verlinkten Objekte müssen Sie selbst sicherstellen, dass die Teilnehmenden '
-                .'des Kurses Zugriff darauf haben.')?>
-            <br>
-            <br>
-            </div>
-        <? endif ?>
-        <?=ELearningUtils::getCMSFooter($cms_logo)?>
-        <br>
-        <? if ($anker_target == "choose") : ?>
-            <a name='anker'></a>
-        <? endif ?>
-    <? endif ?>
-<? endif ?>
diff --git a/app/views/course/elearning/show.php b/app/views/course/elearning/show.php
deleted file mode 100644
index 296ac8d9351..00000000000
--- a/app/views/course/elearning/show.php
+++ /dev/null
@@ -1,42 +0,0 @@
-<?php use Studip\Button, Studip\LinkButton; ?>
-<? if ($is_inst) : ?>
-    <!--h2><?= _('Lernmodule der Einrichtung') ?></h2-->
-<? else : ?>
-    <!--h2><?= _('Lernmodule der Veranstaltung') ?></h2-->
-<? endif ?>
-<? if ($elearning_active) : ?>
-    <? if ($new_account) : ?>
-        <?=ELearningUtils::getNewAccountForm($new_account)?>
-    <? else : ?>
-        <? if (!count($content_modules) AND count($course_output['courses'])) : ?>
-            <br>
-            <div class="messagebox messagebox_info" style="background-image: none; padding-left: 15px">
-                <?=$course_output['text']?><br>
-                <? foreach ($course_output['courses'] as $course) : ?>
-                    <a href="<?= $course['url'] ?>" target="_blank" rel="noopener noreferrer">
-                        <?= sprintf(_('Kurs in %s'), $course['cms_name']) ?>
-                    </a>
-                    <br>
-                <? endforeach ?>
-            </div>
-        <? elseif (count($content_modules)) : ?>
-            <?foreach ($content_modules as $module) : ?>
-                <? if ($module['show_header']) : ?>
-                    <?=ELearningUtils::getModuleHeader(_("Angebundene Lernmodule"))?>
-                <? endif ?>
-                <?=$module['module']?>
-                <br>
-            <? endforeach ?>
-            <br>
-            <? if ($course_output['courses']) : ?>
-                <?=$course_output['text']?><br>
-                <? foreach ($course_output['courses'] as $course) : ?>
-                    <a href="<?= $course['url'] ?>" target="_blank" rel="noopener noreferrer">
-                        <?= sprintf(_('Kurs in %s'), $course['cms_name']) ?>
-                    </a>
-                    <br>
-                <? endforeach ?>
-            <? endif ?>
-        <? endif ?>
-    <? endif ?>
-<? endif ?>
diff --git a/lib/visual.inc.php b/lib/visual.inc.php
index 30c5f2b0b2b..9988236bf64 100644
--- a/lib/visual.inc.php
+++ b/lib/visual.inc.php
@@ -363,178 +363,6 @@ function mila ($titel, $size = 60) {
     return $titel;
 }
 
-/**
- * Ausgabe der Aufklapp-Kopfzeile
- *
- * @param $breite
- * @param $left
- * @param $link
- * @param $open
- * @param $new
- * @param $icon
- * @param $titel
- * @param $zusatz
- * @param $timestmp
- * @param $printout
- * @param $index
- * @param $indikator
- * @param $css_class
- */
-function printhead($breite, $left, $link, $open, $new, $icon, $titel, $zusatz,
-                   $timestmp = 0, $printout = TRUE, $index = "", $indikator = "age",
-                   $css_class = NULL)
-{
-    global $user;
-
-    // Verzweigung was der Pfeil anzeigen soll
-    if ($indikator == "viewcount") {
-        if ($index == "0") {
-            $timecolor = "#BBBBBB";
-        } else {
-            $tmp = $index;
-            if ($tmp > 68)
-                $tmp = 68;
-            $tmp = 68-$tmp;
-            $green = dechex(255 - $tmp);
-            $other = dechex(119 + ($tmp/1.5));
-            $timecolor= "#" . $other . $green . $other;
-        }
-    } elseif ($indikator == "rating") {
-        if ($index == "?") {
-            $timecolor = "#BBBBBB";
-        } else {
-            $tmp = (ABS(1-$index))*10*3;
-            $green = dechex(255 - $tmp);
-            $other = dechex(0);
-            $red = dechex(255);
-            $timecolor= "#" . $red . $green . $other;
-        }
-    } elseif ($indikator == "score") {
-        if ($index == "0") {
-            $timecolor = "#BBBBBB";
-        } else {
-            if ($index > 68)
-                $tmp = 68;
-            else
-                $tmp = $index;
-            $tmpb = 68-$tmp;
-            $blue = dechex(255 - $tmpb);
-            $other = dechex(119 + ($tmpb/1.5));
-            $timecolor= "#" . $other . $other . $blue;
-        }
-    } else {
-        if ($timestmp == 0)
-            $timecolor = "#BBBBBB";
-        else {
-            if ($new == TRUE)
-                $timecolor = "#FF0000";
-            else {
-                $timediff = (int) log((time() - $timestmp) / 86400 + 1) * 15;
-                if ($timediff >= 68)
-                    $timediff = 68;
-                $red = dechex(255 - $timediff);
-                $other = dechex(119 + $timediff);
-                $timecolor= "#" . $red . $other . $other;
-            }
-        }
-    }
-
-    //TODO: überarbeiten -> valides html und/oder template draus machen...
-    $class = "printhead";
-    $class2 = "printhead2";
-    $class3 = "printhead3";
-
-    if ($css_class) {
-        $class = $class2 = $class3 = $css_class;
-    }
-
-    if ($open == "close") {
-        $print = "<td bgcolor=\"".$timecolor."\" class=\"".$class2."\" nowrap=\"nowrap\" width=\"1%\"";
-        $print .= " align=\"left\" valign=\"top\">";
-    }
-    else {
-        $print = "<td bgcolor=\"".$timecolor."\" class=\"".$class3."\" nowrap=\"nowrap\" width=\"1%\"";
-        $print .= " align=\"left\" valign=\"top\">";
-    }
-
-    if ($link)
-        $print .= "<a href=\"".$link."\">";
-
-    if ($open == "open")
-        $titel = "<b>" . $titel . "</b>";
-
-    $img = $open === 'close'
-         ? 'forumgrau2.png'
-         : 'forumgraurunt2.png';
-    $attr = [];
-
-    if ($link) {
-        // TODO [tlx] What is addon used for? This seems to lead to invalid html
-        //      so i will ditch it for now in the output
-        $addon = $index
-               ? " ($indikator: $index)"
-               : '';
-
-        $attr = $open === 'close'
-              ? tooltip2(_('Objekt aufklappen'))
-              : tooltip2(_('Objekt zuklappen'));
-    }
-
-    $print .= Assets::img($img, $attr) . " ";
-    if ($link) {
-        $print .= "</a> ";
-    }
-    $print .= "</td><td class=\"".$class."\" nowrap=\"nowrap\" width=\"1%\" valign=\"bottom\"> $icon &nbsp; </td>";
-    $print .= "<td class=\"".$class."\" align=\"left\" width=\"20%\" nowrap=\"nowrap\" valign=\"bottom\"> ";
-    $print .= $titel."</td><td align=\"right\" nowrap=\"nowrap\" class=\"".$class."\" width=\"99%\" valign=\"bottom\">";
-    $print .= $zusatz."</td>";
-
-
-    if ($printout)
-        echo $print;
-    else
-        return $print;
-}
-
-//Ausgabe des Contents einer aufgeklappten Kopfzeile
-function printcontent ($breite, $write, $inhalt, $edit, $printout = true, $addon = '', $noTdTag = false) {
-
-    $print = "";
-    if ($noTdTag == false)
-    {
-        $print .= "<td class=\"printcontent\" width=\"22\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;";
-        $print .= "</td><td class=\"printcontent\" width=\"$breite\" valign=\"bottom\"><br>";
-    }
-
-    $print .= $inhalt;
-
-    if ($edit) {
-        $print .= "<br><br><div align=\"center\">$edit</div>";
-        if ($addon!="") {
-            if (mb_substr($addon,0,5)=="open:") { // es wird der öffnen-Pfeil mit Link ausgegeben
-                $print .= "</td><td valign=\"middle\" class=\"table_row_even\" nowrap><a href=\"".mb_substr($addon,5)."\">";
-                $print .= Icon::create('arr_1left', 'clickable', ['title' => _('Bewertungsbereich öffnen')])->asImg();
-                $print .= "</a>&nbsp;";
-            } else {              // es wird erweiterter Inhalt ausgegeben
-                $print .= "</td><td class=\"content_body_panel\" nowrap>";
-                $print .= "<font size=\"-2\" color=\"#444444\">$addon";
-            }
-        }
-    } else {
-        $print .= "<br>";
-    }
-
-    if ($noTdTag == false)
-    {
-        $print .= "</td>";
-    }
-
-    if ($printout)
-        echo $print;
-    else
-        return $print;
-}
-
 /**
  * Returns a given text as html tooltip
  *
diff --git a/templates/elearning/_cms_footer.php b/templates/elearning/_cms_footer.php
deleted file mode 100644
index 3b9d6cffc84..00000000000
--- a/templates/elearning/_cms_footer.php
+++ /dev/null
@@ -1,10 +0,0 @@
-        </td>
-        <td class="table_row_even" width="1%">
-        </td>
-        <td class="content_body_panel" align="center" valign="top" width="10%" colspan="1">
-        <?=$logo?>
-        <br>
-        <br>
-        </td>
-    </tr>
-</table>
diff --git a/templates/elearning/_cms_header.php b/templates/elearning/_cms_header.php
deleted file mode 100644
index bdb1696c84c..00000000000
--- a/templates/elearning/_cms_header.php
+++ /dev/null
@@ -1,11 +0,0 @@
-<table border="0" cellspacing=0 cellpadding=0 width = "99%">
-    <tr>
-        <td class="table_header" align="left" valign="middle" colspan="4">
-            <b><?=htmlReady($title)?></b>
-            <?= Assets::img('blank.gif', ['height' => 25]) ?>
-        </td>
-    </tr>
-    <tr>
-        <td class="table_row_even" width="1%">
-        </td>
-        <td class="table_row_even" align="left"  valign="top" colspan="1">
\ No newline at end of file
diff --git a/templates/elearning/_cms_selectbox.php b/templates/elearning/_cms_selectbox.php
deleted file mode 100644
index 398a6f45474..00000000000
--- a/templates/elearning/_cms_selectbox.php
+++ /dev/null
@@ -1,27 +0,0 @@
-<?php use Studip\Button, Studip\LinkButton; ?>
-<form method="POST" action="<?=URLHelper::getLink()?>#anker" class="default">
-    <?=CSRFProtection::tokenTag()?>
-    <fieldset>
-        <?= ELearningUtils::getHeader(_("Angebundenes System")); ?>
-
-        <input type="HIDDEN" name="anker_target" value="choose">
-        <input type="HIDDEN" name="view" value="<?=htmlReady($view)?>">
-        <input type="HIDDEN" name="search_key" value="<?=htmlReady($search_key)?>">
-
-        <label>
-            <?=htmlReady($message)?>
-            <select name="cms_select" style="vertical-align:middle">
-                <option value=""><?=_("Bitte auswählen")?></option>
-                <? foreach($options as $key => $name) : ?>
-                    <option value="<?=$key?>" <?=($cms_select == $key) ? ' selected' : ''?>>
-                        <?=htmlReady($name)?>
-                    </option>
-                <? endforeach ?>
-            </select>
-        </label>
-    </fieldset>
-
-    <footer>
-        <?= Button::create(_('Auswählen')) ?>
-    </footer>
-</form>
diff --git a/templates/elearning/_content_module.php b/templates/elearning/_content_module.php
deleted file mode 100644
index 8ed40dc3967..00000000000
--- a/templates/elearning/_content_module.php
+++ /dev/null
@@ -1,16 +0,0 @@
-<?php use Studip\Button, Studip\LinkButton; ?>
-<? if ($module_anker_target) : ?>
-    <a name='anker'></a>
-<? endif ?>
-<table border="0" cellpadding="0" cellspacing="0" width="100%" align="center">
-    <tr>
-        <? printhead(0, 0, $module_link, $module_is_open ? 'open' : 'close', $module_is_new, $module_icon, '<a href="'.$module_link.'" class="tree">'.$module_title.'</a>', $module_source, $module_change_date) ?>
-    </tr>
-</table>
-<? if ($module_is_open): ?>
-<table cellspacing="0" cellpadding="0" border="0" width="100%">
-    <tr>
-        <?= printcontent(0, 0, $module_description .($module_buttons ? '<br><br>'.$module_buttons : ''), ''); ?>
-    </tr>
-</table>
-<? endif ?>
\ No newline at end of file
diff --git a/templates/elearning/_content_module_admin.php b/templates/elearning/_content_module_admin.php
deleted file mode 100644
index 8ed40dc3967..00000000000
--- a/templates/elearning/_content_module_admin.php
+++ /dev/null
@@ -1,16 +0,0 @@
-<?php use Studip\Button, Studip\LinkButton; ?>
-<? if ($module_anker_target) : ?>
-    <a name='anker'></a>
-<? endif ?>
-<table border="0" cellpadding="0" cellspacing="0" width="100%" align="center">
-    <tr>
-        <? printhead(0, 0, $module_link, $module_is_open ? 'open' : 'close', $module_is_new, $module_icon, '<a href="'.$module_link.'" class="tree">'.$module_title.'</a>', $module_source, $module_change_date) ?>
-    </tr>
-</table>
-<? if ($module_is_open): ?>
-<table cellspacing="0" cellpadding="0" border="0" width="100%">
-    <tr>
-        <?= printcontent(0, 0, $module_description .($module_buttons ? '<br><br>'.$module_buttons : ''), ''); ?>
-    </tr>
-</table>
-<? endif ?>
\ No newline at end of file
diff --git a/templates/elearning/_header.php b/templates/elearning/_header.php
deleted file mode 100644
index a98526f5b64..00000000000
--- a/templates/elearning/_header.php
+++ /dev/null
@@ -1,3 +0,0 @@
-<legend>
-    <?= htmlReady($title) ?>
-</legend>
diff --git a/templates/elearning/_module_header.php b/templates/elearning/_module_header.php
deleted file mode 100644
index 8051e8e9d8a..00000000000
--- a/templates/elearning/_module_header.php
+++ /dev/null
@@ -1,20 +0,0 @@
-<table class="blank"  align="center" valign="top" width="100%" border="0" cellpadding="1" cellspacing="0">
-    <tr valign="top">
-        <td class="table_row_odd" align="left" width="40%">
-            <font size="-1"><b>
-            <?=$title?>
-            </b></font>
-        </td>
-        <td class="table_row_odd" align="left" width="40%">
-        <? if ($all_open) : ?>
-            <a href="<?=URLHelper::getURL('?close_all=1&view='.$view.'&cms_select='.$cms_select.'&search_key='.$search_key)?>">
-                <?= Assets::img('close_all.png', tooltip2(_('Alle Module schließen'))) ?>
-            </a>
-        <? else : ?>
-            <a href="<?=URLHelper::getLink('?open_all=1&view='.$view.'&cms_select='.$cms_select.'&search_key='.$search_key)?>">
-                <?= Assets::img('open_all.png', tooltip2(_('Alle Module öffnen'))) ?>
-            </a>
-        <? endif?>
-        </td>
-    </tr>
-</table>
diff --git a/templates/elearning/_my_account_form.php b/templates/elearning/_my_account_form.php
deleted file mode 100644
index c1fbe069af6..00000000000
--- a/templates/elearning/_my_account_form.php
+++ /dev/null
@@ -1,26 +0,0 @@
-<form method="POST" action="<?= URLHelper::getLink() ?>#anker">
-<?= CSRFProtection::tokenTag() ?>
-<table class="default">
-    <tbody>
-        <tr>
-            <td>
-            <? if ($message): ?>
-                <?= $message ?>
-            <? else : ?>
-                <strong><?= _('Loginname:') ?></strong>
-                <?= htmlReady($login) ?>
-            <? endif ?>
-            </td>
-            <td class="actions">
-                <input type="hidden" name="new_account_step" value="1">
-                <input type="hidden" name="new_account_cms" value="<?= htmlReady($my_account_cms) ?>">
-            <? if ($is_connected) : ?>
-                <?= Studip\Button::create(_('Bearbeiten'), 'change') ?>
-            <? else : ?>
-                <?= Studip\Button::create(_('Erstellen'), 'create') ?>
-            <? endif?>
-            </td>
-        </tr>
-    </tbody>
-</table>
-</form>
\ No newline at end of file
diff --git a/templates/elearning/_new_account_form.php b/templates/elearning/_new_account_form.php
deleted file mode 100644
index 05e016c19f1..00000000000
--- a/templates/elearning/_new_account_form.php
+++ /dev/null
@@ -1,167 +0,0 @@
-<?php use Studip\Button, Studip\LinkButton; ?>
-<a name="anker"></a>
-<form method="POST" action="<?=URLHelper::getLink()?>#anker">
-<input type="HIDDEN" name="view" value="<?=htmlReady($view)?>">
-<input type="HIDDEN" name="ref_id" value="<?=htmlReady($ref_id)?>">
-<input type="HIDDEN" name="module_type" value="<?=htmlReady($module_type)?>">
-<input type="HIDDEN" name="new_account_step" value="<?=htmlReady($new_account_step)?>">
-<input type="HIDDEN" name="new_account_cms" value="<?=htmlReady($new_account_cms)?>">
-<input type="HIDDEN" name="cms_select" value="<?=htmlReady($cms_select)?>">
-<?=CSRFProtection::tokenTag()?>
-<table border="0" cellspacing=0 cellpadding=0 width = "99%">
-<? if ($is_verified) : ?>
-<tr>
-    <td class="table_row_even" align="left" valign="middle" colspan="2">
-    <? if ($module_title) : ?>
-        <?=sprintf( _('Hier gelangen Sie zum gewählten Lernmodul "%s":'), htmlReady($module_title) )?>
-        <br>
-        <br>
-        <?=$module_links?>
-        <br>
-        <br>
-    <? endif ?>
-    </td>
-</tr>
-<? elseif ($step == 'assign') : ?>
-    <tr>
-        <td class="table_row_even" align="left" valign="middle" colspan="2">
-            <br>
-            <font size="-1">
-            <?=sprintf(_("Geben Sie nun Benutzernamen und Passwort Ihres Benutzeraccounts in %s ein."),  htmlReady($cms_title))?>
-            </font>
-            <br>
-        </td>
-    </tr>
-    <tr>
-        <td class="table_row_even" align="right" valign="middle" colspan="2">
-            <br>
-        </td>
-    </tr>
-    <tr>
-        <td class="table_row_even" align="right" valign="middle" width="20%">
-            <font size="-1">
-                <?=_("Benutzername:")?>&nbsp;
-            </font>
-        </td>
-        <td class="table_row_even" align="left" valign="middle">
-            <input name="ext_username" size="30" style="vertical-align:middle;font-size:9pt;" value="<?=htmlReady($ext_username)?>">
-        </td>
-    </tr>
-    <tr>
-        <td class="table_row_even" align="right" valign="middle" colspan="2">
-            <br>
-        </td>
-    </tr>
-    <tr>
-        <td class="table_row_even" align="right" valign="middle" width="20%">
-            <font size="-1">
-                <?=_("Passwort:")?>&nbsp;
-            </font>
-        </td>
-        <td class="table_row_even" align="left" valign="middle">
-            <input name="ext_password" type="PASSWORD" size="30" style="vertical-align:middle;font-size:9pt;" value="">
-        </td>
-    </tr>
-    <tr>
-        <td class="table_row_even">
-        </td>
-        <td class="table_row_even" align="left" valign="middle">
-            <br>
-            <?=Button::createAccept(_('Bestätigen'), 'next')?>
-            <br>
-        </td>
-    </tr>
-    <tr>
-        <td align="center" valign="middle" colspan="2">
-            <br>
-            <input type="HIDDEN" name="assign" value="1">
-            <?=Button::create('<< ' . _('Zurück'), 'go_back')?>
-        </td>
-    </tr>
-<? elseif ($step == 'new_account') : ?>
-    <tr>
-        <td class="table_row_even" align="left" valign="middle" colspan="2">
-            <br>
-            <font size="-1">
-            <?=sprintf(_("Geben Sie nun ein Passwort für Ihren neuen Benutzeraccount in %s ein."),  htmlReady($cms_title))?>
-            </font>
-            <br>
-        </td>
-    </tr>
-    <tr>
-        <td class="table_row_even" align="right" valign="middle" colspan="2">
-            <br>
-        </td>
-    </tr>
-    <tr>
-        <td class="table_row_even" align="right" valign="middle" width="20%">
-            <font size="-1">
-                <?=_("Passwort:")?>&nbsp;
-            </font>
-        </td>
-        <td class="table_row_even" align="left" valign="middle">
-            <input name="ext_password" type="PASSWORD" size="30" style="vertical-align:middle;font-size:9pt;" value="">
-        </td>
-    </tr>
-    <tr>
-        <td class="table_row_even" align="right" valign="middle" colspan="2">
-            <br>
-        </td>
-    </tr>
-    <tr>
-        <td class="table_row_even" align="right" valign="middle" width="20%">
-            <font size="-1">
-                <?=_("Passwort-Wiederholung:")?>&nbsp;
-            </font>
-        </td>
-        <td class="table_row_even" align="left" valign="middle">
-            <input name="ext_password_2" type="PASSWORD" size="30" style="vertical-align:middle;font-size:9pt;" value="">
-        </td>
-    </tr>
-    <tr>
-        <td class="table_row_even">
-        </td>
-        <td class="table_row_even" align="left" valign="middle">
-            <br>
-            <?=Button::createAccept(_('Bestätigen'), 'next')?>
-            <br>
-        </td>
-    </tr>
-    <tr>
-        <td align="center" valign="middle" colspan="2">
-            <br>
-            <input type="HIDDEN" name="assign" value="1">
-            <?=Button::create('<< ' . _('Zurück'), 'go_back')?>
-        </td>
-    </tr>
-<? else : ?>
-    <tr>
-    <td class="table_row_even" align="left" valign="middle" colspan="2">
-    <font size="-1">
-    <? if ($is_connected) : ?>
-        <?=sprintf(_("Ihr Stud.IP-Account wurde bereits mit einem %s-Account verknüpft. Wenn Sie den verknüpften "
-                    ."Account durch einen anderen, bereits existierenden Account ersetzen wollen, klicken Sie auf "
-                    ."\"zuordnen\"."), $cms_title)?>
-        <br>
-        <br>
-    <? else :?>
-        <?=sprintf(_("Wenn Sie innerhalb von %s bereits über einen BenutzerInnen-Account verfügen, können Sie ihn "
-                    ."jetzt \"zuordnen\". Anderenfalls wird automatisch ein neuer Account in %s für Sie erstellt, "
-                    ."wenn Sie auf \"weiter\" klicken."), $cms_title, $cms_title)?>
-        <br>
-        <br>
-    <? endif ?>
-
-    <center>
-    <?=Button::create('<< ' . _('Zurück'), 'go_back')?>
-    <?=Button::create(_('Zuordnen'), 'assign', ['title' => _('Bestehenden Account zuordnen')])?>
-    <? if (! $is_connected) : ?>
-        <?=Button::create(_('Weiter') . ' >>', 'next')?>
-    <? endif ?>
-    </center>
-    </font>
-    </td>
-    </tr>
-<? endif ?>
-</table>
-</form>
\ No newline at end of file
diff --git a/templates/elearning/_new_module_form.php b/templates/elearning/_new_module_form.php
deleted file mode 100644
index 90a392167f7..00000000000
--- a/templates/elearning/_new_module_form.php
+++ /dev/null
@@ -1,20 +0,0 @@
-<?php use Studip\Button, Studip\LinkButton; ?>
-<form method="POST" action="<?=URLHelper::getLink()?>#anker">
-<?=CSRFProtection::tokenTag()?>
-<?=ELearningUtils::getHeader(_("Neues Lernmodul erstellen"));?>
-<? foreach($cms_types as $name => $value) : ?>
-    <input type="HIDDEN" name="<?=$name?>" value="<?=htmlReady($value)?>">
-<? endforeach ?>
-<table border="0" cellspacing=0 cellpadding=6 width = "100%">
-<tr><td>
-    <font size="-1">
-    <?=sprintf(_("Typ für neues Lernmodul: %s"), ELearningUtils::getTypeSelectbox($cms))?>
-    </font>
-</td>
-<td align="right" valign="middle">
-    <? if (count($types) > 1) : ?>
-        <?=Button::create(_('Auswählen'), 'choose')?>
-    <? endif ?>
-    <?=$link?>
-</td></tr></table>
-</form>
\ No newline at end of file
diff --git a/templates/elearning/_searchfield.php b/templates/elearning/_searchfield.php
deleted file mode 100644
index f2b2c8edef0..00000000000
--- a/templates/elearning/_searchfield.php
+++ /dev/null
@@ -1,20 +0,0 @@
-<?php use Studip\Button, Studip\LinkButton; ?>
-<form method="POST" action="<?=URLHelper::getLink()?>#anker" class="default">
-    <?=CSRFProtection::tokenTag()?>
-    <fieldset>
-        <?= ELearningUtils::getHeader(_("Suche")) ?>
-
-        <input type="HIDDEN" name="anker_target" value="search">
-        <input type="HIDDEN" name="view" value="<?=htmlReady($view)?>">
-        <input type="HIDDEN" name="cms_select" value="<?=htmlReady($cms_select)?>">
-
-        <label>
-            <?= htmlReady($message) ?>
-            <input name="search_key" type="text" value="<?=htmlReady($search_key)?>">
-        </label>
-    </fieldset>
-
-    <footer>
-        <?=Button::create(_('Suchen'))?>
-    </footer>
-</form>
diff --git a/templates/elearning/_type_selectbox.php b/templates/elearning/_type_selectbox.php
deleted file mode 100644
index 6de0faaae3e..00000000000
--- a/templates/elearning/_type_selectbox.php
+++ /dev/null
@@ -1,16 +0,0 @@
-<?php use Studip\Button, Studip\LinkButton; ?>
-<? if (count($options) > 1) : ?>
-    <select name="module_type_<?=htmlReady($cms)?>" style="vertical-align:middle">
-    <option value=""><?=_("Bitte auswählen")?></option>
-    <? foreach($options as $key => $name) : ?>
-        <option value="<?=$key?>" <?=($selected == $key) ? ' selected' : ''?>>
-            <?=htmlReady($name)?>
-        </option>
-    <? endforeach ?>
-    </select>
-<? else : ?>
-    <? foreach($options as $key => $name) : ?>
-        <?=htmlReady($name)?>
-        <input type="HIDDEN" name="module_type_<?=htmlReady($cms)?>" value="<?=htmlReady($key)?>">
-    <? endforeach ?>
-<? endif ?>
\ No newline at end of file
diff --git a/templates/elearning/elearning_interface_edit.php b/templates/elearning/elearning_interface_edit.php
deleted file mode 100644
index b52c86cd343..00000000000
--- a/templates/elearning/elearning_interface_edit.php
+++ /dev/null
@@ -1,147 +0,0 @@
-<?php use Studip\Button, Studip\LinkButton; ?>
-<h2><?= _('Lernmodule hinzufügen / entfernen') ?></h2>
-<? if ($elearning_active) : ?>
-    <? if (!count($content_modules)) : ?>
-        <? if (count($course_output['courses'])) : ?>
-            <?=$course_output['text']?><br>
-            <? foreach ($course_output['courses'] as $course) : ?>
-                <a href="<?=$course['url']?>"><?=sprintf(_('Kurs in %s'), $course['cms_name'])?></a>
-                <br>
-            <? endforeach ?>
-        <? endif ?>
-    <? else : ?>
-        <?foreach ($content_modules as $module) : ?>
-            <? if ($module['show_header']) : ?>
-                <?=ELearningUtils::getModuleHeader(_("Angebundene Lernmodule"))?>
-            <? endif ?>
-            <?=$module['module']?>
-            <br>
-        <? endforeach ?>
-    <? endif ?>
-    <br>
-    <? if ($cms_select AND ! count($user_modules)) : ?>
-        <? if (count($course_output['courses'])) : ?>
-            <?=$course_output['text']?><br>
-            <? foreach ($course_output['courses'] as $course) : ?>
-                <a href="<?=$course['url']?>"><?=sprintf(_('Kurs in %s'), $course['cms_name'])?></a>
-                <br>
-            <? endforeach ?>
-        <? endif ?>
-    <? endif ?>
-    <? if ($cms_select) : ?>
-        <br>
-        <?=ELearningUtils::getCMSHeader($cms_name)?>
-        <br>
-        <? if (count($user_modules)) : ?>
-            <?=ELearningUtils::getModuleHeader(sprintf(_("Ihre Lernmodule in %s"), $cms_name))?>
-            <?foreach ($user_modules as $module) : ?>
-                <?=$module['module']?>
-                <br>
-            <? endforeach ?>
-        <? endif ?>
-        <? if ($show_search) : ?>
-            <br>
-            <? if ($anker_target == "search") : ?>
-                <a name='anker'></a>
-            <? endif ?>
-            <?=ELearningUtils::getHeader(_("Suche")) ?>
-            <?=ELearningUtils::getSearchfield(
-                        sprintf(_("Um im System %s nach Lernmodulen zu suchen, geben Sie einen Suchbegriff ein:"),
-                        $cms_name))?>
-            <br>
-            <? if (count($search_modules)) : ?>
-                <?=ELearningUtils::getHeader( sprintf( _("Gefundene Lernmodule zum Suchbegriff \"%s\""), htmlReady($search_key) ))?>
-                <? foreach ($search_modules as $module) : ?>
-                    <?=$module['module']?>
-                    <br>
-                <? endforeach ?>
-                <br>
-            <? elseif (mb_strlen( trim($search_key) ) > 2) : ?>
-                <br>
-                <b><font size="-1"><?=sprintf( _("Es gibt im System %s zu diesem Suchbegriff keine Lernmodule."),  $cms_name)?></font></b><br>
-                <br>
-            <? endif ?>
-        <? else : ?>
-            <br>
-            <div class="messagebox messagebox_info" style="background-image: none; padding-left: 15px">
-                <?=sprintf(_('Sie können im System %s nicht suchen, da Sie bisher keinen Benutzer-Account angelegt haben.'),
-                           $cms_name)?><br>
-                <a href="<?=URLHelper::getLink('dispatch.php/elearning/my_accounts')?>">
-                <?=_('Jetzt einen Account erstellen.')?><br>
-                </a>
-            </div>
-        <? endif ?>
-        <? if ($show_ilias_empty_course) : ?>
-            <form method="POST" action="<?=URLHelper::getLink() . "#anker"?>">
-            <?=CSRFProtection::tokenTag()?>
-            <?=ELearningUtils::getHeader(_("Leeren Kurs anlegen"))?>
-            <div align="center">
-            <br>
-            <?=_('Hier können Sie einen leeren Ilias-Kurs für diese Veranstaltung anlegen. Die Teilnehmenden '
-                .'der Veranstaltung können dann den Kurs betreten, auch wenn noch keine Lernmodule zugeordnet sind. '
-                .'Solange der Kurs leer ist, erscheint auf der Seite "Meine Veranstaltungen und Einrichtungen" kein '
-                .'Lernmodulsymbol für diese Veranstaltung. <b>Dieser Schritt kann nicht rückgängig gemacht werden.</b>')?>
-            <br>
-            <br>
-            <input type="HIDDEN" name="anker_target" value="search">
-            <input type="HIDDEN" name="view" value="<?=$view?>">
-            <input type="HIDDEN" name="cms_select" value="<?=$cms_select?>">
-            <?=Button::create(_('Anlegen'), 'create_course')?>
-            <br>
-            <br>
-            </div>
-            </form>
-        <? endif ?>
-        <? if (count($existing_courses)) : ?>
-            <form method="POST" action="<?=URLHelper::getLink() . "#anker"?>>
-            <?=CSRFProtection::tokenTag()?>
-            <?=ELearningUtils::getHeader(_("Verknüpfung mit einem bestehenden Kurs"))?>
-            <div align="center">
-            <br>
-            <?_('Wenn Sie die Veranstaltung mit einem bestehenden Ilias-Kurs verbinden wollen, wählen Sie hier '
-               .'die Stud.IP-Veranstaltung, mit der der bestehende Kurs verknüpft ist. Beide Stud.IP-Veranstaltungen '
-               .'sind dann mit dem selben Ilias-Kurs verknüpft. <b>Dieser Schritt kann nicht rückgängig gemacht werden.</b>')?>
-            <br>
-            <br>
-            <select name="connect_course_sem_id" size="1">
-                <option value="">
-                    <?=_("Bitte auswählen")?>
-                </option>
-                <? foreach ($existing_courses as $key => $name) : ?>
-                <option value="<?=$key?>">
-                    <?=$name?>
-                </option>
-                <? endforeach ?>
-            </select>
-            <input type="HIDDEN" name="anker_target" value="search">
-            <input type="HIDDEN" name="view" value="<?=$view?>">
-            <input type="HIDDEN" name="cms_select" value="<?=$cms_select?>">
-            <?=Button::create(_('Auswählen'), 'connect_course')?>
-            <br>
-            </div>
-            </form>
-            <br>
-        <? endif ?>
-        <? if ($show_ilias_link_info) : ?>
-            <br>
-            <?=ELearningUtils::getHeader(_("Links zu anderen ILIAS-Objekten"))?>
-            <div align="center">
-            <br>
-            <?=_('Sie können beliebige weitere Objekte hinzufügen, indem Sie im verknüpften Kurs in ILIAS einen '
-                .'internen Link zu den entsprechenden Objekten anlegen. '
-                .'Wechseln Sie dazu in den Kurs, wählen Sie unter "Neues Objekt hinzufügen" die Option Weblink und legen '
-                .'einen Link innerhalb von ILIAS an. Kehren Sie anschließend auf diese Seite zurück und klicken Sie in der Infobox '
-                .'auf "Aktualisieren". Für die auf diese Weise verlinkten Objekte müssen Sie selbst sicherstellen, dass die Teilnehmenden '
-                .'des Kurses Zugriff darauf haben.')?>
-            <br>
-            <br>
-            </div>
-        <? endif ?>
-        <?=ELearningUtils::getCMSFooter($cms_logo)?>
-        <br>
-        <? if ($anker_target == "choose") : ?>
-            <a name='anker'></a>
-        <? endif ?>
-    <? endif ?>
-    <?=ELearningUtils::getCMSSelectbox(_("Um Lernmodule hinzuzufügen, wählen Sie ein angebundenes System aus:"))?>
-<? endif?>
\ No newline at end of file
diff --git a/templates/elearning/elearning_interface_show.php b/templates/elearning/elearning_interface_show.php
deleted file mode 100644
index 7d42b2985b7..00000000000
--- a/templates/elearning/elearning_interface_show.php
+++ /dev/null
@@ -1,38 +0,0 @@
-<?php use Studip\Button, Studip\LinkButton; ?>
-<? if ($is_inst) : ?>
-    <h2><?= _('Lernmodule der Einrichtung') ?></h2>
-<? else : ?> 
-    <h2><?= _('Lernmodule der Veranstaltung') ?></h2>
-<? endif ?>
-<? if ($elearning_active) : ?>
-    <? if ($new_account) : ?>
-        <?=ELearningUtils::getNewAccountForm($new_account)?>
-    <? else : ?>
-        <? if (!count($content_modules) AND count($course_output['courses'])) : ?>
-            <br>
-            <div class="messagebox messagebox_info" style="background-image: none; padding-left: 15px">
-                <?=$course_output['text']?><br>
-                <? foreach ($course_output['courses'] as $course) : ?>        
-                    <a href="<?=$course['url']?>"><?=sprintf(_('Kurs in %s'), $course['cms_name'])?></a>
-                    <br>
-                <? endforeach ?>
-            </div>
-        <? elseif (count($content_modules)) : ?>
-            <?foreach ($content_modules as $module) : ?>        
-                <? if ($module['show_header']) : ?>
-                    <?=ELearningUtils::getModuleHeader(_("Angebundene Lernmodule"))?>
-                <? endif ?>
-                <?=$module['module']?>
-                <br>
-            <? endforeach ?>
-            <br>
-            <? if (count($course_output['courses'])) : ?>
-                <?=$course_output['text']?><br>
-                <? foreach ($course_output['courses'] as $course) : ?>        
-                    <a href="<?=$course['url']?>"><?=sprintf(_('Kurs in %s'), $course['cms_name'])?></a>
-                    <br>
-                <? endforeach ?>
-            <? endif ?>
-        <? endif ?>
-    <? endif ?>
-<? endif ?>
\ No newline at end of file
diff --git a/templates/elearning/ilias4_connected_cms_preferences.php b/templates/elearning/ilias4_connected_cms_preferences.php
deleted file mode 100644
index ccd33a7ca78..00000000000
--- a/templates/elearning/ilias4_connected_cms_preferences.php
+++ /dev/null
@@ -1,93 +0,0 @@
-<?php
-# Lifter010: TODO
-use Studip\Button, Studip\LinkButton;
-
-if ($messages["error"] != "") {
-    echo MessageBox::error($messages["error"]);
-}
-?>
-<table>
-    <tbody>
-        <tr valign="top">
-            <td width="30%" style="text-align: left; font-weight: bold;">
-            <?=_("SOAP-Verbindung:")?>
-            </td>
-            <td>
-            <? if ($soap_error) {
-                echo _("Beim Herstellen der SOAP-Verbindung trat folgender Fehler auf:") . "<br><br>" . $soap_error;
-            } else {
-                echo sprintf(_("Die SOAP-Verbindung zum Klienten \"%s\" wurde hergestellt, der Name des Administrator-Accounts ist \"%s\"."), $soap_data["client"], $soap_data["username"]);
-            }?>
-            </td>
-        </tr>
-        <tr>
-            <td width="30%" style="text-align: left; font-weight: bold;">
-                <?= _('Kategorie') ?>:
-            </td>
-            <td><input size="20" value="<?=$main_category_node_id_title?>" name="cat_name" type="text">
-            &nbsp; <?=Icon::create('info-circle', 'inactive', ['title' => _("Geben Sie hier den Namen einer bestehenden ILIAS 4 - Kategorie ein, in der die Lernmodule und User-Kategorien abgelegt werden sollen.")])->asImg(16)?>
-            </td>
-        </tr>
-        <tr>
-            <td>&nbsp;</td>
-            <td>(ID <?=$main_category_node_id?>)</td>
-        </tr>
-        <tr>
-            <td width="30%" style="text-align: left; font-weight: bold;">
-            <?=_("Kategorie für Userdaten:")?>
-            </td>
-            <td><?=$user_category_node_id_title?></td>
-        </tr>
-        <tr>
-            <td>&nbsp;</td>
-            <td>(ID <?=$user_category_node_id?>)</td>
-        </tr>
-        <tr>
-            <td width="30%" style="text-align: left; font-weight: bold;">
-            <?=_("Rollen-Template für die persönliche Kategorie:")?>
-            </td>
-            <td><input size="20" value="<?=$user_role_template_name ?>" name="role_template_name" type="text">
-            &nbsp; <?=Icon::create('info-circle', 'inactive', ['title' => _("Geben Sie den Namen des Rollen-Templates ein, das für die persönliche Kategorie von Lehrenden verwendet werden soll (z.B. \"Author\").")])->asImg(16)?>
-            </td>
-        </tr>
-        <tr>
-            <td>&nbsp;</td>
-            <td>(ID <?=$user_role_template_id ?>)</td>
-        </tr>
-        <tr>
-            <td width="30%" style="text-align: left; font-weight: bold;">
-            <?=_("Passwörter:")?>
-            </td>
-            <td><input value="md5" name="encrypt_passwords" type="checkbox" <?=($encrypt_passwords ? 'checked' : '') ?>>
-            &nbsp; <?=_("ILIAS-Passwörter verschlüsselt speichern.")?>
-            <?=Icon::create('info-circle', 'inactive', ['title' => _("Wählen Sie diese Option, wenn die ILIAS-Passwörter der zugeordneten Accounts verschlüsselt in der Stud.IP-Datenbank abgelegt werden sollen.")])->asImg(16)?>
-            </td>
-        </tr>
-        <tr>
-            <td colspan="2">&nbsp;</td>
-        </tr>
-        <tr>
-            <td width="30%" style="text-align: left; font-weight: bold;">
-            <?=_("LDAP-Einstellung:")?>
-            </td>
-            <td><?
-            if ($ldap_options) {
-                echo '<select name="ldap_enable">';
-                echo $ldap_options;
-                echo '</select><br>';
-                echo _("Authentifizierungsplugin (nur LDAP) beim Anlegen von externen Accounts übernehmen.");
-                echo Icon::create('info-circle', 'inactive', ['title' => _("Wählen Sie hier ein Authentifizierungsplugin, damit neu angelegte ILIAS-Accounts den Authentifizierungsmodus LDAP erhalten, wenn dieser Modus auch für den vorhandenen Stud.IP-Account gilt. Andernfalls erhalten alle ILIAS-Accounts den default-Modus")])->asImg(16);
-            } else {
-                echo _("(Um diese Einstellung zu nutzen muss zumindest ein LDAP Authentifizierungsplugin aktiviert sein.)");
-                echo '<input type="hidden" name="ldap_enable" value="">';
-            }
-            ?></td>
-        </tr>
-        <tr>
-            <td colspan="2">&nbsp;</td>
-        </tr>
-    </tbody>
-</table>
-<div style="text-align: center"><?= Button::create(_('Übernehmen'), 'submit', ['title' =>_("Einstellungen übernehmen")])?>
-</div>
-<div style="margin-top: 2em;"><?=$module_types?></div>
diff --git a/templates/elearning/loncapa_connected_link.php b/templates/elearning/loncapa_connected_link.php
deleted file mode 100644
index 70fcf572967..00000000000
--- a/templates/elearning/loncapa_connected_link.php
+++ /dev/null
@@ -1,3 +0,0 @@
-<a href="<?= htmlspecialchars($url) ?>" target="_blank" rel="noopener noreferrer">
-    <?= Studip\Button::create(_('Starten'), 'starten') ?>
-</a>
diff --git a/templates/elearning/loncapa_connected_link_edit.php b/templates/elearning/loncapa_connected_link_edit.php
deleted file mode 100644
index 5713aa3be35..00000000000
--- a/templates/elearning/loncapa_connected_link_edit.php
+++ /dev/null
@@ -1,14 +0,0 @@
-<form method="post" action="<?= URLHelper::getLink() ?>">
-    <input type="hidden" name="view" value="<?= htmlReady($view) ?>">
-    <input type="hidden" name="search_key" value="<?= htmlReady($search_key) ?>">
-    <input type="hidden" name="cms_select" value="<?= htmlReady($cms_select) ?>">
-    <input type="hidden" name="module_type" value="loncapa">
-    <input type="hidden" name="module_id" value="<?= htmlReady($current_module) ?>">
-    <input type="hidden" name="module_system_type" value="<?= htmlReady($cms_type) ?>">
-
-    <? if ($connected) : ?>
-        <?= Studip\Button::create(_('Entfernen'), 'remove') ?>
-    <? else : ?>
-        <?= Studip\Button::create(_('Hinzufügen'), 'add') ?>
-    <? endif ?>
-</form>
diff --git a/templates/elearning/my_elearning.php b/templates/elearning/my_elearning.php
deleted file mode 100644
index 0813b32dabd..00000000000
--- a/templates/elearning/my_elearning.php
+++ /dev/null
@@ -1,50 +0,0 @@
-<?php use Studip\Button, Studip\LinkButton; ?>
-    <h2><?=_('Meine Lernmodule und Benutzer-Accounts')?></h2>
-    <? foreach($cms_list as $cms_index => $cms_data) : ?>
-        <? if ($cms_anker_target == $cms_index) : ?>
-            <a name='anker'></a>
-        <? endif?>
-        <?=ELearningUtils::getCMSHeader($cms_data['name'])?>
-        <br>
-        <?=ELearningUtils::getHeader(_("Mein Benutzeraccount"))?>
-        <? if ($cms_data['account_form']) : ?>
-            <?=$cms_data['account_form']?>
-        <? else : ?>
-            <? if ($cms_data['show_account_form'] AND $cms_data['user']) : ?>
-                <?=ELearningUtils::getMyAccountForm('', $cms_index)?>
-            <? elseif ($cms_data['show_account_form']) : ?>
-                <?=ELearningUtils::getMyAccountForm(sprintf(_("Sie haben im System %s bisher keinen Benutzer-Account."), $cms_data['name']), $cms_index)?>
-            <? endif ?>
-            <? if ($cms_data['user'] AND $cms_data['start_link']) : ?>
-                <div class="messagebox messagebox_info" style="background-image: none; padding-left: 15px">
-                    <?=_('Hier gelangen Sie direkt zur Startseite im angebundenen System:')?>
-                    <a href="<?=$cms_data['start_link']?>" target="_blank" rel="noopener noreferrer">
-                        <?= $cms_data['name'] ?>
-                    </a>
-                </div>
-                <br>
-            <? endif ?>
-            <?=ELearningUtils::getHeader(_('Meine Lernmodule'))?>
-            <? if (count($cms_data['modules'])) : ?>
-                <? foreach ($cms_data['modules'] as $module_html) : ?>
-                    <?=$module_html?>
-                <? endforeach ?>
-            <? else : ?>
-                <table border="0" cellspacing="0" cellpadding="6">
-                    <tr>
-                        <td>
-                            <font size="-1">
-                            <?=sprintf(_("Sie haben im System %s keine eigenen Lernmodule."), $cms_data['name'])?><br>
-                            <br>
-                            </font>
-                        </td>
-                    </tr>
-                </table>
-            <? endif ?>
-            <br>
-            <br>
-            <?=$cms_data['new_module_form']?>
-        <? endif ?>
-        <?=ELearningUtils::getCMSFooter($cms_data['logo'])?>
-        <br>
-    <? endforeach ?>
-- 
GitLab