Kimai maintainer since 2007
This is a early-access software, certain features are not yet here, but already planned (see Roadmap below). Feedback will be incorporated.
These features will be added in the future, but there is no guarantee when or in which order (numbers in front are priorities).
- Documentation
- (1) Written
- (2) Videos
- Approval workflow
- (1) Allow to "Sent for approval" to Supervisor
- (1) Allow to "Reject" or "Approve" by Supervisor
- (1) Only calculate approved or locked absences (new ones are for planning)
- (3) Allow to export (or print) pending approvals
- Absence calendar
- (2) Display all users / teams
- (2) Allow export as ical (or similar format) for use in external calendars (e.g. Outlook)
- Monthly contract PDF
- (2) Include: total working time sum
- (2) Include: total holiday sum
- (3) Include: holidays at start of month sum
- (3) Include: start of month working-time sum
The next list is a collection of feature wishes from users, which might or might not be added. If you need one of these features, do not rely on them being added, but contact me upfront to discuss your needs. If the above list is empty or I decide to add a feature, it will be moved to the “Planned features” section.
- Management view for all users
- showing statistics for absences
- pending holidays (approved), used holidays, available
- Monthly approvals
- Allow to close months partially, in case there is a change in the contract within the month
- Define arbitrary date ranges with attached working-time profiles
- Allow to attach each user multiple profiles
- Absences
- Types of absences (Workaround: use comment field)
- Configurable for sickness and other
- Show type in PDF
- paid/not paid
- Convert holiday to sickness (Workaround: create sickness and delete holiday)
- Sum of sickness and other days on Absence screen
- Notification
- Sent notifications to supervisor for new "absences to be approved"
- Sent notifications to user for approved/rejected absences
- Rules
- Configure if timesheets should be prohibited during absence (type)
- Breaks (Pause)
- Support calculation of breaks (e.g. display in calendar)
- Use all breaks between first entry of the day and last entry of the day as pause
- Add a button to take over values from last year (for all users)
- Show "status" more prominent
- e.g. Dashboard widgets for total numbers
- Working time requirements (Arbeitszeitvorgaben)
- Maximum working time (per day, in one session) and breaks
- Configure fixed rules per country
- Allow one custom rule
- Configure default rule (country or custom) per user
- Holidays
- Take over holidays from last year (like manual bookings)
- Finalize year
- Auto-adjust time-account of next year
- Allow to take over and adjust the holidays, which were not yet taken (probably with an expiration date?)
- Configuration for the business year, in case a company is not using the calendar year
- Multiple working contracts (configured with start and end time)
1.1.0 (18 Sept. 2023)
- Added: data migration from MR plugins
- Added: show absences in calendar
- Added: show public-holidays in calendar
- Added: export absences to excel
- Fixed: possible pagination issue
1.0.3 (11 Sept. 2023)
- Fixed: make sure to redirect to correct screen after create and delete absences
1.0.2 (07 Sept. 2023)
- Added: permission docs
- Fixed: first day of absence ranges is created twice
1.0.1 (31 Aug. 2023)
- Fixed: cannot update existing absences
- Fixed: replaced deprecated code usage
1.0.0 (28 Aug. 2023)
- Added: booking date-ranges for holiday and sickness
- Added: 10 new validations to make sure only valid absences can be booked
- Added: permissions for deleting absences
- Added: batch delete (non-locked) absences
- Added: order absences from highest to lowest date
- Added: support for half-days in public holidays
- Added_ permission for creating absences
- Added: support for half-days in holidays
- Added: support for
- Fixed: editing absences only non-locked absences
- Fixed: several calculations were not correct
- Fixed: adjusting "expected working times" should not change "public holiday calculation" in already locked months
- Fixed: adjusting "expected working times" should not change "absence calculation" in already locked months
- Fixed: removed unused `time_off` permission
Följande tabell innehåller en jämförelse mellan plugin och obligatorisk minimiversion av Kimai.
Paketversion | Minsta Kimai-version |
---|---|
1.1.0 | 2.0.34 |
1.0.0 - 1.0.3 | 2.0.31 |
0.5.0 | 2.0.29 |
0.4.0 | 2.0.28 |
0.3.0 | 2.0.27 |
0.2.0 | 2.0.26 |
0.1.0 | 2.0.14 |
Extract the ZIP file and upload the included directory and all files to your Kimai installation to the new directory:
var/plugins/WorkContractBundle/
The file structure needs to look like this afterwards:
var/plugins/
├── WorkContractBundle
│ ├── WorkContractBundle.php
| └ ... more files and directories follow here ...
After uploading the files, Kimai needs to know about the new plugin. It will be found once the cache was re-built. Call these commands from the Kimai directory:
bin/console kimai:reload --env=prod
It is not advised, but in case the above command fails you could try:
rm -r var/cache/prod/*
You might have to set file permissions afterwards:
You have to allow PHP (your webserver process) to write to
var/
and it subdirectories.
Here is an example for Debian/Ubuntu (to be executed inside the Kimai directory):
chown -R :www-data .
chmod -R g+r .
chmod -R g+rw var/
Test Kimai before executing these commands (they are likely not required in a shared-hosting environment).
You probably need to prefix them with sudo
and
the group might be called different than www-data
.
Run the following command:
bin/console kimai:bundle:workcontract:install
This will create the required database tables and update them to the latest version.
There are no commands defined in the "kimai:bundle:XYZ" namespace.
,
then either the directory has a wrong name (must be var/plugins/WorkContractBundle/) or you forgot to clear the cache (look above).