X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=rt%2Flib%2FRT%2FLinks.pm;h=5c21e2df7ab0aa3ee4081973b67304b8fbbb1f3b;hb=8103c1fc1b2c27a6855feadf26f91b980a54bc52;hp=a8180caf068234ceb28048ae812a263e13e1dfd3;hpb=3ef62a0570055da710328937e7f65dbb2c027c62;p=freeside.git diff --git a/rt/lib/RT/Links.pm b/rt/lib/RT/Links.pm index a8180caf0..5c21e2df7 100644 --- a/rt/lib/RT/Links.pm +++ b/rt/lib/RT/Links.pm @@ -1,90 +1,139 @@ -#$Header: /home/cvs/cvsroot/freeside/rt/lib/RT/Links.pm,v 1.1 2002-08-12 06:17:07 ivan Exp $ +# BEGIN BPS TAGGED BLOCK {{{ +# +# COPYRIGHT: +# +# This software is Copyright (c) 1996-2007 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/copyleft/gpl.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 +# 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 }}} +# Autogenerated by DBIx::SearchBuilder factory (by ) +# WARNING: THIS FILE IS AUTOGENERATED. ALL CHANGES TO THIS FILE WILL BE LOST. +# +# !! DO NOT EDIT THIS FILE !! +# + +use strict; -=head1 NAME - RT::Links - A collection of Link objects +=head1 NAME + RT::Links -- Class Description + =head1 SYNOPSIS - use RT::Links; - my $links = new RT::Links($CurrentUser); + use RT::Links =head1 DESCRIPTION =head1 METHODS - -=begin testing - -ok (require RT::TestHarness); -ok (require RT::Links); - -=end testing - =cut package RT::Links; -use RT::EasySearch; + +use RT::SearchBuilder; use RT::Link; -@ISA= qw(RT::EasySearch); +use vars qw( @ISA ); +@ISA= qw(RT::SearchBuilder); -# {{{ sub _Init -sub _Init { - my $self = shift; - - $self->{'table'} = "Links"; - $self->{'primary_key'} = "id"; +sub _Init { + my $self = shift; + $self->{'table'} = 'Links'; + $self->{'primary_key'} = 'id'; - return ( $self->SUPER::_Init(@_)); -} -# }}} -# {{{ sub Limit -sub Limit { - my $self = shift; - my %args = ( ENTRYAGGREGATOR => 'AND', - OPERATOR => '=', - @_); - - #if someone's trying to search for tickets, try to resolve the uris for searching. - - if ( ( $args{'OPERATOR'} eq '=') and - ( $args{'FIELD'} eq 'Base') or ($args{'FIELD'} eq 'Target') - ) { - my $dummy = $self->NewItem(); - $uri = $dummy->CanonicalizeURI($args{'VALUE'}); - } - - - # If we're limiting by target, order by base - # (Order by the thing that's changing) - - if ( ($args{'FIELD'} eq 'Target') or - ($args{'FIELD'} eq 'LocalTarget') ) { - $self->OrderBy (ALIAS => 'main', - FIELD => 'Base', - ORDER => 'ASC'); - } - elsif ( ($args{'FIELD'} eq 'Base') or - ($args{'FIELD'} eq 'LocalBase') ) { - $self->OrderBy (ALIAS => 'main', - FIELD => 'Target', - ORDER => 'ASC'); - } - - - $self->SUPER::Limit(%args); + return ( $self->SUPER::_Init(@_) ); } -# }}} -# {{{ sub NewItem -sub NewItem { + +=head2 NewItem + +Returns an empty new RT::Link item + +=cut + +sub NewItem { my $self = shift; return(RT::Link->new($self->CurrentUser)); } -# }}} - 1; + eval "require RT::Links_Overlay"; + if ($@ && $@ !~ qr{^Can't locate RT/Links_Overlay.pm}) { + die $@; + }; + + eval "require RT::Links_Vendor"; + if ($@ && $@ !~ qr{^Can't locate RT/Links_Vendor.pm}) { + die $@; + }; + + eval "require RT::Links_Local"; + if ($@ && $@ !~ qr{^Can't locate RT/Links_Local.pm}) { + die $@; + }; + + + + +=head1 SEE ALSO + +This class allows "overlay" methods to be placed +into the following files _Overlay is for a System overlay by the original author, +_Vendor is for 3rd-party vendor add-ons, while _Local is for site-local customizations. + +These overlay files can contain new subs or subs to replace existing subs in this module. + +Each of these files should begin with the line + + no warnings qw(redefine); + +so that perl does not kick and scream when you redefine a subroutine or variable in your overlay. + +RT::Links_Overlay, RT::Links_Vendor, RT::Links_Local + +=cut + + +1;