wiki:ILIAS/Codeguide

Code-Navigation durch ILIAS

Diese Seite wurde vor allem als Dokumentation während der Entwicklung des HTML-Plugins geschrieben. Sie wird derzeit nicht mehr aktiv gewartet, die Inhalte sind aber nicht überholt, da sich an ILIAS wenig ändert.

Einführung

Der ILIAS-Sourcecode ist ziemlich umfangreich, hat meines Erachtens sehr viele Altlasten, ist größtenteils schlecht dokumentiert. Das finden relevanter Stellen nimmt viel Zeit in Anspruch. Daher soll diese Seite ein "Cross-Referencing" mit Verweisen in den WebSVN-Trunk von ILIAS bieten und damit wichtige Stellen schneller auffindbar machen.

Wenigstens ist die ILIAS-Codebasis relativ modular und objektorientiert geschrieben. Wichtigster Teil dieser Dokumentation hier sind die Services, die hier dokumentiert werden sollen.

COPage

Die leidige Diskussion über den Wiki-Editor und die Wiki-Engine führt auf das COPage-Modul. Details etwa in #4.

Templating-System

ILIAS verwendet eine grottige uralte Template-Library aus PEAR, und zwar HTML_TEMPLATE_IT bzw. dessen Weiterentwicklung ITX. ILIAS hat seine PEAR-Module im SVN-Tree als Service-Modul PEAR.

Siehe vor allem UICore class.ilTemplate.php, dort die Methode `show`, die das Template letztlich druckt. Achtung: Im ILIAS 4.2 befindet sich die Klasse ilTemplate noch unter iliasRoot/classes, nicht in einem Service!

Dort gibt es ferner einen Template output hook, der in meinem HTML-Plugin angesprochen wird.

Initialisierung

Das System startet mit index.php, die die ilias.php einbindet, welche die Init class.ilInitialisation.php verwendet um das System hochzufahren. Dort gibt es insbesondere die Methode requireCommonIncludes(), die den Templating-Kram einbindet.

Last modified 4 years ago Last modified on Oct 23, 2013 11:31:37 AM