free

Pricing for this item

Offered by

Logo - Keleo

Keleo

Software development company founded by Kevin Papst

If you have any question, visit the developers homepage or use the email for direct contact .
Configure activities as deduction times and save negative durations

Allows to configure activities as being a “deduction time”. A deduction time means that the timesheet duration will be negative.

Deduction times can be edited, but the negative duration is not used in the UI and not saved!

It is always the calculated duration of end - start, which is then converted to the negative value.

Configure an activity

When editing any activity, you will see a new checkbox Deduction time. If this is checked, every future timesheet using this activity, will have negative durations.

When to use this plugin

If you are too lazy to create multiple records per day, but instead want to record entire days (attendance) and use those to create invoices/exports, you find yourself with too many hours on the clock.

You could manually subtract breaks from every day OR you use this plugin.

  1. Allow overlapping records in System > Configuration
  2. Create a global activity “break time” and activate the Deduction time checkbox
  3. Use that new activity to record your employees break times, e.g. via calendar
  4. Safely export or invoice your times: due to the negative duration the break times will be subtracted from the attendance time

Installation

Compatibility

Plugins should always be compatible with higher Kimai versions, the following list contains the plugin version and the required minimum Kimai version.

Bundle version Minimum Kimai version
1.0 1.27.0

Copy files

Extract the ZIP file and upload the included directory and all files to your Kimai installation to the new directory:

var/plugins/DeductionTimeBundle/

Or you can clone it directly to the var/plugins/ directory of your Kimai installation:

cd kimai/var/plugins/
git clone https://github.com/Keleo/DeductionTimeBundle.git DeductionTimeBundle

The file structure needs to look like this afterwards:

var/plugins/
├── DeductionTimeBundle
│   ├── DeductionTimeBundle.php
|   └ ... more files and directories follow here ...

Clear cache

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:

How to reload Kimai cache

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:

Adjust file permission

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.

Updates

Updating the plugin works exactly like the installation:

  • Delete the directory var/plugins/DeductionTimeBundle/
  • Execute all installation steps again:
    • Copy files
    • Clear cache