1 %# $Header: /home/cvs/cvsroot/freeside/rt/webrt/SelfService/Attic/Display.html,v 1.1 2002-08-12 06:17:09 ivan Exp $
2 %# Copyright 1996-2001 Jesse Vincent <jesse@fsck.com>
4 <& /SelfService/Elements/Header, Title => 'Display ticket #'.$Ticket->id &>
7 <& /Elements/ListActions, actions => \@results &>
11 <TD VALIGN=TOP WIDTH="20%" ALIGN=RIGHT>
19 <TD VALIGN=TOP WIDTH="20%" ALIGN=RIGHT>
23 <%$Ticket->RequestorsAsString%>
27 <TD VALIGN=TOP WIDTH="20%" ALIGN=RIGHT>
31 <%$Ticket->CcAsString%>
36 <TD VALIGN=TOP WIDTH="20%" ALIGN=RIGHT>
45 <TD VALIGN=TOP WIDTH="20%" ALIGN=RIGHT>
49 <%$Ticket->QueueObj->Name%> (<%$Ticket->QueueObj->Description%>)
53 <TD VALIGN=TOP WIDTH="20%" ALIGN=RIGHT>
57 <%$Ticket->Priority %>
61 % if ($Ticket->TimeWorked) {
63 <TD VALIGN=TOP WIDTH="20%" ALIGN=RIGHT>
67 <%$Ticket->TimeWorked %> minutes
72 % my $selects = $Ticket->QueueObj->KeywordSelects;
73 % while (my $select = $selects->Next) {
75 <TD VALIGN=TOP WIDTH="20%" ALIGN=RIGHT>
79 % my $object_keywords = $Ticket->KeywordsObj($select->id);
80 % while (my $keyword = $object_keywords->Next) {
81 <%$keyword->KeywordObj->RelativePath($select->KeywordObj)%>
91 <TABLE BORDER=0 CELLSPACING=0>
93 %while (my $Transaction = $Transactions->Next) {
95 % if ($Transactions->IsLast) {
96 <a name="lasttrans"></a>
98 <& /Ticket/Elements/ShowTransaction, Transaction => $Transaction,
108 my ($field, @results);
110 # {{{ Load the ticket
111 #If we get handed two ids, mason will make them an array. bleck.
112 # We want teh first one. Just because there's no other sensible way
114 my @id = (ref $id eq 'ARRAY') ? @{$id} : ($id);
117 my $Ticket = new RT::Ticket($session{'CurrentUser'});
118 if ($id[0] eq 'new') {
119 # {{{ Create a new ticket
121 my $Queue = new RT::Queue($session{'CurrentUser'});
122 unless ($Queue->Load($ARGS{'Queue'})) {
123 $m->comp('Error.html', Why => 'Queue not found');
127 unless ($Queue->CurrentUserHasRight('CreateTicket')) {
128 $m->comp('Error.html', Why => 'You have no permission to create tickets in that queue.');
132 my @Requestors = split(/,/,$ARGS{'Requestors'});
133 my @Cc = split(/,/,$ARGS{'Cc'});
136 my $MIMEObj = MakeMIMEEntity ( Subject => $ARGS{'Subject'},
137 From => $ARGS{'From'},
139 Body => $ARGS{'Content'},
140 AttachmentFieldName => 'Attach');
142 #TODO in Create_Details.html: priorities and due-date
143 my ($id, $Trans, $ErrMsg)= $Ticket->Create(Queue=>$ARGS{Queue},
144 Requestor=> \@Requestors,
146 Subject=>$ARGS{Subject},
149 unless ($id && $Trans) {
150 $m->comp('Error.html', Why => $ErrMsg);
154 push(@results, $ErrMsg);
159 unless ($Ticket->Load($id[0])) {
160 $m->comp('Error.html', Why =>"Couldn't load ticket '$id'");
166 unless ($session{'CurrentUser'}->HasQueueRight ( TicketObj => $Ticket,
167 Right => 'ShowTicket')) {
168 $m->comp('Error.html', Why => "No permission to display that ticket");
175 if ((defined $ARGS{'Status'}) and
176 ($ARGS{'Status'} ne $Ticket->Status)) {
177 ($code, $msg) = $Ticket->SetStatus($ARGS{'Status'});
178 push @results, "$msg";
181 ProcessUpdateMessage(ARGSRef=>\%ARGS, Actions=>\@results, TicketObj=>$Ticket);
183 my $Transactions = $Ticket->Transactions;