Grundlagen für Einsteiger
Programmieren für Stud.IP
Abschnitt betitelt „Programmieren für Stud.IP“Bevor man beginnt, zur Entwicklung von Stud.IP beizutragen, sollte man wissen, was Stud.IP CoreGroup, StEPs, TICs, Lifters und BIESTs sind.
Ebenfalls wichtig ist es, den Coding-Stil einzuhalten, sodass der geschriebene Code schneller für andere Stud.IP Entwickler verständlich ist. In dem Zusammenhang sind auch die Namenskonventionen und die Regeln für die PHP Dateiformatierung wichtig.
Hier ein veralteter Workshop aus dem Jahr 2011 von André Noack mit einem Gesamtüberblick.
Entwicklungssystem
Abschnitt betitelt „Entwicklungssystem“Zum Entwickeln für Stud.IP sollte ein Computer. auf dem ein Webserver, mindestens PHP 7.2, eine MySQL-Datenbank, git und eine Entwicklungsumgebung installiert ist, verwendet werden. Wie dies alles eingerichtet wird, beschreibt der Artikel zur Entwicklungsumgebung.
Das Stud.IP System
Abschnitt betitelt „Das Stud.IP System“Stud.IP “Seiten”
Abschnitt betitelt „Stud.IP “Seiten”“In Stud.IP werden neue Seiten nicht als PHP-Skript hinzugefügt, sondern über das Framework Trails. In diesem sind Seiten aufgeteilt in Controller, welche die Programmlogik enthalten und Ansichten (views), welche die Darstellung übernehmen. Sie werden durch sogenannte Flexi-Templates erzeugt, wobei es sich um PHP-Dateien handelt, denen Objekte und Variablen aus dem Controller übergeben werden.
Um einen Controller aufrufen zu können, ist es notwendig, diese in die globale Navigation einzuhängen. Das Vorgehen zum Einhängen unterscheidet sich zwischen Controllern in Plugins und Stud.IP-internen Controllern.
Datenbank-Zugriffe
Abschnitt betitelt „Datenbank-Zugriffe“Intern verwendet Stud.IP PDO, um auf Datenbanktabellen zuzugreifen. Diese Zugriffe sind über SORM (SimpleORMap) abstrahiert. Dabei handelt es sich um ein kleines Framework, welches die Überführung von Datenbankeinträgen in Objekte übernimmt.
Übersetzung
Abschnitt betitelt „Übersetzung“Stud.IP ist in zwei Sprachen erhältlich: Deutsch und Englisch. Im Quellcode werden deutsche Zeichenketten verwendet, welche mittels der PHP-Funktion gettext ins Englische übersetzt werden. Für PHP- und JavaScript-Code ist die Vorgehensweise unterschiedlich:
Plugins
Abschnitt betitelt „Plugins“Plugins sind ein bedeutender Bestandteil von Stud.IP. Mit diesen kann die Funktionsweise von Stud.IP verändert werden oder es können neue Funktionen zu Stud.IP hinzugefügt werden.
Die folgenden Seiten geben eine Einführung in die Plugin-Entwicklung: