diff --git a/include/class.dept.php b/include/class.dept.php index 7abb372d1e9c16f75deb80b8ed60ee31a6a87c1b..d9d4c63093620fe086cb4762c7b6b360177db595 100644 --- a/include/class.dept.php +++ b/include/class.dept.php @@ -92,6 +92,24 @@ class Dept { return $this->email; } + /** + * getAlertEmail + * + * Fetches either the department email (for replies) if configured. + * Otherwise, the system alert email address is used. + */ + function getAlertEmail() { + global $cfg; + + if (!$this->email && ($id = $this->getEmailId())) { + $this->email = Email::lookup($id); + } + if (!$this->email && $cfg) { + $this->email = $cfg->getAlertEmail(); + } + return $this->email; + } + function getNumStaff() { return $this->ht['users']; } diff --git a/include/class.ticket.php b/include/class.ticket.php index 7aeabf55a31aed7682b5a8b1370f1b3979a67fb0..cb9d23dc469381db7901c171406283819b800edd 100644 --- a/include/class.ticket.php +++ b/include/class.ticket.php @@ -993,7 +993,7 @@ class Ticket { //Send alert to out sleepy & idle staff. if ($alertstaff && $cfg->alertONNewTicket() - && ($email=$dept->getEmail()) + && ($email=$dept->getAlertEmail()) && ($msg=$tpl->getNewTicketAlertMsgTemplate())) { $msg = $this->replaceVars($msg->asArray(), array('message' => $message)); @@ -1219,7 +1219,7 @@ class Ticket { $dept = $this->getDept(); if(!$dept || !($tpl = $dept->getTemplate()) - || !($email = $dept->getEmail())) + || !($email = $dept->getAlertEmail())) return true; //recipients @@ -1276,7 +1276,7 @@ class Ticket { //Get the message template if(($tpl = $dept->getTemplate()) && ($msg=$tpl->getOverdueAlertMsgTemplate()) - && ($email = $dept->getEmail())) { + && ($email = $dept->getAlertEmail())) { $msg = $this->replaceVars($msg->asArray(), array('comments' => $comments)); @@ -1473,7 +1473,7 @@ class Ticket { if(!$alert || !$cfg->alertONTransfer() || !($dept=$this->getDept())) return true; //no alerts!! - if (($email = $dept->getEmail()) + if (($email = $dept->getAlertEmail()) && ($tpl = $dept->getTemplate()) && ($msg=$tpl->getTransferAlertMsgTemplate())) { @@ -1701,7 +1701,7 @@ class Ticket { 'thread'=>$message); //If enabled...send alert to staff (New Message Alert) if($cfg->alertONNewMessage() - && ($email = $dept->getEmail()) + && ($email = $dept->getAlertEmail()) && ($tpl = $dept->getTemplate()) && ($msg = $tpl->getNewMessageAlertMsgTemplate())) { @@ -1958,7 +1958,7 @@ class Ticket { if(!$alert || !$cfg->alertONNewNote() || !($dept=$this->getDept())) return $note; - if (($email = $dept->getEmail()) + if (($email = $dept->getAlertEmail()) && ($tpl = $dept->getTemplate()) && ($msg=$tpl->getNoteAlertMsgTemplate())) {