diff --git a/include/class.ticket.php b/include/class.ticket.php index 5a3fd83f3883c432b17bf89d4ac08d6b4ee95de6..3e8134b10e6a0bb8894ebdf9f3796198c0e0044d 100644 --- a/include/class.ticket.php +++ b/include/class.ticket.php @@ -720,7 +720,7 @@ class Ticket { global $cfg; # XXX Should the SLA be overwritten if it was originally set via an # email filter? This method doesn't consider such a case - if ($trump !== null) { + if ($trump && is_numeric($trump)) { $slaId = $trump; } elseif ($this->getDept() && $this->getDept()->getSLAId()) { $slaId = $this->getDept()->getSLAId(); @@ -2129,7 +2129,9 @@ class Ticket { $vars['teamId'] = $topic->getTeamId(); //set default sla. - if(!isset($vars['slaId']) && $topic->getSLAId()) + if(isset($vars['slaId'])) + $vars['slaId'] = $vars['slaId']?$vars['slaId']:$cfg->getDefaultSLAId(); + elseif($topic && $topic->getSLAId()) $vars['slaId'] = $topic->getSLAId(); }elseif($vars['emailId'] && !$vars['deptId'] && ($email=Email::lookup($vars['emailId']))) { //Emailed Tickets