• Home
  • Shell
    • Emacs
    • Perl
    • screen
    • sed
  • Ubuntu
    • VNC
  • Web Development
    • Javascript
    • Joomla
    • MySQL
    • osTicket
  • Windows
    • Gimp

Posts tagged ticket

osTicket> Show “Closed Ticket” note

Oct26
2010
Written by Scott Rowley

This is a simple mod that you can do in order to tell who closed and reopened a ticket:

include/class.ticket.php
Inside of the function close(){ information just above the return line add the following:

$this->postNote('Ticket Closed');
return (db_query($sql) && db_affected_rows())?true:false;

Then repeat the step down in the function reopen(){

$this->postNote('Re-Opened Ticket');
return (db_query($sql) && db_affected_rows())?true:false;

Now any time someone closes a ticket or reopens a ticket an "Internal Note" will be created stating either "Ticket Closed" or "Re-Opened Ticket" as well as by whom and when.

Posted in osTicket - Tagged closed, mod, modification, osTicket

osTicket> Show 0 Opened Tickets

Oct26
2010
Written by Scott Rowley

For some reason it was decided that if there are no open tickets then the ticket page should list all the Answered Tickets and then if there are none of those it should show all Closed tickets. This is highly confusing for everyone and we’re going to show you how to make it always show the Open Tickets page even when there are no open tickets.

scp/tickets.php

if($stats['open'])
$nav->addSubMenu(array('desc'=>'Open ('.$stats['open'].')','title'=>'Open Tickets', 'href'=>'tickets.php', 'iconclass'=>'Ticket'));

Essentially we want to get rid of the "if" statement and say to always show the “Open page” title/nav. So just modify it to look something like this:

// We don't want an if (there are tickets) we always want the open page up/available.
// if($stats['open'])
$nav->addSubMenu(array('desc'=>'Open ('.$stats['open'].')','title'=>'Open Tickets', 'href'=>'tickets.php', 'iconclass'=>'Ticket'));

Then remove or comment out the following so that we’ll always see the Open ticket page even if there are 0 open tickets:
include/staff/tickets.inc.php, replace

// This sucks but we need to switch queues on the fly! depending on stats fetched on the parent.
if($stats) {
if(!$stats['open'] && (!$status || $status=='open')){
if(!$cfg->showAnsweredTickets() && $stats['answered']) {
$status='open';
$showanswered=true;
$results_type='Answered Tickets';
}elseif(!$stats['answered']) { //no open or answered tickets (+-queue?) - show closed tickets.???
$status='closed';
$results_type='Closed Tickets';
}
}
}

with

// This sucks but we need to switch queues on the fly! depending on stats fetched on the parent.
if($stats) {
if(!$stats['open'] && (!$status)){
if(!$cfg->showAnsweredTickets() && $stats['answered']) {
$status='open';
$showanswered=true;
$results_type='Answered Tickets';
// HACKED //
// We want to show the Open tickets page even if there are no open tickets.
// }elseif(!$stats['answered']) { //no open or answered tickets (+-queue?) - show closed tickets.???
// $status='closed';
// $results_type='Closed Tickets';
}
}
}
Posted in osTicket - Tagged mod, modification, osTicket

osTicket> Transfer/Assign with no comment

Oct26
2010
Written by Scott Rowley

Today we are going to show you how to get rid of the annoying requirement of adding a comment to a ticket transfer or assignment…

For the “Assign to Staff” section you can comment out the following line from

scp/tickets.php

$fields['assign_message'] = array('type'=>'text', 'required'=>1, 'error'=>'Message required');

like so:

//$fields['assign_message'] = array('type'=>'text', 'required'=>1, 'error'=>'Message required');

For assign to department you’ll need:
scp/tickets.php

$fields['message'] = array('type'=>'text', 'required'=>1, 'error'=>'Note/Message required');

Like so:

//$fields['message'] = array('type'=>'text', 'required'=>1, 'error'=>'Note/Message required');

Then if you want to let people know that it is not required you can go into

include/staff/viewticket.inc.php
Find (for assign to staff):

<span >Comments/message for assignee. (<i>Saved as internal note</i>)
<font class="error"> *<?=$errors['assign_message']?></font></span>

And remove:

<font class="error"> *<?=$errors['assign_message']?></font>

Find (for department transfer):

<span >Comments/Reasons for the transfer. (<i>Internal note</i>)
<font class="error"> *<?=$errors['message']?></font></span>

Remove:

<font class="error"> *<?=$errors['message']?></font>

Now comments are no longer required to be present before assigning or transferring a ticket — and users are aware that it is not required.

Posted in osTicket - Tagged assign, comment, mod, modification, osTicket, transfer

osTicket> Mass ‘Ban & Delete’

Oct26
2010
Written by Scott Rowley

Ok, people…careful with this one!

This is for if you would like to allow for mass ban & delete from the Tickets tab.
First you need to add a new button to the main page.

include/staff/tickets.inc.php

<input class="button" type="submit" name="banDelete" value="Ban & Delete"
onClick=' return confirm("Are you ABSOLUTLEY CERTAIN this was spam?");'>

Then we need to add the functionality. Its easier here to replace a larger chunk so…

scp/tickets.php
Replace

if(!$errors) {
$count=count($_POST['tids']);
if(isset($_POST['reopen'])){
$i=0;
foreach($_POST['tids'] as $k=>$v) {
$t = new Ticket($v);
if($t && @$t->reopen()) $i++;
}
$msg="$i of $count selected tickets reopened";
}elseif(isset($_POST['close'])){
$i=0;
foreach($_POST['tids'] as $k=>$v) {
$t = new Ticket($v);
if($t && @$t->close()) $i++;
}
$msg="$i of $count selected tickets closed";
}elseif(isset($_POST['overdue'])){
$i=0;
foreach($_POST['tids'] as $k=>$v) {
$t = new Ticket($v);
if($t && !$t->isoverdue())
if($t->markOverdue()) $i++;
}
$msg="$i of $count selected tickets marked overdue";
}elseif(isset($_POST['delete'])){
$i=0;
foreach($_POST['tids'] as $k=>$v) {
$t = new Ticket($v);
if($t && @$t->delete()) $i++;
}
$msg="$i of $count selected tickets deleted";
}
}
break;

With

if(!$errors) {
$count=count($_POST['tids']);
if(isset($_POST['reopen'])){
$i=0;
foreach($_POST['tids'] as $k=>$v) {
$t = new Ticket($v);
if($t && @$t->reopen()) $i++;
}
$msg="$i of $count selected tickets reopened";
}elseif(isset($_POST['close'])){
$i=0;
foreach($_POST['tids'] as $k=>$v) {
$t = new Ticket($v);
if($t && @$t->close()) $i++;
}
$msg="$i of $count selected tickets closed";
}elseif(isset($_POST['overdue'])){
$i=0;
foreach($_POST['tids'] as $k=>$v) {
$t = new Ticket($v);
if($t && !$t->isoverdue())
if($t->markOverdue()) $i++;
}
$msg="$i of $count selected tickets marked overdue";
}elseif(isset($_POST['delete'])){
$i=0;
foreach($_POST['tids'] as $k=>$v) {
$t = new Ticket($v);
if($t && @$t->delete()) $i++;
}
$msg="$i of $count selected tickets deleted";
} // NOW MY CODE
elseif(isset($_POST['banDelete'])){
$i=0;
foreach($_POST['tids'] as $k=>$v)
{
$t = new Ticket($v);
if($t && @$t->delete())
{
if($beenBanned=$t->getEmail()){
if(Banlist::add($t->getEmail(),$thisuser->getName())){}
$msg .= "$beenBanned banned!<br />";}
$i++;
}
}
$msg .= "$i of $count selected tickets deleted <br />$i of $count emails banned.";
}}
break;

All of your effected tickets will now be deleted and the emails banned. You will also be alerted to the result so you can double check your email addresses and unban if necessary.

Posted in osTicket - Tagged ban, delete, mass, mod, modification, osTicket

osTicket> Allow clients to assign department

Oct26
2010
Written by Scott Rowley

This is the MOD for the much requested “Allow user to select department”…

Open $TICKETS_HOME/open.php
Remove

$_POST['deptId']=

(only this, not the rest of the line)

Open $TICKETS_HOME/include/client/open.inc.php
Before the Subject
insert the following:

<td align="left"><b>Department:</b></td>
<td>
<select name="deptId">
<option value="" selected >Select Department</option>
<?
$services= db_query('SELECT dept_id,dept_name FROM '.DEPT_TABLE.' ORDER BY dept_name');
while (list($deptId,$dept) = db_fetch_row($services)){
$selected = ($info['deptId']==$deptId)?'selected':''; ?>
<option value="<?=$deptId?>"<?=$selected?>><?=$dept?></option>
<?
}?>
</select>
&nbsp;<font class="error"><b>*</b>&nbsp;<?=$errors['deptId']?></font>
</td>
</tr>
Posted in osTicket - Tagged department, mod, modification, osTicket
Newer Entries »

Corrections? Questions? Comments?

Find an error?
Everything work out great for you?
Have some feedback?
Like to see something added to the article?

PLEASE leave us a comment after the article and let us know how we are doing, or if something needs corrected, improved or clarified.

Thank you!
- The Management

Advertisement

Sudo Bash
By Geeks - For Geeks

Back to Top