Hi Jeremy,
Great module, thank you. Its so so close to exactly what I am looking for, but not quite. I realise that this may be outside the scope of what you have achieved or are looking to do, but I will put it out there anyway.
I am looking for a helpdesk or support ticket type system, where any user (in authorised or some other pre-specified role) can submit a support request ticket. The only people that can view that specific ticket is the user that submitted it, and anyone who has been allocated a specific role (such as "support" for example). Any replies to that ticket by the support team can automtically be viewed by the ticket originator (along with associated email notification).
I think what you have is scarily close to this, the only exception being that state, client, project and assigned have to be selected by the ticket originator.
Hope this makes sense.
| Comment | File | Size | Author |
|---|---|---|---|
| #18 | jobtrack_module.zip | 15.98 KB | big_ham |
Comments
Comment #1
liliplanet commenteddefinitely subscribe ..
Comment #2
jeremy commentedI think the difference between what is done and what you want is you don't want to set up clients, you just want everyone to be their own client? So if user A submits a ticket, and then user B submits a ticket, only user A (and admins) can view user A's tickets, and only user B (and admins) can view user B's tickets. Is that correct?
That could be more or less emulated, however you would have to first set up User A as Client A, and User B as Client B. With that manual step done, you would have what you need.
The only other possibility is that you may be able to build what you want with the Jobtrack Views integration module. I do not know if it would be possible, but it's worth exploring.
Otherwise, patches are welcome but this is not something I'm likely to implement myself anytime soon, sorry. Moving into a postponed state until you either report back that you've gotten it working with Views, or someone submits a patch.
Comment #3
JonoB commentedCorrect - thats exactly how it should work.
Once again, not expecting you to do this...just putting it out as something that a lot of people would find very very useful.
Comment #4
leevester commentedI also am looking for what JonoB is seeking. I run a Technical Support site with over 10K registered users and growing. So manually entering User A to Client A and User B to Client B is out of the question.
The back end of your module is almost 100% perfect for what I need. But I need to figure out how to change the front end so that a user could enter their question/request, select a technical area (instead of selecting a Client) and then have the module automatically assign the question/request to a predetermined support person based upon which technical area the user selects.
Any suggestions or hints would be greatly appreciated.
Comment #5
luco commented+1 here.
I even think selecting clients is redundant, since it's the assigned user field that fires the e-mail and basically the entire process.
it's an usability matter.
moreover, there could be a finer granulation on two aspects:
1) assign ticket: if you're user A and I'm user B, you don't ask me to fix stuff. you ask user C, who is support. so the assign to dropdown would have to be populated with supportstaff, not regular site users (but then again I don't know if that's because I installed a patch found here: http://drupal.org/node/402918).
2) a certain website might need all dropdowns, but then again they could all be optional. for example, if there's only one support email, there's no need for the assign to dropdown - or even the client dropdown. another case is when a regular site user may not change ticket states, but might still see them.
speaking of seeing, I miss being able to check a ticket's state when I'm viewing it. this can only be done in the ticket list page or when you add a comment. btw "add a comment" should be renamed to "reply to this solution" or "reply to this ticket" based on whether you're the user who fired the request or a support member reviewing it.
anyways I'm not just asking but also giving; I intend to chip in on this module once a client gives me the green light on a project.
cheers,
Luciano
Comment #6
jeremy commentedThis feature has landed in the form of a new "only view own tickets" permission. From INSTALL.txt:
Thus, to do what you want:
1) create role Foo, create Client Foo, assign 'access Foo tickets' and 'only view own tickets' permissions to Foo role
2) create role Admin, assign 'access Foo tickets' to Admin role
Now, any user in role Foo can create Foo tickets, but they can only see the tickets they themselves have created. (This is true for all ticket views, including search.) Any user in the Admin role can view all Foo tickets, not just tickets they themselves have created.
If you want to have multiple departments, create multiple Clients: "Foo, Bar, etc...". Now, override the name "Client" in your theme or with the locale module, and make it "Department" or whatever you wish it to be viewed as. Give role Foo access to all of these clients. Now, when creating a ticket they can chose which "Department" it is for. Create multiple admin roles, one for each "department".
This feature is in the -dev tarball now for testing, and will be part of the eventual 1.4 release.
Comment #7
roball commentedSounds great! Could you please let me know how to override the name "Client" in your theme?
Thanks.
Comment #8
JonoB commentedLooks great Jeremy! Thank you.
Tested this a bit and seems to be working ok.
Only out of place item is that there is still a combobox for "Assigned" (even though its not a required field).
Comment #9
venkat-rk commentedSounds great.
I am not sure if I understand 'departments' in the sense you are using it, but is it possible to assign separate email addresses to each department? For instance, sales@example.com (Sales), billing@example.com (Billing), support@example.com (Customer Service) so that tickets can be created for that department merely by sending to that relevant email address. This would be similar to the way tickets can now be created for globally defined domains with inbound email integration enabled.
Comment #10
jeremy commentedRe-opening ticket to review remaining issue.
Comment #11
roball commentedThe "only view own tickets" permission is actually a restriction rather than a permission. I think the logical way would be to handle it vice versa - the permission should be something like "view other user's tickets".
Comment #12
JimV commentedI agree with leevester 100%. This is exactly the functionality I am looking for as well.
Comment #13
jeremy commented@JimV: see comment #6, this is implemented already in the -dev tarball.
Comment #14
RikiB commentedGreat Module. Would there be any possiblity for a Drupal 5 port. Especially since Ubercart is mainly for Drupal 5 right now and it would be nice for an online store.
Comment #15
jeremy commented@RikiB: Your comment has absolutely nothing to do with this ticket. Please stay on topic. To discuss your question, try this issue: #408526: backport module to Drupal 5
Comment #16
RikiB commentedMy apologies.
Comment #17
matt2000 commentedthere's no patch for review here... is this fixed?
Comment #18
big_ham commentedI too find the permissions to be a little odd for my use as a system whereby a residential customer can register, login and immediately create a new help ticket. I don't need them to be able to assign the ticket, nor do I need them to choose a client. I'd like for each individual user to have created for them a Client name corresponding to his/her "Real Name" info captured on the registration form. This one combined task would make this module indispensable.
Not sure if Jeremy can do that or not. I know it's possible and I could hack my way through it in 6 months if I tried, but ...
Anyway, for the minute I am not really going to use ticket assignments for anything other than self assigning it to the creator. I took like 4 lines out of the .module file and while the field is still there, the creator's name is the defaulted and sole entry in the combobox. Once my site is live I'll post a link and a test.
Posting that shortened module here if anyone finds that small feature particularly useful.
Comment #19
leevester commentedCheck out http://drupal.org/node/446318.
Najibx has written a patch to the jobtrack.module that allows you to control who gets to see the State, Priority and Assigned Fields based upon role permissions.
With the correct permission settings, users that opening a new ticket will only see the Client field. and on later comments, they cannot see the fields to make changes that could interrupt the workflow. ie: re-assigning the ticket or determining that their ticket should be High Priority.
Comment #20
jeremy commentedAddressed the remaining issue in #8 by adding a new "hide ticket status bar" permission (to the ever growing list of permissions that this module has). It is documented in INSTALL.txt as follows:
Tracked in this issue: #446318: Hide status, priority, assigned options