diff options
author | ivan <ivan> | 2003-07-15 13:16:32 +0000 |
---|---|---|
committer | ivan <ivan> | 2003-07-15 13:16:32 +0000 |
commit | 945721f48f74d5cfffef7c7cf3a3d6bc2521f5dd (patch) | |
tree | c874aeac27d37fce2e41d64c3347c99527f6e66d /rt/html/Ticket/Elements/ShowTransaction | |
parent | 160be29a0dc62e79a4fb95d2ab8c0c7e5996760e (diff) |
import of rt 3.0.4
Diffstat (limited to 'rt/html/Ticket/Elements/ShowTransaction')
-rw-r--r-- | rt/html/Ticket/Elements/ShowTransaction | 169 |
1 files changed, 169 insertions, 0 deletions
diff --git a/rt/html/Ticket/Elements/ShowTransaction b/rt/html/Ticket/Elements/ShowTransaction new file mode 100644 index 000000000..f2f89d35c --- /dev/null +++ b/rt/html/Ticket/Elements/ShowTransaction @@ -0,0 +1,169 @@ +%# BEGIN LICENSE BLOCK +%# +%# Copyright (c) 1996-2003 Jesse Vincent <jesse@bestpractical.com> +%# +%# (Except where explictly superceded by other copyright notices) +%# +%# This work is made available to you under the terms of Version 2 of +%# the GNU General Public License. A copy of that license should have +%# been provided with this software, but in any event can be snarfed +%# from www.gnu.org. +%# +%# This work is distributed in the hope that it will be useful, but +%# WITHOUT ANY WARRANTY; without even the implied warranty of +%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +%# General Public License for more details. +%# +%# Unless otherwise specified, all modifications, corrections or +%# extensions to this work which alter its source code become the +%# property of Best Practical Solutions, LLC when submitted for +%# inclusion in the work. +%# +%# +%# END LICENSE BLOCK +<TR class="<% $RowNum%2 ? 'oddline' : 'evenline'%>" > +<TD bgcolor="<%$bgcolor%>"><A NAME="txn-<%$Transaction->Id%>" href="#txn-<%$Transaction->Id%>">#</A> </TD> +<TD>  </TD> +<TD><font size=-2><% $transdate|n %></font> </TD> +% my $desc = $Transaction->BriefDescription; +% $m->comp('/Elements/Callback', _CallbackName => 'ModifyDisplay', text => \$desc, Transaction => $Transaction, %ARGS); +<TD ALIGN="LEFT"><b><%$Transaction->CreatorObj->Name%> - <%$TicketString%> <%$desc%> + +</b></TD> +<TD><%$TimeTaken%> </TD> +<TD ALIGN="RIGHT"><font size=-1><%$titlebar_commands|n%></font></TD> +</TR> +<%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 ($message->ContentLength || $message->Children->Count); + + my ($headers, $quoted); + if ($ShowHeaders && ($ShowHeaders == $Ticket->Id)) { + $headers = $message->Headers; + } else { + $headers = $message->NiceHeaders; + } + chomp $headers; + if ($headers) { + # localize the common headers (like 'Subject:'), too. + eval {$headers =~ s/^([^:]+)(?=:)/loc($1)/em; } # we eval here to catch errors when 5.6 panics + } + # 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 && + $message->ContentLength < $MAX_INLINE_BODY ) { + require Text::Quoted; + $quoted = Text::Quoted::extract($message->Content); + } + +</%PERL> +<TR class="<% $RowNum%2 ? 'oddline' : 'evenline'%>" > + <TD BGCOLOR="<%$bgcolor%>"> </TD> + <TD> </TD> + <TD COLSPAN=3 VALIGN=TOP> +<span class="message"> + <PRE> +<& ShowMessageHeaders, Headers => $headers, Transaction => $Transaction &> +</PRE> +<& ShowMessageStanza, Depth => 0, Message => $quoted, Transaction => $Transaction &> +</span> + </TD> + <TD VALIGN=TOP ALIGN=RIGHT> + +% if ($message->Parent == 0 ) { +<BR> +% } +<%PERL> +my $size = $message->ContentLength; + +if ($size) { + if ($size > 1024) { + $size = loc("[_1]k", int($size/102.4)/10); + } + else { + $size = loc("[_1]b", $size); + } +</%PERL> +<font size=-1><A HREF="<%$RT::WebPath%>/Ticket/Attachment/<%$Transaction->Id%>/<%$message->Id%>/<%$message->Filename%>"><&|/l&>Download</&> <% $message->Filename|| loc('(untitled)') %></a> <% $size %></font> +% } +</TD> +</TR> +% } +% } + + + +<%ARGS> +$Ticket => undef +$Transaction => undef +$ShowHeaders => 0 +$Collapsed => undef +$ShowTitleBarCommands => 1 +$RowNum => 1 +</%ARGS> + +<%INIT> + + +my ($TimeTaken, $TicketString, $bgcolor); + +my $transdate = $Transaction->CreatedAsString(); +$transdate =~ s/\s/ /g; + +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|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->Attachments->First && $ShowTitleBarCommands) { + if ($Transaction->TicketObj->CurrentUserHasRight('ReplyToTicket')) { + $titlebar_commands .= + "[<a href=\"Update.html?id=". + $Transaction->Ticket . "&QuoteTransaction=".$Transaction->Id. + "&Action=Respond\">". loc('Reply') ."</a>] "; + } + if ($Transaction->TicketObj->CurrentUserHasRight('CommentOnTicket')) { + $titlebar_commands .= + "[<a href=\"Update.html?id=".$Transaction->Ticket. + "&QuoteTransaction=".$Transaction->Id. + "&Action=Comment\">". loc('Comment') ."</a>]"; + } +} + +</%INIT> |