79 € per year

excl. VAT

Offered by

Logo - Kevin Papst

Kevin Papst

Kimai maintainer since 2007

Contact
If you have any question, please use the following contact information to get in touch with the developer directly.

Try it

You can test this plugin at demo-branch.kimai.org:

Username: susan_super
Password: kitten

Find more test accounts here.

Create free-configurable additional fields for timesheets, customers, projects, activities and users in various formats. Fields can be optional or mandatory and restricted by permissions.

Allows configuration of additional (custom) fields for: Timesheets, Customers, Projects, Activities, Invoices, User, Expenses (see plugin).

Features

You can create as many fields as you want for each data type, where each field:

  • is either optional or mandatory
  • can be restricted to users with certain permissions or roles
  • can be described with a name and help text
  • has a maximum length of 65535 character

The custom-field data is then available in:

  • Data-tables will display all visible fields
  • Exports (HTML and Spreadsheets include all visible fields)
  • Timesheet exports (include visible timesheet fields)
  • API (collections and entities)
  • Invoice templates (custom templates have access to all fields)

You can change the “weight” of custom-fields, so they show up in the order you define.

Be aware:

  • Sensitive data can be configured as “invisible”, so it will not show up in the previously mentioned places
  • Weekly-hours does NOT support custom fields
  • User preferences (custom fields for users) are not exported by the API (this is a limitation in the core application)
  • User preferences have a maximum length of 250 character

Field types

Custom fields can be of the following type: string, integer, number, duration, money, language, currency, country, color, date, datetime, email, textarea, invoice template, checkbox, choice-list

More about those in the documentation.

Screenshots

Purchase

Compatibility

The following table contains a comparison between plugin and required minimum Kimai version.

Bundle version Minimum Kimai version
2.0.7 2.0
1.24 1.17
1.20 1.15
1.17 1.14

Installation

Copy files

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

var/plugins/MetaFieldsBundle/

The file structure needs to look like this afterwards:

var/plugins/
├── MetaFieldsBundle
│   ├── MetaFieldsBundle.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.

Create database

Run the following command:

bin/console kimai:bundle:metafields:install

This will create the required database tables and update them to the latest version.

Updates

Updating the plugin works exactly like the installation:

  • Delete the directory var/plugins/MetaFieldsBundle/
  • Execute all installation steps again:
    • Copy files
    • Clear cache
    • Update database with bin/console kimai:bundle:metafields:install