X-Git-Url: http://git.freeside.biz/gitweb/?p=freeside.git;a=blobdiff_plain;f=rt%2Fhtml%2FTicket%2FModifyAll.html;h=7ad5b8768e14fa927d9f224605d3ba6077ae365d;hp=1d0500d160d980ab8bd51c1757630134d518fafc;hb=fc6209f398899f0211cfcedeb81a3cd65e04a941;hpb=c582e92888b4a5553e1b4e5214cf35217e4a0cf0 diff --git a/rt/html/Ticket/ModifyAll.html b/rt/html/Ticket/ModifyAll.html index 1d0500d16..7ad5b8768 100644 --- a/rt/html/Ticket/ModifyAll.html +++ b/rt/html/Ticket/ModifyAll.html @@ -1,8 +1,14 @@ -%# BEGIN LICENSE BLOCK +%# BEGIN BPS TAGGED BLOCK {{{ %# -%# Copyright (c) 1996-2003 Jesse Vincent +%# COPYRIGHT: +%# +%# This software is Copyright (c) 1996-2009 Best Practical Solutions, LLC +%# %# -%# (Except where explictly superceded by other copyright notices) +%# (Except where explicitly superseded by other copyright notices) +%# +%# +%# LICENSE: %# %# 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 @@ -14,13 +20,31 @@ %# 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. +%# You should have received a copy of the GNU General Public License +%# along with this program; if not, write to the Free Software +%# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA +%# 02110-1301 or visit their web page on the internet at +%# http://www.gnu.org/licenses/old-licenses/gpl-2.0.html. +%# %# +%# CONTRIBUTION SUBMISSION POLICY: %# -%# END LICENSE BLOCK +%# (The following paragraph is not intended to limit the rights granted +%# to you to modify and distribute this software under the terms of +%# the GNU General Public License and is only of importance to you if +%# you choose to contribute your changes and enhancements to the +%# community by submitting them to Best Practical Solutions, LLC.) +%# +%# By intentionally submitting any modifications, corrections or +%# derivatives to this work, or any other work intended for use with +%# Request Tracker, to Best Practical Solutions, LLC, you confirm that +%# you are the copyright holder for those contributions and you grant +%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable, +%# royalty-free, perpetual, license to use, copy, create derivative +%# works based on those contributions, and sublicense and distribute +%# those contributions and any derivatives thereof. +%# +%# END BPS TAGGED BLOCK }}} <& /Elements/Header, Title => loc("Ticket #[_1] Jumbo update: [_2]", $Ticket->Id, $Ticket->Subject) &> <& /Ticket/Elements/Tabs, Ticket => $Ticket, @@ -29,37 +53,37 @@ <& /Elements/ListActions, actions => \@results &> -
- - + +<& /Elements/Callback, _CallbackName => 'FormStart',ARGSRef =>\%ARGS &> + -<& /Elements/TitleBoxStart, title => loc('Modify ticket # [_1]', $Ticket->Id), color=> "#993333", width => "100%" &> +<&| /Widgets/TitleBox, title => loc('Modify ticket # [_1]', $Ticket->Id) &> <& Elements/EditBasics, TicketObj => $Ticket &> <& Elements/EditCustomFields, TicketObj => $Ticket &> -<& /Elements/TitleBoxEnd &> + -
+
-<& /Elements/TitleBoxStart, title => loc('Dates'), width => "100%", color => "#663366" &> +<&| /Widgets/TitleBox, title => loc('Dates') &> <& Elements/EditDates, TicketObj => $Ticket &> -<& /Elements/TitleBoxEnd &> + -
+
-<& /Elements/TitleBoxStart, title => loc('People'),width => "100%", color=> "#333399" &> -<& Elements/EditPeople, Ticket => $Ticket, UserField => $UserField, UserString => $UserString, UserOp => $UserOp &> -<& /Elements/TitleBoxEnd &> +<&| /Widgets/TitleBox, title => loc('People') &> +<& Elements/EditPeople, Ticket => $Ticket, UserField => $UserField, UserString => $UserString, UserOp => $UserOp, GroupString => $GroupString, GroupOp => $GroupOp, GroupField => $GroupField &> + -
+
-<& /Elements/TitleBoxStart, title => loc('Relationships'), color => "#336633"&> -<& Elements/EditLinks, Ticket => $Ticket &> -<& /Elements/TitleBoxEnd &> +<&| /Widgets/TitleBox, title => loc('Links') &> +<& /Elements/EditLinks, Object => $Ticket, Merge => 1 &> + -
+
-<& /Elements/TitleBoxStart, title => loc('Update ticket') &> +<&| /Widgets/TitleBox, title => loc('Update ticket') &> @@ -69,28 +93,41 @@ % } % if ($CanRespond) { - + % } - + +% if (my $TxnCFs = $Ticket->TransactionCustomFields) { +% while (my $CF = $TxnCFs->Next()) { + + + + +% } # end if while +% } # end of if - +
<&|/l&>Update Type:
<&|/l&>Subject:
<% $CF->Name %>:<& /Elements/EditCustomField, + CustomField => $CF, + NamePrefix => "Object-RT::Transaction--CustomField-" + &><% $CF->FriendlyType %>
<&|/l&>Attach:
<&|/l&>Content: <& /Elements/MessageBox, Name=>"UpdateContent", QuoteTransaction=>$ARGS{QuoteTransaction} &>
-<& /Elements/TitleBoxEnd &> + -<& /Elements/Submit, Label => loc('Save Changes'), Caption => loc("If you've updated anything above, be sure to"), color => "#333399" &> +<& /Elements/Submit, + Label => loc('Save Changes'), + Caption => loc("If you've updated anything above, be sure to"), color => "#333399" &>
<%INIT> @@ -110,12 +147,22 @@ $CanComment = 1 if ( $Ticket->CurrentUserHasRight('CommentOnTicket') or $Ticket->CurrentUserHasRight('ModifyTicket') ); +$m->comp('/Elements/Callback', TicketObj => $Ticket, ARGSRef => \%ARGS); my (@wresults, @results, @dresults, @lresults, @cf_results); -unless ($OnlySearchForPeople) { +unless ($OnlySearchForPeople or $OnlySearchForGroup ) { + # There might be two owners. + if ( ref ($ARGS{'Owner'} )) { + my @owners =@{$ARGS{'Owner'}}; + delete $ARGS{'Owner'}; + foreach my $owner(@owners){ + $ARGS{'Owner'} = $owner unless ($Ticket->OwnerObj->id == $owner); + } + + } + @wresults = ProcessTicketWatchers( TicketObj => $Ticket, ARGSRef => \%ARGS); - @results = ProcessTicketBasics( TicketObj => $Ticket, ARGSRef => \%ARGS); - @cf_results = ProcessTicketCustomFieldUpdates( TicketObj => $Ticket, ARGSRef => \%ARGS); + @cf_results = ProcessObjectCustomFieldUpdates( Object => $Ticket, ARGSRef => \%ARGS); @dresults = ProcessTicketDates( TicketObj => $Ticket, ARGSRef => \%ARGS); @lresults = ProcessTicketLinks( TicketObj => $Ticket, ARGSRef => \%ARGS); @@ -135,23 +182,23 @@ unless ($OnlySearchForPeople) { $ARGS{'UpdateAttachments'}->{ $subject } = $attachment; } - $ARGS{'UpdateContent'} =~ s/\r+\n/\n/g; + $ARGS{'UpdateContent'} =~ s/\r+\n/\n/g if $ARGS{'UpdateContent'}; - if ($ARGS{'UpdateAttachments'} || ( - $ARGS{'UpdateContent'} && - $ARGS{'UpdateContent'} ne "-- \n" . - $session{'CurrentUser'}->UserObj->Signature - )) { - ProcessUpdateMessage(TicketObj => $Ticket, - ARGSRef=>\%ARGS, - Actions=>\@results); + if ($ARGS{'UpdateAttachments'} || ( $ARGS{'UpdateContent'} && $ARGS{'UpdateContent'} ne "-- \n" . + $session{'CurrentUser'}->UserObj->Signature)) { + ProcessUpdateMessage(TicketObj => $Ticket, ARGSRef=>\%ARGS, Actions=>\@results); } + @results = ProcessTicketBasics( TicketObj => $Ticket, ARGSRef => \%ARGS); } push @results, @wresults; push @results, @dresults; push @results, @lresults; push @results, @cf_results; +# undef so that TransactionBatch scrips run and update the ticket +$Ticket = undef; +$Ticket = LoadTicket($id); + # 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. @@ -166,9 +213,13 @@ unless ($Ticket->CurrentUserHasRight('ShowTicket')) { <%ARGS> $OnlySearchForPeople => undef +$OnlySearchForGroup => undef $UserField => undef $UserOp => undef $UserString => undef +$GroupString => undef +$GroupOp => undef +$GroupField => undef $id => undef