Dec 14 Update:While these rough instructions can be roughly used in osTicket 1.9.4, it doesn’t return the value from a list, just an ID (Which on a technical level is better in the long run, just makes this process a little harder).
I’m working on fixing this and will post the info once I’ve had a chance to work it out.New instructions for 1.9.4 can be found here: https://www.andrewbennett.com.au/2014/12/osticket-1-9-4-easy-custom-column-in-ticket-view/
TL;DR (I rushed these notes for myself).
File to edit: /include/staff/tickets.inc.php
1) Added To the top to make things easier. (line 2-3)
The Name field (currently “field_17” ) needs to be worked out from the database by looking at the [tbl_prefix]_ticket__cdata
The Desc field (Currently “Sample 1”) is what your users will see as the column heading.
$CustomList1Name = “field_17”;
$CustomList1Desc = “Sample 1”;
2) Add custom1 to allow sorting. (~Line 157)
$sortOptions=array(‘date’=>’effective_date’,’ID’=>’ticket.`number`’,
‘pri’=>’pri.priority_urgency’,’name’=>’user.name’,’subj’=>’cdata.subject’,
‘status’=>’ticket.status’,’assignee’=>’assigned’,’staff’=>’staff’,
‘dept’=>’dept.dept_name’,
‘custom1’=>’Custom1’); //AB Added
3) Edit the last two lines, frst remove the ; after “pri.priority_color'” then add the last line (~Line 243)
After line:
$qselect.=’ ,IF(ticket.duedate IS NULL,IF(sla.id IS NULL, NULL, DATE_ADD(ticket.created, INTERVAL sla.grace_period HOUR)), ticket.duedate) as duedate ‘
.’ ,CAST(GREATEST(IFNULL(ticket.lastmessage, 0), IFNULL(ticket.closed, 0), IFNULL(ticket.reopened, 0), ticket.created) as datetime) as effective_date ‘
.’ ,CONCAT_WS(” “, staff.firstname, staff.lastname) as staff, team.name as team ‘
.’ ,IF(staff.staff_id IS NULL,team.name,CONCAT_WS(” “, staff.lastname, staff.firstname)) as assigned ‘
.’ ,IF(ptopic.topic_pid IS NULL, topic.topic, CONCAT_WS(” / “, ptopic.topic, topic.topic)) as helptopic ‘
.’ ,cdata.priority_id, cdata.subject, pri.priority_desc, pri.priority_color’
.’ ,cdata.’.$CustomList1Name.’ as Custom1 ‘ //AB – Custom 1
;
4) Add Column Heading (~ Line 337)
<!– AB – Custom Col 1 –>
<th width=”60″>
<a <?php echo $custom1_sort; ?> href=”tickets.php?sort=custom1&order=<?php echo $negorder; ?><?php echo $qstr; ?>”
title=”Sort By <?php echo $CustomList1Desc; ?> <?php echo $negorder; ?>”><?php echo $CustomList1Desc; ?></a></th>
<!– AB – Custom Col 1 –>
5) Add Column Data (~ Line 435)
<!– AB – Custom Col 1 –>
<td nowrap> <?php echo $row[‘Custom1’]; ?> </td>
<!– AB – Custom Col 1 –>
When I get around to it I will upload the file to github or bitbucket.
works pretty good … thanks andrew
Andrew, I know your notes were done quickly. Here’s something small to add:
6) Increase colspan (~ Line 452)
If you added 1 new column you’ll need to increase the colspan on the last table row. Change the following:
to
You’ll need to adjust this # with additional columns
Thanks Jonathan for pointing this out. :)
hi, is possible to add this mod fot he new 1.9.4??? is possible to have a modified tickets.inc.php (release 1.9.4) ????
Thanks
I’ll have a look for you.
Edit: I’ve looked at the difference between 1.9.2 and 1.9.4, there are over 150 differences between the files, not as easy as I had first hoped. This is going to take a little bit of time.
I just did this on v1.9.4 and it’s the same process. took me no more than 10 mins tops
Awesome job. Was there many differences, or was it just a matter of re-matching line numbers? I’ve just been swamped with a few other projects to try it myself.
@Andrew same process … which was to match up the line #s.
Please example code file available on Github or similar service as I’m having problems following this. Thanks!
Dave, I’ve updated this for osTicket 1.9.4 and created a gist on github, all the info can be found here: https://www.andrewbennett.com.au/2014/12/osticket-1-9-4-easy-custom-column-in-ticket-view/
can you please post the the full file?
just like you did with ver. 1.9.4?
that would be very helpful!
thanks a lot!