| Project: | ProjectPier |
| Version: | 0.8.5.0-Beta1 |
| Component: | Code |
| Category: | feature request |
| Priority: | normal |
| Assigned: | phpfreak |
| Status: | closed - fixed |
A developer sent me some code to add a bug/issue tracker functionality, but I haven't had a chance to test the code or create a patch file. Below are some notes from his email
*******************************************
...Might take me a few days to isolate the files and determine what the changes were, but I'll see what I can do. Multiple users hasn't been fully integrated yet so, maybe I can finish that then make the Bug Traq an an option to turn on or off in the perferences. Not sure....
...Good to hear from you.. Was busy finishing up a client contract. On to new opportunities. In the mean time I downloaded Project Pier and start playing with it. You guys have done a good job so far. I did find a zip file with my bugtraq code in it. Not sure how old/revision it was but I attached it for you.
Hope I can finally find some time to jump in and help out a bit. Let me know whats up with the project and how things are going....
| Attachment | Size |
|---|---|
| ac_Trac.zip | 21.49 KB |
I have developed a tracker module. I started using previously attached code, but I have rewritten most of code using code from ProjectMessages and ProjectTasks. Tickets are searchable, can have comments, subscriptions and notifications and attached files. They are included in project overview and I have added a tab to dashboard with tickets assigned to logged user. I think I have used projectpier coding standards. Attached patch is against 0.8.0 release
sergiocambra: I tried your patch on a vanilla install and get this error after the initial setup when trying to log in:
PHP Fatal error: Cannot redeclare class BaseProjects in /var/cpi/projectpier/application/models/projects/base/BaseProjects.class.php on line 0
Any ideas what's going on? The patch seemed to apply without problems.
sergiocambra: Sorry, I spoke too soon. That error was my fault (PHP code caching was confused about the patches). However, I do get this error when trying to add a new project:
Query failed with message 'Unknown column 'can_manage_tickets' in 'field list''
Does the database need to be altered to use your patch?
sergiocambra: Now I know what the problem is. I patched AFTER the initial setup. FYI to those trying this out: patch before you do the initial setup. It works fine now. Good job!
A comment: Right now tickets are completely separate from everything else in the system. The Tickets need to have the option of being associated with a Task List (or Task Item).
Database must be modified if you have a install, there is a new column in project_users (a permission) and 4 new tables (project_categories, project_tickets, ticket_changes, ticket_subscriptions).
Instead associate a task item with a ticket, task items could be extended and converted in a ticket, or could be replaced with a ticket. Ticket has the same attributes as task items, and more (priority, type, category, description), plus comments and change history.
sergiocambra: are you saying you can currently do that with your patch? I can't find a way to associate a task item with a ticket, or convert task items to tickets. How do I do this?
I haven't tried the new patch, but the way i read his response, I think he is going the other way around. Not task->issue but issue->task
Relating task with tickets is not implemented. I meant I think the best way to relate tickets with task lists is replacing task items with tickets. But I have been thinking about this and I would like to have tickets which don't belong to a task list, maybe I could add a dropdown menu to select a task list, and then show those tickets in task list too (below the task items).
Ryan, will you integrate this patch in ProjectPier? I would like it, and I can mantain the code if you want.
Hey Sergio,
I think the patch needs more testing and review of things such as relating issues/tasks, plus we need to make sure it follows the coding standards. In principle though, I would like to include this feature in the next release. I would prefer to maintain somethign like this as module, but we won't have an API ready for the next release. Feel free to contact me directly, or discuss this further on the dev list. You can also get more support for your patch on the dev list.
Hi Ryan,
How close are you to a new release with the integrated issue tracker? I couldn't get the patch to work here, but I could really use the issue tracker.
A ballpark would be appreciated. Keep up the good work, cheers!
just to say we have implemented the patch in our company (some files needed it manaully) but it works pretty well.
I have found that comments on tickets do not send notifications to subscribers. sergiocambra: I have tried to contact you to see if you could help. Your patch is perfect for our company but need this notifications. thanks.
I was waiting to try it in my office. It's working here. Are notifications working for messages for example? Notifications are not sent to user which post the comment.
If anyone has a final working version of this with simple install instructions I will pay for it.
Let me know!
I could not get the patch in #1 working on Windows XP with Tortoise. Made manual changes to patch file (replaced diff's with Index row's and changed time labels to '(revision 0)'). Do not know much about patching so I'm not sure if done everything correctly. Anyway this modified patch works in my installations.
Do following:
1. Install fresh projectpier 0.8.0 release (with fresh database schema)
2. Run attached patch file on projectpier root directory
3. You should find 'My Tickets' link on Dashboard -page
Optionally to update existing service:
4. Create backup from your existing installation database (MySQL)
5. Restore database to new installation schema. Use differet table prefixes in order not to overwrite existing tables.
6. Remove duplicate empty tables
7. Rename tables so that old tables and new (tracker specific tables) have same prefix
8. Update the prefix to config\config.php -file as TABLE_PREFIX
The above works in my installation - no guarantee provided :) Thanks goes to sergiocambra for valuable effor - I think this is a very nice peace of functinality for Projectpier!
> nice peace of functinality
I ment nice _piece_ of functionality - sorry...
Oops... One more thing for the message #15:
While updating existing service, table 'project_users' needs to be modified: add new row 'can_manage_tickets tinyint(1) unsigned default 0.
Btw. The symbols for tickets and categories are not present on the patch - you need to create those for the theme you are using yourself...
Here is a valid patch for 0.8.0.3 and two icons I've made for goCollab_Monochrome theme.
Hi,
After applying the patch from knyar (great work btw!), we needed one more field to represent the 'state' of a ticket. Basically I added one dropdown, based on 'priority'. The different states we chose are 'opened','confirmed','not reproducable','test and confirm','fixed' and 'closed'. Changing this is merely a matter of changing the ENUM 'state' in PREFIX_project_tickets.
Because I don't know how to make a patchfile, I extracted the changed files. You can find them, together with the changes for the DB, in the attachment.
Note: MySQL 5 appears to have problems with updating an ENUM-field with an empty value. You can set sql-mode in my.ini to MYSQL40, you can add 1 empty value in the ENUM-field (add '' as a value), or you can prevent this from happening in the code. We went with adding ''.
Hope this helps someone.
Can ticket belong to a milestone?
Milestones are really really good while tracking project. Can I assign a ticket to a milestone at the time of adding new ticket?
I've tested your code and its great. Can I configure it in a way that tickets can be made with or without projects? It'll be a great help.
Misread.
Thanks for this plugin!
This is paramount to a good working Project Management software, and it works a treat! I would think though that a user should be able to see a list of tickets from the homescreen rather than just specific ones via a project?! I would have though that 'My Tickets' would show along side 'My Projects' and 'My Tasks'
Is there any reason why it doesn't??
Ignore my last post about displaying 'My Tickets' I think I had a faulty install that I never noticed. Just done it again and it works perfectly now.
I would like to see the option to add default trac categories, or alter the statuses in config.
Evening Gents.
Two words - awesome job. I finished up with merging all stuff and I'm surprised how nicely all system works.
I would like to ask you considering few things I have witnessed after using tickets for a while:
1. Sorting column in 'My tickets' view -> that'd be really useful.
2. Filtering columns wouldn't be bad idea as well - I think.
3. When editing the ticket and we're changing status from 'opened' to 'closed', would be good to make reflection when clicked 'Closed' on sidebar (currently system isn't indicating change).
4. Chart or indication of overall number of tickets / closed tickets and completion percentage progress bar - that's perfect solution in my imagination.
My initial budget for these changes would be £50 (I'm considering to increase of course) - I hope to resell some access to installation to my clients, more wishes would be more money.
Regards,
RRL
Accepted into 0.8.6 including state. Enhancements 24 and 25 under consideration.
Edit: Enhancement 24 - default categories is in