free

Pricing for this item
Logo - VetterSolutions

VetterSolutions

Fabian Vetter - Full Stack Developer, Freelancer

Share project timesheets with anyone!
Last update: 18 Dec 2020

A Kimai 2 plugin that allows you to share your project timesheets with anyone you want to grant access to.

Features

  • Create publicly accessible urls for the project timesheets you want to share
  • Access control feature
    • protect the shared project timesheets with a password
  • View control feature
    • show or hide user of records (name of user)
    • show or hide rates of records (hour rate, total rate)
    • show or hide chart with day comparison by selected month (coming soon)
    • show or hide chart with month comparison by selected year (coming soon)
  • View customizations
    • define whether and how to merge records of a day (e.g. merge records of one day, use description of last record)

After installation: open Kimai in your browser and navigate to “Shared project timesheets”.

Permissions

Currently, there are no specific plugin permissions. The role ROLE_SUPER_ADMIN is required to manage the shared project timesheets.

Contribute

Please feel free to report bugs and suggest new features on Github: https://github.com/dexterity42/SharedProjectTimesheetsBundle/issues/new

If you’re a developer and want to contribute to this plugin, fork the repository and send me a pull request.

Installation

Compatibility

The plugin is compatible with the following Kimai releases:

Bundle version Kimai version
1.0 1.11

Copy files

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

var/plugins/SharedProjectTimesheetsBundle/

The file structure needs to like like this afterwards:

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

FTP users: please have a look at this documentation.

If you are running an older version of Kimai (before 1.8) you have to use:

bin/console cache:clear --env=prod
bin/console cache:warmup --env=prod

You might have to set file permissions afterwards:

Fix Kimai 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/
chmod -R g+rw public/avatars/

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:shared-project-timesheets: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/SharedProjectTimesheetsBundle/
  • Execute all installation steps again:
    • Copy files
    • Clear cache
    • Update database with bin/console kimai:bundle:shared-project-timesheets:install

All items by VetterSolutions