Custom fields and overrides on Enumerations
I'm going to be adding a bunch of changes to Redmine this week in order to make Enumerations more flexible and customizable. My specific goal is to have the Time Entry Activities flexible and when combined with a soon to be released plugin, allow Redmine to track things like Billable and Non Billable time automatically (optional).
The short list of changes include:
- Allowing custom fields on Enumerations. - Example: Is this activity billable?
- Allow Time Entry Activities to be marked active or inactive. Inactive ones will only be listed in admin pages.
- Allow each project to override the Time Entry Activities' custom data - Example: ActivityA is billable except on ProjectB where it is non-billable
- Allow each project to override if each Time Entry Activity is active or inactive. This will let a project Manager turn off activities that aren't needed on a project.
- Allow the Time Report to use the Custom Data fields as filters
All of this code has been developed and tested already and has running in production for over 4 months now. I'm just going to extract it from a running system so everyone can use it. There might be some bugs from the merge and I'm sure we will need to iterate over it a few times to make it more robust but I'd rather get this out there and get feedback on it sooner than later.