diff --git a/include/class.team.php b/include/class.team.php index 48d7b5655ee2066a73811cf76bd3663476b97a0c..c9f88a23147f1abfb81b434c2e9e35afc5eb67d0 100644 --- a/include/class.team.php +++ b/include/class.team.php @@ -80,6 +80,13 @@ class Team { return $this->members; } + function hasMember($staff) { + return db_count( + 'SELECT COUNT(*) FROM '.TEAM_MEMBER_TABLE + .' WHERE team_id='.db_input($this->getId()) + .' AND staff_id='.db_input($staff->getId())) !== 0; + } + function getLeadId(){ return $this->ht['lead_id']; } diff --git a/include/staff/ticket-view.inc.php b/include/staff/ticket-view.inc.php index cb7db2a539b2ff01bdbe31a3012cb676350fc332..8ba8eb617b5f77ab2a9bc124107f108a207423bc 100644 --- a/include/staff/ticket-view.inc.php +++ b/include/staff/ticket-view.inc.php @@ -20,7 +20,10 @@ $lock = $ticket->getLock(); //Ticket lock obj $id = $ticket->getId(); //Ticket ID. //Useful warnings and errors the user might want to know! -if($ticket->isAssigned() && $staff->getId()!=$thisstaff->getId()) +if($ticket->isAssigned() && ( + ($staff && $staff->getId()!=$thisstaff->getId()) + || ($team && !$team->hasMember($thisstaff)) + )) $warn.=' <span class="Icon assignedTicket">Ticket is assigned to '.implode('/', $ticket->getAssignees()).'</span>'; if(!$errors['err'] && ($lock && $lock->getStaffId()!=$thisstaff->getId())) $errors['err']='This ticket is currently locked by '.$lock->getStaffName();