In the last six weeks of 2021, we spent a lot of time on the leave days module. This was partly due to recent changes in the code base and partly due to new insights. This post will sum them up for both our administrators and developers. The same goes for leave types. These were refactored into activities as part of the business module.
Under the Hood
As per Group-Office 6.5, there has been a number of changes on a code level. This is mainly due to part of the functionality of the module being moved to the new business module. Since employee management was refactored into JMAP entities and properties, we had to refactor yearly budgets as well. A migration script was written in order to convert the old data into new data. We plan on refactoring the leave days module entirely in a later Group-Office version.
Yearly Budgets
Adding to that, one fundamental change was implemented earlier this year. Whereas in 6.4 versions and earlier, leave hour budgets had to be assigned each year, in 6.5 this was silently abolished. Instead, when an employee is added to Group-Office, the yearly budgets merely have to be applied once. Please note that when an employee starts during the year, the budget for that year is adjusted accordingly.
Special Leave
Special leave has been rewritten entirely. Compared to yearly holiday budgets, there are two important differences:
- Special leave is commonly incidental, whereas normal holiday hours are recurring each year.
- When an employee gets special leave for a longer period, this is not dependent on a calendar year.
In order to tackle these differences, special leave is now its own activity type and will be treated separately from other leave types. When an employee requests special leave and it is approved, a separate leave budget is created and the employee can use this leave budget for their registration. Alternatively, a manager can define a special leave budget for an employee.
Final Word
Please refer to our documentation pages for the business and holidays modules for further information.