Overview
Dans cette version, nous avons ajouté les fonctionnalités suivantes :
- Durée d'examen prédéfinie configurable
- Verrouillage au niveau du champ pour les instructeurs pendant les fenêtres d'auto-service
- Visibilité des solutions basée sur le rôle
- Rapport d'emploi du temps d'examen amélioré
- Constructor University API : séparation des examens multi-modules et inscription des repassants
- Micro frontend de navigation Vue.js pour Constructor Cloud
- Moteur de cohérence des données organisationnelles pour l'API CUB
What's new
Configurable predefined exam durations
Les établissements peuvent désormais contrôler la façon dont les instructeurs saisissent les durées d'examen via un nouveau paramètre sous Planning Page Settings. Deux modes sont disponibles : saisie libre et valeurs prédéfinies. En mode prédéfini, les administrateurs définissent entre 1 et 10 valeurs autorisées de durée d'examen en minutes. Les instructeurs doivent alors sélectionner une valeur dans un menu déroulant plutôt que de saisir la durée manuellement. Le système vérifie que les durées sélectionnées respectent la règle de durée des créneaux, en garantissant qu'au moins 10 minutes restent pour l'évacuation de la salle. Cette fonctionnalité est également prise en charge via des services web pour l'intégration avec des systèmes externes.
Instructor field-level lock for self-service windows
Lorsque les administrateurs définissent une fenêtre temporelle permettant aux instructeurs d'effectuer des modifications limitées, les champs des données maîtres institutionnelles sont désormais verrouillés automatiquement. Pendant la fenêtre d'auto-service, les instructeurs ne peuvent pas modifier les champs structurels tels que Type de Cours, Nombre de Cours, Faculté, Programme, Enseignants, Niveau, Section ou Campus. La duplication de section, la suppression et la sélection de lignes sont également désactivées. Le système applique ces restrictions à la fois au niveau du frontend et des API, et les opérations bloquées sont consignées pour l'audit. Cela évite les modifications accidentelles de la structure académique, tout en permettant aux instructeurs de gérer les champs autorisés.
Role-based solution visibility
La page des solutions restreint désormais la visibilité en fonction du statut de publication et du rôle de l'utilisateur. Les utilisateurs non administrateurs ne peuvent voir que les solutions publiées dans le menu déroulant des solutions, ce qui évite la confusion causée par des emplois du temps brouillons ou inachevés. Si aucune solution n'a été publiée, le menu déroulant apparaît vide avec un message explicite. Admin et Super Admin conservent un accès complet à toutes les solutions. Cette restriction est également appliquée côté serveur pour empêcher l'accès via des URL directes ou des appels API.
Enhanced examination schedule report
Le rapport général d'emploi du temps d'examen inclut désormais quatre améliorations. Les examens au sein de chaque campus et créneau sont triés par durée par ordre croissant pour faciliter la revue. Les en-têtes de créneau affichent la plage horaire complète au lieu de n'afficher que l'heure de début. Chaque ligne d'examen indique la durée en minutes ainsi qu'une heure de début et de fin calculée spécifique à l'examen. Les examens en ligne sont désormais inclus dans le rapport avec la valeur de salle Online Exam, ce qui permet de les distinguer plus facilement des examens en salle.
Constructor University API multi-module exam separation and retaker enrollment
L'intégration de la Constructor University API prend désormais en charge deux améliorations majeures. Tout d'abord, les cours comportant plusieurs modules d'examen écrit sont importés comme enregistrements de planification d'examen séparés, et chaque enregistrement conserve sa propre liste d'inscrits. Cela résout les examens manquants pour des cours tels que CH-212, où le Module A et le Module B nécessitent une planification indépendante. Ensuite, la synchronisation des inscriptions capture désormais les apprenants repassants des semestres précédents, à partir de l'automne 2023, ce qui récupère environ 600 apprenants précédemment manquants. Le statut d'inscription des apprenants est validé en utilisant l'entité StudiesSemesterCounter pour identifier les repassants actifs par rapport aux abandons.
Vue.js navigation micro frontend for Constructor Cloud
Le Schedule Cloud Fragment inclut désormais un micro frontend de navigation dédié en Vue.js qui gère l'interface de navigation pour la plateforme Constructor Cloud. Le composant suit les spécifications de design Figma et fournit une hiérarchie de navigation pour Course Periods, Exam Periods, Planning et Settings. Il lit le contexte du terme depuis LocalStorage, s'adapte à différents environnements de déploiement et prend en charge le deep linking avec la navigation de l'historique du navigateur.
CUB API data consistency engine
Un nouveau moteur de cohérence des données organisationnelles et de repli automatique a été ajouté pour l'intégration de l'API CUB. Le moteur détecte et résout automatiquement les incohérences de données lors de la synchronisation, y compris la logique de navigation pour le mappage des types d'examen et des durées. Cela contribue à fournir un transfert de données plus fiable entre CampusNet et Constructor Schedule.
Fixed issues
Nous avons résolu les problèmes suivants :
- Turkish report language : les rapports Downloaded Data Fetch et Data Save n'apparaissent plus en anglais lorsque la langue du web est le turc. Tracking IDs :
SCH-1587 - Cloud sync and notification buttons : les boutons de notification et de synchronisation sont désormais visibles dans le nouveau design cloud. Tracking IDs :
SCH-4172 - Selected term after refresh : le semestre sélectionné s'affiche désormais correctement après un rafraîchissement de la page. Tracking IDs :
SCH-4185 - Term selection field input : le champ de sélection du semestre n'autorise plus la saisie libre et prend désormais en charge uniquement la sélection. Tracking IDs :
SCH-4188 - Period panel navigation : la navigation vers les périodes depuis le panneau des périodes fonctionne désormais correctement. Tracking IDs :
SCH-4271 - Missing Course and Event periods : les périodes de cours et d'événements apparaissent désormais correctement sur la page du semestre. Tracking IDs :
SCH-4272 - Help and report links : les boutons Help Guide et Report a Problem ouvrent désormais les pages correctes. Tracking IDs :
SCH-4288 - Copy area validation : la validation des espaces vides dans la zone de copie fonctionne désormais correctement. Tracking IDs :
SCH-4315 - Classroom icon styling : l'icône de salle correspond désormais à la spécification de design Figma. Tracking IDs :
SCH-4318 - White screen in course term : la vue du semestre de cours n'affiche plus un écran blanc lorsque les utilisateurs ouvrent des cours. Tracking IDs :
SCH-4319 - Synchronization date display : la date de synchronisation apparaît désormais dans la zone de synchronisation. Tracking IDs :
SCH-4321 - Year sorting on the synchronization screen : le champ Year est désormais trié correctement. Tracking IDs :
SCH-4328 - Missing class hours in the solution area : les heures de cours apparaissent désormais correctement dans la zone de solution.
- Synchronization area errors : les erreurs dans la zone de synchronisation du nouveau design ont été corrigées. Tracking IDs :
SCH-4358 - User management filters : les filtres sur la page User management se réinitialisent désormais correctement. Tracking IDs :
SCH-4378 - Term creation save button : le bouton Save s'affiche désormais correctement dans la fenêtre de création de semestre. Tracking IDs :
SCH-4409 - Negative values in bulk update fields : la page Instructors n'accepte plus de valeurs négatives dans les champs de mise à jour en masse. Tracking IDs :
SCH-1612 - Planning page layout : les zones de la page de planning correspondent désormais au design mis à jour. Tracking IDs :
SCH-4163 - Unnecessary scrolling : le défilement inutile sur les pages affectées a été supprimé. Tracking IDs :
SCH-4167 - Switching to a newly added term : les utilisateurs peuvent désormais basculer vers un semestre nouvellement ajouté. Tracking IDs :
SCH-4170 - Import download button : le bouton de téléchargement dans la section Import fonctionne désormais correctement. Tracking IDs :
SCH-4410 - Campus updates in the solution section : les mises à jour du campus apparaissent désormais correctement dans la section de solution.
- Events in Event Calendar : les événements apparaissent désormais correctement dans le Event Calendar. Tracking IDs :
SCH-4444 - Notification icon updates : l'icône de notification se met désormais à jour lorsqu'une nouvelle notification arrive. Tracking IDs :
SCH-4445 - Solution page translations : les problèmes de traduction sur la page des solutions ont été corrigés. Tracking IDs :
SCH-4481 - Optimization distribution phase : la phase de distribution progresse désormais correctement pendant l'optimisation.
- Instructor filter in planning : les filtres d'instructeur sur la page de planning fonctionnent désormais correctement. Tracking IDs :
SCH-4506 - Exam period filter data : les filtres de période d'examen chargent désormais correctement les données. Tracking IDs :
SCH-4507 - Exam Schedule add icon : l'icône plus dans Exam Schedule répond désormais correctement. Tracking IDs :
SCH-4511 - Weekly schedule creation : les erreurs lors de la création d'emplois du temps hebdomadaires ont été corrigées. Tracking IDs :
SCH-4541 - Combined exam duration display : la durée des examens s'affiche désormais correctement lorsque des examens sont combinés. Tracking IDs :
SCH-4542 - Combined exam campus display : les informations de campus apparaissent désormais correctement lorsque des examens sont combinés. Tracking IDs :
SCH-4543 - Distribution counter outside GMT+3 : le compteur de distribution fonctionne désormais correctement dans les fuseaux horaires en dehors de GMT+3. Tracking IDs :
SCH-4544 - Combined course campus and program values : les valeurs de campus et de programme s'affichent désormais correctement lorsque des cours sont combinés. Tracking IDs :
SCH-4557 - Building field clearing : le champ de saisie du bâtiment se vide désormais correctement. Tracking IDs :
SCH-4558 - Pop-up messages : les dialogues contextuels affichent désormais les messages corrects. Tracking IDs :
SCH-4569 - Predefined duration dropdown : le menu déroulant de durée d'examen apparaît désormais correctement lorsque des durées prédéfinies sont sélectionnées. Tracking IDs :
SCH-4688 - Late lesson in the exam solution : les erreurs lors de l'ajout d'une leçon tardive à la solution d'examen ont été corrigées. Tracking IDs :
SCH-4689 - Adding courses during the exam period : les cours peuvent désormais être ajoutés à la solution d'examen pendant la période d'examen. Tracking IDs :
SCH-4691 - Deleting predefined durations in use : le système n'autorise plus la suppression de valeurs de durée prédéfinies qui sont actuellement utilisées. Tracking IDs :
SCH-4692 - Predefined duration warning message : le message d'avertissement apparaît désormais correctement lorsqu'un utilisateur tente de supprimer une durée prédéfinie utilisée. Tracking IDs :
SCH-4695 - Exam duration during the course term : la durée d'examen s'affiche désormais correctement pendant le semestre de cours. Tracking IDs :
SCH-4694