diff --git a/include/class.ticket.php b/include/class.ticket.php index 6b933239de4bcc181f82a2b88724789e3cc5454c..80b6a60ac4a2b989fddb2fb3ced7ab6e98a7d7ad 100644 --- a/include/class.ticket.php +++ b/include/class.ticket.php @@ -1751,7 +1751,7 @@ class Ticket{ global $cfg; /* Unknown or invalid staff */ - if(!$staff || (!is_object($staff) && !($staff=Staff::lookup($staff))) || !$staff->isStaff()) + if(!$staff || (!is_object($staff) && !($staff=Staff::lookup($staff))) || !$staff->isStaff() || $cfg->getDBVersion()) return null; @@ -1773,12 +1773,11 @@ class Ticket{ if(($teams=$staff->getTeams())) $sql.=' OR ticket.team_id IN('.implode(',', array_filter($teams)).')'; - if(!$staff->showAssignedOnly()) //Staff with limited access just see Assigned tickets. - $sql.=' OR ticket.dept_id IN('.implode(',',$staff->getDepts()).') '; + if(!$staff->showAssignedOnly() && ($depts=$staff->getDepts())) //Staff with limited access just see Assigned tickets. + $sql.=' OR ticket.dept_id IN('.implode(',', $depts).') '; $sql.=')'; - if(!$cfg || !($cfg->showAssignedTickets() || $staff->showAssignedTickets())) $sql.=' AND (ticket.staff_id=0 OR ticket.staff_id='.db_input($staff->getId()).') ';