diff --git a/include/class.ticket.php b/include/class.ticket.php index 21a69f1b47948e9a5ba580fbceaf2061341b8253..a399e3d7d1c4b09a03eb8648abd4a003d2962f64 100644 --- a/include/class.ticket.php +++ b/include/class.ticket.php @@ -4051,11 +4051,12 @@ implements RestrictedAccess, Threadable, Searchable { $vars['response'] = $ticket->replaceVars($vars['response']); // $vars['cannedatachments'] contains the attachments placed on // the response form. - $response = $ticket->postReply($vars, $errors, false); + $response = $ticket->postReply($vars, $errors, + !isset($vars['alertuser'])); } // Not assigned...save optional note if any - if (!$vars['assignId'] && $vars['note']) { + if (!$ticket->isAssigned() && $vars['note']) { if (!$cfg->isRichTextEnabled()) { $vars['note'] = new TextThreadEntryBody($vars['note']); } @@ -4073,7 +4074,15 @@ implements RestrictedAccess, Threadable, Searchable { && ($msg=$tpl->getNewTicketNoticeMsgTemplate()) && ($email=$dept->getEmail()) ) { - $message = (string) $ticket->getLastMessage(); + $attachments = array(); + $message = $ticket->getLastMessage(); + if ($cfg->emailAttachments()) { + $attachments = $message->getAttachments(); + if ($response && $response->getNumAttachments()) + $attachments = $attachments->merge($response->getAttachments()); + } + + $message = (string) $message; if ($response) { $message .= ($cfg->isRichTextEnabled()) ? "<br><br>" : "\n\n"; $message .= $response->getBody(); @@ -4086,9 +4095,6 @@ implements RestrictedAccess, Threadable, Searchable { else $signature=''; - $attachments = ($cfg->emailAttachments() && $response) - ? $response->getAttachments() : array(); - $msg = $ticket->replaceVars($msg->asArray(), array( 'message' => $message,