Skip to main content

Version 9.1.148.1 (Support Release - 26 February 2025)

People Management

Error after appointing a new person (#128545)

Problem

  • When appointing a new user, the people groups are not busted in time of the profile page load due to eventual consistency

Solution

  • Move the busting to the job profiler service to bust the masterialised cache in the service first and then all the rest of the services.

Termination reasons (#128535)
  • When terminating an employee, choosing a termination reason and then deactivating that reason in MasterData should no longer be an option when terminating another user.
  • Only active termination reasons should be available as options
  • The deactivated reason should still be on the appointment history record.

 


Performance Management

Additional API End Point (#128359)

Problem

  • Request to make additional PM endpoint accessible via Api and include review year name on overall scores endpoint

 

Solution

  • Added Reviewyear name to ListUsersOverallScores and made ListReviewYears accessible via API.

 


Learning Management

No error detail if absent notification cannot be sent to Parent/Guardian (#123832)

Problem

  • No indication anything is wrong, only an empty cell within the columns email, name and surname

Solution

  • Updated LearningManagementExportService to handle cases where recipient details (email, name, surname) might be missing using localized strings.

Training Interventions Duplicating on Marksheet (#128548)

Problem

  • When viewing the mark sheet, duplicate training interventions and mark setups are shown when only 1 subject and training intervention have been linked.
  • The problem is that when a class subject or class training intervention is deleted, the query does not filter out the deleted records.
Solution
  • Change the select mark sheet setup query to exclude deleted class training interventions and class subjects.

Nextcloud error is displayed when you open the Marksheet link on an email (#124536)

Problem

  • URL is incorrect on Angelo's Sites

 

Solution

  • Added import for generateUrl from ../../helpers/generateUrl. Updated axios.get call to use generateUrl 

 

Attendance and Marksheet not working anymore for Teachers (#128087)

Problem

  • The teacher can't view the Attendance list since the GPRC call doesn't allow LearningAdmins

 

Solution

  • Updated the [Authorize] attribute on the ListUsersLinkedToRoles method in the IdentityService class to allow access for users with either the PeopleManagementAdministrator or LearningAdministrator roles. Previously, only users with the PeopleManagementAdministrator role could access this method

 


Identity and Authorisation

People Connect Slowness in APAC (#128284)

Problem

For the SSO from V8 to V9, when the identity cookie has expired, a "Too_Many_Redirects" error is shown, and the browser session is terminated. Users are then unable to continue to V9 until they delete their cookies.

There are 2 problems here:

  1. This is the iterative error that happens on the error page. When the 1st failure happens, the error page is loaded. The error page uses the same base layout as other pages. It tries to access resources/information that requires an authenticated user, but since that was the initial cause of failure, the error page breaks and gets redirected to the error page from start again, which continues to fail until the browser forces a discontinuation.

  2. This is the initial failure, which is that the SSO redirect fails because MVC sees the user identity (from the webmvc) token as authenticated / still valid, but according to Identity. Api itself The user token has expired. The identity is never recreated until the cookies are physically deleted.

 

Solution:

  1. Added unauthenticated try catches to the base layout to handle situations where the error page is loaded without a user being authenticated. This at least prevents the browser discontinuation and displays the error page, we will need to look at improving this handling in future.
  2. Made modifications to how the SingleSignOn token is handled by always expiring and then deleting the MVC cookies and forcing the re-authentication with Identity through use of an additional ChallengeCompleted flag. This then checks whether it is a new SSO request and re-initializes the identity auth-flow regardless of whether the Identity User is seen as authenticated or not.

 


Imports

There is an overlapping position error when terminating one employee and appointing another in the position in the same file (#126495)

Problem

  • When importing for a position that does not exist in the system, the terminated record and transfer of the terminated record are handled as new appointments. When comparing the overlap, the terminated appointment's end date was not considered, thus causing the transfer to overlap the terminated record.

 

Solution

  • Change the overlap check
  • Add a unit test for the scenario

 


Notifications

Zoom Connect Credentials not persisting (#128180)

Problem

  • Was calling an async method while not awaiting

 

Solution

  • Added await to the call