Version 10 (modified by anonymous, 9 years ago) (diff)




Export data from Trac to Taskjuggler to get a real management tool and planification. You can group your task by milestone and MacroTask.

Bugs/Feature Requests

Existing bugs and feature requests for TaskjugglerPlugin are here.

If you have any issues, create a new ticket.


  • see the README File in the zip
  • To have some knowledges of Taskjuggler a very complete manual is available here
  • You will need to have
    • some special custom fields
    • unfortnatly I'm not a Python dev so I wrote in PHP requirement for it are : available for php 5.1.2


Download the zipped source from [download:taskjugglerplugin here] Attachment 3.


You can check out TaskjugglerPlugin from here using Subversion, or browse the source with Trac.


  1. Create new custom fields
    macro_task.label=Macro Task
    macro_task.options=MacroTask 1| MacroTask2 #change <- by your macro Task
    estimatedhours = text
    estimatedhours.label = Plan 
    estimatedhours.value = 0
    estimatedhours.order = 2
    hours = text
    hours.label = Add Days
    hours.value = 0
    hours.order = 3
    estimatedfinal = text
    estimatedfinal.label = Actual
    estimatedfinal.value = 0
    totalhours = text
    totalhours.label = Nb days worked
    totalhours.value = 0
    totalhours.order = 5
    daysworked = textarea
    daysworked.label = days worked
    daysworked.cols = 23
    daysworked.rows = 6
  2. change the 2 settings on top of trac2TaskJuggler.php
    PDO('sqlite:/home/intranet/intra/t3_trac/db/trac.db'); <- set your config
  3. updload on trac2TaskJuggler.php to your server
  4. edit trac.tjp for setting first_milestone macro AND as you want vacation, working hours
  5. you can use your to retrieve automaticly your data
  6. the days worked area field will be set by the project manager or by the developper as explained here one interval per line
  7. you can add this js script into site_header.cs template to deliver information see screenshots
    <script language="javascript" type="text/javascript">
    function AddEventListener( elem, evt, func, capture){
        capture = capture || false;
        if(elem.addEventListener) elem.addEventListener( evt, func, capture);
        else elem.attachEvent('on'+evt, func);
        return func;
    add_legend = function(){
        var x = document.getElementById('daysworked');
          var p = x.parentNode;
          var n = document.createElement('div')
          n.innerHTML="Valeurs possibles : <ul><li>yyyy-mm-dd</li><li>yyyy-mm-dd - yyyy-mm-dd &nbsp;&nbsp;<u>/!\\</u> la 2ème valeur n'est pas inclus dans le calcul</li><li>yyyy-mm-dd +?d&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <u>/!\\</u> ? doit être remplacés par le nb de jour</li></ul>" ;
    AddEventListener(window, 'load', add_legend)


  • see attachments
  • see here from



Recent Changes

16580 by rjollos on 2017-05-10 20:56:23
Add source that was attached to project wiki page
2077 by mdelorme on 2007-03-05 16:39:16
New hack TaskjugglerPlugin, created by mdelorme


Author: mdelorme

Attachments (2)

Download all attachments as: .zip