diff --git a/include/class.ticket.php b/include/class.ticket.php index c7dc74953f748102a7526ebee4e58c0812a4e138..0b1ab273d969922d7b16698c30353dd8f12d2111 100644 --- a/include/class.ticket.php +++ b/include/class.ticket.php @@ -1843,8 +1843,12 @@ class Ticket { $recipients[]=$this->getLastRespondent(); //Assigned staff if any...could be the last respondent - if($cfg->alertAssignedONNewNote() && $this->isAssigned() && $this->getStaffId()) - $recipients[]=$this->getStaff(); + if($cfg->alertAssignedONNewNote() && $this->isAssigned()) { + if ($staff = $this->getStaff()) + $recipients[] = $staff; + if ($team = $this->getTeam()) + $recipients = array_merge($recipients, $team->getMembers()); + } //Dept manager if($cfg->alertDeptManagerONNewNote() && $dept && $dept->getManagerId()) @@ -1858,12 +1862,12 @@ class Ticket { foreach( $recipients as $k=>$staff) { if(!is_object($staff) || !$staff->isAvailable() //Don't bother vacationing staff. - || in_array($staff->getEmail(), $sentlist) //No duplicates. + || isset($sentlist[$staff->getEmail()]) //No duplicates. || $note->getStaffId() == $staff->getId()) //No need to alert the poster! continue; $alert = $this->replaceVars($msg, array('recipient' => $staff)); $email->sendAlert($staff->getEmail(), $alert['subj'], $alert['body'], null, $options); - $sentlist[] = $staff->getEmail(); + $sentlist[$staff->getEmail()] = 1; } }