Skip to content

Lehrende bekommen Fehler beim Beantragen

Wenn man Lehrender ist, bekommt man nach dem Beantragen eine Fehlermeldung, dass diese Veranstaltung nicht für die Evaluation vorgesehen ist, obwohl noch der aktuelle Zeitraum zu Beantragen ist und sogar eine Beantragung stattgefunden hat. Nach Neuladen der Seite (per GET) sind die Daten auch korrekt da.

Der Fehler ist extrem schwierig zu finden gewesen. In der Methode EvasysCourseProfile::profileUpdated wird für Loggingzwecke eine Kopie der ursprünglichen Daten erstellt. Diese Daten werden auf String konvertiert, damit man sie in die Datenbank schreiben kann. Die ursprünglichen Daten sind dann allerdings ein Array von Werten, wobei die Werte für course_profile_id und id nicht NULL sind, sondern &NULL, also ein Zeiger auf NULL. Konvertiere ich diese um zu einem String, sind sie plötzlich ein Leerstring, aber nicht nur in dem Array, sondern auch in dem Objekt selbst. Nach dem nächsten restore, also dem Abholen der Daten aus der Datenbank wird nach einem Objekt mit der ID eines Leerstrings gesucht, das es nicht gibt. Also denkt die Oberfläche von Stud.IP, dass diese Veranstaltung nicht vorgesehen ist für eine Befragung, weil es einfach ein falsches Objekt in der Hand hält.