|
  |
<% $transdate|n %> |
<%$Transaction->CreatorObj->Name%> - <%$TicketString%> <%$Transaction->BriefDescription%>
|
<%$TimeTaken%> |
<%$titlebar_commands|n%> |
<%PERL>
unless ($Collapsed) {
$attachments->GotoFirstItem;
while (my $message=$attachments->Next) {
#we don't want to show any empty transactions, unless they have kids
next unless (length $message->Content || $message->Children->Count);
my ($headers, $content);
%PERL>
<%PERL>
if ($message->Parent == 0) {
if ($ShowHeaders == $Ticket->Id) {
$headers = $message->Headers;
} else {
$headers = $message->NiceHeaders;
}
chomp $headers;
$headers .= "\n\n" if ($headers);
}
# 13456 is a random # of about the biggest size we want to see inline text
my $MAX_INLINE_BODY = 13456;
if ($message->ContentType =~ m{^(text/plain|message|text$)}i &&
length($message->Content)< $MAX_INLINE_BODY ) {
$content = $message->Content;
my $wrapper = new Text::Wrapper (columns=>85);
$content = $wrapper->wrap($content);
$content =~ s/&/&/g;
$content =~ s/</g;
$content =~ s/>/>/g;
$content =~ s!((?:http|https|ftp|mailto):\S*?)([\s"']|>|\.[\n])!$1$2!g;
}
else {
$content = " ";
}
%PERL>
|
  |
<%$headers%><%$content|n%>
|
% if ($message->Parent == 0 ) {
% }
<%PERL>
my $size = length($message->Content());
if ($size) {
if ($size > 1024) {
$size = int($size/102.4)/10 . "k";
}
else {
$size = $size ."b";
}
%PERL>
Download <%$message->Filename|| '(untitled)'%> <% $size %>
% }
|
% }
% }
<%ARGS>
$Ticket => undef
$Transaction => undef
$ShowHeaders => undef
$Collapsed => undef
$ShowTitleBarCommands => 1
$RowNum => 1
%ARGS>
<%INIT>
my ($TimeTaken, $TicketString, $bgcolor, $rowbgcolor);
my $transdate = $Transaction->CreatedAsString();
$transdate =~ s/\s/ /g;
if ($RowNum % 2) {
$rowbgcolor="#cccccc";
} else {
$rowbgcolor="#ffffff";
}
if ($Transaction->Type =~ /^(Create|Correspond|Comment$)/) {
if ($Transaction->IsInbound) {
$bgcolor="#336699";
}
else {
$bgcolor="#339999";
}
} elsif (($Transaction->Field =~ /^Owner$/) or
($Transaction->Type =~ /^(AddWatcher|DelWatcher)$/)) {
$bgcolor="#333399";
} elsif ($Transaction->Type =~ /^(AddLink|DeleteLink)$/) {
$bgcolor="#336633";
} elsif ($Transaction->Type =~ /^(Status|Set|Keyword|Told)$/) {
if ($Transaction->Field =~ /^(Told|Starts|Started|Due)$/) {
$bgcolor="#663366";
}
else {
$bgcolor="#993333";
}
}
else {
$bgcolor="#cccccc";
}
if ($Ticket->Id != $Transaction->Ticket) {
$TicketString = "Ticket ".$Transaction->Ticket .": ";
}
if ($Transaction->TimeTaken > 0) {
$TimeTaken = $Transaction->TimeTaken." min"
}
my $attachments = $Transaction->Attachments;
my $titlebar_commands=' ';
# If the transaction has anything attached to it at all
if ($Transaction->Message->First && $ShowTitleBarCommands) {
if ($Transaction->TicketObj->CurrentUserHasRight('ReplyToTicket')) {
$titlebar_commands .=
"[Ticket . "&QuoteTransaction=".$Transaction->Id.
"&Action=Respond\">Reply] ";
}
if ($Transaction->TicketObj->CurrentUserHasRight('CommentOnTicket')) {
$titlebar_commands .=
"[Ticket.
"&QuoteTransaction=".$Transaction->Id.
"&Action=Comment\">Comment]";
}
}
%INIT>