diff --git a/include/ajax.tasks.php b/include/ajax.tasks.php index 15a623c4d7d45e324540e9d0426f37b35205ed85..19016e20c7fbe3d7691f576a7af7ba3df7a00beb 100644 --- a/include/ajax.tasks.php +++ b/include/ajax.tasks.php @@ -126,7 +126,7 @@ class TasksAjaxAPI extends AjaxController { Format::datetime($_SESSION[':form-data']['timestamp'])); $note = array( - 'title' => __('Task Created From Thread'), + 'title' => __('Task Created From Thread Entry'), 'note' => __('Task ' . $taskLink . '<br /> Thread Entry ID: ' . $entryLink) ); @@ -139,7 +139,7 @@ class TasksAjaxAPI extends AjaxController { $originalTask->getNumber()); $note = array( - 'title' => __('Task Created From Thread'), + 'title' => __('Task Created From Thread Entry'), 'note' => __('This Task was created from Task ' . $taskLink)); $task->postNote($note, $errors, $thisstaff); diff --git a/include/ajax.tickets.php b/include/ajax.tickets.php index 5377996c628c55c498a78e8d50650dd10815a713..0a7cf21bcbd1ea0bc01bec441bbcc385cbf62090 100644 --- a/include/ajax.tickets.php +++ b/include/ajax.tickets.php @@ -1362,7 +1362,7 @@ function refer($tid, $target=null) { Format::datetime($_SESSION[':form-data']['timestamp'])); $note = array( - 'title' => __('Task Created From Thread'), + 'title' => __('Task Created From Thread Entry'), 'body' => __('Task ' . $taskLink . '<br /> Thread Entry ID: ' . $entryLink) ); @@ -1375,7 +1375,7 @@ function refer($tid, $target=null) { $ticket->getNumber()); $note = array( - 'title' => __('Task Created From Thread'), + 'title' => __('Task Created From Thread Entry'), 'note' => __('This Task was created from Ticket ' . $ticketLink)); $task->postNote($note, $errors, $thisstaff); diff --git a/include/class.ticket.php b/include/class.ticket.php index f28f4e8e1d670bfec09aeeca9dcea6a2f7a5f9c2..664ba874a47ce95d5b343624cbc04fec43174d8e 100644 --- a/include/class.ticket.php +++ b/include/class.ticket.php @@ -3887,20 +3887,19 @@ implements RestrictedAccess, Threadable, Searchable { } //check to see if ticket was created from a thread - if ($_SESSION[':form-data']['ticket'] || $_SESSION[':form-data']['task']) { - $oldTicket = $_SESSION[':form-data']['ticket']; - $oldTask = $_SESSION[':form-data']['task']; + if ($_SESSION[':form-data']['ticketId'] || $_SESSION[':form-data']['taskId']) { + $oldTicket = Ticket::lookup($_SESSION[':form-data']['ticketId']); + $oldTask = Task::lookup($_SESSION[':form-data']['taskId']); //add internal note to new ticket. //New ticket should have link to old task/ticket: - $link = sprintf('<a href="%s.php?id=%d#entry-%d"><b>#%s</b></a>', + $link = sprintf('<a href="%s.php?id=%d"><b>#%s</b></a>', $oldTicket ? 'tickets' : 'tasks', $oldTicket ? $oldTicket->getId() : $oldTask->getId(), - $_SESSION[':form-data']['eid'], $oldTicket ? $oldTicket->getNumber() : $oldTask->getNumber()); $note = array( - 'title' => __('Ticket Created From Thread'), + 'title' => __('Ticket Created From Thread Entry'), 'body' => sprintf(__('This Ticket was created from %s '. $link), $oldTicket ? 'Ticket' : 'Task') ); @@ -3919,12 +3918,12 @@ implements RestrictedAccess, Threadable, Searchable { Format::datetime($_SESSION[':form-data']['timestamp'])); $ticketNote = array( - 'title' => __('Ticket Created From Thread'), + 'title' => __('Ticket Created From Thread Entry'), 'body' => __('Ticket ' . $ticketLink). '<br /> Thread Entry ID: ' . $entryLink); $taskNote = array( - 'title' => __('Ticket Created From Thread'), + 'title' => __('Ticket Created From Thread Entry'), 'note' => __('Ticket ' . $ticketLink). '<br /> Thread Entry ID: ' . $entryLink); @@ -4142,7 +4141,8 @@ implements RestrictedAccess, Threadable, Searchable { $attachments = array(); $message = $ticket->getLastMessage(); if ($cfg->emailAttachments()) { - $attachments = $message->getAttachments(); + if ($message) + $attachments = $message->getAttachments(); if ($response && $response->getNumAttachments()) $attachments = $attachments->merge($response->getAttachments()); } diff --git a/include/staff/ticket-open.inc.php b/include/staff/ticket-open.inc.php index 277714d5b701b9bfb22ecc8a83c5a2c5fceceaea..17b9891b90dba383df6180102ac49e0da28b7778 100644 --- a/include/staff/ticket-open.inc.php +++ b/include/staff/ticket-open.inc.php @@ -10,13 +10,13 @@ $info=Format::htmlchars(($errors && $_POST)?$_POST:$info); // Use thread entry to seed the ticket if (!$user && $_GET['tid'] && ($entry = ThreadEntry::lookup($_GET['tid']))) { if ($entry->getThread()->getObjectType() == 'T') - $oldTicket = Ticket::lookup($entry->getThread()->getObjectId()); + $oldTicketId = $entry->getThread()->getObjectId(); if ($entry->getThread()->getObjectType() == 'A') - $oldTask = Task::lookup($entry->getThread()->getObjectId()); + $oldTaskId = $entry->getThread()->getObjectId(); $_SESSION[':form-data']['message'] = Format::htmlchars($entry->getBody()); - $_SESSION[':form-data']['ticket'] = $oldTicket; - $_SESSION[':form-data']['task'] = $oldTask; + $_SESSION[':form-data']['ticketId'] = $oldTicketId; + $_SESSION[':form-data']['taskId'] = $oldTaskId; $_SESSION[':form-data']['eid'] = $entry->getId(); $_SESSION[':form-data']['timestamp'] = $entry->getCreateDate(); @@ -349,7 +349,7 @@ if ($_POST) <tbody id="dynamic-form"> <?php foreach ($forms as $form) { - print $form->getForm()->getMedia(); + print $form->getForm($_SESSION[':form-data'])->getMedia(); include(STAFFINC_DIR . 'templates/dynamic-form.tmpl.php'); } ?> diff --git a/scp/js/thread.js b/scp/js/thread.js index 0b4ebe50213763d035bd4df033856d6c51fe2241..bb67ca4ce868d7ea865c4aa5972f184836aa3c2c 100644 --- a/scp/js/thread.js +++ b/scp/js/thread.js @@ -159,7 +159,10 @@ var thread = { } // Open thread body links in a new tab/window + // unless referring to thread entry on current page $('div.thread-body a', $container).each(function() { + var str = this.toString(); + if (!str.includes('#entry-')) $(this).attr('target', '_blank'); });