Customer Portal
Share client and project statistics and timesheets with anyone using a secret URL, optionally password protected.
Kevin Papst
A Kimai plugin that allows you to share your timesheets details and statistics for customer and projects via a URL.
Features
- Shared details with your customers via URL
- Create publicly accessible URLs for customer details (stats and timesheets)
- Create publicly accessible URLs for the project details (stats and timesheets)
- Access control: protect the shared details with a password (optional)
- 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
- Show or hide chart with month comparison by selected year
- 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 “Applications > Customer Portal”.
Credits
This plugin was originally created by Fabian Vetter in 2020.
As it was abandoned by the original author, it has been forked and further extended by Kevin Papst since then.
Установка
Копировать файлы
Extract the ZIP file and upload the included directory and all files to your Kimai installation to the new directory:
The file structure needs to look like this afterwards:
Очистить кэш
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/
You might not need these commands in a shared-hosting environment.
And you probably need to prefix them with sudo
and/or the group might be called different from www-data
.
Создать базу данных
Run the following command:
This will create the required database tables and update them to the latest version.
If you see an error like There are no commands defined in the "kimai:bundle:XYZ" namespace.
,
then either the directory has a wrong name (must be var/plugins/CustomerPortalBundle/) or you forgot to clear the cache (look above).
Обновления
Updating the plugin works exactly like the installation:
- Delete the directory
var/plugins/CustomerPortalBundle/
-
Execute all installation steps again:
- Копировать файлы
- Очистить кэш
- Update database with
bin/console kimai:bundle:customer-portal:install
Changelog
Version 4.1.1
Compatibility: requires minimum Kimai 2.21.0
- Added missing “Documentation” link
- Create with invalid type caused 500: redirect to manage view instead
Version 4.1.0
Compatibility: requires minimum Kimai 2.21.0
- Move “Customer Portal” to “Administration” menu
- Use new database table
kimai2_customer_portals
- Automatic migration of existing URL shares and database cleanup
- Move statistics card above timesheets
- Fix: broken customer statistics (customer portals with budget display for customer without budget)
Version 4.0.0
Compatibility: requires minimum Kimai 2.21.0
- Rename to “Customer portal”
- Allow to switch month and year via dropdowns
- Simplify URLs by using 20-char share-key only (old URLS still working)
- Toggle financial- and time budget statistics for shared URLs
- Allow to share an entire customer
- Add details button and stats in project listing on shared customer page
- Use translations from core, use latest repository features
- Use password field for login
- Fixes missing timesheet if user and start time is the same
Демо
Вы можете протестировать этот плагин на demo.kimai.org:
Имя пользователя: susan_super
Пароль: password