-
Jan-Hendrik Willms authored
Closes #3453 Merge request studip/studip!2348
Jan-Hendrik Willms authoredCloses #3453 Merge request studip/studip!2348
Stud.IP v6.0
15.03.2024
Neue Features
- Der Stud.IP-Cache ist nun kompatibel zu PSR-6. (TIC #3701)
- Das
User
-Model hat die MethodehasPermissionLevel()
erhalten, um einfach abfragen zu können, ob eine Person einen bestimmten Berechtigungsstatus hat. (Issue #3453)
Breaking changes
-
Im Rahmen von Issue #3788 wurden die Zusätze an allen Icons entfernt. Dadurch kann es sein, dass manche Plugins nicht mehr erscheinen. Diese müssen dann auf eine Variante ohne Zusätze umgestellt werden.
-
Die Funktion
get_config()
wurde entfernt. Stattdessen muss die MethodeConfig::get()->getValue('CONFIG_KEY')
bzw. der ShortcutConfig::get()->CONFIG_KEY
verwendet werden. (Issue #2797) -
Die Funktion
smile()
wurde entfernt. Sie kann ersatzlos entfernt werden. (Issue #3158) -
Die Funktion
transformBeforeSave()
wurde entfernt. Sie kann ersatzlos entfernt werden. (Issue #3159) -
Die schon lange nicht mehr genutzten Methoden zum Setzen, Auslesen und Enfernen von Schmuckgrafiken von Bildern für die Sidebar wurde entfernt. Die Methoden
Sidebar::setImage()
,Sidebar::getImage()
sowieSidebar::removeImage()
müssen ersatzlos entfernt werden. (Issue #3157) -
Der zweite Parameter für die Methode
Navigation::setImage()
wurde entfernt. Der Parameter schien sich auf das Bild zu beziehen, hat aber Attribute an dem Link gesetzt. Stattdessen muss die MethodeNavigation::setLinkAttributes()
verwendet werden. (Issue #3578) -
Die Unterstützung für LESS-Stylsheets in Plugins wurde entfernt. Als Alternative wird SCSS unterstützt. (Issue #2720)
-
Die Funktionen
studip_json_encode()
undstudip_json_decode()
wurden entfernt. Stattdessen müssen die Methodejson_encode()
undjson_decode()
verwendet werden. (Issue #3814) -
Die
MembersModel.php
wurde entfernt (Issue #3811) -
Die
admission.inc.php
wurde entfernt. (Issue #3812) -
Die folgenden Funktionen wurden aus der Datei
lib/functions.php
entfernt:re_sort_dozenten()
,re_sort_tutoren()
undget_next_position()
(Issue #4002) -
Die Methoden
CronjobScheduler::scheduleOnce()
sowieCronjobTask::scheduleOnce()
wurden ersatzlos entfernt. (Issue #4078) -
Die folgenden Klassen wurden innerhalb von Stud.IP verschoben. Da sie über den Autoloader geladen werden, kann jedes manuelle Einbinden ersatzlos entfernt werden. (Issue #4105)
AuthenticatedController
PluginController
StudipController
StudipControllerPropertiesTrait
StudipResponse
-
Im Rahmen von Issue #4118 wurde
write_excel
ausgebaut. Als Alternative kannphpoffice/phpspreadsheet
verwendet werden. -
Im Rahmen von TIC #3701 wurden die Klassen für den Cache umbenannt. Alle Vorkommnisse sollten ersetzt werden:
-
StudipCacheFactory
->Studip\Cache\Factory
-
-
Die Bibliothek
opis/json-schema
wurde auf Version 2.3.0 aktualisiert (Issue #4173). Dadurch ergeben sich die folgenden Änderungen für Komponenten aus Courseware (siehe auch Migration Guide):- Instanzen von
Courseware\ContainerTypes\BlockType
müssen die MethodegetJsonSchema
anpassen. Der Return Type ist nunstring
und es muss der Inhalt der Schema-Datei zurückgegeben werden ohne Aufruf vonSchema::fromJsonString()
. - Instanzen von
Courseware\ContainerTypes\ContainerType
müssen die MethodegetJsonSchema
anpassen. Der Return Type ist nunstring
und es muss der Inhalt der Schema-Datei zurückgegeben werden ohne Aufruf vonSchema::fromJsonString()
.
- Instanzen von
-
Die von Stud.IP verwendete Template-Bibliothek "Flexi Templates" wurde vollständig in den Kern integriert. Obwohl die Umstellung abwärtskompatibel sein sollte, sollten die Klassen folgendermassen ersetzt werden:
-
Flexi_TemplateFactory
>Flexi\Factory
-
Flexi_Template
>Flexi\Template
-
Flexi_PhpTemplate
>Flexi\PhpTemplate
-
Flexi_TemplateNotFoundException
>Flexi\TemplateNotFoundException
Sollte ein Plugin manuell Flexi einbinden, so wird dies zu einem Fehler führen. Jegliches Einbinden von Dateien unterhalb von
vendor/flexi
muss ersatzlos entfernt werden. -
-
Die folgenden Funktionen wurden entfernt (Issue #4179)
getWeekdays($short = true)
veranstaltung_beginn($seminar_id = '', $return_mode = '')
veranstaltung_beginn_from_metadata($reg_irreg, $sem_begin, $start_woche, $start_termin,$turnus_data, $return_mode='int')
get_sem_name ($time)
get_sem_num ($time)
get_sem_num_sem_browse ()
get_semester($seminar_id)
delete_date($termin_id, $topic_delete = TRUE, $folder_move = TRUE, $sem_id=0)
delete_range_of_dates($range_id, $topics = FALSE)
isSchedule ($sem_id, $presence_dates_only = TRUE, $clearcache = FALSE)
isMetadateCorrespondingDate ($termin_id, $begin = '', $end = '', $seminar_id='')
getPresenceTypes()
-
Die Klasse
AuxLockRules
wurde ausgebaut. (Issue #4187) -
Die Klasse
ProfileModel
wurde gelöscht. Die darin enthaltenen Methoden wurden in denProfile_Controller
verschoben. ([Issue #4185]studip/studip#4185 (closed))) -
Die Klasse
StudipTransformFormat
wurde ausgebaut (Issue #4188)