Improvements : external tracker and zero client rate
|Reported by:||Aurélien Bompard||Owned by:|
I have written two improvements (well, at least I think they're improvements ;-) ) to ClientsPlugin :
- make it possible to set the client rate to zero
- add an "external tracker" field for each client (optional) when the client has its own bugtracker.
The two features are independant, except on 1 file where they overlap, otherwise I'd have provided two patches.
To understand the motives behind the patch, I must explain how I use Trac. I'm responsible for a shared project in a rather big organization, so I have internal clients : other projects using my shared project. As a result, my clients are not "billable", and they always have their own tracker where they open bugs for my project. When they do, I open a bug in mine, assign it to someone in my team, and forward the resolution to their tracker. Thus, I must track the bug reference in my client's tracker.
No client rate
I have thought of another way to do it : on the client form, add a checkbox to set it to "not billable". I did not do that because it was more invasive in your code, but I think it may have a better usability.
The second part of the patch adds an optional field to the client form (and the database) where an URL to the client tracker can be set. This URL may contain the "%s" string, which will be replaced by the bug number on the ticket form.
The ticket form has an extra custom field where the client bug number can be set. On ticket display, an href link is created using the template client tracker URL.
Please tell me what you think of this patch, if you agree to include it, if it needs more work, etc.