[[PageOutline(2-5,Contents,pullout)]] = Track time spent on tickets == Description This is a plugin that adds a Work Log capability to Trac. It allows you to register the fact you have ''started work'' on a ticket, which effectively allows you to ''clock on'' and ''clock off''. It uses Javascript to add a button to the ticket page to allow you to start/stop working on a given ticket. Work can only be started by the user to which the ticket is assigned, which means there is also a limitation that only one user can work on a particular ticket (see #1943). '''Work stopped:''' [[Image(TicketPage-WorkStopped.png, border=2)]] '''Work started:''' [[Image(TicketPage-WorkStarted.png, border=2)]] '''Stop work:''' [[Image(TicketPage-StopWork.png, border=2)]] If the TimingAndEstimationPlugin is installed, then when you clock off, the time spent on the ticket will be recorded. If you visit the ''Work Log'' page (a new mainnav entry), you will see a list of people (developers) and which tickets they are currently working on. Work log events are also logged to the Timeline for a historical view. '''Work log page:''' [[Image(WorkLogPage.png, border=2)]] '''Work log user page:''' [[Image(WorkLogUserPage.png, border=2)]] Several options can be configured from the Admin page: [[Image(WorkLogAdminPage.png, border=2)]] == TODO * XMLRPC Extension point. * Ajax based popup reminders when viewing Trac: this is perhaps not needed as there is a view at the top of all ticket pages. * Develop Companion Desktop Application as per #1667. * Add a Developer Work Profile to graphically show how "utilized" a developer is. Perhaps integrate graphs etc. from PSP and TSP development models. == Bugs/Feature Requests Existing bugs and feature requests for WorkLogPlugin are [report:9?COMPONENT=WorkLogPlugin here]. If you have any issues, create a [/newticket?component=WorkLogPlugin new ticket]. [[TicketQuery(component=WorkLogPlugin&group=type,format=progress)]] == Download You can download the [export:worklogplugin zipped source]. == Source You can check out WorkLogPlugin from [/svn/worklogplugin here] using Subversion, or [source:worklogplugin browse the source] with Trac. == Installation 1. Install the plugin, see [TracPlugins details here]. 1. Enable the plugin: add the following to your `trac.ini` file: {{{#!ini [components] worklog.* = enabled }}} Alternatively, this can be enabled in the Web Admin section of your Trac website. 1. Run `$ trac-admin /path/to/projenv upgrade` to upgrade the Trac environment. You should get a message like this: {{{ Work Log needs an upgrade Upgrading Database Creating work_log table Upgrading usermanual Done upgrading Work Log Upgrade done. }}} 1. Reload or restart your webserver, for example httpd or tracd. == Configuration To enable the automatic updating of your '''Total Hours''' field when using the TimingAndEstimationPlugin, you will need this configuration value: {{{#!ini [worklog] timingandestimation = true }}} To enable the automatic updating of your '''Total Hours''' field when using the TracHoursPlugin, you will need this configuration value: {{{#!ini [worklog] trachoursplugin = true }}} Other configuration values (found in source:worklogplugin/trunk/worklog/manager.py) include: * autostopstart - bool * autoreassignaccept - bool * comment - bool * timingandestimation - bool * roundup - int == Recent Changes [[ChangeLog(worklogplugin, 3)]] == Author/Contributors '''Author:''' [wiki:coling] [[BR]] '''Maintainer:''' [[Maintainer]] [[BR]] '''Contributors:''' [wiki:rjollos] [[BR]]