diff --git a/include/class.ticket.php b/include/class.ticket.php index a4fd602e1847ac842e91528a385bc993cc0e1a71..b9857d39a410772698fafe693cc94c12ae639f06 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