New release Curriculum 11.15

Improvements
The issues mentioned under the section improvements are considered as new functionality, user experience improvements and bug fixes.
Issues marked as Hotfix have been developed during this Sprint release, but are hotfixed and technically added to the previous release or direct to production based on the impact of the issue.
As a program or resource manager I want to see the total costs of my study based on resources used - CUR-1489
In the previous sprints / versions changes has been made to support definition of resource based cost-lines at activity, activity-serie and module level. This sprint brings it all together in a study report that provides a consolidated overview from the total estimated study costs all the way down to the individual costs of an activity.
Conditional fields on study offering are not respected - CUR-1788
When using a condition on a custom-field to show/hide in case the condition is met was not executed on the active form, but required reload of the page to show the field that should be shown since the condition was changed by setting the value of another field. This has been changed, so the validation of the condition and display of the hidden custom-field will no be executed immediately on the active form.
Workload task report shouldn't show the code for the task type - CUR-1784
The task report showed both the name of the task and the defined technical code (e.g., (examCommittee) Committee, (education) Teaching). This information has no relevance for the users of this report and even made the report less readable. This has been fixed, so only the name of the task is shown, to improve readability.
Extend the download of the subject-matrix - CUR-1623
The subject-matrix template (report) provides the option to add additional columns to be shown next to the grid, e.g. period, phase. These added columns were not exported to the Excel/CSV export. This has been changed, so the Excel/CSV export will now also contain the added fields.
Extra columns in the structure tree not shown (correctly) - CUR-1760
In the occasion the externalId was used as an added column in the structure-tree template, the column header was shown, but no data was shown This was only the case for the externalId. This has been fixed, so if the externalId is added to the module lines, the module externalId is shown.
When edition a subject as a user I would like to see the code and name - CUR-1757
When editing a subject, there was no header shown, only the data that can be edited. This means that as a user you should have remembered which one you selected or at least select the correct one to be sure of the one your editing. The usability / behaviour has been improved and both the code and the name of the chosen subject is shown in the header of the subject edit screen.
Subject name not fully shown in the subject overview - CUR-1789
The subject page template showed only a limited number of characters of the name of defined subjects. Since in some installation the name is quite extensive, a large part of the name was cut-off and not visible in the report. This has been changed, so the full name will be shown in the report. In case a name exceeds the column-width, it will continue on the next line(s).
Error when deleting a study as admin in case an advice had been given - CUR-1783
The Delete (with history) option that provides the administrator the option to physically delete a study couldn't be executed if an advice had been given for the study. This has been changed, so the delete will delete the study, including the advice, and not give an error that it's blocked.
Added new placeholder to the notification templates - CUR-809
A new placeholder [STATUS_MESSAGE] has been added to the notification templates. This placeholder will be replaced with the latest comment given at the status transition in the notification sent.
A date field shown in the curriculum tree should be shown as date - CUR-1806
This issue feels like a flashback. The curriculum tree provides support for adding additional columns to be shown. In case a custom-field of type Date is added, this is displayed as a timestamp (YYYYMMDDTHH:MM:SS.mmm).
This was in the previous sprint fixed for on module level and is now also fixed at group level so a date field is properly shown adhering to the configured visualisation format. e.g. YYYY-MM-DD.
Dashboard tasks that are grouped don't show the correct count of open tasks - CUR-1812
The Dashboard task widget provides the option to group the open tasks for instance at study level. Not in all cases the shown 'open tasks' counter had the correct value. The cause has been found and is fixed, so the calculation and display of the open tasks counter is correct.
Delete year function should work - CUR-1813
As an administrator the option is supported to delete full years (historic versions) from the system. The delete will not be executed directly, but has a 30 day retention period, where the administrator can still recall the delete action. It was noted that a year marked as delete wasn't actually not deleted after 30 days. This was caused by an internal error and has been solved in the delete functionality, so the delete will work again (after 30 days) as it should do.
Planboard is mixing up groups - CUR-1802
In some occasions the planboard mixed up the groups and present incorrect sub groups underneath a group. The cause was found, and was in case multiple groups in the structure had no code. Since the planboard used the code in structuring the multiple groups with no code were considered the same and where chosen arbitrary. This has been fixed so in case no code is provided one of the other identifying fields will be used to enable uniquely defining the relation.
DateTime fields should respect the required setting - CUR-1745
Custom-fields can be marked required, to force the user to enter the field before saving and leaving the page. It was noted that fields configured as DateTime and set to required didn't respect the required setting and the user could save and proceed without entering a value. This has been fixed, so DateTime fields marked required will require the user to enter data.
Objectives should support assignment of a level - CUR-890
The option to assign a level to an objective has been added with the following configuration / restraint:
- Adding level to objective is supported by setting page config ‘Select all subject’ is set to true on Objective page.
- Adding a level is only supporting the levels assigned to the subjects (and its category) defined at module level.
Study admin page should show ignore / terminated - CUR-1814
The information on ignore or terminated at study level was not shown and saved properly based on the configuration settings. This has been fixed, so the standard configuration of the custom-field setting the visible can be used to enable display of these two fields. The save has also been fixed, so a value set will also be saved.
Fields (codes) defined as unique are not always unique - CUR-1799
It was noted that fields marked as unique were not always unique in the system. It was quite a puzzle to figure out what caused this, but luckily it has been identified. The unique key was generated in the UI, but could be 'overtaken' by another create action executed more or less at the same time.
The generation of the unique code is now moved from the UI to the back-end to be 100% sure all values are included in the generation of the unique code.
A new behaviour has been added to the unique value configuration, that will now support the following options:
- Always: will regenerate the code in the UI each time the object is saved, so might not be unique system wide
- On empty: will regenerate the code in the UI, so might not be unique system wide
- On save: will regenerate the code each time the object is saved in the backend, guaranteeing a unique code
- On save empty: will only generate the unique code once (when the object is created new) in the backend, guaranteeing a unique code
- On create: will only generate the unique code once (when the object is created new)
Configuration:
Based on the exact requirement on guaranteed uniqueness, it is advised to alter the current settings 'always' and 'on empty' to the 'on save' and 'on save empty' behaviour.
The change overview for a specification should also show changes in the underlying objects - CUR-1622
The change overview for specification has been extended to also show the changes made in the underlying objects, e.g. Study, Qualification.
Conditional field on activity-serie not shown - CUR-1844
Conditional fields on activity-series were not correctly shown when creating a new activity-serie. This has been fixed, so the conditions will be respected both on create and edit.
Integration
The issues mentioned under the section integration are considered as extension, improvements or bug fixes related to the Curriculum API, OOAPI and/or CSV import functionality.
Enable using CSV import to upload multiple offerings per period - CUR-1809
The CSV import to upload module offering has been changed to support uploading multiple offerings for the same period. The 'period' column that was required was always used, preventing creation of mulitple offerings. This field has been made optional and either the 'period' or the 'offering' will be used to define a single period (period column) or a multiple offering in a period (offering column).
Extend the API references endpoint with retrieval of calendar periods - CUR-1818
The API endpoint to retrieve references is extended with support to retrieve the calendar periods.
When executing the api/import/v2/reference?type=calendar-period endpoint the calendar periods of the active marked calendar are retrieved.
Security
An integral part of our develop and build processes is automatic scanning for known security vulnerabilities. The vulnerabilities will be fixed based on their impact, which means that in some cases an immediate hot-fix will be applied, and in other cases the vulnerability will be fixed in the current or next Sprint (release). The security section provides an overview of the vulnerabilities mitigated.
This release no vulnerabilities were reported, so a quit sprint on that area
For more information on reported vulnerabilities, see the central database of vulnerabilities.
For more guidance on configuration and setup of Curriculum, use the relevant Curriculum manual.
Customer unique training
