Übersicht
In dieser Version haben wir die folgenden Funktionen hinzugefügt:
- Konfigurierbare vordefinierte Prüfungsdauer
- Feldsperre auf Instruktor-Ebene für Self-Service-Zeiträume
- Rollenbasierte Sichtbarkeit von Lösungen
- Erweiterter Prüfungsplanbericht
- Constructor University API: Trennung mehrerer Prüfungs‑Module und Nachprüfenden‑Einschreibung
- Vue.js Navigations‑Microfrontend für Constructor Cloud
- CUB API Engine zur Konsistenz organisatorischer Daten
Neuigkeiten
Konfigurierbare vordefinierte Prüfungsdauern
Institutionen können nun über eine neue Einstellung unter Planning Page Settings steuern, wie Dozierende Prüfungsdauern eingeben. Es stehen zwei Modi zur Verfügung: freie Eingabe und vordefinierte Werte. Im vordefinierten Modus legen Administratorinnen und Administratoren zwischen 1 und 10 zulässige Prüfungsdauerwerte in Minuten fest. Dozierende müssen dann aus einem Dropdown wählen, anstatt Dauern manuell einzugeben. Das System prüft, dass die gewählten Dauern der Regel zur Slot‑Dauer entsprechen und mindestens 10 Minuten für die Räumung des Hörsaals verbleiben. Diese Funktion wird auch über Webservices für die Integration externer Systeme unterstützt.
Feldsperre auf Instruktor‑Ebene für Self‑Service‑Zeiträume
Wenn Administratorinnen und Administratoren ein Zeitfenster definieren, in dem Dozierende eingeschränkte Änderungen vornehmen dürfen, werden institutionelle Stammdatenfelder nun automatisch gesperrt. Während des Self‑Service‑Fensters können Dozierende Strukturfelder wie Course Type, Lecture Count, Faculty, Program, Instructors, Grade, Section oder Campus nicht ändern. Abschnittsduplizierung, Löschen von Abschnitten und Zeilenauswahl sind ebenfalls deaktiviert. Das System setzt diese Einschränkungen sowohl im Frontend als auch auf API‑Ebene durch, und blockierte Vorgänge werden zu Audit‑Zwecken protokolliert. Dadurch werden versehentliche Änderungen an der akademischen Struktur verhindert, während Dozierende weiterhin erlaubte Felder verwalten können.
Rollenbasierte Sichtbarkeit von Lösungen
Die Lösungsseite schränkt die Sichtbarkeit jetzt basierend auf dem Veröffentlichungsstatus und der Benutzerrolle ein. Nicht‑Admin‑Benutzer sehen im Lösungs‑Dropdown nur veröffentlichte Lösungen, was Verwirrung durch Entwürfe oder unvollständige Pläne verhindert. Wenn keine Lösung veröffentlicht wurde, erscheint das Dropdown leer und zeigt eine klare Meldung an. Admin und Super Admin behalten vollen Zugriff auf alle Lösungen. Diese Einschränkung wird auch serverseitig durchgesetzt, um den Zugriff über direkte URLs oder API‑Aufrufe zu verhindern.
Erweiterter Prüfungsplanbericht
Der allgemeine Prüfungsplanbericht enthält jetzt vier Verbesserungen. Prüfungen innerhalb jedes Campus und Slots werden zur leichteren Prüfung aufsteigend nach Dauer sortiert. Slot‑Header zeigen den vollständigen Zeitbereich anstatt nur die Startzeit. Jede Prüfungszeile zeigt die Prüfungsdauer in Minuten sowie eine berechnete prüfungsspezifische Start‑ und Endzeit. Online‑Prüfungen sind nun im Bericht enthalten und werden mit dem Raumwert Online‑Prüfung angezeigt, wodurch sie leichter von raumbasierten Prüfungen zu unterscheiden sind.
Constructor University API: Trennung mehrerer Prüfungs‑Module und Nachprüfenden‑Einschreibung
Die Integration der Constructor University API unterstützt jetzt zwei wesentliche Verbesserungen. Erstens werden Kurse mit mehreren schriftlichen Prüfungsmodulen als separate Prüfungsplan‑Aufzeichnungen importiert, wobei jede Aufzeichnung ihre eigene Lernenden‑Einschreibungsliste beibehält. Das behebt fehlende Prüfungen für Kurse wie CH‑212, bei denen Modul A und Modul B unabhängig geplant werden müssen. Zweitens erfasst die Enrollment‑Sync jetzt Nachprüfende aus vorangegangenen Semestern, beginnend mit Herbst 2023, wodurch rund 600 zuvor fehlende Lernende wiederhergestellt werden. Der Lernenden‑Einschreibungsstatus wird validiert, indem die Entität StudiesSemesterCounter verwendet wird, um aktive Nachprüfende von Ausgeschiedenen zu unterscheiden.
Vue.js Navigations‑Microfrontend für Constructor Cloud
Das Schedule Cloud Fragment enthält jetzt ein dediziertes Vue.js Navigations‑Microfrontend, das die Navigations‑UI für die Constructor Cloud Plattform übernimmt. Die Komponente folgt den Figma‑Designspezifikationen und stellt die Navigationshierarchie für Course Periods, Exam Periods, Planning und Settings bereit. Sie liest den Term‑Kontext aus LocalStorage, passt sich verschiedenen Deployment‑Umgebungen an und unterstützt Deep‑Linking mit Browser‑History‑Navigation.
CUB API Engine zur Konsistenz organisatorischer Daten
Für die CUB API‑Integration wurde eine neue Engine zur Konsistenz organisatorischer Daten und automatischem Fallback hinzugefügt. Die Engine erkennt und löst während der Synchronisation automatisch Dateninkonsistenzen, inklusive Navigationslogik für Prüfungsart‑ und Dauer‑Mapping. Das trägt zu einer zuverlässigeren Datenübertragung zwischen CampusNet und Constructor Schedule bei.
Behobene Probleme
Wir haben die folgenden Probleme behoben:
- Türkische Berichtssprache: Die heruntergeladenen Data Fetch‑ und Data Save‑Berichte erscheinen nicht mehr auf Englisch, wenn die Websprache Türkisch ist. Tracking‑IDs:
SCH-1587 - Cloud‑Sync‑ und Benachrichtigungs‑Buttons: Benachrichtigungs‑ und Sync‑Buttons sind im aktualisierten Cloud‑Design jetzt sichtbar. Tracking‑IDs:
SCH-4172 - Ausgewähltes Semester nach Aktualisierung: Das ausgewählte Semester erscheint nach einem Seiten‑Refresh jetzt korrekt. Tracking‑IDs:
SCH-4185 - Eingabe im Semesterauswahlfeld: Das Semesterauswahlfeld erlaubt keine Freitexteingabe mehr und unterstützt jetzt nur noch Auswahlverhalten. Tracking‑IDs:
SCH-4188 - Periodenpanel‑Navigation: Die Navigation zu Perioden über das Periodenpanel funktioniert jetzt korrekt. Tracking‑IDs:
SCH-4271 - Fehlende Course‑ und Event‑Perioden: Course‑ und Event‑Perioden erscheinen jetzt korrekt auf der Semesterseite. Tracking‑IDs:
SCH-4272 - Hilfe‑ und Bericht‑Links: Die Buttons Help Guide und Report a Problem öffnen jetzt die richtigen Seiten. Tracking‑IDs:
SCH-4288 - Validierung des Kopierbereichs: Die Leeraum‑Validierung im Kopierbereich funktioniert jetzt korrekt. Tracking‑IDs:
SCH-4315 - Classroom‑Icon‑Styling: Das Classroom‑Icon entspricht jetzt der Figma‑Designspezifikation. Tracking‑IDs:
SCH-4318 - Weißer Bildschirm in Course‑Term: Die Course‑Term‑Ansicht zeigt beim Öffnen von Kursen keinen weißen Bildschirm mehr. Tracking‑IDs:
SCH-4319 - Anzeige des Synchronisationsdatums: Das Sync‑Datum erscheint jetzt im Synchronisationsbereich. Tracking‑IDs:
SCH-4321 - Jahres‑Sortierung im Synchronisationsbildschirm: Das Feld Year sortiert jetzt korrekt. Tracking‑IDs:
SCH-4328 - Fehlende Unterrichtsstunden im Lösungsbereich: Unterrichtsstunden erscheinen jetzt korrekt im Lösungsbereich.
- Fehler im Synchronisationsbereich: Fehler im Synchronisationsbereich im aktualisierten Design wurden behoben. Tracking‑IDs:
SCH-4358 - Filter in der Benutzerverwaltung: Filter auf der Seite User management werden jetzt korrekt zurückgesetzt. Tracking‑IDs:
SCH-4378 - Speichern‑Button beim Erstellen eines Semesters: Der Save‑Button wird im Modal für die Semestererstellung jetzt korrekt angezeigt. Tracking‑IDs:
SCH-4409 - Negative Werte in Massenaktualisierungsfeldern: Die Seite Instructors akzeptiert keine negativen Werte in Massenaktualisierungsfeldern mehr. Tracking‑IDs:
SCH-1612 - Layout der Planungsseite: Die Bereiche der Planungsseite entsprechen jetzt dem aktualisierten Design. Tracking‑IDs:
SCH-4163 - Unnötiges Scrollen: Unnötiges Scrollen auf betroffenen Seiten wurde entfernt. Tracking‑IDs:
SCH-4167 - Wechsel zu neu hinzugefügtem Semester: Benutzer können jetzt zu einem neu hinzugefügten Semester wechseln. Tracking‑IDs:
SCH-4170 - Import‑Download‑Button: Der Download‑Button im Import‑Bereich funktioniert jetzt korrekt. Tracking‑IDs:
SCH-4410 - Campus‑Aktualisierungen im Lösungsbereich: Campus‑Aktualisierungen erscheinen jetzt korrekt im Lösungsbereich.
- Events im Event Calendar: Events erscheinen jetzt korrekt im Event Calendar. Tracking‑IDs:
SCH-4444 - Benachrichtigungs‑Icon‑Aktualisierungen: Das Benachrichtigungs‑Icon wird aktualisiert, wenn neue Benachrichtigungen eintreffen. Tracking‑IDs:
SCH-4445 - Übersetzungsfehler auf der Lösungsseite: Übersetzungsprobleme auf der Lösungsseite wurden behoben. Tracking‑IDs:
SCH-4481 - Optimierungs‑Verteilungsphase: Die Verteilungsphase schreitet während der Optimierung jetzt korrekt voran.
- Instruktor‑Filter in der Planung: Instruktorfilter auf der Planungsseite funktionieren jetzt korrekt. Tracking‑IDs:
SCH-4506 - Daten für Exam‑Period‑Filter: Exam‑Period‑Filter laden jetzt Daten korrekt. Tracking‑IDs:
SCH-4507 - Hinzufügen‑Icon im Exam Schedule: Das Plus‑Icon im Exam Schedule reagiert jetzt korrekt. Tracking‑IDs:
SCH-4511 - Erstellung des Wochensplans: Fehler bei der Erstellung des Wochensplans wurden behoben. Tracking‑IDs:
SCH-4541 - Anzeige kombinierter Prüfungsdauern: Die Prüfungsdauer wird bei kombinierten Prüfungen jetzt korrekt angezeigt. Tracking‑IDs:
SCH-4542 - Anzeige des Campus bei kombinierten Prüfungen: Campus‑Informationen erscheinen bei kombinierten Prüfungen jetzt korrekt. Tracking‑IDs:
SCH-4543 - Verteilungszähler außerhalb GMT+3: Der Verteilungszähler funktioniert jetzt korrekt in Zeitzonen außerhalb von GMT+3. Tracking‑IDs:
SCH-4544 - Anzeige von Campus‑ und Programmwerten bei kombinierten Kursen: Campus‑ und Programmwerte werden bei kombinierten Kursen jetzt korrekt angezeigt. Tracking‑IDs:
SCH-4557 - Leeren des Gebäudefelds: Das Eingabefeld für Gebäude wird jetzt korrekt geleert. Tracking‑IDs:
SCH-4558 - Pop‑up‑Meldungen: Pop‑up‑Dialoge zeigen jetzt die korrekten Meldungen an. Tracking‑IDs:
SCH-4569 - Vordefiniertes Dauer‑Dropdown: Das Prüfungsdauer‑Dropdown erscheint jetzt korrekt, wenn vordefinierte Dauern ausgewählt sind. Tracking‑IDs:
SCH-4688 - Späte Lektion in der Prüfungslösung: Fehler beim Hinzufügen einer späten Lektion zur Prüfungslösung wurden behoben. Tracking‑IDs:
SCH-4689 - Hinzufügen von Kursen während der Prüfungsperiode: Kurse können während der Prüfungsperiode jetzt zur Prüfungslösung hinzugefügt werden. Tracking‑IDs:
SCH-4691 - Löschen vordefinierter Dauern, die verwendet werden: Das System erlaubt nicht mehr das Löschen von vordefinierten Dauerwerten, die aktuell verwendet werden. Tracking‑IDs:
SCH-4692 - Warnmeldung bei Löschung in Verwendung befindlicher vordefinierter Dauer: Die Warnmeldung erscheint jetzt korrekt, wenn ein Benutzer versucht, eine in Verwendung befindliche vordefinierte Dauer zu löschen. Tracking‑IDs:
SCH-4695 - Prüfungsdauer während des Course‑Terms: Die Prüfungsdauer wird während des Course‑Terms jetzt korrekt angezeigt. Tracking‑IDs:
SCH-4694