From 7b8ebd86c7f6047e4a44a9f6bb616cb60f5a7a0f Mon Sep 17 00:00:00 2001 From: Jared Hancock <jared@osticket.com> Date: Wed, 14 May 2014 12:33:12 -0500 Subject: [PATCH] Implement "Disable alerts" setting for departments --- include/class.dept.php | 10 ++++++++++ include/class.ticket.php | 8 ++++---- 2 files changed, 14 insertions(+), 4 deletions(-) diff --git a/include/class.dept.php b/include/class.dept.php index 1ec4116fb..5a7363a93 100644 --- a/include/class.dept.php +++ b/include/class.dept.php @@ -141,6 +141,16 @@ class Dept { return $this->getMembers(array('available'=>1)); } + function getMembersForAlerts() { + if ($this->isGroupMembershipEnabled() == 2) { + // Disabled for this department + $rv = array(); + } + else { + $rv = $this->getAvailableMembers(); + } + return $rv; + } function getSLAId() { return $this->ht['sla_id']; diff --git a/include/class.ticket.php b/include/class.ticket.php index 4b708707f..27e293523 100644 --- a/include/class.ticket.php +++ b/include/class.ticket.php @@ -938,7 +938,7 @@ class Ticket { //Only alerts dept members if the ticket is NOT assigned. if($cfg->alertDeptMembersONNewTicket() && !$this->isAssigned()) { - if(($members=$dept->getMembers())) + if(($members=$dept->getMembersForAlerts())) $recipients=array_merge($recipients, $members); } @@ -1211,8 +1211,8 @@ class Ticket { $recipients=array_merge($recipients, $members); } elseif($cfg->alertDeptMembersONOverdueTicket() && !$this->isAssigned()) { //Only alerts dept members if the ticket is NOT assigned. - if(($members=$dept->getMembers())) - $recipients=array_merge($recipients, $members); + if ($members = $dept->getMembersForAlerts()) + $recipients = array_merge($recipients, $members); } //Always alert dept manager?? if($cfg->alertDeptManagerONOverdueTicket() && $dept && ($manager=$dept->getManager())) @@ -1409,7 +1409,7 @@ class Ticket { $recipients = array_merge($recipients, $members); } elseif($cfg->alertDeptMembersONTransfer() && !$this->isAssigned()) { //Only alerts dept members if the ticket is NOT assigned. - if(($members=$dept->getMembers())) + if(($members=$dept->getMembersForAlerts())) $recipients = array_merge($recipients, $members); } -- GitLab