X-Git-Url: http://git.freeside.biz/gitweb/?p=freeside.git;a=blobdiff_plain;f=rt%2Flib%2FRT%2FTicket_Overlay.pm;h=e1809a377d2bed4fa3db9f9cfaa8e2ea402cea55;hp=bcc96245ed3d039ff92f120d39d7b9d25f01e0d9;hb=90edd8a914fd484e649fb0aa051dce7927bd6881;hpb=51b90581474ad9ce4e047647cd78ed2bc7d742dd diff --git a/rt/lib/RT/Ticket_Overlay.pm b/rt/lib/RT/Ticket_Overlay.pm index bcc96245e..e1809a377 100644 --- a/rt/lib/RT/Ticket_Overlay.pm +++ b/rt/lib/RT/Ticket_Overlay.pm @@ -1,40 +1,40 @@ # BEGIN BPS TAGGED BLOCK {{{ -# +# # COPYRIGHT: -# -# This software is Copyright (c) 1996-2009 Best Practical Solutions, LLC -# -# +# +# This software is Copyright (c) 1996-2011 Best Practical Solutions, LLC +# +# # (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 # 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. -# +# # 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: -# +# # (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 @@ -43,7 +43,7 @@ # 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 }}} # {{{ Front Material @@ -229,7 +229,7 @@ Ticket links can be set up during create by passing the link type as a hask key the ticket id to be linked to as a value (or a URI when linking to other objects). Multiple links of the same type can be created by passing an array ref. For example: - Parent => 45, + Parents => 45, DependsOn => [ 15, 22 ], RefersTo => 'http://www.bestpractical.com', @@ -721,7 +721,8 @@ sub Create { ); } - if ( $args{'_RecordTransaction'} ) { + #don't make a transaction or fire off any scrips for reminders either + if ( $args{'_RecordTransaction'} && $self->Type ne 'reminder' ) { # {{{ Add a transaction for the create my ( $Trans, $Msg, $TransObj ) = $self->_NewTransaction( @@ -733,7 +734,8 @@ sub Create { if ( $self->Id && $Trans ) { - $TransObj->UpdateCustomFields(ARGSRef => \%args); + #$TransObj->UpdateCustomFields(ARGSRef => \%args); + $TransObj->UpdateCustomFields(%args); $RT::Logger->info( "Ticket " . $self->Id . " created in queue '" . $QueueObj->Name . "' by " . $self->CurrentUser->Name ); $ErrStr = $self->loc( "Ticket [_1] created in queue '[_2]'", $self->Id, $QueueObj->Name ); @@ -2221,6 +2223,7 @@ sub _RecordNote { NoteType => 'Correspond', TimeTaken => 0, CommitScrips => 1, + CustomFields => {}, @_ ); @@ -2277,6 +2280,7 @@ sub _RecordNote { TimeTaken => $args{'TimeTaken'}, MIMEObj => $args{'MIMEObj'}, CommitScrips => $args{'CommitScrips'}, + CustomFields => $args{'CustomFields'}, ); unless ($Trans) { @@ -2311,6 +2315,16 @@ sub _Links { return $links; } + # without this you will also get RT::User(s) instead of tickets! + if ($field == 'Base' and $type == 'MemberOf') { + my $rtname = RT->Config->Get('rtname'); + $links->Limit( + FIELD => 'Base', + OPERATOR => 'STARTSWITH', + VALUE => "fsck.com-rt://$rtname/ticket/", + ); + } + # Maybe this ticket is a merge ticket my $limit_on = 'Local'. $field; # at least to myself