%# BEGIN LICENSE BLOCK %# %# Copyright (c) 1996-2003 Jesse Vincent %# %# (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 <& /RTIR/Elements/Header, Title => $Title &> <& '/RTIR/'.$Type.'/Elements/Tabs', Ticket => $Ticket, current_tab => "RTIR/Edit.html?id=".$Ticket->Id, current_subtab => "RTIR/Edit.html?id=".$Ticket->Id, Title => $Title &> <& /Elements/ListActions, actions => \@results &> % if (!$Ticket->CurrentUserHasRight('ModifyTicket')) { <%loc("You are not allowed to edit this [_1].", $name)%> % $m->abort(); % }
<& /Elements/TitleBoxStart, title => loc("The Basics"), color=> "#993333", width => "100%" &> <& $Type.'/Elements/EditBasics', Ticket => $Ticket, %ARGS &> <& /Elements/TitleBoxEnd &>
<& /Elements/TitleBoxStart, title => loc('Dates'), width => "100%", color => "#663366" &> <& /RTIR/Elements/EditDates, TicketObj => $Ticket &> <& /Elements/TitleBoxEnd &>

<& /Elements/TitleBoxStart, title => loc('People'),width => "100%", color=> "#333399" &> <& /RTIR/Elements/EditPeople, Ticket => $Ticket, UserField => $UserField, UserString => $UserString, UserOp => $UserOp &> <& /Elements/TitleBoxEnd &>
<& /Elements/Submit, Label => loc('Save Changes'), Caption => loc("If you've updated anything above, be sure to"), color => "#333399" &>
<%INIT> my $Ticket = LoadTicket($id); my $Type = $m->scomp('Elements/Type', Ticket => $Ticket->Id); $Type =~ s/\s+$//; my $name; if ($Type eq 'Report') { $name = "Incident Report"; } else { $name = $Type; } if ($Type eq 'Incident') { $m->comp("/RTIR/Incident/Edit.html", %ARGS); $m->abort; } my $CanRespond = 0; my $CanComment = 0; $CanRespond = 1 if ( $Ticket->CurrentUserHasRight('ReplyToTicket') or $Ticket->CurrentUserHasRight('ModifyTicket') ); $CanComment = 1 if ( $Ticket->CurrentUserHasRight('CommentOnTicket') or $Ticket->CurrentUserHasRight('ModifyTicket') ); my (@wresults, @cfresults, @results, @okresults, @dresults, @lresults); unless ($OnlySearchForPeople) { @wresults = ProcessTicketWatchers( TicketObj => $Ticket, ARGSRef => \%ARGS); @results = ProcessTicketBasics( TicketObj => $Ticket, ARGSRef => \%ARGS); @cfresults = ProcessTicketCustomFieldUpdates(ARGSRef => \%ARGS); @dresults = ProcessTicketDates( TicketObj => $Ticket, ARGSRef => \%ARGS); @lresults = ProcessTicketLinks( TicketObj => $Ticket, ARGSRef => \%ARGS); $ARGS{'UpdateContent'} =~ s/\r\n/\n/g; if ($ARGS{'UpdateContent'} && $ARGS{'UpdateContent'} ne '' && $ARGS{'UpdateContent'} ne "-- \n" . $session{'CurrentUser'}->UserObj->Signature ) { ProcessUpdateMessage(TicketObj => $Ticket, ARGSRef=>\%ARGS, Actions=>\@results); } } push @results, @wresults; push @results, @cfresults; push @results, @dresults; push @results, @lresults; push @results, @okresults; # If they've gone and moved the ticket to somewhere they can't see, etc... # TODO: display the results, even if we can't display the ticket. unless ($Ticket->CurrentUserHasRight('ShowTicket')) { Abort("No permission to view ticket"); } #It's hard to do this inline, so we'll preload the html of the selectstatus in here. my $SelectStatus = $m->scomp("/Elements/SelectStatus", Name => 'Status', Default=> $Ticket->Status); my $SelectQueue = $m->scomp("/Elements/SelectQueue", Name => 'Queue', Default =>$Ticket->QueueObj->Id); my $Title = loc("Edit [_1] #[_2]: [_3]", $name, $Ticket->Id, $Ticket->Subject); <%ARGS> $OnlySearchForPeople => undef $UserField => undef $UserOp => undef $UserString => undef $id => undef