frei

Preis für dieses Angebot

Angeboten von

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 .
A plugin which forces to recalculate the hourly/fixed rate on every timesheet update

A Kimai plugin, which forces a recalculation of the hourly and fixed rates for timesheet records on certain updates.

There are two possible modes in which this plugin can work:

  1. Recalculate prices if certain fields were changed
  2. Recalculate prices on every update

The first mode is the better one, but only available from Kimai 1.20.1 on.

You can configure the mode, by default mode 1 is used, unless your Kimai version is too old, then 2 is used.

Recalculate prices if certain fields were changed

This mode should be preferred.

A timesheet record rate will be recalculated if it was changed in one of these fields: Customer, Project, Activity, User, Price

This still might overwrite custom rates, which were applied to single timesheets. But this case is very rare and using custom rates for single entries should be avoided anyway. If you find yourself using this workflow often, consider using the Expense plugin.

Recalculate prices on every update

The good part is:

  • you can change customer/project and activity and be sure, that the correct rate is used.

The bad part:

  • even setting the export field might change the hourly rate and render your history invalid
  • a manually entered hourly/fixed rate will be overwritten
  • you HAVE to work with the pre-configured rates on your activities/projects/customers.

Installation

Kompatibilität

Plugins sollten immer kompatibel sein mit höheren Kimai Versionen. Die folgende Liste enthält Plugin zu benötigter Kimai Version.

Plugin Version Minimale Kimai Version
1.0 1.20.1
0.2 1.9
0.1 0.9

Dateien kopieren

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

var/plugins/RecalculateRatesBundle/

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/RecalculateRatesBundle.git RecalculateRatesBundle

The file structure needs to look like this afterwards:

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

Cache leeren

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.

Aktualisierung

Updating the plugin works exactly like the installation:

  • Delete the directory var/plugins/RecalculateRatesBundle/
  • Execute all installation steps again:
    • Dateien kopieren
    • Cache leeren