Task planning
Create tasks, start/stop/pause them, assign them to users and teams and record times for them — manage to-do lists with Kimai
Kevin Papst
A Kimai plugin, which allows you to plan your work and distribute tasks among your users and teams. It features two new dashboard widgets and a new “Task management” administration view.
Features
Add “tasks” which are used to start and group timesheet records.
Each task has the following fields:
- Title
- Work description
- End date (optional)
- Time estimation (optional: if given, a progressbar for duration vs estimation will be shown in the listing page)
- User (optional: if left empty, the task can be self-assigned from the “pending tasks” widget)
- Team (optional: if given, only users from this team see this task and can assign it)
- Customer (will be copied to the started timesheet)
- Project (will be copied to the started timesheet)
- Activity (will be copied to the started timesheet)
- Description (will be copied to the started timesheet)
- Tags (will be copied to the started timesheet)
- List of comments (to share updates with others)
Ships new reports:
- List all users with the number of assigned tasks and progress (via estimation / logged duration)
- List all teams with the number of assigned tasks and progress (via estimation / logged duration)
Users can log work time for tasks with drag & drop support in the calendar view.
Ships two new dashboard widgets (see screenshots):
- The amount of rows in the dashboard widgets can be configured in the user-preferences
- With the help of the dashboard widgets every user can manage their work
You can configure the permissions in multiple ways:
- First version: allows self-management by the user via the dashboard widgets, by assigning to pending tasks
- Second version: only the “My tasks” widget will be shown, listing page is hidden from “normal users” and teamleads will plan the work schedule (a list of tasks) for the users, who then use the widget to start/pause/stop their assigned tasks
- Third version: Tasks are shared, pending tasks can be started and stopped by everyone/team members
A task can reach the overdue
status, which means:
- the task reached its end date without being finished
- or the duration of all logged entries is higher than the estimation of the task
Tasks which are overdue
will be highlighted by a warning color.
A task can be created from an Activity, pre-setting all possible values from the project and activity.
Task can also be managed via the API.
API Documentation can be found in the Plugin demo.
Dashboard widgets
This bundle ships two new dashboard widgets (see screenshots):
- My tasks widget
- Pending tasks widget
With the help of these dashboard widgets every user can manage their work.
Reports
This bundle ships two new report
- My tasks
- Team tasks
Installation
Copy files
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:
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/
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
.
Create database
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/TaskManagementBundle/) or you forgot to clear the cache (look above).
Updates
Updating the plugin works exactly like the installation:
- Delete the directory
var/plugins/TaskManagementBundle/
-
Execute all installation steps again:
- Copy files
- Clear cache
- Update database with
bin/console kimai:bundle:tasks:install
Changelog
Version 2.12.0
Compatibility: requires minimum Kimai 2.21.0
- Improve: create Task from Customer detail page
- Fixed deep link pagination
- Always attach first team when creating task from project or activity
- Using new repository features, saving at least one query per page load
Version 2.11.0
Compatibility: requires minimum Kimai 2.17.0
- Fixed tag column length
- Refactoring: new repository access
Version 2.10.0
Compatibility: requires minimum Kimai 2.17.0
- Fixed CSRF token refresh when deleting comments
- Compatibility with composer installation
- Inline Nelmio API Doc configuration
- Inline JMS Serializer configuration
Version 2.9.0
Compatibility: requires minimum Kimai 2.17.0
Added API endpoint to fetch all timesheets for one task
Version 2.8.0
Compatibility: requires minimum Kimai 2.17.0
Deprecated “pageSize” API parameter in favor of “size”
Version 2.7.0
Compatibility: requires minimum Kimai 2.15.0
Added: support for custom fields for Tasks
Version 2.6.0
Compatibility: requires minimum Kimai 2.1.0
Added: allow to filter tasks from detail page listing
Version 2.5.0
Compatibility: requires minimum Kimai 2.1.0
Changed: support attribute caching in Voter
Version 2.4.2
Compatibility: requires minimum Kimai 2.1.0
- Changed: import Route attribute from correct namespace
- Changed: removed API security definition
Version 2.4.1
Compatibility: requires minimum Kimai 2.1.0
Fix SQL problem on listing page for users with team assignment
Version 2.4.0
Compatibility: requires minimum Kimai 2.1.0
- Improved: replaced up to 1 DB query call per Task on listing page with 1 query in total
- Improved: stopping a task multiple times will not raise an error anymore
Version 2.3.0
Compatibility: requires minimum Kimai 2.1.0
- Fixed: route mapping type changed to attribute
- Fixed: removed sticky table header in detail page for timesheet list
Version 2.2.0
Compatibility: requires minimum Kimai 2.0.33
- Fixed: API param
pageSize
did not allow arbitrary values - Fixed: API pagination compatibility with Kimai 2.0.33
Screenshots
FAQ
These FAQs are provided by the developer of this offer.
Read more about the license for this item here
You can buy the plugin via the Marketplaces 'Lemon Squeezy' or 'Gumroad' and pay with Credit Card or PayPal. Both offer instant access to the purchases.
Support-questions, bug-reports and feature-requests will be answered in this Github repository