diff --git a/include/ajax.tickets.php b/include/ajax.tickets.php index 22af61cb3e6879ff991a595d4bddbf1dd1bcc268..36795879261070b5e31ec14625866d59ba945f5c 100644 --- a/include/ajax.tickets.php +++ b/include/ajax.tickets.php @@ -106,10 +106,12 @@ class TicketsAjaxAPI extends AjaxController { $select = 'SELECT ticket.ticket_id'; $from = ' FROM '.TICKET_TABLE.' ticket '; //Access control. - $where = ' WHERE ( ticket.staff_id='.db_input($thisstaff->getId()); + $where = ' WHERE ( (ticket.staff_id='.db_input($thisstaff->getId()) + .' AND ticket.status="open" )'; if(($teams=$thisstaff->getTeams()) && count(array_filter($teams))) - $where.=' OR ticket.team_id IN('.implode(',', db_input(array_filter($teams))).')'; + $where.=' OR (ticket.team_id IN ('.implode(',', db_input(array_filter($teams))) + .' ) AND ticket.status="open")'; if(!$thisstaff->showAssignedOnly() && ($depts=$thisstaff->getDepts())) $where.=' OR ticket.dept_id IN ('.implode(',', db_input($depts)).')'; diff --git a/include/class.ticket.php b/include/class.ticket.php index 3ea61d6f33c8d7024d474cce917195f180563b2a..482bafbb756298ecd7bd42ec40a4e6563ffa01b5 100644 --- a/include/class.ticket.php +++ b/include/class.ticket.php @@ -1837,11 +1837,12 @@ class Ticket { if(!$staff || (!is_object($staff) && !($staff=Staff::lookup($staff))) || !$staff->isStaff()) return null; - $where = array('ticket.staff_id='.db_input($staff->getId())); + $where = array('(ticket.staff_id='.db_input($staff->getId()) .' AND ticket.status="open")'); $where2 = ''; if(($teams=$staff->getTeams())) - $where[] = 'ticket.team_id IN('.implode(',', db_input(array_filter($teams))).')'; + $where[] = ' ( ticket.team_id IN('.implode(',', db_input(array_filter($teams))) + .') AND ticket.status="open")'; if(!$staff->showAssignedOnly() && ($depts=$staff->getDepts())) //Staff with limited access just see Assigned tickets. $where[] = 'ticket.dept_id IN('.implode(',', db_input($depts)).') '; diff --git a/include/staff/tickets.inc.php b/include/staff/tickets.inc.php index a48f1525651f17f1ead5f58cdca255cba23de13e..ba6576c16a549d368cbd22028976954bc4c42acd 100644 --- a/include/staff/tickets.inc.php +++ b/include/staff/tickets.inc.php @@ -61,13 +61,15 @@ $qwhere =''; $depts=$thisstaff->getDepts(); $qwhere =' WHERE ( ' - .' ticket.staff_id='.db_input($thisstaff->getId()); + .' ( ticket.staff_id='.db_input($thisstaff->getId()) + .' AND ticket.status="open")'; if(!$thisstaff->showAssignedOnly()) $qwhere.=' OR ticket.dept_id IN ('.($depts?implode(',', db_input($depts)):0).')'; if(($teams=$thisstaff->getTeams()) && count(array_filter($teams))) - $qwhere.=' OR ticket.team_id IN('.implode(',', db_input(array_filter($teams))).') '; + $qwhere.=' OR (ticket.team_id IN ('.implode(',', db_input(array_filter($teams))) + .') AND ticket.status="open")'; $qwhere .= ' )';