If you are reading this blog then you probably already know about Ray Camden‘s tireless efforts contributing to the ColdFusion community. He has an open source application called Lighthouse Pro that is a really nice Issue tracking system. We have implemented it in my office and have been using it failry heavily with about 7 different projects and unfortunately a lot of bug tickets and a number of enhancement requests. As we have used it more, it became apparent to me that even though you can filter by ticket status, there wasn’t a good way to archive old items. I talked to Ray yesterday and asked him if he would consider an enhancement by me to add Archive support to Lighthouse Pro. He seemed to think it was a good idea, and I did the modifications this morning. I am guessing he will add this to future releases, but just in case he doesn’t, or you want to add this to your instance right now, I am making the modified files available here.
Here is a summary of the changes, and the specific file changes listed below that:
- There is now a new menu section in the layout.cfm viewable only by Admins. Using links, a user can view archived items either in a complete list or by project.
- On the project_view, archived items will no longer be listed
- On the archive_view (new file) issues are listed similarly to the project_view list, with the addition of Project name which is sortable and filterable. You must be an Admin to view this page.
- On the issue view, there is a new checkbox at the bottom that says “Archive this issue”
- Added isarchived (bit) column to the issues table. This column must be defaulted to 0.
The specific file changes are listed below:
- /view.cfm line 303 – added isArchived checkbox
- /project_view.cfm line 82 filtered out Archived issues. (considered a getNonArchivedIssues() in issueManager, but I felt this was less intrusive)
- /archive_view.cfm – this is a new file
- /components/issueBean/DAO/Manager.cfcs added support for the new property ‘isArchived’.
- /customtags/layout.cfm – Altered to add the Archive Menu. This was already modified slightly to customize a bit for our implementation, so you may just want to merge the section on lines 64-77.
NOTE: The only change to the database is the addition of a bit column named ‘isarchived’ with a default value of 0 to the issues table. I am 99% certain that adding that field without changing these files has no adverse effect.
Download the updates here
EDIT: I asked Ray if he minded me having this available here until he added it to LHP. He encouraged me to post it, and to make sure to mention that this *will* be rolled into the main product soon!