This commit was generated by cvs2svn to compensate for changes in r4407,
[freeside.git] / rt / html / Ticket / Elements / ShowTransaction
1 %# BEGIN BPS TAGGED BLOCK {{{
2 %# 
3 %# COPYRIGHT:
4 %#  
5 %# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC 
6 %#                                          <jesse@bestpractical.com>
7 %# 
8 %# (Except where explicitly superseded by other copyright notices)
9 %# 
10 %# 
11 %# LICENSE:
12 %# 
13 %# This work is made available to you under the terms of Version 2 of
14 %# the GNU General Public License. A copy of that license should have
15 %# been provided with this software, but in any event can be snarfed
16 %# from www.gnu.org.
17 %# 
18 %# This work is distributed in the hope that it will be useful, but
19 %# WITHOUT ANY WARRANTY; without even the implied warranty of
20 %# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
21 %# General Public License for more details.
22 %# 
23 %# You should have received a copy of the GNU General Public License
24 %# along with this program; if not, write to the Free Software
25 %# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
26 %# 
27 %# 
28 %# CONTRIBUTION SUBMISSION POLICY:
29 %# 
30 %# (The following paragraph is not intended to limit the rights granted
31 %# to you to modify and distribute this software under the terms of
32 %# the GNU General Public License and is only of importance to you if
33 %# you choose to contribute your changes and enhancements to the
34 %# community by submitting them to Best Practical Solutions, LLC.)
35 %# 
36 %# By intentionally submitting any modifications, corrections or
37 %# derivatives to this work, or any other work intended for use with
38 %# Request Tracker, to Best Practical Solutions, LLC, you confirm that
39 %# you are the copyright holder for those contributions and you grant
40 %# Best Practical Solutions,  LLC a nonexclusive, worldwide, irrevocable,
41 %# royalty-free, perpetual, license to use, copy, create derivative
42 %# works based on those contributions, and sublicense and distribute
43 %# those contributions and any derivatives thereof.
44 %# 
45 %# END BPS TAGGED BLOCK }}}
46 <TR class="<% $RowNum%2 ? 'oddline' : 'evenline'%>" >
47 <TD rowspan="2" valign="top" bgcolor="<%$bgcolor%>"><A NAME="txn-<%$Transaction->Id%>" href="<% $DisplayPath %>#txn-<%$Transaction->Id%>">#</A><% $LastTransaction ? '<a name="lasttrans">&nbsp;</a>' : '&nbsp;' |n %></TD>
48 <TD>&nbsp&nbsp;</TD>
49 <TD><font size=-2><% $transdate|n %></font>&nbsp;</TD>
50 % my $desc = $Transaction->BriefDescription;
51 % $m->comp('/Elements/Callback', _CallbackName => 'ModifyDisplay', text => \$desc, Transaction => $Transaction, %ARGS);
52 <TD ALIGN="LEFT"><b><%$Transaction->CreatorObj->Name%> - <%$TicketString%> <%$desc%>
53
54 </b></TD>
55 <TD><%$TimeTaken%>&nbsp;</TD>
56 <TD ALIGN="RIGHT"><font size=-1><%$titlebar_commands|n%></font></TD>
57 </TR>
58 <TR class="<% $RowNum%2 ? 'oddline' : 'evenline'%>"><TD colspan=5>
59 % if ($Transaction->CustomFieldValues->Count) {
60 <& /Elements/ShowCustomFields, Object => $Transaction &>
61 % }
62 % $m->comp('ShowTransactionAttachments', %ARGS, Parent => 0) unless ($Collapsed ||!$ShowBody);
63 </TD>
64 </TR>
65
66 <%ARGS>
67 $Ticket => undef
68 $Transaction => undef
69 $ShowHeaders => 0
70 $Collapsed => undef
71 $ShowTitleBarCommands => 1
72 $RowNum => 1
73 $DisplayPath => $RT::WebPath."/Ticket/Display.html?id=".$Ticket->id
74 $AttachPath => $RT::WebPath."/Ticket/Attachment"
75 $UpdatePath => $RT::WebPath."/Ticket/Update.html"
76 $EmailRecordPath => $RT::WebPath."/Ticket/ShowEmailRecord.html"
77 $Attachments => undef
78 $AttachmentContent => undef
79 $ShowBody => 1
80 $LastTransaction => 0
81 </%ARGS>
82
83 <%INIT>
84
85 my ( $TimeTaken, $TicketString, $bgcolor );
86
87 my $transdate = $Transaction->CreatedAsString();
88 $transdate =~ s/\s/&nbsp;/g;
89
90 if ( $Transaction->Type =~ /^(Create|Correspond|Comment$)/ ) {
91     if ( $Transaction->IsInbound ) {
92         $bgcolor = "#336699";
93     }
94     else {
95         $bgcolor = "#339999";
96     }
97 }
98 elsif (    ( $Transaction->Field =~ /^Owner$/ )
99         or ( $Transaction->Type =~ /^(AddWatcher|DelWatcher)$/ ) ) {
100     $bgcolor = "#333399";
101
102 }
103 elsif ( $Transaction->Type =~ /^(AddLink|DeleteLink)$/ ) {
104     $bgcolor = "#336633";
105 }
106 elsif ( $Transaction->Type =~ /^(Status|Set|Told)$/ ) {
107     if ( $Transaction->Field =~ /^(Told|Starts|Started|Due)$/ ) {
108         $bgcolor = "#663366";
109     }
110     else {
111         $bgcolor = "#993333";
112     }
113 }
114 else {
115     $bgcolor = "#cccccc";
116 }
117
118 if ( $Ticket->Id != $Transaction->Ticket ) {
119     $TicketString = "Ticket " . $Transaction->Ticket . ": ";
120 }
121 $TicketString ||= '';
122
123 if ( $Transaction->TimeTaken != 0 ) {
124     $TimeTaken = $Transaction->TimeTaken . " min";
125 } else {
126     $TimeTaken = '';
127 }
128
129 unless ($Attachments) { 
130     my $attachments = $Transaction->Attachments;
131     $attachments->Columns( qw( Id Filename ContentType Headers Subject Parent ContentEncoding ContentType TransactionId) );
132     $Attachments = $attachments->ItemsArrayRef();
133 }
134 my $titlebar_commands = '&nbsp;';
135
136 my @DisplayHeaders=qw ( _all);
137
138 if ( $Transaction->Type =~ /EmailRecord$/ ) {
139     @DisplayHeaders = qw(To Cc Bcc);
140
141     $titlebar_commands .=
142         "[<a target=\"_blank\" href=\"$EmailRecordPath?id="
143       . $Transaction->Ticket
144       . "&Transaction="
145       . $Transaction->Id
146       . "&Attachment="
147       . (    $Transaction->Attachments->First
148           && $Transaction->Attachments->First->Id )
149
150       . '">' . loc('Show') . "</a>]&nbsp;";
151     $ShowBody = 0;
152 }
153
154
155 # If the transaction has anything attached to it at all
156 else {
157
158     unless ( $ShowHeaders ) {
159         @DisplayHeaders = qw(To From RT-Send-Cc Cc Bcc Date Subject);
160     }
161
162     if ( $Attachments->[0] && $ShowTitleBarCommands ) {
163         if ( $Transaction->TicketObj->CurrentUserHasRight('ReplyToTicket')
164              or $Transaction->TicketObj->CurrentUserHasRight('ModifyTicket')) {
165             $titlebar_commands .=
166                 "[<a href=\"".$UpdatePath."?id="
167               . $Transaction->Ticket
168               . "&QuoteTransaction="
169               . $Transaction->Id
170               . "&Action=Respond\">"
171               . loc('Reply')
172               . "</a>]&nbsp;";
173         }
174         if ( $Transaction->TicketObj->CurrentUserHasRight('CommentOnTicket')
175              or $Transaction->TicketObj->CurrentUserHasRight('ModifyTicket')) {
176             $titlebar_commands .=
177                 "[<a href=\"".$UpdatePath."?id="
178               . $Transaction->Ticket
179               . "&QuoteTransaction="
180               . $Transaction->Id
181               . "&Action=Comment\">"
182               . loc('Comment') . "</a>]";
183         }
184     }
185 }
186 </%INIT>