Change Types: ADDED, CHANGED, FIXED, REMOVED, DEPRECATED, SECURITY
Description: A description of what was added, changed, or removed. Fixed bugs follow different instructions—see Bugs description below.
Bug IDs: “BUG-YYMM-xx” → Year (YY), Month (MM), sequential number within the given month (xx)
Bugs description: description of what caused it, description of the root cause, and, if relevant, a brief description of the solution (the main solution description should be included exclusively in the ClickUp ticket).
| Released Feature | Type | Description | Next Steps | ClickUp ID |
| ATEC predefined paths import | ADDED | Predefined learning paths from ATEC have been added to Academy using SQL inserts. This also required the creation of two new job roles: Maintenance Technician and Predictive Maintenance Specialist (they do not have mapped competencies yet). |
Map skills to the roles and fix the bug (ticket 86c7x3ew1) that currently makes impossible to search them on the JR Browsing page. |
86c7upd87 |
| Update data model for L1-L3 | ADDED | There were new entities added: CompetenceLevel1, CompetenceLevel2, and CompetenceLevel2half. In the SCK entity, a new column competenceL2HalfId was added, along with category (for values professional, general, soft). |
86c7qvfe0 |
| Released Feature | Type | Description | Next Steps | ClickUp ID |
| Continue confirmation while free course | ADDED | In course form there was added dialog window for confirmation to continue when course is set up as Free. | 86c73wj1f | |
| Elasticsearch replacement | CHANGED | Elasticsearch was replaced with dynamic queries on pages Job Role and Skill browsing. | 86c7bz20m | |
| BUG-2601-03 | FIXED | It was found that the bug occurs on the Firefox browser. process="@this" update="@form" was set for the button. |
86c6f4fzm |
| Released Feature | Type | Description | Next Steps | ClickUp ID |
| BUG-2601-02 | FIXED |
In production, it was discovered that a working group with ID = 6 does not exist, even though some records with foreign keys referencing this working group do exist. Records from the linking tables (JobRoleToWorkingGroup, SCKToWorkingGroup, PersonToWorkingGroup) were removed. No changes were made to the test database, as the test working group (ID = 6) exists in that environment. |
| Released Feature | Type | Description | Next Steps | ClickUp ID |
| BUG-2601-01 | FIXED |
A duplicate SCK was identified—two SCKs with almost identical names, differing only by a comma:
The SCK with ID 21393 (the version with the comma) was retained, all FK IDs were updated to 21393, and the SCK with ID 13486 was removed. |
86c7eukme |
No release was performed during the sprint.
| Released Feature | Type | Description | Next Steps | ClickUp ID |
| All courses management provider search | ADDED | Filter search for specific provider was added to all course managment admin page. | 86c69cp2z | |
| Course form - Contact person | CHANGED | Contact person is set to “Set” when the training contact email differs from the user’s email; otherwise, it defaults to “Me,” using the user’s email as the contact email. Selecting “Set” enables entering contact person details. | 86c6vmyyt | |
| Training cost - decimal number | CHANGED | The training cost type was left in the database schema as long. However, the cost value started being used as an attribute representing cents. On the frontend, the value is converted to euros. To make everything work, all cost values in the database were multiplied by 100. This also prevents issues commonly associated with floating-point numbers. |
86c73mkgf | |
| Delivery method mandatory removed |
CHANGED | In the course form, in the ‘Add delivery method’ step, the location fields are no longer mandatory. This applies to the Onsite and Custom options. | 86c59b47c | |
| Price input field is hidden | CHANGED | While editing a course, the price input field was hidden even though a price was set. The rendering of the input field has been correctly adjusted based on the attributecostType from Training object. |
86c63w6bp | |
| Training detail Enroll button (mobile) | CHANGED | On the Training detail page, the Enroll button was positioned between the training title and the training description on mobile. | 86c6zt15n |
No release was performed during the sprint.
| Released Feature | Type | Description | Next Steps | ClickUp ID |
| Editing delivery method | ADDED | There was added option to edit a delivery method which was created for course in course form. | 86c5z900p | |
| Technical issue and admins | CHANGED | Technical issue overlaying page for error page handling was turned off for admins. | 86c6f8m42 | |
| BUG-2512-01 | FIXED | While SCKLevelToSCKToTE object is being created, the SCKLevel ID is not set. This was fixed by retrieving the Awareness level ID from the database and assigning it to the object. This was the root cause of the invalid records being created. | 86c5vbw82 | |
| BUG-2512-02 | FIXED | Within the Save method, credits are saved only for the currently selected credit type. The UI was updated so that selecting a credit type serves only to switch between the accessibilities of credit input fields. If values are entered for both types, both are displayed in the UI and both are saved to the object. Code simplification by direct linking the input fields to the attributes of the Training object. |
86c6p0gjq | |
| BUG-2512-03 | FIXED | The issue occurred as soon as the course description contained formatted content. Bug was in the Copy prompt button function that took the description content and inserted it into the prompt. In the code, when this function failed at runtime, the functions defined after it were not initialized, and the Add button stopped working because it relied on one of those functions. Copy prompt function was adjusted so it can correctly read the description field including formatted content. |
86c6t2e6h | |
| BUG-2512-04 | FIXED | The Copy prompt button function reads the training description from its attribute via JSF (server-side). There may have been an issue with the value being updated on the server. However, the problem was resolved by retrieving the training description directly from the DOM element that contains the description, where formatted content can also be present without issues. | 86c6v9agp | |
| ECS Academy - Badge API | ADDED |
This release introduces a full integration of the Skills Hub badge system with the ECSA Academy platform, improving badge management, user experience, and administrative capabilities. 🔗 API Connection to ECSA Academy Implemented API linkage enabling retrieval of user badges based on their email address. 🆕 New Added a dedicated Introduced a comprehensive reporting page displaying all badges associated with the user. 📧 Enhanced Email Handling Users can now re-send badge-related emails to their registered account. The system no longer sends initial credential emails as part of the badge issuance flow. Updated design templates applied across all email communications for a more modern and consistent experience. 🎓 Badge Issuance by ECSA ECSA administrators can now issue badges directly through the integrated system. |
86c5zfx9k |
No release was performed during the sprint.
No release was performed during the sprint.
| Released Feature | Type | Description | Next Steps | ClickUp ID |
| Course Category and Type are mandatory | ADDED | Two p:selectOneButton components were set with required="true". For the unselected item, it was necessary to set itemValue="#{null}" and noSelectionOption="true". |
86c5vqzcr | |
| BUG-2511-03 | FIXED | The p:wizard element uses an implicit p:growl and cannot be directly accessed to configure its parameters (delay for disappearance). One possible solution is to override the growl, but that proved problematic in previous attempts. The bug was resolved by using a JavaScript function executed after the p:tab is loaded, which locates the growl element on the page and simulates a button click to close the message. |
86c55kcvn | |
| Homepage button text | CHANGED | "Job roles" to "Explore Job Roles" | 86c5a82q9 | |
| Harmonizing pages style | CHANGED | The layout, CSS, and title styles have been adjusted. | 86c63g61k |
| Released Feature | Type | Description | Next Steps | ClickUp ID |
| Super admin publisher | ADDED | Added the /all-courses-management page to the platform, accessible to admins and users with the “Content Manager” role. | 86c55kjz6 | |
| BUG-2511-01 | FIXED | In the bean, records were selected from the database by IDs that could have a value of 0. Several such cases were fixed, specifically for the IDs: countryId, languageId, and organisationTypeId. | 86c66gfvc | |
| New user role | ADDED | New user regular role - Content Manager. Its description is: Role serves for access to content management pages, but not to all administration pages. | 86c668zfb | |
| Academy - guarantor logo | ADDED | In Academy path views the guarantor name was replace with clickable logo | 86c66gh3k | |
| Academy - logos in list of paths | ADDED | In Academy in list of (predefined/customized) paths - clickable guarantor logo in path row element (right side) | 86c66ggvm | |
| Error page handling | ADDED | If an unhandled exception occurs on any page, a white overlay container appears displaying a message about technical issue. | 86c59cbqv | |
| Provider catalog links | ADDED | In the providers catalog, redirection to the provider's landing page has been added. | 86c65gkjr | |
| New predefined path | ADDED | A new predefined learning path was created for the Madrid conference. A new job role has also been created for linkage with LP. | 86c65ghug | |
| BUG-2511-02 | FIXED | Trends of job role were loaded from linking tables, but it was not checked whether they were already present in the result list. The issue was resolved by conditionally adding items to the result list. | 86c5nzpzt | |
| Academy - guarantor logos links | ADDED | All guarantor logos redirect to provider landing page. | 86c65gpfa |
| Released Feature | Type | Description | Next Steps | ClickUp ID |
| AI Mapping - score and recommendation count increase |
ADDED | AI Mapping now provides 3 recommendations per 1 learning outcome. Table results are sorted by a new score column. On the FE, this score is called AI confidence; on the BE, it’s a similarity score (0–100) computed from the normalized Euclidean distance using sim = 1.0 - 0.5 * dist (this formula converts a distance [0, 2] approximately to a similarity [0, 1] approximately due to small numerical inaccuracies - vector normalization, floating-point in python). |
86c5vcqp5 | |
| BUG-2510-01 | FIXED | Two bean methods intended for providers were used without render condition userDashboardViewBean.isProvider. |
86c5zcr2b | |
| BUG-2510-02 | FIXED | There were just two of these incorrect records (if I remember correctly) and their FK value was set to the Awareness level ID value. | Find out when these incorrect records were created and prevent them from occurring in the future. | 86c5utvkn |
| Admin pages are public | FIXED | Some of the admin pages had incorrect Liferay page permission settings. The same permission settings were then applied to all admin pages. | 86c5r8czc | |
| Homepage course number | CHANGED | Course number in grid was increased from 6 to 9. | 86c5k47cy |